Firefox: Mozilla ändert die Regeln zur Add-on-Entwicklung
Mozilla hat Veränderungen an den Add-ons für Firefox angekündigt, die tief in deren Entwicklung eingreifen. Erweiterungen, die auf XUL- und XPCOM-APIs basieren, werden nicht mehr funktionieren. Künftig soll die neue Schnittstelle WebExtensions genutzt werden, die mit anderen Browsern kompatible Add-ons ermöglicht.
Die neue Erweiterungs-API WebExtensions hat laut Mozilla-Wiki aber auch noch weitere Vorteile. Der Review-Prozess für neue Add-ons soll damit einfacher werden und zügiger vonstatten gehen. Zudem sollen sich interne Code-Änderungen in Firefox nicht mehr so leicht negativ auf Add-ons auswirken können. Ein weiterer wichtiger Grund ist die Kompatibilität mit dem bereits seit über sechs Jahren entwickelten Projekt Electrolysis (e10s), bei dem es um Multiprozessarchitektur geht. In den Nightly-Versionen und der Developer Edition ist e10s bereits aktiviert, mit der Beta-Version von Firefox 42 soll e10s den Anwendern als Opt-in angeboten werden. Zum Jahresende könnte die Multiprozessarchitektur dann frühestens zum Standard avancieren.
Um dazu kompatibel zu sein, müssen Entwickler ihre Add-ons entweder anpassen und ein Kompatibilitäts-Flag setzen oder ihre Erweiterung gleich nach WebExtensions portieren. Dazu hat Mozilla eine Webseite geschaltet, die Entwicklern hilft, ihre Add-ons kompatibel zu bekommen. Allerdings merkt Mozilla an, dass die WebExtensions noch in einem sehr frühen Stadium sind und auch die High-Level-APIs des Add-ons-SDK, die die nächst bessere Wahl zur Anpassung bieten, auch noch nicht fertig sind.
Eine weitere Neuentwicklung, die mit vielen Add-ons nicht kompatibel ist, ist die neue Layout-Engine Servo. Um diese einsetzen zu können, müssen XUL, XBL und XPCOM in Rente gehen. Dieser Schnitt soll in den nächsten 12 bis 18 Monaten geschehen. XPCOM- und XUL-basierte Add-ons werden danach irgendwann nicht mehr funktionieren. Der Übergang soll allerdings fließend sein, da WebExtensions heute noch nicht die volle Funktionalität der alten API umsetzen kann.
An den Plänen zur Signierung von Add-ons ändert das nichts. Mit Firefox 40 wurden erstmals – jedoch noch in abgemilderter Form – die angekündigten Signaturen für Add-ons umgesetzt. Soll ein Add-on installiert werden, das über keine Signatur verfügt, so erscheint eine Warnung; das entsprechende Add-on kann aber trotzdem installiert werden. Firefox 41 erlaubt es dann nur noch über about:config, die Überprüfung der Signatur abzuschalten. Mit Firefox 42 entfällt schließlich auch diese Möglichkeit. Lediglich ESR-Versionen sollen für einen etwas längeren Zeitraum unsignierte Add-ons weiter nutzen können.
Mozilla begibt sich auf eine Gratwanderung. Einerseits besteht Handlungszwang, Firefox muss modernisiert werden oder verliert das Rennen. Andererseits wird man mit einer längerfristigen Baustelle viele Entwickler und auch Anwender verärgern oder gar vertreiben. Erste Bedenken sind bereits geäußert worden, auf die Bill McCloskey in seinem Blog eingeht.