Mozilla neće prenositi sva ograničenja API-ja WebExtensions iz novog manifesta Chrome-a.

Tvrtka Mozilla najavila, da unatoč korištenju skupa proširenja temeljenog na API-ju WebExtensions u Firefoxu, programeri ne namjeravaju potpuno slijediti buduće treće izdanje manifestnog dokumenta za proširenja Chrome. Konkretno, u Firefoxu će se nastaviti podržavati blokirajući način rada API-ja webRequest, koji omogućava promjenu primljenog sadržaja u hodu i veoma je tražen u blokatorima oglasa i sustavima filtriranja sadržaja.

Glavna ideja prelaska na API WebExtensions bila je unifikacija tehnologije razvoja proširenja za Firefox i Chrome, pa je u sadašnjem obliku u Firefoxu gotovo 100% osigurana kompatibilnost s aktualnom drugom verzijom manifestnog dokumenta Chrome. Manifest definira popis mogućnosti i resursa dostupnih proširenjima. Zbog uvođenja ograničenja u treću verziju manifesta, koja su negativno percipirana od strane programera proširenja, Mozilla će se udaljiti od prakse potpune usklađenosti s manifestom i neće prenositi u Firefox promjene koje ometaju kompatibilnost s proširenjima.

Podsjećamo, da unatoč na svi prigovorima, tvrtka Google namjerava prekinuti podršku u Chromeu za blokirajući način rada API-ja webRequest, ograničavajući ga samo na način rada za čitanje i nudeći novi deklarativni API za filtriranje sadržaja declarativeNetRequest. Dok je API webRequest omogućavao povezivanje vlastitih handlera s punim pristupom mrežnim zahtjevima i sposobnošću da u hodu modificira promet, novi API declarativeNetRequest pruža pristup spremnom univerzalnom ugrađenom motoru za filtriranje, koji samostalno obrađuje pravila blokiranja, ne dopuštajući korištenje vlastitih algoritama filtriranja i ne omogućujući postavljanje složenih pravila koja se međusobno preklapaju ovisno o uvjetima.

Mozilla također razmatra isplativost prijenosa podrške za neka druga promjena iz treće verzije manifesta Chrome u Firefox, koja ometaju kompatibilnost s proširenjima:

  • Prelazak na izvršavanje usluga radnika u obliku pozadinskih procesa, što će od programera zahtijevati promjenu koda nekih proširenja. Unatoč tome, što je nova metoda optimalnija s aspekta performansi, Mozilla razmatra mogućnost zadržavanja podrške za izvršavanje pozadinskih stranica.
  • Nova granulatna varijanta zahtjeva za ovlaštenje — dodatak se neće moći aktivirati odmah za sve stranice (uklonjena je dozvola „all_urls”), već će raditi samo u kontekstu aktivne kartice, tj. korisnik će morati potvrditi rad dodatka za svaku stranicu. Mozilla istražuje načine jačanja kontrole pristupa, a da pritom ne odvlači pažnju korisniku.
  • Izmjena obrade Cross-origin zahtjeva — prema novom manifestu, na skripte za obradu sadržaja primjenjivat će se ista ograničenja ovlaštenja kao i za glavnu stranicu u koju se te skripte integriraju (primjerice, ako stranica nema pristup API-u za određivanje lokacije, tada skripta dodatka također neće dobiti taj pristup). Izmjena se planira implementirati u Firefoxu.
  • Zabrana izvršavanja koda preuzetog s vanjskih poslužitelja (riječ je o situacijama kada dodatak preuzima i izvršava vanjski kod). U Firefoxu se već primjenjuje blokada vanjskog koda i programeri Mozille nisu protiv jačanja takve zaštite primjenom dodatnih tehnika praćenja preuzimanja koda, predloženih u trećoj verziji manifesta.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster