Add-on Compatibility for Firefox 36

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

General

XPCOM

 Wrappers

There are a number of wrappers that are applied whenever chrome JS objects interact with content JS objects. They are meant to protect privileged code from malicious or otherwise misbehaving content code. The following bugs removed some features in wrappers that could lead to unexpected problems in your chrome/content code. However, you should keep in mind that Multiprocess Firefox is coming, and that means you should be changing your code anyway (some wrappers are still involved, but they should be rare).

Please let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 36, I’d like to know.

The automatic compatibility validation and upgrade for add-ons on AMO will happen within a week or two, so keep an eye on your email if you have an add-on listed on our site with its compatibility set to Firefox 35.

8 responses

  1. Kohei Yoshino wrote on :

    Japanese translation posted! https://dev.mozilla.jp/2015/01/firefox-36-addon-compatibility/

    1. Jorge Villalobos wrote on :

      Woohoo!

  2. Ivan Kashtanov wrote on :

    Hi, we’ve encountered a problem with __exposedProps__ property which we use to export some functions from add-on to a web page (like a dashboard for user data). It seems this doesn’t work in FF 35. Here’s the error message from FF console:

    Security wrapper denied access to property length on privileged Javascript object. Support for exposing privileged objects to untrusted content via __exposedProps__ is being gradually removed – use WebIDL bindings or Components.utils.cloneInto instead. Note that only the first denied property access from a given global object will be reported.

    There’s nothing about this in “v35 compatibility” post here or on MDN release notes, related issues like https://bugzilla.mozilla.org/show_bug.cgi?id=1081990 have v36 as target. Nothing in the wiki for wrappers (https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Language_bindings/XPConnect/XPConnect_wrappers#__exposedProps__) too. Could you clarify the status of the property?

    1. Ivan Kashtanov wrote on :

      Found out the problem in our case was caused by the fact that standard properties like array indices/length are not accessible when array is returned from privileged function. Now switched to cloneInto function, works fine. Still it would be great to know about such changes in advance 🙂

  3. MartijnJ wrote on :

    My addon uses a panel that became misaligned after FF35. It seems that the openPopup function doesn’t take a null value for its position parameter anymore. This screws up the positioning.

    No problem. Although I don’t know how I could have spotted this change more effectively, there is nothing about it in the release notes. Is there an other way or was this missed in the notes?

  4. David wrote on :

    I’m not updating to Ver 36.0 until Norton toolbar is compatible

  5. Rauno Härkönen wrote on :

    Shockvawe flash go down new Firefox 36.0 beta 5. If watch video!
    -Do something…!!!!

    1. Jorge Villalobos wrote on :

      Have you updated to the latest version? You can check on this page. Unfortunately, Flash is having some security problems at the moment, so we have been forced to block old and vulnerable versions.