Add-on Compatibility for Firefox 21

26

Firefox 21 will be released on May 14th. Here’s the list of changes that went into this version that can affect add-on compatibility. There is more information available in Firefox 21 for Developers, so you should read that too.

General

Places

XPCOM

New!

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

The automatic compatibility validation and upgrade for add-ons on AMO will happen very soon, so check your email if you have an add-on listed on AMO.

Tags: , , , ,

Categories: compatibility, developers, documentation

26 responses

  1. osman aker

    I think you should post these posts much earlier, maybe at the aurora phase or at the beginning of the beta phase. I see some addons that got fixed just before the release.

    1. Jorge Villalobos Author

      That’s how we started out, but other work has delayed this. I’ve been trying to pick up the pace and push back the compatibility work back to the Aurora channel, but other work keeps getting in the way.

    2. Kohei Yoshino

      Agree with osman. A review of an updated add-on takes 2 or 3 weeks, and the add-on compatibility document was published a couple of weeks before the release. If an add-on has to be fixed based on the document, it cannot be updated on time :(

      I have published the site compatibility documents on MDN at the beginning of the Aurora phase, or even in the Nightly phase if any important changes have been made. Although changes to Web sites don’t need Mozilla’s review, I believe Web developers should be notified as early as possible. That’s for a better Web ecosystem.

      Next time I compile a site compatibility document, I’ll try to make time to help Jorge.

  2. Mook

    If I am reading the JS language attribute bug correctly, script type=”text/javascript;version=1.8″ will still work?

    1. Jorge Villalobos Author

      The change is only for the language attribute, so it shouldn’t make any difference for type.

  3. Kohei Yoshino

    Will Firefox 21 be released on Monday, May 13th? I thought it was Tuesday, May 14th, according to akeybl’s Release Management calendar.

    1. Jorge Villalobos Author

      You’re right, it’s on Tuesday May 14th. I’ll fix the article.

  4. Ken Saunders

    Not meaning to pile onto your work load, but would it be possible to include misc and UI changes in these updates as well?
    For example, “Clear Recent History” is being moved from the Tools menu to the History menu.

    Well, after looking around a bit, there doesn’t seem to be a comprehensive list anywhere so we have here, bugzilla, release notes, MDN.

    Unless you know of such a list, I think that it would be very helpful if there were such a list (categorized). I mean, everyone would benefit. Developers, support, localization, marketing, media, etc, etc.
    Do people just follow certain components to stay ahead of things? Is that all that can be done? I suppose that keeping an eye on Aurora and Beta release notes would be slightly helpful.

    1. Jorge Villalobos Author

      Changes like that one should appear in the Release Notes, since they are user-facing. If they weren’t mentioned, then that’s an oversight on our side, I think.

      Unfortunately there aren’t good single places to track these things. I have to sift through dozens if not hundreds of bugs to compile these reports.

      1. Ken Saunders

        Well, your efforts are sincerely appreciated.

  5. Nikhil Gupta

    Hi,

    My add-on was working till Firefox 20, but not loading in Firefox 21 beta release. My add-on install path is for eg. “C:\Program Files\mozilla firefox\extensions\my add-on”. But now in firefox 21 it is not loading. If i put my add-on on app data profile path extension directory or “C:\Program Files\mozilla firefox\browser\extensions\” toolbar is loaded , but not correctly as this component load a DLL and then interact to a COM exe.

    My first question is what is changed as my add-on toolbar is not loading from my previous path and now is it necessary to put it another path? if yes then which path it will be good to put on. My add-on toolbar is not specific to any particular desktop user, this can be used by multiple user so i think app data profile path extension directory should not be a good place to put it.

    Please clarify/Help me , i am new to it.

    Thanks,
    Nikhil

    1. Jorge Villalobos Author

      A bunch of install paths were moved under /browser/, but then also a few were moved back. You should test on the Firefox 21 final release version to make sure it works correctly. As for loading the component, the problem probably has to do with the changed paths, but I wouldn’t be able to tell you exactly what the problem is. It might be just rebuilding the component, or changing an path from within your add-on code.

      1. Nikhil Gupta

        Hi Jorge,

        Thanks for your response!!!

        However, today i have install the final release of Firefox 21 and found that in this also they have created a browser folder and add-on need to put with in “firefox install dir\browser\extensions” folder instead of just “firefox install dir\extensions”.

        Is this is documented (i.e. anywhere in change history or something) that Firefox i going to change these paths? I did not find it anywhere in “Firefox for developers” for any releases. This is important to have this for some management.

        Thanks,
        Nikhil

        1. Jorge Villalobos Author

          The tracking bug for this is this one. One of its dependencies probably has better details.

  6. Jerome Krinock

    Hello Jorge,

    I haven’t investigated much yet, but my Firefox extension is broken in Firefox 22.0, which I think showed up on the beta channel the same day as 21.0 was published on the production channel. This is in Mac OS X. My extension contains a dynamic library which uses js-ctypes. The Error Console says “Error: couldn’t open library:

    /Users/jk/Library/Application Support/Firefox/Profiles/liejtghrj.Me/extensions/
    firefoxextension@sheepsystems.com/components/SSYFirefoxCTypes.dylib.

    “Couldn’t load” usually means that the file is missing, but this dylib file is there, and there is no problem if I run Firefox 21.0 instead.

    Any clues where I sould look for this one?

    Thanks,

    Jerry Krinock

  7. Jerome Krinock

    Yes, I even tried with an older version of my extension, because I did rebuild it recently. Same problem with Aurora 23.0a2.

    I’ve now read through the Firefox 22 Release Notes and Firefox 22 for Developers but didn’t find any news on js-ctypes or dynamic libraries.

    Here is the code in my “overlay” .js file that is failing…

    Components.utils.import(“resource://gre/modules/ctypes.jsm”)
    var profileDir = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get(“ProfD”, Components.interfaces.nsIFile).path ;
    var cTypesDylibPath = profileDir + “/extensions/firefoxextension@sheepsystems.com/components/SSYFirefoxCTypes.dylib” ;
    var ssyFirefoxCTypes = ctypes.open(cTypesDylibPath) ;

    The first three lines just construct the path, and that is obviously OK because the path printed in the Error Console as “couldn’t load” is correct. So that means the problem is in ctypes.open().

    I don’t see anything new in the ctpyes documentation either,

    https://developer.mozilla.org/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/ctypes

    It was last updated a year ago, mid-May 2012.

    Eeek. Could this be a new bug in ctypes.open() ?

    1. Jorge Villalobos Author

      Sorry for the delay. For anyone interested, the bug is being tracked here.

  8. R.

    hi,some of my extensions are not loading, i think it would be somth like this http://forums.mozillazine.org/viewtopic.php?f=38&t=597216 … but to ff21, help?thnkx.

    1. Jorge Villalobos Author

      Please visit our support site for help.

  9. R.

    oki..i think i did, and couldn’t find more than that,since that is probably to a previous version and those files referred can’t be deleted/restarted on 21 to restart the extensions profile, don’t exist there,from what i’ve seen, and couldn’t find info about which files to delete on 21 to do the same in several searches, anyway i installed firefox 22 in beta, and that did the trick, so if others have the same issue that fixes it, now i’m having this issue :”Javascript application: Error: illegal operation on WrappedNative prototype object”, when i entered facebook, didn’t try many other pages yet but seems to be only on facebook for now, don’t know what is this, searching online now, but if you have a quick answer let me know, thanks for putting the comments and answers it’s info to other users as well searching for solutions.

  10. R.

    from what i’ve seen here (1st googçle click,search), it’s because of the beta release, i trust this will be fixed soon when the official one 22 comes out, so it’s in sites with java, despite there’s one saying in the comments something about fbpurity which is a firefox addon that i also have installed, disabled but still didn’t fix, (i read something in their page that facebook is going to sue the guy because of this, despite the fact that this doesn’t work directly inside facebook, it’s a firefox extension), still will try one or more searches about this but if it’s not because of the addon i trust mozilla will fix this soon, tnks.

    1. R.

      forgot the link, here: http://forums.mozillazine.org/viewtopic.php?f=23&t=2706047

  11. Charlieborg

    Illegal operation on WrappedNative prototype object ERROR ? I’m running firefox 22.0. Is an update available for this?

    1. Jorge Villalobos Author

      Do you see this error when using an add-on? Which one?

      1. Jim

        I’ve had the same issue running Firefox 22.00 w/Windows 7 32-bit Home Premuim and have isolated it to CloudMagic 3.0.3. Disabling that, the error msg doesn’t appear. No issues w/CloudMagic w/Windows 7 64-bit Professional.

  12. Ritu

    I have seen some timezone issues with Firefox 21.0 & 22.0. I am using Dojo framework and dojo.date.getTimezoneName(new Date()) returns “Pacific Standard Time” instead of “Pacific Daylight Time”. Earlier version was fine. The above function works fine in all other browsers like Chrome, IE & safari.