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:
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.
You can download the latest release of the Firefox Add-on SDK from here, and learn how to use it here