Extensions.checkCompatibility

From MozillaZine Knowledge Base
Revision as of 10:06, 21 March 2015 by Alice Wyman (talk | contribs) (→‎Related bugs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Background

This preference allows disabling of extension compatibility checking. This is useful if you are using alpha, beta or nightly (development) builds which Add-on authors do not yet support. However, enabling incompatible extensions may cause crashes or other malfunctions.

Note: Many extensions may have updated versions not on their main addons.mozilla.org page, so at the bottom of such extension's pages use the link for "View All Versions" to see if there is an updated version available, or to be able to install an older or experimental version.

Note: In Mozilla applications based on Gecko 1.9.2 and above (e.g., Firefox 3.6 and SeaMonkey 2.1) this preference is no longer used and a new preference that includes the application version, extensions.checkCompatibility.<version> is used instead (bug 521905).

"<version>" includes alpha and beta milestones but excludes minor version updates. It is the first few characters of the application version matching the following pattern: <number>.<number><letter(s)>. <letter(s)> is cut off at a single letter in Firefox 3.6 (1.9.2), it was fixed in bug 538234. For the most technical, the matching is made against the regular expression gBranchVersion defined in nsExtensionManager.js.

A few examples are in order:

  • Firefox 3.6b2 -> extensions.checkCompatibility.3.6b
  • Firefox 3.6pre -> extensions.checkCompatibility.3.6p (the cut-off "pre" is due to bug 538234.)
    • Update: bug 538234 was fixed 2010-01-08. For installing into app versions built after that date, use the full "pre" if present after the 2nd number.
  • Firefox 3.6 and Firefox 3.6.1 -> extensions.checkCompatibility.3.6
  • Firefox 3.7a1 -> extensions.checkCompatibility.3.7a
  • Firefox 4.0b2pre -> extensions.checkCompatibility.4.0b
  • Firefox Nightly >=7.0a1* -> extensions.checkCompatibility.nightly (bug 659048)
  • SeaMonkey 2.1a1 -> extensions.checkCompatibility.2.1a
  • SeaMonkey (trunk) 2.4a1 and later -> extensions.checkCompatibility.nightly (bug 659048)

Possible values and their effects

true

Check extension compatibility on install and update. (Default)

false

Do not check compatibility. Incompatible add-ons will be marked in the Add-ons Manager - its icon will have an exclamation mark over it and when the add-on is selected, the text Not compatible with <application and version> appears below the extension description.

Caveats

  • This preference does not exist by default.
  • Installing an extension marked as incompatible with your application may cause your application to malfunction or crash.
  • Disabling extension compatibility checking may cause your application to malfunction or crash after a future upgrade.

If disabling extension compatibility checking makes your application crash on startup, you should try starting in Safe Mode and re-enabling compatibility checking.

UI

Mozilla Firefox 2.0 through 3.6

In versions since 2.0 and up through Mozilla Firefox 3.6.x, this preference can be toggled to true by clicking the "Enable" button in the Add-ons Manager next to the “compatibility checking disabled” alert. (There is no way to set it back to false within the UI)

Note: The UI has been removed in Mozilla Firefox builds after 3.6 (since at least Firefox 3.7a5).

SeaMonkey 2.0

Same as above.

First checked in

Mozilla Firefox (trunk)
2006-05-29 by Rob Strong
Mozilla Firefox (1.8 branch)
2006-06-05 by Rob Strong

Has an effect in

  • Firefox (all versions since 2.0b1) — Replaced by extensions.checkCompatibility.<version> in 3.6b2 (see above)
    • extensions.checkCompatibility.nightly in Nightly >= 7.0a1 (bug 659048)
  • SeaMonkey (all versions since 2.0a1) — Replaced by extensions.checkCompatibility.<version> in 2.1a1 (see above)
    • extensions.checkCompatibility.nightly in trunk builds >= 2.4a1 (bug 659048)
  • Thunderbird (all versions since 2.0a1) — Replaced by extensions.checkCompatibility.<version> in 3.1b2 (see above)
    • extensions.checkCompatibility.nightly in Nightly >= 7.0a1 (bug 659048)

Related bugs

  • Bug 330895 - Remove the use of the app.extensions.version pref
  • Bug 521905 - Make extensions.checkCompatibility be per-application-version
  • Bug 538234 - Should use extensions.checkCompatibility.3.6pre for 3.6pre versions
  • Bug 659048 - Use extensions.checkCompatibility.nightly to disable compatibility in nightly builds

Related preferences

See also