Firefox ha començat a provar la tercera versió del manifest de Chrome

Mozilla ha anunciat que ha començat a provar la implementació de Firefox de la tercera versió del manifest de Chrome, que defineix les capacitats i els recursos disponibles per als complements escrits amb l'API WebExtensions. Per provar la tercera versió del manifest a Firefox 101 beta, hauríeu d'establir el paràmetre "extensions.manifestV3.enabled" a true i el paràmetre "xpinstall.signatures.required" a false a la pàgina about:config. Per instal·lar complements, podeu utilitzar la interfície about:debugging. La tercera versió del manifest està programada per activar-se de manera predeterminada a finals d'any.

A partir de la versió 57, Firefox va passar completament a utilitzar l'API WebExtensions per desenvolupar complements i va deixar de donar suport a la tecnologia XUL. La transició a WebExtensions va permetre unificar el desenvolupament de complements amb les plataformes Chrome, Opera, Safari i Edge, va simplificar la portabilitat de complements entre diferents navegadors web i va permetre utilitzar plenament el mode multiprocés de funcionament (els complements de WebExtensions es poden executar en processos separats, aïllats de la resta del navegador). Per unificar el desenvolupament de complements amb altres navegadors, Firefox proporciona una compatibilitat gairebé total amb la segona versió del manifest de Chrome.

Chrome està treballant actualment per passar a la versió 2023 del manifest, i el suport per a la versió XNUMX deixarà de funcionar el gener de XNUMX. Com que la tercera versió del manifest ha estat criticada i trencarà molts complements de bloqueig de contingut i seguretat, Mozilla ha decidit allunyar-se de la pràctica de garantir la compatibilitat total amb el manifest a Firefox i implementar alguns canvis de manera diferent.

La principal insatisfacció amb la tercera versió del manifest està relacionada amb la traducció al mode de només lectura de l'API webRequest, que va permetre connectar els vostres propis gestors que tenen accés total a les sol·licituds de xarxa i poden modificar el trànsit sobre la marxa. Aquesta API s'utilitza a uBlock Origin i molts altres complements per bloquejar contingut inadequat i proporcionar seguretat. En lloc de l'API webRequest, la tercera versió del manifest ofereix una API declarativa NetRequest de capacitat limitada, que proporciona accés a un motor de filtratge integrat que processa de manera independent les regles de bloqueig, no permet l'ús dels seus propis algorismes de filtratge i no permet permeten establir regles complexes que se superposen en funció de les condicions.

En la implementació de la tercera versió del manifest proposada a Firefox, es va afegir una nova API declarativa per al filtratge de contingut, però a diferència de Chrome, no deixaven de suportar l'antic mode de funcionament de bloqueig de l'API webRequest. Altres característiques de la nova implementació de manifest a Firefox inclouen:

  • El manifest defineix la substitució de pàgines en segon pla amb l'opció Treballadors del servei, que s'executa com a processos en segon pla (Traballadors del servei en segon pla). Per garantir la compatibilitat, Firefox implementarà aquest requisit, però a més oferirà un nou mecanisme de pàgines d'esdeveniments, que és més familiar per als desenvolupadors web, no requereix una reelaboració completa dels complements i elimina les limitacions associades a l'ús de Service Workers. Les pàgines d'esdeveniments permetran que les addicions de pàgines de fons existents s'ajustin als requisits de la tercera versió del manifest, tot mantenint l'accés a totes les capacitats necessàries per treballar amb el DOM. A la implementació de manifest disponible per a proves al Firefox, actualment només s'admeten les pàgines d'esdeveniments i es promet que s'afegirà més tard el suport per a una solució basada en els treballadors de servei. Apple va donar suport a la proposta i va implementar pàgines d'esdeveniments a Safari Technology Preview 136.
  • El nou model de sol·licitud de permís granular: el complement no es podrà activar per a totes les pàgines alhora (s'ha eliminat el permís "all_urls"), però només funcionarà en el context de la pestanya activa, és a dir. l'usuari haurà de confirmar que el complement funciona per a cada lloc. A Firefox, totes les sol·licituds d'accés a les dades del lloc es consideraran opcionals, i la decisió final sobre la concessió de l'accés la prendrà l'usuari, que podrà decidir selectivament quin complement permetrà l'accés a les seves dades en un lloc concret.
  • Canvi en la gestió de les sol·licituds d'origen creuat: d'acord amb el nou manifest, els scripts de processament de contingut estaran subjectes a les mateixes restriccions de permís que per a la pàgina principal en què s'incrusten aquests scripts (per exemple, si la pàgina no té accés al ubicació, els complements de script tampoc rebran aquest accés). Aquest canvi està totalment implementat a Firefox.
  • API basada en promeses. Firefox ja admet aquesta API i la traslladarà a l'espai de noms "chrome.*" per a la tercera versió del manifest.
  • Prohibició de l'execució de codi descarregat de servidors externs (estem parlant de situacions en què el complement carrega i executa codi extern). Firefox ja fa servir el bloqueig de codi extern i els desenvolupadors de Mozilla han afegit tècniques de seguiment de descàrrega de codi addicionals que s'ofereixen a la tercera versió del manifest. Per als scripts de processament de contingut, es proporciona una política de restricció d'accés al contingut (CSP, Política de seguretat de contingut) independent.

Font: opennet.ru

Afegeix comentari