O Chrome estreia a API Manifest V3 para extensões, trazendo notícias realmente ruins para bloqueadores de anúncios.
fonte: Android Police |
A Google vem trabalhando em uma versão atualizada da API de extensão do Chrome, chamada 'Manifest V3,' há mais de dois anos. Depois que os desenvolvedores de extensão se reuniram contra algumas das mudanças propostas, a Google voltou à prancheta e agora a documentação final do Manifest V3 está disponível para os desenvolvedores.
A primeira mudança importante no Manifest V3 é que a API webRequest, usada por todas as extensões de bloqueio de conteúdo, foi substituída pela API declarativeNetRequest. Em vez de o Chrome passar todas as solicitações de rede para uma extensão para que sejam filtradas, o que não é a opção mais segura para privacidade/segurança, a nova API permite que as extensões forneçam ao Chrome uma lista de filtros que o próprio Chrome analisa.
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
Regra de exemplo com declarativeNetRequest API
Muitos desenvolvedores inicialmente se manifestaram contra a API declarativeNetRequest, dizendo que ela era muito limitada, mas a Google vem aprimorando ela, pois agora oferece suporte a mais tipos de operadores curinga, semelhantes à forma como a maioria dos bloqueadores de conteúdo formatam suas próprias listas. No entanto, a Google ainda está mantendo um limite relativamente baixo no número de regras que uma extensão pode ter. As extensões só podem aplicar um máximo de 30.000 regras, o que parece um número alto, mas EasyList (uma das listas de bloqueio mais comuns) sozinha tem mais de 60.000 regras. A Google disse ao 9to5Google que o limite será aumentado para 300.000 no Chrome 89, o que é melhor, mas ainda não o suficiente para ter mais do que algumas listas de bloqueio comuns ativadas de uma vez.
Os desenvolvedores de extensão ainda estão divididos sobre as mudanças. Um líder de tecnologia da AdBlock Plus disse em um comunicado: "Estamos muito satisfeitos com a estreita colaboração estabelecida entre a equipe de extensões do Google Chrome e nossa própria equipe de engenharia para garantir que as extensões de bloqueio de anúncios ainda estejam disponíveis após o Manifest V3 entrar em vigor. " No entanto, o AdBlock Plus tem tantas isenções que provavelmente não chega perto de atingir o limite superior das regras de bloqueio. Raymond Hill, o desenvolvedor por trás do uBlock Origin, disse anteriormente "é realmente preocupante que a API declarativeNetRequest proposta torne impossível chegar a novos designs de mecanismo de filtragem".
A maioria das outras mudanças provavelmente passarão despercebidas para aqueles que não são desenvolvedores. O código hospedado remotamente não é mais permitido, portanto, as extensões só podem executar o código incluído em seu pacote (permitindo que a Google avalie todo o código durante o processo de revisão). Isso já era exigido pelo Firefox e outros, mas agora se tornará o padrão em todos os navegadores baseados no Chromium. A Google também está substituindo páginas de fundo por service workers e atualizando algumas APIs para funcionarem como Promises, tornando o desenvolvimento de extensões mais semelhante ao desenvolvimento moderno da web.
A nova API Manifest V3 já está sendo distribuída como parte do Chrome Beta 88, e a Google começará a aceitar extensões V3 assim que o Chrome 88 atingir a filial estável em meados de janeiro. Ainda não há uma data de desligamento das extensões V2, mas a Google diz que "os desenvolvedores podem esperar que o período de migração dure pelo menos um ano a partir de quando o Manifest V3 chegar ao canal estável."
A Microsoft já declarou que o Microsoft Edge dará suporte total ao padrão Manifest V3, incluindo os novos limites de bloqueadores de conteúdo. "A decisão de adotar as mudanças no Manifest V3", disse a empresa em uma postagem do blog, "é baseada em nossa dedicação em melhorar a privacidade, segurança e desempenho para o benefício de nossos usuários finais, bem como para permitir que os desenvolvedores estendam e forneçam recursos experiências no Microsoft Edge. " Opera, Vivaldi e alguns outros navegadores baseados em Chromium disseram anteriormente que continuariam a suportar a API webRequest mais antiga que todos os bloqueadores de conteúdo atuais usam. O Firefox tem sua própria implementação de API de extensão e, a partir de 2019, "não tem planos imediatos para remover o bloqueio de webRequest".
fonte: Android Police