This entry was posted on Wednesday, August 26th, 2015 at 1:36 am and is filed under WebExtensions, Mozilla. You can follow any responses to this entry through the RSS 2.0 feed.
Both comments and pings are currently closed.

It sounds like you've made decisions without community input, why?
Mozilla leadership did make this decision with little community input, and appear to be feeling the sting of it. They wanted to get something ready now, and have quietly committed engineers to working on compatibility with Chrome's API. Now that everyone's paying attention, they'll add the missing bits as dictated by developer demand.

Why are these big changes needed?
XPCOM is extremely difficult to support as a public-facing extension API. XUL and XBL are technical baggage.

It sounds like you're copying Google...
Mozilla is copying and FORKING the Chrome extension API, because it is popular, documented, and easy for simple extensions. The Chrome extension API was designed to work well with sandboxes and process separation, but Mozilla may add and change what developers need.

How will WebExtensions be cross-browser if you're extending Google's API?
Except for a small, shared API subset, WebExtensions won't be cross-browser. Basing the NEW API on what Chrome uses might attract Chrome extension developers to our platform. Microsoft is doing something similar for Edge.

Why WebExtensions and not Jetpack?
JetPack is incomplete and needs significant work to work well with future Firefox changes. Mozilla already has engineers implementing Chrome extension API compatibility, and decided that the potential benefits of WebExtensions outweigh the potential benefits of fixing JetPack. The community hope is that Mozilla will commit engineering resources to insure that WebExtensions will make JetPack redundant.

Which add-ons will stop working when XUL/XPCOM is deprecated?
All of the ones still using XUL/XPCOM will stop working, unless they are rewritten. Note that final deprecation may not be until 2018.

I'm writing a new extension today. What API should I use?
Unless you're writing a simple Chrome extension, wait and see!

Won't this limit experimentation?
For right now, yes. Eventually, Mozilla's NEW new extension API may be rich enough that this won't be a worry.

Why deprecate XUL now? Firefox is still using it internally.
Gecko is moving away from it, and all extensions and downstream projects (like Thunderbird and SeaMonkey) will be forced to migrate. [insert future of Firefox blog post]

Firefox kicks itself out of the market. Fullstop. In the last months Mozilla made choices against a huge userbase slapping them in the face. So it's ok if it dies, it's well deserved. Some kind of fork or underdog will take its place and Mozilla can go and cry a river with their cheap Chrome rippoff