Меню
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 о проблемах в расширении.

Понравился пост?
9 934 9934 отзыва
Отлично!

AdGuard для Windows

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

AdGuard для Mac

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

AdGuard для Android

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

AdGuard для iOS

Лучший блокировщик рекламы для iPhone и iPad. AdGuard устраняет рекламу в Safari, защищает ваши данные и ускоряет загрузку страниц. AdGuard для iOS использует новейшую технологию блокировки, которая обеспечивает непревзойденное качество фильтрации и позволяет применять множество различных фильтров одновременно
Скачивая программу, вы принимаете условия Лицензионного соглашения
Читать далее
9 934 9934 отзыва
Отлично!

AdGuard Content Blocker

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

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

AdGuard — самое быстрое и легкое браузерное расширение для блокировки всех типов рекламы! Выбирайте AdGuard для быстрого и безопасного серфинга без рекламы.
9 934 9934 отзыва
Отлично!

Помощник AdGuard

Дополнительное браузерное расширение для десктопных приложений AdGuard. Даёт доступ к таким функциям в браузере, как блокировка отдельных элементов, занесение сайта в белый список или отправление отчёта.
9 934 9934 отзыва
Отлично!

AdGuard DNS

AdGuard DNS – это альтернативный способ заблокировать рекламу, защитить личные данные и оградить детей от взрослых материалов. Он прост в настройке и использовании и обеспечивает необходимый минимум защиты от рекламы, трекинга и фишинга, независимо от платформы.
9 934 9934 отзыва
Отлично!

AdGuard Home

AdGuard Home — мощный сетевой инструмент против рекламы и трекинга. С усилением роли интернета вещей становится все более и более важным управлять всей вашей сетью. После настройки AdGuard Home будет охватывать ВСЕ ваши домашние устройства и для этого вам не понадобится программное обеспечение на стороне клиента.
9 934 9934 отзыва
Отлично!

AdGuard Pro для iOS

AdGuard Pro предлагает гораздо больше чем просто блокировку рекламы в Safari, которая есть в обычной версии. С помощью специальных настроек DNS вы сможете блокировать больше рекламы, защитить ваши личные данные и оградить детей от взрослого контента.
Скачивая программу, вы принимаете условия Лицензионного соглашения
Читать далее
9 934 9934 отзыва
Отлично!

AdGuard для Safari

Расширения, блокирующие рекламу в Safari, переживают не лучшие времена с тех пор, как компания Apple вынудила всех использовать новый SDK. Познакомьтесь с нашим легко настраиваемым и молниеносным приложением!
9 934 9934 отзыва
Отлично!

AdGuard Temp Mail

Ваш временный почтовый ящик, чтобы на основную почту не приходил спам
9 934 9934 отзыва
Отлично!

AdGuard для Android TV

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