В Gnome 45 няма да можете да използвате стари добавки поради проблеми със съвместимостта

Гном

GNOME е десктоп среда и инфраструктура за разработка на операционни системи GNU/Linux.

Преди няколко дни беше обявено информация за промяна което може да не се хареса на всички потребители на Gnome и е, че в новата версия на GNOME 45 Направени са някои промени, които засягат добавките за среда.

По-конкретно се споменава, че Променена е организацията на зареждане на модули в добавки за GNOME Shell, което ще доведе до нарушение на обратната съвместимост и ще изисква промени в добавките.

Споменава се, че:

JavaScript произхожда от уеб браузъри, за да добави малко интерактивност към иначе статични страници. Малки парчета код не е необходимо да се разделят на множество файлове, така че езикът не предоставя механизъм за това.

Това се превърна в проблем, когато хората започнаха да пишат по-големи програми в JavaScript, така че среди като node.js и GJS добавиха свои собствени системи за импортиране, за да организират кода в множество файлове. В резултат на това разработчиците и инструментите имаха трудности при прехода от една среда към друга.

Като такъв, проблемът, който плъгините ще имат разработен за предишни версии на GNOME и това Те няма да могат да работят в следващата версия на GNOME 45, се дължи на прекъсване на съвместимостта при превключване от собствена система за импортиране на модули, специфична за времето за изпълнение на GJS JavaScript (GNOME JavaScript, базиран на двигателя SpiderMonkey на проекта Mozilla), към стандартния механизъм за импортиране на модули на JavaScript (ESM), описан в ECMAScript.

Наследеното импортиране все още се поддържа в extensions.gnome.org, но ще трябва да заредите поддръжка преди и след GNOME 45, за да поддържате както LTS, така и обикновените дистрибуции.

Освен това се споменава, че Разликите се свеждат до факта че преди, в допълнение към GNOME Shell, беше използван обектът "импортиране".» за свързване на JavaScript модули и GObject връзки, но сега трябва да се използва операторът "импортиране".

От друга страна, също така се споменава, че плъгини, адаптирани да работят на GNOME 45, няма да могат да бъдат инсталирани на по-стари версии на GNOME и че за да поддържат съвместимост с различни версии на GNOME, разработчиците на плъгини трябва да качат два варианта на плъгини в разширенията. gnome .org – един за GNOME 45 и по-нови и един за по-стари версии на GNOME.

Е, има малка уловка: модулите и наследените импортирания са несъвместими на практика.

Модулите се зареждат по различен начин от скриптовете и някои оператори, а именно импортиране и експортиране, са валидни само в модули. Това означава, че опитът за импортиране на модул с наследената система ще доведе до синтактична грешка, ако модулът използва една от тези декларации (приблизително толкова вероятно, колкото папа да е католик).

Модулите също скриват всичко отвън, което не е изрично експортирано. Така че макар технически да е възможно да импортирате скрипт като модул, това е почти толкова полезно, колкото импортирането на празен файл.

Накрая разработчиците се споменават, че работят върху GNOME 45 и по-нови версии, разширенията трябва да променят кода, свързан със зареждането на библиотеки, уверете се, че файлът extension.js съдържа enable()/disable() методи в класа по подразбиране и, когато използвате prefs.js, дефинирайте ExtensionPreferences. подклас с метод fillPreferencesWindow.

Модифицираната версия на приставката трябва да бъде свързана с новите версии на GNOME Shell чрез параметъра „»shell-version»: [ «45» ]' в metadata.json. За GNOME, по-ранна от версия 45, можете да създавате отделни версии на добавки, като също така гарантирате, че те се свързват към по-стари версии чрез параметъра shell-version в metadata.json. Можете да тествате модифицирани добавки с помощта на компилации на GNOME OS.

По същия начин се споделя ръководство за преносимост, което може да се направи от Следваща връзка. Не на последно място, заслужава да се спомене, че стартирането на новата версия на Gnome 45 е насрочен за 20 септември (за утре).

Ако сте се интересувам да научим повече за това, можете да проверите подробностите в следваща връзка.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.