A empresa Mozilla , que apesar do uso no Firefox de um sistema de complementos baseado na API WebExtensions, os desenvolvedores não têm a intenção de seguir completamente a terceira edição futura do manifesto para complementos do Chrome. Em particular, o Firefox continuará a suportar o modo de bloqueio da API. , permitindo alterar o conteúdo recebido em tempo real e muito requisitado em bloqueadores de anúncios e sistemas de filtragem de conteúdo.
A ideia principal da transição para a API WebExtensions foi a unificação da tecnologia de desenvolvimento de complementos para Firefox e Chrome, portanto, na sua forma atual, o Firefox garante quase 100% de compatibilidade com a segunda versão atual do manifesto do Chrome. O manifesto define a lista de recursos e capacidades oferecidas aos complementos. Devido às restrições introduzidas na terceira versão do manifesto, percebidas negativamente pelos desenvolvedores de complementos, a Mozilla se afastará da prática de seguir completamente o manifesto e não incorporará no Firefox alterações que quebrem a compatibilidade com complementos.
Lembramos que , a empresa Google pretende interromper o suporte no Chrome ao modo de bloqueio da API webRequest, limitando-o a um modo somente leitura e oferecendo uma nova API declarativa para filtragem de conteúdo. . Se a API webRequest permitia conectar manipuladores próprios, com acesso total às requisições de rede e capazes de modificar o tráfego em tempo real, a nova API declarativeNetRequest oferece acesso a um motor embutido universal para filtragem, que processa automaticamente as regras de bloqueio, não permitindo o uso de algoritmos próprios de filtragem e não permitindo definir regras complexas que se sobreponham dependendo das condições.
A Mozilla também está avaliando a viabilidade de transferir para o Firefox o suporte a algumas outras alterações da terceira versão do manifesto do Chrome, que quebram a compatibilidade com complementos:
- A transição para a execução de Service workers na forma de processos em segundo plano, o que exigirá que os desenvolvedores alterem o código de alguns complementos. Embora o novo método seja mais otimizado do ponto de vista de desempenho, a Mozilla está considerando manter o suporte à execução de páginas em segundo plano.
- O novo modelo granular de solicitação de permissões - a extensão não poderá ser ativada imediatamente para todas as páginas (a permissão "all_urls" foi removida) e funcionará apenas no contexto da aba ativa, ou seja, o usuário precisará confirmar o funcionamento da extensão para cada site. A Mozilla está explorando maneiras de fortalecer o controle de acesso sem distrair constantemente o usuário.
- Mudança no tratamento de solicitações Cross-origin - de acordo com o novo manifesto, as mesmas restrições de permissões que se aplicam à página principal também se aplicarão a scripts de manipulação de conteúdo que estão sendo injetados (por exemplo, se a página não tiver acesso à API de localização, o script da extensão também não terá esse acesso). A mudança está prevista para ser implementada no Firefox.
- Proibição da execução de código carregado de servidores externos (diz respeito a situações em que a extensão carrega e executa código externo). O Firefox já aplica o bloqueio de código externo e os desenvolvedores da Mozilla não estão contra fortalecer essa proteção, utilizando técnicas adicionais de monitoramento de carregamento de código propostas na terceira versão do manifesto.
Fonte: opennet.ru
