O que é o Manifest V3?

O Manifest V3 são as novas regras que o Chrome criou para as extensões do navegador. Substituiu uma API chamada webRequest (que permitia às extensões inspecionar e bloquear qualquer pedido de rede) por uma API mais restrita chamada declarativeNetRequest. O resultado: bloqueadores de anúncios como o uBlock Origin já não conseguem fazer tudo o que faziam. A versão completa do uBlock Origin já não funciona no Chrome.

Em resumo

As extensões do navegador podiam inspecionar todos os pedidos de rede feitos pelo navegador e decidir em tempo real se os bloqueavam. Era assim que o uBlock Origin, o Privacy Badger e os bons bloqueadores de conteúdos funcionavam. O Manifest V3 do Chrome (2024) substituiu essa capacidade por um sistema de listas de regras que limita quantas regras uma extensão pode ter e desativa as decisões em tempo de execução. A razão apresentada pela Google foi a segurança e o desempenho. O efeito prático foi que a extensão mais instalada do Chrome, o uBlock Origin, não conseguia continuar a funcionar na versão completa e acabou por ser retirada. A substituta «Lite» bloqueia menos coisas.

Nesta página

  1. O que mudou
  2. Porque estragou o bloqueio de anúncios
  3. Porque o fez a Google
  4. Como reagiram os navegadores

O que mudou

O Manifest V2 (as regras antigas) dava às extensões uma API poderosa chamada webRequest. As extensões podiam ver todos os pedidos que o navegador ia fazer e decidir, para cada um, se o bloqueavam. O uBlock Origin usava isto para:

  • Bloquear pedidos com base no tipo de conteúdo (imagem, script, tipo de letra, etc.)
  • Bloquear com base na página que fez o pedido (permitir no editor, bloquear no rastreador de terceiros)
  • Executar expressões regulares e lógica complexa sobre os URL
  • Atualizar a lista de bloqueio de imediato, sem passar pela análise da Chrome Web Store

O Manifest V3 substituiu o webRequest pelo declarativeNetRequest. A nova API recebe uma lista fixa de regras que o navegador interpreta internamente: a extensão nunca chega a tomar decisões em tempo real. Há um limite rígido para o número de regras que uma extensão pode ter. As atualizações à lista de regras têm de ser publicadas através de atualizações na Chrome Web Store.

Porque estragou o bloqueio de anúncios

As listas de bloqueio do uBlock Origin são grandes e atualizadas com frequência. Ambas as coisas deixaram de funcionar com o Manifest V3. O autor documentou as diferenças em pormenor; em resumo:

  • A versão completa do uBlock Origin não conseguia continuar a funcionar com o V3, por isso foi retirada do Chrome.
  • O uBlock Origin Lite foi criado especificamente para caber nas restrições do V3. Faz menos.
  • Outros bons bloqueadores (Adguard, Ghostery) publicaram versões compatíveis com o V3, com compromissos semelhantes.

Porque o fez a Google

A razão oficial foi a segurança e o desempenho: a antiga API webRequest dava às extensões um alcance enorme, incluindo a capacidade de ler todo o tráfego HTTP de todos os separadores. Há um argumento real de que isso dava privilégios a mais.

A razão prática que muita gente notou: o negócio principal da Google é a publicidade. O navegador cujas novas regras limitam os bloqueadores de anúncios pertence à maior empresa de publicidade do mundo. Os dois factos não significam necessariamente que a mudança tenha sido mal-intencionada, mas a imagem não é boa.

Como reagiram os navegadores

O Firefox manteve o Manifest V2 a par do V3, pelo que o uBlock Origin completo ainda funciona aí. O Brave, o Vivaldi, o Opera e o Edge usam todos o Chromium e herdam o V3. A maioria inclui o seu próprio bloqueador de anúncios integrado, que não está sujeito às regras das extensões, e essa é a solução a longo prazo. O Dazr faz o mesmo: um bloqueador de anúncios integrado na camada de rede, com as mesmas listas de bloqueio que o uBlock Origin usa, que não tem de passar pela API de extensões do Chrome.

Relacionado