Firefox 31 will be released on July 22nd. Here’s the list of changes that went into this version that can affect add-on compatibility. There is more information available in Firefox 31 for Developers, so you should read that too.
- Remove the browser.tabs.closeButtons pref. This pref used to determine if there should be close buttons per tab, only on the active tab, or at the end of the tab bar.
getShortcutOrURIAndPostDatashould have a synchronous callback behavior. Instead of returning a promise, now it takes a second callback argument.
- Warn about XMLHttpRequest sendAsBinary usage. This is only a warning, but you should consider this function to be deprecated. There are various other ways to send binary data, like setting the content type header or using a Blob.
- Simplify conditional forward button CSS by making the forward button a direct sibling of the location bar. This might interest theme developers.
CustomEventcan be used instead.
- Stop exposing BrowserFeedWriter to the Web.
- Add a dedicated API to provide a final complete value different from the matching one. If you implement an autocomplete provider in your extension, you will need to add a new function called
getFinalCompleteValueAt. There are examples of this in this MDN article.
- Remove the state string from sessionstore-state-write.
- Ship CSS Variables (that is, enable the preference). More info about CSS Variables on MDN.
- Add a Log.Logger API for logging exceptions/errors.
Please let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 31, I’d like to know.
The automatic compatibility validation and upgrade for add-ons on AMO will happen soon, so keep an eye on your email if you have an add-on listed on our site with its compatibility set to Firefox 30.