Add-ons/AMO-Manual
< Add-ons
This is a collection of guides that should help AMO Engineers and other Mozillians navigate the madness that is the add-ons world.
Add-on types
MDN Doc for add-on types.
Type | In install.rdf |
In AMO DB | Notes |
---|---|---|---|
Extension | 2 | 1 | |
Lightweight theme | N/A | 9 | |
Dictionary | 64 | 3 | Language for the Firefox spellchecker. |
Search Engine | N/A | 4 | For the Firefox search box. See doc. |
Language pack | 8 | 5 | Localization for Firefox UI. Most are automatically published from Firefox sources. |
Complete theme | 4 | 2 | Deprecated. Will be dropped in Firefox 57. |
Multi-package installer | 32 | 1 | Discontinued. |
Telemetry Experiment | 128 | N/A | |
WebExtension Experiment | 256 | N/A |
WebExtension packages don't have types. They are all treated like extensions, with the exception of new themes (WIP).
The AMO DB has a couple more types that are no longer in use: 7 - Plugins, 6 - Language Packs (Add-on), 11 - Apps.
Compatibility
MDN doc on compatibility for legacy add-ons.
Compatibility with the client depends on various factors. They are listed here in order of priority (next one overrides previous one):
- Default compatibility.
- Legacy add-ons with a
maxVersion
lower than Firefox 4.0a1 have strict compatibility, so themaxVersion
must be respected. - For all other add-ons, the
maxVersion
doesn't matter. - The
minVersion
for legacy add-ons should always be respected. - WebExtensions have default minimum compatibility of Firefox 42.0a1.
- Application support (Firefox / Thunderbird / SeaMonkey / Android) is read from the manifest and can be altered during submission (All Desktop / Windows / Linux / Mac OS / Android).
- Legacy add-ons with a
- Strict compatibility.
- Legacy add-ons with the
strictCompatibility
manifest flag must have themaxVersion
respected. - WebExtensions that declare so must have the
strict_min_version
andstrict_max_version
respected. Astrict_min_version
lower than 42.0a1 should be ignored.
- Legacy add-ons with the
- AMO Metadata (editable in Developer Hub).
- For add-ons with strict compatibility (legacy and WebExtensions) this overrides what is declared in the manifest.
- Application support can also be altered here.
- Compatibility overrides. These are admin overrides that declare a version range for an add-on is not compatible with a version range of an application (usually Firefox).
This doesn't apply to lightweight themes and search engines.