WebExtensions/FAQ

From MozillaWiki
Jump to navigation Jump to search

It sounds like you're copying Google....

The Chrome extension API was designed to work well with process separation and we are certainly taking inspiration from it and copying functionality where it makes sense. In other areas it doesn't.

How will the WebExtensions API be different from the Chrome Extension API

You could imagine a Venn Diagram of the two extension APIs. One circle is Chrome's, the other WebExtensions. The overlapping are are basic extension functionality (give some examples).

Outside of that overlap area would be the areas of differentiation. For example, we don't have much interest in providing easy access to Google's services though WebExtensions. We do however want to support certain use cases that don't seem to be a priority for Google. We have identified a few such areas that we want to support such as ad-blocking, tab management, UI modification and time/location shifting content.

Why WebExtensions and not Jetpack?

How will WebExtensions be cross-browser if you're extending Google's API

Which add-ons will stop working after the deprecation?

I'm writing a new extension today. What API should I use?

This WebExtension API sounds limiting

We certainly don't intend it to be. Our goal is for the WebExtension API to cover every reasonable use case that addon authors have.

Won't this limit experimentation

As is, it will. We are trying to devise a system that will allow for extension authors to have the flexibility to implement features that the WebExtension API doesn't currently allow. We will post more information about that when there is something solid to share. The intent is for add-on authors to experiment through this mechanism with the knowledge that there are no guarantees of compatibility between Firefox releases and use that to inform future additions to the WebExtension API

I already have a XUL extension. How is this not terrible news for me?

There is certainly some short term pain that we're inflicting, but we hope that the long term gains are worth it. In the short term (~18 months) you will need to rewrite your add-on to use the new APIs. However, after that, you're done! The intention is for the WebExtension API to be stable enough that addon authors can rely on it not to break between Firefox releases.

Why deprecate XUL now? Firefox is still using it internally.

Yes, Firefox is using XUL internally right now. But, Firefox is actively planning for the removal of XUL internally. That will translate into death by 100s of paper cuts (i.e. breakage with every release) for addons that depend on Firefox's usage of XUL as it is progressively removed from the product.

Why keep the .xpi packaging format?

It sounds like you've made decisions without community input