Planira podršku za Firefox za verzije 2 i 3 Chrome manifesta

Разработчики из компании Mozilla обновили информацию о планах, связанных с поддержкой в Firefox второй и третьей версий манифеста Chrome. Компания Google в июне этого года намерена прекратить поддержку дополнений, использующих вторую версию манифеста, в тестовых выпусках Chrome 127 (Dev, Canary и Beta). В стабильной ветке поддержка второй версии манифеста будет прекращена не раньше июля.

В свою очередь компания Mozilla не будет в обозримом будущем прекращать поддержку второй версии манифеста, и сохранит возможность запускать дополнения, использующие возможности, недоступные в третьей версии манифеста. Остаётся в силе решение не обеспечивать в Firefox полную совместимость с третьей версией манифеста Chrome. В Firefox будет оставлен полноценный API webRequest, который в Chrome будет переведён в режим только для чтения.

В Firefox также при помощи механизма Event Pages будет сохранена поддержка выполнения фоновых скриптов на базе DOM, вместо которых в третьей версии манифеста предписано использовать Service Workers. Фоновые скрипты на базе Service Workers в Firefox пока не поддерживаются, но разработчикам будет предоставлена возможность определения в дополнении как обработчика на базе Event Pages, так и скриптов на базе Service Workers, что позволит создавать дополнения, соответствующие третьей версии манифеста и работающие в Chrome и Firefox.

Chrome manifest definira mogućnosti i resurse dostupne ekstenzijama napisanim pomoću WebExtensions API-ja. Počevši od verzije 57, Firefox je u potpunosti prešao na korištenje WebExtensions API-ja za razvoj dodataka i prestao je podržavati XUL tehnologiju. Prelazak na WebExtensions omogućio je objedinjavanje razvoja dodataka s platformama Chrome, Opera, Safari i Edge, pojednostavio prijenos dodataka između različitih web preglednika i omogućio potpuno korištenje višeprocesnog načina rada. rad (Dodaci WebExtensions mogu se izvršavati u zasebnim procesima, izolovani od ostatka pretraživača). Kako bi ujedinio razvoj dodataka s drugim pretraživačima, Firefox pruža gotovo potpunu kompatibilnost s drugom verzijom Chrome manifesta.

В рамках инициативы по упрощению создания безопасных и высокопроизводительных дополнений, и усложнению возможности создания небезопасных и медленных дополнений, компания Google разработала третью версию манифеста. Основное недовольство третьей версией манифеста вызвано переводом в режим только для чтения API webRequest, позволявшего подключать собственные обработчики, имеющие полный доступ к сетевым запросам и способные на лету модифицировать трафик. Вместо API webRequest в третьей версии манифеста добавлен ограниченный по своим возможностям API declarativeNetRequest, предоставляющий доступ к встроенному движку для фильтрации, самостоятельно обрабатывающему правила блокировки, не разрешающему использовать собственные алгоритмы фильтрации.

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

  • Dodan je novi deklarativni API za filtriranje sadržaja, ali za razliku od Chromea, podrška za stari način blokiranja webRequest API-ja nije ukinuta.
  • Реализован механизм Event Pages, который более привычен для web-разработчиков, не требует полной переработки дополнений и устраняет ограничения, связанные с применением Service Workers. Event Pages позволит привести существующие дополнения с фоновыми страницами к требованиям третьей версии манифеста, сохранив при этом доступ ко всем возможностям, необходимым для работы с DOM.
  • Novi model granularnog zahtjeva za dozvolu - dodatak se neće moći aktivirati za sve stranice odjednom (uklonjena je dozvola “all_urls”), već će raditi samo u kontekstu aktivne kartice, tj. korisnik će morati potvrditi da dodatak radi za svaku stranicu. U Firefoxu će se svi zahtjevi za pristup podacima stranice smatrati opcijskim, a konačnu odluku o odobravanju pristupa će donijeti korisnik, koji će moći selektivno odlučiti koji dodatak će odobriti pristup svojim podacima na određenoj stranici.

    Для управления полномочиями в интерфейс добавлена кнопка «Unified Extensions» для непосредственного управления тем, к каким сайтам имеет доступ каждое дополнение — пользователь может предоставить и отозвать доступ дополнения к любому сайту. Управление полномочиями применяется только к дополнениям на основе третьей версии манифеста, для дополнений на второй версии манифеста гранулированное управление доступом к сайтам не производится.

    Planira podršku za Firefox za verzije 2 i 3 Chrome manifesta
  • Promjena u rukovanju zahtjevima s više porijekla - u skladu s novim manifestom, skripte za obradu sadržaja bit će podvrgnute istim ograničenjima dozvola kao za glavnu stranicu u koju su ove skripte ugrađene (na primjer, ako stranica nema pristup API lokacije, tada dodaci skripte također neće dobiti ovaj pristup). Ova promjena je u potpunosti implementirana u Firefoxu.
  • API на основе Promise. Firefox поддерживает данный API и для третьей версии манифеста.
  • Запрет выполнения кода, загруженного с внешних серверов (речь про ситуации, когда дополнение подгружает и выполняет внешний код). В Firefox применяется блокировка внешнего кода и разработчики Mozilla добавили дополнительные техники отслеживания загрузок кода. Для скриптов обработки контента представлена отдельная политика ограничения доступа к контенту (CSP, Content Security Policy).

izvor: opennet.ru

Dodajte komentar