Distribute Manifest V2 and V3 extensions
Learn how to distribute versions of your extension supporting Manifest V2 and V3.
Learn how to distribute versions of your extension supporting Manifest V2 and V3.
Firefox added support for Manifest Version 3 (MV3) extensions in Firefox 109, which was released to general availability January 17, 2023. Earlier versions of Firefox are only compatible with Manifest Version 2 (MV2) extensions.
It is not possible to create a version of an extension that is MV2- and MV3-compatible. Therefore, you need a way of distributing both types of extension if you need to continue supporting older clients, such as Firefox ESR. (Firefox ESR 102.x, the extended support release for enterprises – large companies and organizations – is supported until September 2023, when the ESR release moves to a version supporting MV3).
To help address the situation, AMO can distribute your MV2-compatible extension and sign an MV3-compatible version for self-distribution. Some developers use this as a form of a beta channel, though it is not officially supported as such.
However, if you choose to remain on MV2 and wait to transition to MV3 later, you can take steps in MV2 that move your extension closer to what is necessary for MV3. As usual, if your extension depends on features only available to recent Firefox versions, specify the compatible Firefox version in the strict_min_version
field in manifest.json. Then, older Firefox extensions are not updated. A new user on an old Firefox version can install an older version of the extension using the “See all versions” link at the extension listing on AMO.
To support automatic updates to newer MV3 versions, you must create and make an update manifest file available and include the file’s location in the extension’s manifest file.
See Updating your extension for details about the update manifest file format and manifest change needed.
To get a signed version of your MV3 extension:
You must change it back to “on this site” for MV2 versions, as the most recently used channel is remembered.
channel=unlisted
for the self-distribution channel.See Self-distribution for more details on the process.
Self-distributed versions cannot be downloaded by users directly from AMO. You must distribute the experimental XPI to users yourself, such as by a download from your website, email, etc.
See Distributing an add-on yourself for more details on the process.
When you want to support just MV3-compatible versions of Firefox for your extension, visit AMO and upload the MV3 version to the primary AMO listed channel (“on this site”), without the update_url
in the browser_specific_settings
manifest key. Then, when signed, download the XPI and distribute it to your users as you did originally. The lack of the update_url
manifest key means users get future updates from the AMO channel.
Take care with version numbers. The version number must be higher than the earlier listed MV2 and experimental MV3 versions. Firefox only upgrades the extension if the version number is greater than the installed version.
Publish
Publish
Publish