Google Chrome меняет платформу для расширений: что это значит

И как повлияет на браузеры
6
Google Chrome меняет платформу для расширений: что это значит
Аватар автора

Антон Курилов

на всякий случай обновил расширения для браузера

Страница автора

В Google Chrome есть так называемый манифест — платформа для расширений.

Еще в 2018 году разработчики браузера анонсировали третью версию манифеста. В ней много изменений. Сама Google ожидает, что свежая версия сделает работу дополнений более безопасной и эффективной с точки зрения использования ресурсов компьютера.

Нововведения затронут не только Google Chrome, но и все браузеры, которые построены на открытой платформе Chromium: «Яндекс Браузер», Microsoft Edge, Opera, Brave, Vivaldi и другие.

Изначально планировалось, что Chrome полностью перейдет на обновленную платформу расширений уже в январе 2024 года. Но из-за большого количества жалоб со стороны разработчиков в Google решили пересмотреть сроки.

Расскажу, в чем суть изменений и когда их ждать.

Что такое манифест

В каждом расширении для браузеров на основе Chromium есть файл manifest.json. Там прописана основная информация о дополнении, необходимые разрешения и другие важные данные. При установке расширения браузер сканирует этот файл и запускает необходимые функции. Например, предупреждает пользователя, что программе требуется доступ к чтению истории посещений сайтов.

В manifest.json указывается и версия манифеста. В разных итерациях манифеста используются разные API — правила, по которым взаимодействуют расширение и браузер. Сейчас актуальной версией считается Manifest V2, но вскоре Chrome перейдет на Manifest V3.

Манифест — часть платформы WebExtensions, которая унифицирует разработку расширений для разных браузеров. Mozilla Firefox и Apple Safari присоединились к WebExtensions, поэтому дополнения для них тоже могут содержать манифест.

Что изменится в Manifest V3

Обновленная платформа для расширений Google Chrome содержит десятки изменений и улучшений. Но основных нововведения три.

🔧 Переход на сервис-воркеры. Главный компонент любого расширения для браузера на основе Chromium — фоновая страница. Она позволяет реагировать на события в браузере, например создание новой вкладки. По сути это отдельная, но невидимая вкладка.

Такая фоновая страница активна постоянно, даже когда в этом нет необходимости, что приводит к нерациональному расходованию памяти. Поэтому Google заменяет эту концепцию на сервис-воркеры  . Они запускаются вне основного потока браузера, чтобы не тормозить работу.

В итоге браузер сможет быстрее отображать веб-страницы и в среднем расходовать меньше оперативной памяти.

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

В Manifest V3 модификация сетевых запросов происходит через другой инструмент — declarativeNetRequest. У него почти те же возможности, но запросы выполняет не само расширение, а движок браузера. Расширение может лишь подготовить список, содержащий не более 30 000 правил для фильтрации запросов.

В Google утверждают, что мера направлена на защиту конфиденциальности. Теперь расширения не смогут сканировать всю веб-страницу, где могут быть приватные данные пользователя. Еще новый подход эффективнее: браузеру не придется ждать, пока расширение обработает каждый сетевой запрос. Кроме того, ограничение полномочий ударит по вредоносным расширениям.

🚫 Запрет на использование удаленного кода. Новая версия манифеста требует, чтобы весь код был упакован в само расширение. Раньше дополнения могли подгружать необходимые данные из любого внешнего источника. С помощью этого принципа блокировщики рекламы регулярно обновляют базы фильтрации, что позволяет эффективно противостоять рекламным сетям.

Теперь своевременный апдейт невозможен: разработчикам придется каждый раз вносить изменения в код расширения, загружать обновление в магазин Chrome Web Store и дожидаться завершения процесса модерации.

Почему индустрия критикует изменения

Разработчики и специалисты в области конфиденциальности опасаются, что переход на Manifest V3 серьезно снизит эффективность работы блокировщиков рекламы и трекеров. А заодно и всех других дополнений, которые защищают конфиденциальность пользователей. Вот основные тезисы экспертов.

😵‍💫 Новый манифест усложнит развитие расширений. Глава по технологиям компании Ghostery, которая разрабатывает одноименное расширение, отмечает, что внедрение Manifest V3 «закроет дверь для инноваций в области блокировки рекламы». В пример можно привести YouTube: платформа часто экспериментирует с системой интеграции объявлений в видео, ограничение на обновление списков фильтрации не позволит оперативно подстраиваться под изменения. Эффективность блокировщиков снизится, из-за чего пользователи начнут видеть больше рекламы.

Сооснователь AdGuard уверен, что блокировщики рекламы смогут сохранить качество блокировки объявлений практически полностью. При этом он считает, что Manifest V3 затруднит внедрение новых подходов: например, едва ли получится реализовать автоматическое распознавание рекламы силами искусственного интеллекта.

Авторы популярного блокировщика рекламы uBlock Origin создали отдельное расширение для совместимости с Manifest V3. Оказалось, что на новой платформе невозможно реализовать некоторые привычные функции, например блокировку внешних шрифтов.

🏃 Браузер не работает медленнее из-за Manifest V2. Фонд электронных рубежей, который защищает цифровые права пользователей по всему миру, раскритиковал новую технологию. В организации сослались на отчет американских исследователей 2020 года. Согласно документу, некоторые расширения для защиты конфиденциальности сокращают скорость загрузки веб-страниц, объем передаваемых данных и расход ресурсов компьютера.

Разработчики Chrome утверждают, что 85% активно поддерживаемых расширений уже перешли на Manifest V3. Таким образом компания пытается доказать, что у большинства разработчиков нет проблем с новой платформой.

Google также прислушивается к требованиям разработчиков. Например, теперь можно пропустить этап модерации при обновлении расширения, если меняется только содержимое списка фильтров.

Когда случится переход на Manifest V3

Впервые поддержка третьей версии Manifest появилась в январе 2021 года с выпуском Chrome 88, но до сих пор браузер сохраняет совместимость со второй версией.

Отказ от Manifest V2 происходит поэтапно:

  1. С июня 2022 года Chrome Web Store не принимает новые дополнения, которые ориентируются на Manifest V2.
  2. С июня 2024 года пользователи тестовых версий Chrome — Beta, Dev и Canary, — которые продолжают использовать расширения с Manifest V2, получают предупреждение о скором прекращении поддержки. Дополнения со значком «Рекомендуемые», которые полагаются на старую версию манифеста, лишатся этой пометки.
  3. В ближайшие месяцы пользователей стабильной и тестовых версий браузера начнут перенаправлять в Chrome Web Store с предложением установить актуальные альтернативы расширениям, использующим Manifest V2. Затем последует постепенное отключение устаревших дополнений, хотя какое-то время их еще можно будет активировать вручную.
  4. С июня 2025 года расширения со второй версией манифеста отключатся и в версии браузера для предприятий.

Разработчики браузера Vivaldi объявили, что будут сохранять совместимость с Manifest V2, пока она будет доступна в коде Chromium, то есть как минимум до лета 2025 года. Авторы Microsoft Edge пока не определились с конкретным графиком перехода на свежий манифест.

Mozilla Firefox тоже поддерживает Manifest, чтобы обеспечить совместимость расширений с другими браузерами. Но в Mozilla объяснили, что их реализация Manifest V3 сохраняет поддержку фоновых страниц и webRequest. Кроме того, останется совместимость с Manifest V2: от нее не планируют отказываться в обозримом будущем.

Что в итоге

  1. До середины 2025 года Google Chrome, «Яндекс Браузер», Microsoft Edge, Opera, Brave, Vivaldi и другие браузеры на базе Chromium перейдут на новую платформу расширений.
  2. Большинство пользователей вряд ли заметит изменения: многие дополнения уже поддерживают новую технологию.
  3. Проблемы могут возникнуть с расширениями, которые давно не получали обновлений.
  4. Есть риск, что AdBlock и другие блокировщики рекламы станут хуже справляться со своими задачами, хотя критического падения эффективности ждать не стоит.

Мы постим кружочки, красивые карточки и новости о технологиях и поп-культуре в нашем телеграм-канале. Подписывайтесь, там классно: @t_technocult

Антон КуриловБез каких расширений для браузера вы жить не можете?