Feature
News
9/28/2005
05:04 PM
50%
50%

How To Future-Proof Your Firefox Extensions

Want to test-drive the Firefox 1.5 beta and bring most of your favorite extensions along for the ride? We'll show you how to make your brand new Firefox update less picky about installing extensions -- and explain why doing so isn't always a good idea.

I'm a big fan of Firefox extensions, and it shows: I have 40 extensions installed on one of my PCs, and on the others -- including Windows 2000, Linux, and Mac OS X systems -- I rarely run Firefox without at least 20 of my favorites installed, sometimes together, other times spread across two or three different profiles.

Like many Firefox power uses, I also installed the Firefox 1.5 beta not long after Mozilla released it. And when I ran the beta for the first time, I discovered that just 10 of those 40 extensions ran, too. Firefox 1.5 found the rest "incompatible" when it started for the first time and disabled them.

Some of you already know what I'm going to tell the rest of you: Most of those disabled extensions are no less compatible with Firefox 1.5 than they are with Firefox 1.0.7 (or Firefox 1.0.6, as it was at the time I installed the 1.5 beta). The only show-stopper in these cases is a single piece of metadata that allows an extension to work only with a specific et of Firefox versions: On the addons.mozilla.org site, you'll see this information listed with each extension (e.g., "Requires: Firefox: 0.9.x - 1.5beta").

These numbers reflect the value of minVersion and maxVersion in each extension's resource.rdf file. Firefox checks these values against one of its own config-file settings ( app.extensions.version); when a user installs a new version of Firefox and starts it for the first time, the browser disables extensions for which the version info doesn't add up correctly.

If you create an extension hosted on your own site or some other third-party site, then of course you're free to disable maxVersion by setting it to a very high number. If you want Mozilla to list your extension, however, then you have to include a value for maxVersion, and typically you may not list a version number that's much higher than the current public release -- in this case, Firefox 1.5.

Instant Fiasco: Just Add Users
There's a lot that's new about Firefox 1.5. Some extensions really are broken and require serious retooling -- and a few of those, if you happen to run them anyway, just might turn your Firefox profile into something that looks like Beetle Bailey after Sarge beats him to a pulp. But the others -- probably a solid majority of the 600-plus extensions currently listed with Mozilla.org -- will either work as-is or require minor tweaks.

Why would Mozilla deliberately cripple hundreds of extensions that otherwise work just fine? Because it beats the pants off "Plan B": a world full of abandoned or broken extensions, at least some of them capble of doing Bad Things to unsuspecting users' Firefox profiles.

In this situtation, most Firefox users won't say to themselves: "Darn! That old, abandoned extension just slagged my profile -- it's a good thing I always back up my important data files!" They will say: "My stuff! Where's my stuff! Who broke my browser? What happened?" Multiply this reaction enough times, and you've got the makings of a bona fide PR fiasco.

Mozilla's maxVersion requirement helps to manage this risk by constantly weeding out abandoned extensions (at least those in the "official" Mozilla catalog; those hosted elsewhere can do as they please, of course). Adjusting the version info is about as easy a job for a developer as it gets, but it at least requires them to show up occasionally, kick the tires on their extension, take it for a quick test drive, and show the world they still care. Also, since they have plenty of time to do this during the beta cycle (at least in theory), by the time Firefox 1.5 goes legit later this fall, almost all of the extensions that will ever get the fix have already gotten it.

Not everyone likes the way this system currently works: bugzilla.mozilla.org includes at least four proposals to change or drop the maxVersion requirement. Judging from the lively and at times heated exchanges in some of these discussions, the issue isn't likely to go away, either.

For Firefox lead Ben Goodger and his colleagues, however, the benefits of enforcing maxVersion continue to outweigh the costs -- not to developers and power users, but to the other 98 percent of the Firefox user base. (As more extensions become indispensaible to large numbers of users, I wonder whether this will always be true: When a wildly popular extension such as Adblock breaks, the number of irate users makes it as much Mozilla's problem as the developers'. But that's a topic for another day.)

Now that I've explained why maxVersion is a good idea, I'll tell you something else every Firefox power user should know: How to turn it off.

Previous
1 of 2
Next
Comment  | 
Print  | 
More Insights
Register for InformationWeek Newsletters
White Papers
Current Issue
InformationWeek Tech Digest, Dec. 9, 2014
Apps will make or break the tablet as a work device, but don't shortchange critical factors related to hardware, security, peripherals, and integration.
Video
Slideshows
Twitter Feed
InformationWeek Radio
Archived InformationWeek Radio
Join us for a roundup of the top stories on InformationWeek.com for the week of December 14, 2014. Be here for the show and for the incredible Friday Afternoon Conversation that runs beside the program.
Sponsored Live Streaming Video
Everything You've Been Told About Mobility Is Wrong
Attend this video symposium with Sean Wisdom, Global Director of Mobility Solutions, and learn about how you can harness powerful new products to mobilize your business potential.