Mozilla теперь принимает плагины с третьей версией манифеста Chrome

Не так давно (21 ноября, если быть точным) каталог addons.mozilla.org начал принимать и подписывать в цифровом виде плагины, использующие третью версию манифеста chrome, при этом поддержка второй версии манифеста будет продолжаться в обозримом будущем, но в конце 2023 года, после оценки динамики перехода дополнений на третью версию манифеста, возможность прекращения поддержки второй версии манифеста будет рассмотрен манифест.

Манифест Chrome определяет функции и ресурсы, доступные для подключаемых модулей, написанных с помощью API WebExtensions.





Начиная с версии 57, Firefox полностью перешел на использование WebExtensions API. для разработки плагинов и прекратил поддержку технологии XUL. Переход на WebExtensions позволил унифицировать разработку плагинов с платформами Chrome, Opera, Safari и Edge, упростил портирование плагинов между разными веб-браузерами и дал возможность полноценно использовать многопоточный режим работы (плагины WebExtensions можно выполняются в отдельных процессах, изолированных от других частей браузера). Чтобы унифицировать разработку подключаемых модулей с другими браузерами, Firefox обеспечивает почти полную совместимость со второй версией манифеста Chrome.





В настоящее время Chrome находится в процессе перехода на версию 3 манифеста., а версия 2 устарела в январе 2024 года. Основная цель изменений, внесенных в новую версию, — упростить создание безопасных, высокопроизводительных подключаемых модулей и затруднить создание небезопасных и медленных подключаемых модулей.

Поскольку третья версия манифеста подверглась критике и сломает многие плагины для блокировки нежелательного контента и безопасности, Mozilla решила прекратить обеспечивать полную совместимость с манифестом в Firefox и реализовать некоторые изменения по-другому.





Среди особенностей реализации из нового манифеста в Firefox:

  • Добавлен новый API декларативной фильтрации контента, но, в отличие от Chrome, поддержка старого блокирующего поведения API webRequest не удалена.
  • Манифест определяет замену фоновых страниц вариантами Service Workers, которые работают как фоновые процессы (Background Service Workers). Для будущей совместимости Firefox будет поддерживать сервис-воркеры, но теперь они заменены новым механизмом страниц событий, который более знаком веб-разработчикам, не требует полной переделки плагинов и снимает ограничения, связанные с использованием сервис-воркеров. Страницы событий приведут существующие плагины внутренних страниц в соответствие с требованиями третьей версии манифеста, сохраняя при этом доступ ко всем функциям, необходимым для работы с DOM.
  • Новая гранулярная модель запроса разрешений: плагин не сможет активироваться сразу для всех страниц (убрано разрешение «all_urls»), а будет работать только в контексте активной вкладки, т.е. пользователь должен будет подтвердить функционал плагина для каждого сайта. В Firefox все запросы на доступ к данным сайта будут рассматриваться как необязательные, а окончательное решение о предоставлении доступа будет принимать пользователь, который сможет выборочно решить, какой плагин предоставит доступ к своим данным на том или ином сайте.
  • Для управления разрешениями в интерфейс добавлена ​​новая кнопка «Унифицированные расширения», которую уже можно тестировать в ночных сборках Firefox. Кнопка предоставляет средства для прямого управления тем, к каким сайтам имеет доступ каждый плагин: пользователь может предоставить и отозвать доступ плагина к любому сайту. Контроль разрешений применяется только к плагинам на основе третьей версии манифеста; для плагинов на основе второй версии манифеста не осуществляется гранулярный контроль доступа к сайтам.
  • Изменение обработки запросов из разных источников: в соответствии с новым манифестом сценарии обработки контента будут иметь те же ограничения разрешений, что и для родительской страницы, в которую встроены эти сценарии (например, если страница не имеет доступа к местоположению). API, то скриптовые плагины тоже не получат этот доступ). Это изменение полностью реализовано в Firefox.

Наконец, стоит упомянуть, что плагины можно тестировать на ночных версиях Firefox. В стабильных выпусках поддержка третьей версии манифеста будет включена в Firefox 109, запланированном на 17 января 2023 года.





источник: https://blog.mozilla.org




2022-11-25T01:48:21
GNU / Linux