Firefoxis on alanud Chrome'i kolmanda versiooni manifesti testimine.

Mozilla ettevõte kuulutas välja Firefoxi kolmanda versiooni masti testimise alguse, mis määratleb võimalused ja ressursid, mis on saadaval täiustuste jaoks, mis on kirjutatud WebExtensions API abil. Kolmanda versiooni masti testimiseks tuleb Firefox 101 beetaversioonis lehelt about:config seada parameeter „extensions.manifestV3.enabled” väärtusele true ja parameeter „xpinstall.signatures.required” väärtusele false. Täiustuste installimiseks saab kasutada lehte about:debugging. Kolmanda versiooni mastiga vaikimisi lubamine on planeeritud aasta lõpuks.

Alates versioonist 57 on Firefox täielikult üle läinud WebExtensions API kasutamisele täiustuste arendamiseks ja lõpetanud XUL tehnoloogia toetamise. Üleminek WebExtensions'ile on võimaldanud täiustuste arendamise ühtlustamise Chrome'i, Opera, Safari ja Edge platvormidega, lihtsustanud täiustuste üleviimist erinevate veebibrauserite vahel ja andnud võimaluse täielikult ära kasutada mitme protsessi töörežiimi (WebExtensions täiustused saavad töötada eraldi protsessides, eristatuna muudest brauseri osadest). Täiustuste arendamise ühtlustamiseks teiste brauseritega tagab Firefox peaaegu täieliku ühilduvuse Chrome'i teise versiooniga.

Praegu on Chrome'is käimas kolmanda versiooni masti ülemineku töö, samas kui teise versiooni toetus lõpetatakse 2023. aasta jaanuaris. Kuna kolmas versioon on saanud kriitikat ja põhjustab paljude soovimatute sisulehe täiustuste ja turvalisuse tagamise katkemist, otsustas Mozilla loobuda täieliku ühilduvuse tagamise praktikatest Firefoxis ja rakendada mitmeid muudatusi erineval viisil.

Kolmas versioon manifeedist on peamiselt kriitikat saanud API webRequest lugemise režiimi muutmise tõttu, mis lubas kasutada oma töötlejaid, kellel oli täielik ligipääs võrgupäringutele ja kes suudsid reaalajas liiklust modifitseerida. Seda API-d kasutatakse uBlock Originis ja paljudes teistes täiendustes, et blokeerida soovimatut sisu ja tagada turvalisus. Kolmandas versioonis on API webRequest asemel pakutud piiratud võimalustega API declarativeNetRequest, mis annab juurdepääsu sisseehitatud filtrimootorile, mis töötleb blokeerimisreegleid iseseisvalt, ei luba kasutada oma filtreerimisalgoritme ning ei võimalda määrata keerulisi reegleid, mis kattuvad sõltuvalt tingimustest.

Firefoxi kolmanda versiooni masti ettepanekus on lisatud uus deklareeritud API sisu filtreerimiseks, kuid erinevalt Chrome'ist ei lõpetatud vanade blokeerimise režiimi API webRequest toetamist. Muude Firefoxi uue masti elluviimise omaduste seas:

  • Manifestriba on määratletud taustalehtede asendamine teenuse töötlejate versiooniga, mis töötab taustprotsessidena (Background Service Workers). Ühilduvuse tagamiseks rakenduses Firefox rakendatakse seda nõuet, kuid lisaks pakutakse uut mehhanismi Event Pages, mis on veebiarendajatele tuttavam, ei nõua lisandite täielikku ümberkujundamist ning kõrvaldab teenuse töötlejatega seotud piirangud. Event Pages võimaldab olemasolevad lisandite taustalehed viia kolmanda versiooni manifeesti nõuete kohaselt, säilitades juurdepääsu kõigile DOM-i töötlemiseks vajalikele funktsioonidele. Firefoxi testimisele avatud manifeesti rakenduses toetatakse praegu ainult Event Pages'i ja teenuse töötlejatele põhineva lahenduse toetust lubatakse hiljem lisada. Ettevõte Apple toetas ettepanekut ja rakendas Event Pages'i Safari Technology Preview 136 väljalaskes.
  • Uus granuleeritud õiguste taotlemise mudel — täiendust ei saa aktiveerida kohe kõigil lehtedel (kood „all_urls“ on eemaldatud), vaid see töötab ainult aktiivse vahekaartide kontekstis, st kasutajal tuleb kinnitada täienduse toimimist igal saidil. Firefoxis käsitletakse kõiki päringuid saidi andmete ligipääsu jaoks valikulisena, ning lõpliku otsuse juurdepääsu andmisest teeb kasutaja, kes saab eraldi otsustada, millisele täiendusele oma andmetele juurdepääsu anda antud saidil.
  • Ristallikaudsete päringute töötlemise muutmine - vastavalt uuele manifestile kehtivad sisu töötlemise skriptide jaoks samad juurdepääsupiirangud nagu peamise lehe jaoks, kuhu need skriptid sisestatakse (näiteks, kui leht ei pääse API-le, mis määrab asukohta, siis ei saa ka laiendi skript sellele juurde pääseda). See muudatus on Firefoxis täielikult rakendatud.
  • Promise'i põhine API. Firefox toetab juba seda API-d ja kolmanda versiooni manifeedi jaoks viib selle «chrome.*» ruumi.
  • Koodi käitamise keelamine, mis on laaditud väljastpoolt serverid (jutt on olukordadest, kus lisa laadib ja käitab väliskoodi). Firefoxis kasutatakse juba väliskoodi blokeerimist ja Mozilla arendajad on lisanud kolmanda versiooni manifeedis ette nähtud koodi allalaadimise jälgimise täiendavad tehnikad. Sisutöötlusskripti jaoks on esitatud eraldi juurdepääsupiirangute poliitika (CSP, Content Security Policy).

Allikas: opennet.ru

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster