Firefox 40 will be released on August 11th. Here’s the list of changes that went into this version that can affect add-on compatibility. There is more information available in Firefox 40 for Developers, so you should also give it a look.
- This is the first version of Firefox that will enforce our new signing requirements. All AMO add-ons have already been signed and we’re in the process of reviewing non-AMO add-ons. In this version, there’s a preference to disable the signing requirement (xpinstall.signatures.required), which will be removed in 41.
- Remove widget module from SDK. The ui module is the recommended alternative.
- Remove support for distribution/bundles.
- Make FUEL warn deprecation to the console on first usage. The FUEL library was introduced long ago to make extension development easier, but it has been superseded by the SDK and various JS Modules. It is now deprecated.
containsfunction still works as an alias, but it will be removed soon.
- Remove support for destructuring for-in.
- Remove Dict.jsm. You can use Map instead.
- Remove temporary aliases for -moz-text-decoration-*.
- Stop supporting binary XPCOM components except as part of the application. There’s a possibility that this will be delayed to 41, but if you have a Firefox add-on that relies on binary XPCOM components, you should update your code as soon as possible.
- Remove nsISSLErrorListener.
- Deprecate old keywords API. The new API is
- Remove nsINSSCertCache.
- Remove GetImplementationLanguage from DOMClassInfo. This removes the
- Get rid of sessionstore-state-write notification.
- Remove several unused XPIDL element interfaces. The following interfaces were removed:
Please let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 40, I’d like to know.
The automatic compatibility validation and upgrade for add-ons on AMO will happen in the coming weeks, so keep an eye on your email if you have an add-on listed on our site with its compatibility set to Firefox 39.