Tuesday, 17 May, 2016 UTC


Summary

Firefox 48 will be released on August 2nd. Here’s the list of changes that went into this version that can affect add-on compatibility. There is more information available in Firefox 47 for Developers, so you should also give it a look.

General

  • Update loading throbbers in secondary UI. If you use loading_16.png or loading.png in your add-on code, you need to point your code to the new paths: chrome://global/skin/icons/loading.png and chrome://global/skin/icons/[email protected] (HiDPI).
  • Add top level devtool menuitems dynamically (and bug 1258987). If you’re using overlays, broadcasters, or commands to tap into the devtools UI, these changes might break your add-on.
  • Remove legacy __defineGetter__ /__defineSetter__ this behavior.

XPCOM and Modules

  • Bring back deprecated newChannel() API on nsIIOService. If your add-on uses newChannel, newChannelFromURI, or newChannelFromURIWithProxyFlags, these are all deprecated and you should switch to the “2” equivalents. You can read about them in the nsIIOService documentation.
  • Interface for customizing the DownloadIntegration module. This allows add-ons to extend the DownloadIntegration module, but it also means the module shouldn’t be imported directly from DownloadIntegration.jsm.
  • Remove nsICertTree.isHostPortOverride().
  • Pull ViewHelpers.L10N, MultiL10N into their own module.

New

  • Allow reloading a temporary add-on. You can read more about temporary add-ons in Andy’s blog post.
Let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 48, I’d like to know.
The automatic compatibility validation and upgrade for add-ons on AMO will happen in a few weeks, so keep an eye on your email if you have an add-on listed on our site with its compatibility set to Firefox 47.