Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

Extension Versioning, Update and Compatibility

This page is confusing, particularly around what to set max version to for extensions. There is a statement "app.extensions.version is not used in Firefox 1.5." but other parts of it seem to talk like this is used.

There's also a yellow box at the top that says that the page is outdated. --Nickolay 07:41, 29 April 2006 (PDT)
As far as I can tell, app.extensions.version IS used in Firefox 1.5, albeit not set by default. It can be used to override nsIXULAppInfo.version. --Np 20:22, 6 May 2006 (PDT)
it is not used in the sense that it's not set by default. There was some discussion about getting rid of it altogether. --Nickolay 03:46, 7 May 2006 (PDT)

It would be nice to have a clear and simple best practice about extensions maxversions...it seems like the recommendation is to set it for the current specific release only. This causes the annoying effect that all kinds of extensions show as incompatible and disabled everytime the minorest release comes out. This seems like an unacceptable state of affairs.

I don't think the policy of having no guarrentees about breaking the API and thus requiring all the maintainiers of all extensions to keep up with application updates and update remote metadata about their extension is a good one. It's not realistic based on human nature, and in practice it seems clear it's not working, from how many extensions end up getting disabled everytime there is an app update.

Couldn't there at least be the guarrentee (or at least good faith attempt...the perfect is the enemy of the good and reasobable) not to break the apis on 4th segment updates (e.g. 1.5.0.1 to 1.5.0.2)?

For extensions tested with Firefox 1.5, maxVersion should be set to "1.5.0.*" It is mentioned elsewhere. --Nickolay 07:41, 29 April 2006 (PDT)

What versioning mechanism does Firefox 2 use? There is a variable in about:config called "extensions.lastAppVersion". Is this used in place of both app.version and app.extensions.version? --Nsteven 14:17, 12 January 2007 (PST)

extensions.checkCompatibility

This setting also works for Thunderbird. The page shouldn't be so Firefox-centric. However, I've noticed that with recent Thunderbird trunk builds such as 3.0a1pre (2008031203) that the setting is ignored for some themes, while it works for some others. For example, the version of the Mostly Crystal theme for 2.x gets a Not compatible with Thunderbird 3.0a1pre error message while the version of the Noia 2.0 eXtreme theme for 2.x has no problem.

What is the new dependency? Is there any way for a user to override that without editing the .rdf file? Tanstaafl 18:17, 14 March 2008 (PDT)

updateInfoURL problems

(cross-posted at http://forums.mozillazine.org/viewto...219235#3219235 )

I'm having trouble getting the FF3b2 updateInfoURL to work...

In the install.rdf, I have this:

 

<em:updateInfoURL>https://<oursite>/info.php?extversion=%ITEM_VERSION%&locale=%APP_LOCALE%</em:updateInfoURL>

(I don't have any of the hash or key information, but this seems it should be ok since it is over valid HTTPS--and the updateURL is working ok.)

Next, as per the docs, I only have limited XHTML elements and am serving the file above as application/xhtml+xml .

Here's what I'm outputting:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>Update Information for the Extension</title></head>
<body>
<h1>Update Information for the Extension, version 0.4.4</h1>
<h2>Changes since version 0.4.3:</h2>
<ul>
   <li>Made install.rdf to work with dynamic update.php and info.php pages</li>
   <li>Added About dialog</li>
</ul>
<h2>Changes since version 0.4.2:</h2>
<ul>
   <li>Allowed to work with FF3b2</li>
   <li>Added favicon retrieval within website pull-down</li>
</ul>
</body></html>

(I removed some @id and @xml:lang attributes as well as an XML declaration just in case (not sure if I can have those?)

The docs don't mention the <html>, <head>, <body>, and <title> tags, but for valid XHTML, these are required (and I tried it without them to no avail too)...

What is wrong here?

thanks, Brettz9 18:46, 15 January 2008 (PST)

Example of updateInfoURL XML

i.e. is there an example of the actual xhtml used by firefox to retrieve update information? It took a fair bit of googling to find a few examples, but it'd be nice to have a semi-offical example by MDC that says 'look, this will work'. :) Thanks! --FunPackedShow.

Document Tags and Contributors

 Contributors to this page: FunPackedShow, Tanstaafl, Brettz9, Nsteven, Nickolay, Np, Ericjs
 Last updated by: FunPackedShow,