views:

47

answers:

2

Is there a way to override the use of maxVersion in firefox extensions so if a new firefox update comes out the extension will still work? I think this can be done by setting a new bool in about:config but I am trying to do it from the extension itself.

+1  A: 

I don't know a way to do it only for a single extension, and it really doesn't make sense. Inevitably, it will eventually stop working. You can set it to an arbitrarily high value, though:

<em:maxVersion>100.0</em:maxVersion>

This means you can't distribute it through AMO (for good reason), but you're free to do so independently.

Matthew Flaschen
I think you can also just specify `<em:maxVersion>*</em:maxVersion>` and it will be considered to be an "infinitely large" max version. Though again, you can't distribute through AMO.
eldarerathis
I think * works only for "minor version", like 3.6.*https://developer.mozilla.org/en/Extension_Versioning,_Update_and_Compatibility#Choosing_minVersion_and_maxVersion
jarkam
@jarkam: I tested with a random extension and it installed with a maxversion of `*` and a minversion of `3.0`. Don't know if that means it works exactly how I think it does, but I guess it's not failing to install at least.
eldarerathis
Nice, thanks for sharing that @eldarerathis.
jarkam
If you're worried about AMO, I think you can get them to up the maxVersion for you without having to resubmit the entire extension and get it approved all over again, etc.
MatrixFrog
@Matrix, that's true. It's in the Versions and Files section of the developer hub, under the Compatible Applications heading of a version.
Matthew Flaschen
A: 

How do you mean by overriding maxVersion? maxVersion is there for protecting you and your users from possible BC breaks in Firefox and Gecko. You can set it as high as you want though.

But if you want to prevent Firefox from checking compatibility, creating boolean key extensions.checkCompatibility and setting it to false is the way to go, though it's advised only when developing extensions.

racetrack