Меню
RU

Браузерное расширение MV3 0.4.0: время большого обновления

C релиза расширения на базе MV3 прошло почти полтора года, и пришло время большого обновления — раз уж мы всё-таки живём в реальности MV3. Теперь в расширении свежие версии наших фильтрующих библиотек TSWebExtension и TSUrlFilter. Вспомнить, как начинался путь к первому расширению, работающему в рамках Manifest V3, можно в нашем блоге.

5 причин, почему расширение стало лучше

1. Новая схема приоритетов

Раньше у нас было 4 ранжированных группы правил, но выбор правила внутри одной группы и приоритет были неочевидными. В новой схеме вес правила рассчитывается в момент конвертации исходя из модификаторов, из которых это правило состоит. У каждой группы модификаторов свой фиксированный вес, либо вес группы можно рассчитать по формуле. Благодаря этому на этапе конвертации можно задать правилу декларативный приоритет, который идеально подходит под новый MV3. Подробнее про новую схему приоритетов можно почитать в нашей Базе знаний.

2. Поддержка правил с модификатором $badfilter

Модификатор $badfilter обладает властью отменять любые другие правила. Как это работает: разработчики фильтров добавляют правило с этим модификатором, расширение динамически получает обновление, и новое правило отключает правило, на которое ссылается.
Однако в MV3 нельзя отменить ранее добавленное правило, и мы добавили поддержку $badfilter только для тех правил, которые уже есть в том же самом файле. То есть, если у вас правило в одном файле, а $badfilter для него вы добавили в другом — ничего не выйдет.
Так было до тех пор, пока рабочая группа W3C не прислушалась к разработчикам расширений и не добавила новое API, позволяющее отменять другие декларативные правила. Пользуясь случаем, мы добавили поддержку $badfilter для всех правил во всех файлах. Для этого переделали схему конвертации правил так, чтобы генерировать дополнительные метаданные для фильтров и сразу находить правила, которые нужно отменить.

3. Поддержка модификатора $cookie

Модификатор $cookie позволяет задавать время жизни (TTL) файлов куки. Текущего функциональности MV3 не хватает для полноценной работы этого модификатора, поэтому мы реализовали его поддержку таким способом:

  • Если для работы фильтрующего правила достаточно API MV3, то правило конвертируется в декларативное и включается в набор статических правил
  • В противном случае мы дополнительно обрабатываем файлы куки в нашем движке TSUrlFilter и с помощью браузерного API browser.cookies удаляем файлы куки, которые не должны быть установлены, или сокращаем время их жизни

4. Поддержка модификаторов $elemhide, $generichide, $specifichide

Их мы используем для отключения косметической фильтрации на указанных сайтах. В MV3 пока что нет подобных инструментов, поэтому мы добавили поддержку модификаторов через наш внутренний движок фильтрации TSUrlFilter. Он сопоставляет правила блокировки с правилами-исключениями и отдаёт на сторону контент-скрипта только неотменённые правила.

5. Всё остальное

Добавили поддержку модификаторов:

  • $method — этот модификатор ограничивает область действия правила запросами, использующими указанный набор методов HTTP
  • $to ограничивает область действия правила запросами, сделанными на указанные домены и их поддомены
  • $removeheader — правила с этим модификатором нужны, чтобы убирать заголовки HTTP-запросов и ответов
  • $all состоит из всех модификаторов content-type и $popup
  • $csp — этот модификатор полностью меняет поведение страницы. Когда он применяется, правило не блокирует запрос, а вместо этого изменяются заголовки ответа

Это первый блокировщик рекламы, работающий в жёстких условиях Manifest V3, и вы очень нам поможете, если сообщите на GitHub о проблемах в расширении.

Понравился пост?
Загружая комментарии, вы соглашаетесь с условиями использования и политикой конфиденциальности.

AdGuard для Windows

AdGuard для Windows — это не просто «ещё один блокировщик». Это многоцелевой инструмент, который блокирует рекламу и доступ к опасным сайтам, ускоряет загрузку страниц и защищает детей от взрослого контента.
Отзывы пользователей: 20177
4,7 из 5
Скачивая программу, вы принимаете условия Лицензионного соглашения
Читать далее

AdGuard для Mac

В отличие от других блокировщиков, AdGuard разработан с учётом специфики операционной системы macOS. Он не только блокирует рекламу в Safari и других браузерах, но и защищает вас от слежки, фишинга и мошенничества в сети.
Отзывы пользователей: 20177
4,7 из 5
Скачивая программу, вы принимаете условия Лицензионного соглашения
Читать далее

AdGuard для Android

AdGuard для Android — это идеальное решение для Android-устройств. В отличие от других блокировщиков, AdGuard не требует root-доступа и позволяет управлять трафиком любых приложений на вашем устройстве.
Отзывы пользователей: 20177
4,7 из 5
Скачивая программу, вы принимаете условия Лицензионного соглашения

AdGuard для iOS

Самый продвинутый блокировщик рекламы для Safari: он позволяет забыть о всплывающей рекламе, ускоряет загрузку страниц и защищает личные данные. А с помощью ручной блокировки можно настроить фильтрацию так, как это удобно вам.
Отзывы пользователей: 20177
4,7 из 5
Скачивая программу, вы принимаете условия Лицензионного соглашения

Браузерное расширение AdGuard

AdGuard — самое быстрое и легкое браузерное расширение для блокировки всех типов рекламы! Выбирайте AdGuard для быстрого и безопасного серфинга без рекламы.
Отзывы пользователей: 20177
4,7 из 5

AdGuard для Safari

Расширения, блокирующие рекламу в Safari, переживают не лучшие времена с тех пор, как компания Apple вынудила всех использовать новый SDK. Познакомьтесь с нашим легко настраиваемым и молниеносным приложением!
Отзывы пользователей: 20177
4,7 из 5
App Store
Скачать
Скачивая программу, вы принимаете условия Лицензионного соглашения

AdGuard Home

AdGuard Home — мощный сетевой инструмент против рекламы и трекинга. С усилением роли интернета вещей становится все более и более важным управлять всей вашей сетью. После настройки AdGuard Home будет охватывать ВСЕ ваши домашние устройства и для этого вам не понадобится программное обеспечение на стороне клиента.
Отзывы пользователей: 20177
4,7 из 5

AdGuard Content Blocker

AdGuard Content Blocker устраняет все объявления в мобильных браузерах, которые поддерживают технологию блокировки контента — к примеру, Samsung Internet и Яндекс.Браузер. Он обладает меньшим количеством функций, чем AdGuard для Android, но при этом бесплатен, прост в установке и по-прежнему обеспечивает высокое качество блокировки рекламы.
Отзывы пользователей: 20177
4,7 из 5
Скачивая программу, вы принимаете условия Лицензионного соглашения
Читать далее

Помощник AdGuard

Дополнительное браузерное расширение для [десктопных приложений](/ru/products.html) AdGuard. Даёт доступ к таким функциям в браузере, как блокировка отдельных элементов, занесение сайта в белый список или отправление отчёта.
Отзывы пользователей: 20177
4,7 из 5
Помощник для Chrome Это ваш текущий браузер?
Установить
Скачивая программу, вы принимаете условия Лицензионного соглашения
Помощник для Firefox Это ваш текущий браузер?
Установить
Скачивая программу, вы принимаете условия Лицензионного соглашения
Помощник для Edge Это ваш текущий браузер?
Установить
Скачивая программу, вы принимаете условия Лицензионного соглашения
Помощник для Opera Это ваш текущий браузер?
Установить
Скачивая программу, вы принимаете условия Лицензионного соглашения
Помощник для Yandex Это ваш текущий браузер?
Установить
Скачивая программу, вы принимаете условия Лицензионного соглашения
Помощник для Safari Это ваш текущий браузер?
Если вы не можете найти свой браузер в списке, попробуйте прежнюю версию Помощника, которую вы можете найти в настройках расширения AdGuard.

AdGuard Temp Mail β

Ваш временный почтовый ящик, чтобы на основную почту не приходил спам
Отзывы пользователей: 20177
4,7 из 5

AdGuard для Android TV

AdGuard для Android TV — единственное приложение, которое блокирует рекламу, защищает ваши данные и действует как фаервол для Smart TV. Получайте предупреждения о веб-угрозах, используйте безопасный DNS, а ваш трафик будет зашифрован. Смотрите любимые сериалы безопасно и без рекламы!
Отзывы пользователей: 20177
4,7 из 5
Загрузка AdGuard началась Стрелка указывает на файл: нажмите на него, и установка начнётся Выберите «Открыть», нажмите «OK» и дождитесь загрузки файла. В открывшемся окне перетащите значок AdGuard в папку «Приложения». Спасибо за выбор AdGuard! Выберите «Открыть», нажмите «OK» и дождитесь загрузки файла. В открывшемся окне нажмите «Установить». Спасибо за выбор AdGuard!
AdGuard есть и в мобильном варианте