Hvad er ændret
Manifest V2 (de gamle regler) gav udvidelser et kraftfuldt API kaldet webRequest. Udvidelser kunne se hver anmodning, browseren var ved at lave, og for hver enkelt afgøre, om den skulle blokeres. uBlock Origin brugte det til at:
- Blokere anmodninger ud fra indholdstypen (billede, script, skrifttype osv.)
- Blokere ud fra den side, der lavede anmodningen (tillade hos udgiveren, blokere hos trackeren fra tredjepart)
- Køre regex og kompleks logik på URL'er
- Opdatere sin blokeringsliste med det samme uden at gå gennem gennemgangen i Chrome Web Store
Manifest V3 erstattede webRequest med declarativeNetRequest. Det nye API tager en fast liste af regler, som browseren fortolker internt, og udvidelsen får aldrig lov til at træffe beslutninger i realtid. Der er et fast loft over, hvor mange regler en udvidelse kan have. Opdateringer af regellisten skal leveres via opdateringer i Chrome Web Store.
Hvorfor det ødelagde reklameblokering
uBlock Origins blokeringslister er store og opdateres ofte. Begge dele gik i stykker under Manifest V3. Udvikleren dokumenterede forskellene i detaljer; kort fortalt:
- Den fulde version af uBlock Origin kunne ikke fortsætte under V3, så den blev fjernet fra Chrome.
- uBlock Origin Lite blev bygget specifikt til at passe til V3's begrænsninger. Den gør mindre.
- Andre gode blokeringer (Adguard, Ghostery) udgav V3-kompatible versioner med lignende kompromiser.
Hvorfor Google gjorde det
Den officielle begrundelse var sikkerhed og ydeevne: det gamle webRequest-API gav udvidelser en enorm rækkevidde, herunder mulighed for at læse al HTTP-trafik i hver fane. Der er et reelt argument for, at det var for mange rettigheder.
Den praktiske grund, som mange lagde mærke til: Googles primære forretning er reklamer. Den browser, hvis nye regler begrænser reklameblokeringer, ejes af verdens største reklamevirksomhed. De to fakta betyder ikke nødvendigvis, at ændringen var ondsindet, men det ser ikke godt ud.
Hvordan browserne reagerede
Firefox beholdt Manifest V2 ved siden af V3, så den fulde uBlock Origin virker stadig der. Brave, Vivaldi, Opera og Edge bruger alle Chromium og arver V3. De fleste af dem leverer deres egne indbyggede reklameblokeringer, der ikke er bundet af reglerne for udvidelser, og det er den langsigtede løsning. Dazr gør det samme: en indbygget reklameblokering på netværksniveau med de samme blokeringslister, som uBlock Origin bruger, der slet ikke behøver passe gennem Chromes API til udvidelser.