The year 2017 is an important one for Mozilla and Firefox. Multi-process will be enabled for all users of the web browser, sandboxing is introduced, the first bits of Project Quantum are integrated into the web browser, and the add-on system will be switched exclusively to WebExtensions.
Mozilla revealed an updated add-ons roadmap yesterday that highlights major milestones on the way to making Firefox WebExtensions exclusive.
We talked about Mozilla's plans for Firefox in this regard before. WebExtensions is a set of APIs that developers can utilize to create add-ons for browsers. Firefox is not the only browser to use WebExtensions, as others, Chrome, Opera and Edge, use the system as well.
That's good for cross-browser development, better for Mozilla's add-ons review process, better for add-on compatibility with future Firefox versions, and probably also better for browser stability.
Firefox Add-ons Roadmap for 2017
WebExtensions is a good addition to Firefox, and most Firefox users who criticize Mozilla are not doing it because of the integration, but because of Mozilla's plans for the browser's legacy add-on systems.
Mozilla plans to cut all ties to those add-on systems. This means that legacy add-ons won't run in Firefox anymore when the plug is pulled.
Legacy add-ons, as defined by Mozilla, are all extensions that are not WebExtensions. This includes anything with XUL, bootstrapped extensions, SDK extensions, embedded WebExtensions, and complete themes.
Language packs, dictionary files, OpenSearch providers, lightweight themes, and add-ons that are exclusively available for Thunderbird or SeaMonkey are not considered legacy by Mozilla.
Any legacy add-on that is not ported by its author to WebExtensions -- if that is possible -- will no longer work in Firefox 57.
A big issue that developers face right now is that WebExtensions is a work in progress. Not all APIs are available yet, and some APIs that are required for certain legacy add-on features may never make it into Firefox.
Firefox 53: April 18, 2017
- New legacy add-ons won't be accepted anymore on AMO (addons.mozilla.org). Updates to existing add-ons are still accepted.
- Add-ons may only load binaries if they use the Native Messaging API.
- Multi-process is on by default for all users. Only exception for systems with add-ons that state explicitly that they are not compatible with multi-process.
Firefox 54 to 56: June 13, 2017 to October 3, 2017
- Mozilla launches multiple content process for E10s in Firefox 55 and security sandboxing in Firefox 54. This may impact some legacy add-ons.
Firefox 57: November 28, 2017
- Legacy add-ons are no longer supported. Firefox won't load legacy add-ons anymore. Firefox 57 is WebExtensions exclusive-
- Multi-process compatibility shims are removed from Firefox.
- Legacy add-ons remain on AMO for the time being. Mozilla has yet to announce a deadline for end of support for these listings (the listings may still be updated for instance)
It is too early to conclude how the move will affect Firefox's add-ons ecosystem. Some developers announced that they won't migrate to WebExtensions already, and the same is certainly true for add-ons that are no longer in development but still working right now.
Some of these may be ported by other authors, and there will certainly be an increase of Chrome extension ports to Firefox. Also, most Chrome extensions will work in Firefox eventually when Firefox reaches parity with Chrome in regards to WebExtensions APIs.
WebExtensions will limit Firefox add-ons in regards to what they can do to the browser.
Now You: How do you see this pan out in the long run?