Mozilla komencos akcepti aldonaĵojn bazitajn sur la tria versio de la Chrome-manifesto

La 21-an de novembro, la AMO-dosierujo (addons.mozilla.org) komencos akcepti kaj ciferece subskribi aldonaĵojn uzante la version 109 de la Chrome manifesto. Ĉi tiuj aldonaĵoj povas esti provitaj en noktaj konstruoj de Firefox. En stabilaj eldonoj, subteno por manifestversio 17 estos ebligita en Firefox 2023, planita por la 2023-a de januaro XNUMX. Subteno por la dua versio de la manifesto estos konservita por la antaŭvidebla estonteco, sed fine de XNUMX, post taksado de la dinamiko de translokigo de aldonoj al la tria versio de la manifesto, la ebleco malrekomendi subtenon por la dua versio de la manifesto. estos konsiderata.

La Chrome manifesto difinas la kapablojn kaj rimedojn disponeblajn por etendaĵoj skribitaj per la WebExtensions API. 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 evoluon 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 2024 de la manifesto, kaj subteno por versio XNUMX estos nuligita en januaro XNUMX. La ĉefa celo de la ŝanĝoj faritaj en la nova versio estas plifaciligi krei sekurajn kaj alt-efikecajn aldonaĵojn, kaj malfaciligi krei nesekurajn kaj malrapidajn aldonaĵojn. Ĉar la tria versio de la manifesto estis atakita kaj rompos multajn enhavblokadon kaj sekurecajn aldonaĵojn, Mozilla decidis foriri de esti plene kongrua kun la manifesto en Fajrovulpo kaj efektivigi kelkajn ŝ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.

Inter la funkcioj de efektivigo de la nova manifesto en Firefox:

  • Nova deklara enhava filtra API estis aldonita, sed male al Chrome, subteno por la malnova bloka reĝimo de la webRequest API ne estis ĉesigita.
  • 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 en la estonteco, Fajrovulpo subtenos Servolaboristojn, sed nuntempe ili estas anstataŭigitaj per nova Event Pages-mekanismo, 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.
  • 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.

    Por administri permesojn, nova butono "Unified Extensions" estis aldonita al la interfaco, kiu jam povas esti provita en noktaj konstruoj de Firefox. La butono disponigas rimedon por rekte kontroli al kiuj retejoj ĉiu aldonaĵo havas aliron—la uzanto povas doni kaj nuligi la aliron de aldonaĵo al iu ajn retejo. Permesa administrado validas nur por aldonaĵoj bazitaj sur la tria versio de la manifesto; por aldonaĵoj bazitaj sur la dua versio de la manifesto, granula alirkontrolo al retejoj ne estas farita.

    Mozilla komencos akcepti aldonaĵojn bazitajn sur la tria versio de la Chrome-manifesto
  • Ŝ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 subtenas ĉi tiun API kaj por la tria versio de la manifesto movos ĝin al la nomspaco "chrome.*".
  • 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 uzas eksteran kodan blokadon kaj la programistoj de Mozilo aldonis pliajn kodajn elŝutajn spurteknikojn 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