Mozilla , dat ondanks het gebruik van het systeem voor extensies op basis van de WebExtensions API in Firefox, de ontwikkelaars niet van plan zijn om volledig te volgen met de toekomstige derde editie van het manifest voor Chrome-extensies. In het bijzonder zal de ondersteuning voor de blokkeringsmodus van de API in Firefox worden voortgezet , waarmee de ontvangen inhoud on-the-fly kan worden gewijzigd en dat populair is in advertentieblokkers en contentfiltersystemen.
Het hoofddoel van de overstap naar de WebExtensions API was de uniformering van de technologie voor het ontwikkelen van extensies voor Firefox en Chrome, waardoor in de huidige versie in Firefox bijna 100% compatibiliteit met de actuele tweede versie van het Chrome-manifest is gegarandeerd. Het manifest definieert de lijst met mogelijkheden en bronnen die aan extensies worden aangeboden. Vanwege de invoering van beperkende maatregelen in de derde versie van het manifest, die door ontwikkelaars van extensies als negatief wordt ervaren, zal Mozilla afzien van de praktijk van volledige naleving van het manifest en de wijzigingen die de compatibiliteit met extensies in Firefox schaden, niet overnemen.
de belangrijkste , heeft Google van plan om de ondersteuning voor de blokkeringsmodus van de webRequest API in Chrome te beƫindigen, door deze te beperken tot alleen-lezen modus en een nieuwe declaratieve API voor contentfiltering aan te bieden. In het nieuwe manifest zijn ook andere wijzigingen opgenomen die van invloed zijn op de compatibiliteit met extensies. Enkele hiervan zijn:
Mozilla overweegt ook de haalbaarheid van het overdragen van de ondersteuning voor enkele andere wijzigingen uit de derde versie van het Chrome-manifest naar Firefox, die de compatibiliteit met extensies schaden:
- De overstap naar het uitvoeren van Service workers in de vorm van achtergrondprocessen, wat vereisen dat ontwikkelaars de code van sommige extensies moeten aanpassen. Hoewel de nieuwe methode optimaler is vanuit prestatieoogpunt, overweegt Mozilla de mogelijkheid om de ondersteuning voor achtergrondpagina's te behouden.
- Het nieuwe granulaire model voor het aanvragen van bevoegdheden ā een extensie kan niet onmiddellijk activeren voor alle pagina's (de bevoegdheid āall_urlsā is verwijderd), maar zal alleen werken in de context van het actieve tabblad, d.w.z. de gebruiker moet de werking van de extensie voor elke site bevestigen. Mozilla onderzoekt manieren om de toegangscontrole te versterken zonder gebruikers constant af te leiden.
- Wijziging in de verwerking van Cross-origin verzoeken ā volgens het nieuwe manifest zullen dezelfde beperkingen van bevoegdheden gelden voor scripts die inhoud verwerken als voor de hoofdpagina waarop deze scripts zijn ingebed (bijvoorbeeld, als de pagina geen toegang heeft tot de locatie-API, dan zal het uitbreidingsscript ook deze toegang niet krijgen). Deze wijziging is gepland om in Firefox te worden geĆÆmplementeerd.
- Verbod op het uitvoeren van code die van externe servers is geladen (dit betreft situaties waarbij een extensie externe code laadt en uitvoert). In Firefox is er al een blokkering van externe code en de ontwikkelaars van Mozilla staan niet weigerachtig tegenover het versterken van deze bescherming door extra technieken toe te passen om het laden van code te traceren, zoals voorgesteld in de derde versie van het manifest.
Bron: opennet.ru
