Browser detection

Erich, the Gecko version number is pretty meaningless.

With mozilla releases, the date reflects when the build was done. Which means if you build Firefox 1.5 today, it will get a Gecko/20070410 string.

With Debian releases (except icedove), the date reflects the date for the client.mk in the source tarball, which is one of the last file upstream touches before a release. This helps having the same date for all 11 architectures (even after a binNMU) and is somehow more significant, but still not that much.

There are, at the moment, 3 main branches for Gecko-based code: MOZILLA_1_8_0_BRANCH, MOZILLA_1_8_BRANCH and HEAD. The latter currently contains Gecko 1.9 alpha, Firefox 3.0 alpha, etc., and will eventually be branched to a MOZILLA_1_9_BRANCH or something similar when going in beta. The other branches are respectively for Gecko 1.8.0.x (Firefox 1.5.0.x, Thunderbird 1.5.0.x, Seamonkey 1.0.y, Xulrunner 1.8.0.x) and Gecko 1.8.1.x (Firefox 2.0.0.x, Thunderbird 2.0.0.x (not yet released), Xulrunner 1.8.1.x).

[ In Debian Etch, we have Iceweasel 2.0.0.3 (Gecko 1.8.1.3), Iceape 1.0.8 (originally Gecko 1.8.0.10 but patched at version 1.8.0.11), Icedove 1.5.0.10 (Gecko 1.8.0.10 ; changes from version 1.8.0.11 didn't make it, but they don't affect the mailer code), and Xulrunner 1.8.0.11 (Gecko 1.8.0.11). The latter is used by kazehakase, galeon and epiphany. ]

Whenever a new security release for Firefox 1.5.0.x and other products from the Gecko 1.8.0.x branch are done, the Gecko date obviously changes, and doesn't reflect the fact that it's an older Gecko than that of Firefox 2.0.0.x...

Now if you take a closer look to the user agent string, you'll see something that is actually more significant than the Gecko date, i.e. the Gecko revision, such as "rv:1.8.0.11" in "Mozilla/5.0 (X11; U; Linux i686; ja_JP; rv:1.8.0.11) Gecko/20070324"

2007-04-10 08:12:46+0900

firefox, iceape, xulrunner

Both comments and pings are currently closed.

4 Responses to “Browser detection”

  1. Marco Cabizza Says:

    Mike, is the 1.9 version expected to be packaged “soonish” ? I mean, ok, it’s an alpha but still it’s got quite a few worthwhile improvements. Plus, there’s quite a lot of noise about Webkit and stuff, do you think it’s worth to “see how it works” as of now, AND a soon-to-be replacement for gecko in browsers like epiphany or galeon ?
    I’m just curious :)

  2. James Says:

    Don’t forget http://geckoisgecko.org/

  3. glandium Says:

    Marco: 1.9 versions *might* go into experimental at some point in the future, but not before I’m done with post-etch-release changes, to prepare things to come for lenny. Sure lenny will probably include version 1.9 anyway, but there are more urgent matters right now, such as pushing myspell out to be replaced by hunspell, building iceweasel, icedove and iceape with newly added nspr and nss, and packaging xulrunner 1.8.1 (which will go into experimental first)

  4. El Laboratorio del Dr. Yuri » Archivo del Blog » Google Groups falla con IceWeasel Says:

    […] Como puede apreciarse, es una ventana de IceWeasel, y dado que uso Debian SID, es la última versión disponible. Y ahora, ¿a quién le echamos la culpa? ¿A la gente de Debian por cambiarle la identificación al navegador? ¿A los chicos de Google, por ser tan puntillosos -o tan chapuceros- en la identificación de éste? En esta página dan algo de información al respecto con el tema de las identificaciones de los navegadores: Browser detection […]