Post-MV3 versioning for "cross-browser" extensions?

We’re submitting our MV3 extension for Chrome soon, and making a major version bump 5.1.4 -> 6.0.0 for the change as it is effectively a different extension.

5.1.4 was the last version of our cross-browser code that was released for Chrome and Firefox, so we were going to continue with 5.1.4+ for separate Firefox releases from the MV2 code. However, that means we risk a Firefox-only release catching up and colliding with the same version number as a Chrome release, which we’d like to avoid for external and internal clarity.

So, we could make a browser-specific build for each browser with the same version number when a release for either browser is required, and just not submit the redundant one for publishing, right? Well, that means if we do a Firefox patch release after this 6.0.0 for Chrome, the user-facing Firefox version would go 5.1.4->6.0.1 just for a patch.

So, we could do no-op releases to either of the stores as required, to keep the version numbers in sync, but that means jumping through a lot of hoops, and for me one of the hoops is also the Edge Addons Store, which is not my favourite hoop to jump through.

SO, is anyone else with this problem considering “rebranding” the Chrome version of your “myExtension” to “myExtension MEGA” or “myExtension FOR CHROME” or whatever (and making this first MV3 version 1.0.0) to differentiate it from the Firefox version, which would continue the MV2 code as “myExtension” 5.1.4+? It’s starting to feel like this makes sense, since so much of the code and a bit of the user-facing functionality are now different. It is effectively a different extension, but at the same time that feels like quite a drastic change.

What about publishing the MV3 6.0.0 line to AMO? Is there anything specific about Firefox’s MV3 support that prevents you from doing this?

Thanks but we only just learned that more recent versions of Chrome & FF will allow both Service Workers and Background Pages in the manifest, so will investigate the complexity of moving back to a cross-browser extension later. Since the MV3 deadline is approaching we’re going to continue as if we’re making “MV3 Extension for Chrome” released as v6.0.0+ and “MV2 Extension for Firefox” which continues the MV2 codebase as 5.1.4+ but without a “hard” rebranding other than how we present the changelog and manage stuff internally. If externally-facing version numbers coincide, then that seemed like the least-bad thing that could happen given all the options, and will be explained in the changelog if it causes confusion.

Sounds like a reasonable approach. Best of luck!