Fajrovulpo komencis testi la trian version de la Chrome manifesto

Mozilla anoncis, ke ĝi komencis testi la efektivigon de Fajrovulpo de la tria versio de la Chrome manifesto, kiu difinas la kapablojn kaj rimedojn disponeblajn por aldonaĵoj skribitaj per la WebExtensions API. Por testi la trian version de la manifesto en Firefox 101 beta, vi devus agordi la parametron "extensions.manifestV3.enabled" al vera kaj la parametron "xpinstall.signatures.required" al malvera en la paĝo pri:config. Por instali aldonaĵojn, vi povas uzi la interfacon pri:debugging. La tria versio de la manifesto estas planita por esti ebligita defaŭlte antaŭ la fino de la jaro.

Komencante kun versio 57, Firefox tute ŝanĝis al uzado de la WebExtensions API por disvolvi aldonaĵojn kaj ĉesis subteni XUL-teknologion. La transiro al WebExtensions ebligis unuigi la disvolviĝon de aldonaĵoj kun la platformoj Chrome, Opera, Safari kaj Edge, simpligis la portadon de aldonaĵoj inter malsamaj retumiloj kaj ebligis plene uzi la multprocezan reĝimon de operacio (WebExtensions-aldonaĵoj povas esti ekzekutitaj en apartaj procezoj, izolitaj de la resto de la retumilo). Por unuigi la disvolviĝon de aldonaĵoj kun aliaj retumiloj, Fajrovulpo disponigas preskaŭ plenan kongruon kun la dua versio de la Chrome manifesto.

Chrome nuntempe laboras por moviĝi al versio 2023 de la manifesto, kaj subteno por versio XNUMX estos nuligita en januaro XNUMX. Ĉar la tria versio de la manifesto atakis kaj rompos multajn enhavblokadon kaj sekurecajn aldonaĵojn, Mozilla decidis foriri de la praktiko certigi plenan kongruon kun la manifesto en Fajrovulpo kaj efektivigi iujn ŝanĝojn alimaniere.

La ĉefa malkontento pri la tria versio de la manifesto rilatas al la tradukado al nurlegebla reĝimo de la webRequest API, kiu ebligis konekti viajn proprajn prizorgantojn, kiuj havas plenan aliron al retaj petoj kaj povas modifi trafikon sur la flugo. Ĉi tiu API estas uzata en uBlock Origin kaj multaj aliaj aldonaĵoj por bloki netaŭgan enhavon kaj provizi sekurecon. Anstataŭ la webRequest API, la tria versio de la manifesto ofertas limigitan kapablecan deklaran NetRequest API, kiu disponigas aliron al enkonstruita filtra motoro kiu sendepende prilaboras blokajn regulojn, ne permesas la uzon de siaj propraj filtraj algoritmoj, kaj ne faras permesas starigi kompleksajn regulojn, kiuj interkovras unu la alian depende de la kondiĉoj.

En la efektivigo de la tria versio de la manifesto proponita en Fajrovulpo, nova deklara API por enhavfiltrado estis aldonita, sed male al Chrome, ili ne ĉesis subteni la malnovan blokan reĝimon de funkciado de la webRequest API. Aliaj trajtoj de la nova manifesta efektivigo en Fajrovulpo inkluzivas:

  • La manifesto difinas la anstataŭigon de fonaj paĝoj kun la opcio Servo-Laboristoj, kiu funkcias kiel fonaj procezoj (Fonaj Servaj Laboristoj). Por certigi kongruecon, Fajrovulpo efektivigos ĉi tiun postulon, sed aldone proponos novan mekanismon de Event Paĝoj, kiu estas pli konata al retaj programistoj, ne postulas kompletan relaboron de aldonaĵoj kaj forigas la limigojn asociitajn kun la uzo de Servaj Laboristoj. Eventaj Paĝoj permesos al ekzistantaj fonpaĝaj aldonoj konformiĝi al la postuloj de la tria versio de la manifesto, konservante aliron al ĉiuj kapabloj necesaj por labori kun la DOM. En la manifesta efektivigo disponebla por testado en Fajrovulpo, nur Eventaj Paĝoj estas nuntempe subtenataj, kaj subteno por solvo bazita sur Servaj Laboristoj estas promesita aldonita poste. Apple subtenis la proponon kaj efektivigis Event Paĝojn en Safari Technology Preview 136.
  • La nova granula permesa peto-modelo - la aldonaĵo ne povos esti aktivigita por ĉiuj paĝoj samtempe (la permeso “all_urls” estis forigita), sed funkcios nur en la kunteksto de la aktiva langeto, t.e. la uzanto devos konfirmi ke la aldonaĵo funkcias por ĉiu retejo. En Fajrovulpo, ĉiuj petoj por aliri retejajn datumojn estos konsiderataj laŭvolaj, kaj la fina decido pri doni aliron estos farita de la uzanto, kiu povos selekteme decidi kiun aldonaĵon doni aliron al siaj datumoj en aparta retejo.
  • Ŝanĝo en la traktado de transdevenaj petoj - laŭ la nova manifesto, enhavaj prilaboraj skriptoj estos submetitaj al la samaj permesaj limigoj kiel por la ĉefpaĝo en kiu ĉi tiuj skriptoj estas enkonstruitaj (ekzemple, se la paĝo ne havas aliron al la loka API, tiam la skripto-aldonaĵoj ankaŭ ne ricevos ĉi tiun aliron). Ĉi tiu ŝanĝo estas plene efektivigita en Firefox.
  • Promeso bazita API. Fajrovulpo jam subtenas ĉi tiun API kaj movos ĝin al la nomspaco "chrome.*" por la tria versio de la manifesto.
  • Malpermesante la ekzekuton de kodo elŝutita de eksteraj serviloj (ni parolas pri situacioj, kiam la aldonaĵo ŝarĝas kaj ekzekutas eksteran kodon). Fajrovulpo jam uzas eksteran kodan blokadon, kaj Mozilo-programistoj aldonis pliajn kodajn elŝutajn spurajn teknikojn ofertitajn en la tria versio de la manifesto. Por enhavprilaboraj skriptoj, estas disponigita aparta enhava limigo-politiko (CSP, Enhava Sekurecpolitiko).

fonto: opennet.ru

Aldoni komenton