Čo sa zmenilo
Manifest V2 (staré pravidlá) dával rozšíreniam výkonné API webRequest. Rozšírenia videli každú požiadavku, ktorú sa prehliadač chystal odoslať, a pri každej mohli rozhodnúť, či ju zablokovať. uBlock Origin to používal na to, aby:
- Blokoval požiadavky podľa typu obsahu (obrázok, skript, písmo atď.)
- Blokoval podľa stránky, ktorá požiadavku odoslala (povoliť pri vydavateľovi, blokovať pri sledovacom prvku tretej strany)
- Spúšťal na URL regulárne výrazy a zložitú logiku
- Okamžite aktualizoval zoznam blokovania bez kontroly v Internetovom obchode Chrome
Manifest V3 nahradil webRequest API declarativeNetRequest. Nové API prijíma pevný zoznam pravidiel, ktoré prehliadač interpretuje interne; rozšírenie nikdy nerozhoduje v reálnom čase. Počet pravidiel rozšírenia je pevne obmedzený. Aktualizácie zoznamu pravidiel musia prejsť aktualizáciami v Internetovom obchode Chrome.
Prečo to rozbilo blokovanie reklám
Zoznamy blokovania uBlock Origin sú veľké a často sa aktualizujú. Oboje sa s Manifest V3 rozbilo. Autor rozdiely podrobne zdokumentoval; v skratke:
- Plná verzia uBlock Origin nemohla podľa V3 ďalej fungovať, a preto bola z Chrome stiahnutá.
- uBlock Origin Lite vznikol priamo tak, aby sa vošiel do obmedzení V3. Robí menej.
- Ďalšie kvalitné blokovače (Adguard, Ghostery) vydali verzie kompatibilné s V3 s podobnými kompromismi.
Prečo to Google urobil
Oficiálnym dôvodom bola bezpečnosť a výkon: staré API webRequest dávalo rozšíreniam obrovský dosah, vrátane možnosti čítať celú prevádzku HTTP každej karty. Existuje skutočný argument, že išlo o príliš veľké oprávnenia.
Praktický dôvod, ktorý si všimlo mnoho ľudí: hlavným biznisom Googlu sú reklamy. Prehliadač, ktorého nové pravidlá obmedzujú blokovače reklám, vlastní najväčšia reklamná firma na svete. Tieto dve skutočnosti nevyhnutne neznamenajú, že zmena bola zlomyseľná, ale nevyzerá to dobre.
Ako prehliadače reagovali
Firefox ponechal Manifest V2 vedľa V3, takže plný uBlock Origin tam stále funguje. Brave, Vivaldi, Opera a Edge používajú Chromium a V3 preberajú. Väčšina z nich má vlastné zabudované blokovače reklám, na ktoré sa pravidlá rozšírení nevzťahujú, a to je dlhodobé riešenie. Dazr robí to isté: zabudovaný blokovač reklám na sieťovej vrstve s rovnakými zoznamami, aké používa uBlock Origin, ktorý vôbec nemusí prechádzať API rozšírení Chrome.