Skip to content

Versioning Scheme

Dennis Schubert edited this page Jun 14, 2024 · 7 revisions

This project uses the semantic versioning numbering scheme, with the Major release version matching the Firefox Release train the release will ride. To ensure that we can update the add-on directly for release users, we have to follow some rules to allow the update mechanism room for its updates.

Version numbers are set in src/manifest.json. They follow a simple [Firefox Train].[minor].0 format, where the components get incremeneted following these rules:

  • The major version should always be in sync with the Firefox Release Train the version is riding in. If your interventions are supposed to ride Firefox 105, the addons version should be 105.x.x.
  • A new minor version is released if we release between major versions, but not via Balrog (for example, an Android Components-only release).
  • Always keep the last version segment as 0. For out-of-band updates, the pipeline will build a timestamp-based version number that's always guaranteed to be bigger than .0.

We make no guarantee about backwards compatibility between versions, but generally there shouldn't be a need to care.

Clone this wiki locally