Firefox Add-on SDK 1.4 Released; Changes Coming to Add-ons in Firefox 10

By Kshitij Sobti Published Date
16 - Jan - 2012
| Last Updated
16 - Jan - 2012
Firefox Add-on SDK 1.4 Released; Changes Coming to Add-ons in Fir...

Mozilla has just released the latest update to their Firefox add-on SDK, a toolkit created for a number of reasons, most importantly to make it simpler for Firefox add-ons to maintain compatibility with future Firefox releases, and to make it easier to code Firefox add-ons in general.

For web developers looking to create add-ons for Firefox, the Firefox add-on SDK enables creating Firefox add-ons using web technologies; JavaScript, CSS, and HTML. It was always possible to create add-ons before the add-on SDK was released, though, and it is still possible to do so.

Maintaining compatibility has been a huge problem for Firefox since they opted for a quick release cycle. To counter some of the effects of this move Mozilla made a few important changes to how add-ons work:

  • They automatically started marking add-ons hosted at Mozilla as compatible with the latest version of Firefox, if they detected that it did not use any features that were marked as changed.
  • They created the Firefox add-on SDK which only requires one to update to the latest SDK and repackage the extension in order to make it compatible with the latest version.

Unfortunately, Mozilla learned that a large number of the add-ons people used were not packaged with the add-on SDK -- quite understandable since it was new and add-ons would need to be rewritten to use it. More surprisingly, a majority (75%) of add-ons weren't downloaded from Mozilla's servers! This meant that with each new update many add-ons would stop working, since Mozilla could not automatically update add-ons they don't host, and external hosters of add-ons would have a tough time updating traditional add-ons in time for each Mozilla release.

This brings us to the latest change coming in the next version of Firefox, Firefox 10. Add-ons will now be marked as compatible by default. Currently Firefox assumes that add-ons created for an older version are not compatible with the latest version; even though this assumption is not true in a majority of cases. Now Firefox will assume compatibility by default. Each add-on specifies which versions of Firefox it is compatible with; this will now be taken as a suggestion rather than a hard fact.

Using the large number of users that use Firefox Nightly, Aurora and Beta, Mozilla will get a clear picture of which add-ons work in the next version of Firefox, and which don't. They can then blacklist the add-ons that don't work, so people won't be inconvenienced unless there is no other option.

Other than that, development on the other solution to add-on compatibility woes continues on. The latest update to the Firefox SDK brings a number of changes and new features:

  • a simple Prefs API that allows add-on authors to create preferences for their add-ons with ease. This uses the new inline options feature added in Firefox 7. Inline options make it simple to configure add-ons by allowing them to show their options embedded in the add-on manager instead of a separate dialog.

  • Improved performance with a new simplified loader.

  • Trusted content such as page-workers, panels, and widgets can bypass content scripts, and use page scripts directly. More info here
  • A new HTTPD Module that provides a basic HTTP server to testing
  • The layout of XPI files (Firefox add-ons files) generated is simplified

You can download the latest release of the Firefox Add-on SDK from here, and learn how to use it here