|
|
Line 1: |
Line 1: |
| '''Status: draft''' | | '''Status: draft''' |
|
| |
|
| Mozilla has worked with Microsoft and Opera to implement browser extensions so that developers can write extensions that work across multiple browsers. The preliminary specification matches what Google has implemented in Chrome so that extensions will work on Chrome, Edge, Opera and Firefox.
| | Work on a cross-browser browser extension platform is currently taking place in the [https://github.com/w3c/webextensions WebExtensions Community Group] (WECG). This group was [https://www.w3.org/community/webextensions/2021/06/04/forming-the-wecg/ formally created] in June, 2021 with the participation of Apple, Google, Microsoft and Mozilla. |
|
| |
|
| The [https://browserext.github.io/browserext/ specification can be found on GitHub]. | | The WECG is largely focused on facilitating communication amongst participating browser vendors and with the extension developer community. The [https://w3c.github.io/webextensions/specification/index.html editors draft of the WebExtensions specification] is hosted on GitHub. |
|
| |
|
| Mozilla will continue to work on refining and approving the common browser extension specification as part of our support for open Web standards. While that process proceeds at its own pace, however, the Firefox team will continue to innovate within the WebExtensions API, providing additional features that allow developers to create increasingly creative and powerful extensions. Some of these new API may be relevant to other browsers and we will work within the standards track process to ensure their availability as an open Web standard. Other API may make sense only within the context of the Firefox browser. To understand the current status of any given API, developers should consult the [https://github.com/mdn/browser-compat-data/blob/master/compat-data-schema.md#status-information status-information property] of the API on [https://developer.mozilla.org MDN].
| | == Previous specification work == |
|
| |
|
| The status-information property contains three fields, which can be used to interpret the specification status of an API as follows:
| | Mozilla worked with Microsoft and Opera to implement browser extensions so that developers can write extensions that work across multiple browsers. A [https://browserext.github.io/browserext/ preliminary specification] was created by the [https://www.w3.org/community/browserext/ Browser Extension Community Group] that matched Google Chrome's model so that WebExtensions will work on Chrome, Edge, Opera and Firefox. |
| | |
| If ''deprecated'' is TRUE, ignore all other fields. This API is deprecated. Otherwise, use the value of the ''experimental'' and ''standards_track'' fields to determine the status of the API as follows (the two MDN fields gives us four possible states):
| |
| | |
| {| class="wikitable"
| |
| |-
| |
| | || || experimental ||
| |
| |-
| |
| | || || TRUE || FALSE
| |
| |-
| |
| | standards_track || TRUE || 3 || 4
| |
| |-
| |
| | || FALSE || 1 || 2
| |
| |}
| |
| | |
| * '''1 - Firefox-only (preliminary)''': an API in the initial stages of development and not part of any standards track. It may be a prototype or only partially implemented and is likely to change.
| |
| * '''2 - Firefox-only (stable)''': a stable API that is unlikely to change, it is not part of any standards track. It may pertain to a Firefox-specific issue or feature. Examples could be the geckoProfiler API or [https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/contextualIdentities contextual identity API].
| |
| * '''3 - Experimental''': a stable API that is recommended as a standard but not part of a track yet. This API could change as part of the standards process. An example could be the [https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/find/find find API].
| |
| * '''4 - Standard''': an API that is on a standards track or already part of an approved standard, it is very unlikely to change. Any deviation in Firefox is tracked in [https://bugzilla.mozilla.org/show_bug.cgi?id=1392434 bug 1392434].
| |
| * '''Deprecated''': this API might be removed and we do not recommend using it. See also [https://wiki.mozilla.org/WebExtensions/DeprecationPolicy draft deprecation plans].
| |
| | |
| There is a possible progression from “Firefox-only” to “Experimental” to “Standard”. For example, the contextual identity API could start as a Firefox-only API. If other browsers found that feature to be useful, they may choose to implement it. It could then be moved from Firefox-only over to Experimental in the hopes that it could be standardized. Once it was formally proposed as part of a standard, its status would change to Standard.
| |
| | |
| At this time (October 2017) Firefox implements most of the browser extensions standard across Firefox. Firefox for Android is not as complete.
| |