When to use the Beta Update channel vs the Release Update channel?

Here’s something I posted in bug#405584 today which others might find interesting.
“Can you let us know a few days before shipping, when a new FF is coming, so we can test it and confirm it doesn’t break with our site – *before* you ship FF”?

Well, actually, we already do this. Let me explain with some background…

We have 3 different channels for sending out updates to users. These channels are currently called: nightly channel, beta channel and release channel. The nightly channel keep you updated with new nightly builds as they are produced – the “bleeding edge” of browser development, so to speak, and typically of most interest to FF developers and testers. Its also the most unstable. However, I’d like to talk more about the “beta” and “release” channels.

As part of our release process, after we finish our in-house testing, we make the new FF release candidate available to “beta” channel users.
* If there are showstopper bugs reported by “beta” channel users, we stop the release, fix the bugs, generate a new release candidate and push that new release candidate out to “beta” channel users. Repeat as needed. Most releases ship on rc1, but looking back over all the releases in the last 7 months, we’ve had a couple of rc2s and one rc3.
* If there are no showstoppers reported by “beta” channel users after 3-7 days of exposure, we take the *same* identical bits that are on “beta” channel and copy them out to “release” channel users. The “beta” channel and “release” channel users then remain identical, until we start shipping the next release, when we repeat the above process all over again.

The important point here is, for most of the time, people on the “beta” channel have exactly the same bits as people on the “release” channel. The only exception is when Mozilla is about to ship a new release – thats when users on the “beta” channel will be *newer* than the “release” channel, using what *will* soon be available on the “release” channel. For people who dont want to risk instability of the nightly builds, yet at the same time, care about ensuring new upcoming FF releases work for them without any surprises, this “beta” channel is the place to be.

How do you get onto the “beta” channel? There’s 3 different ways:

1) Download and install a beta version of FF from ftp.mozilla.org. Once that beta version of FF is running, it will automatically monitor the “beta” channel for new release candidates, and refresh forward to the latest release candidate when available. For example, if you were do this today, you would download and install FF2.0beta from ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/2.0b2. Once installed, use CheckForUpdates to update from FF2.0b2 to the FF2.0.0.11release candidate. This FF2.0.0.11 release candidate is identical to the “release” FF2.0.0.11.  Now, just use your FF2.0.0.11 install like normal. At some point in the future, whenever Mozilla start producing release candidates for FF2.0.0.12, your FF2.0.0.11 “beta” browser will automatically refresh forward to the new FF2.0.0.12 release candidate – in the same way that a regular release version of the browser refreshes forward to newer releases, except that this would happen a few days *before* we officially release FF2.0.0.12. (As usual, instead of FF automatically updating, you could configure FF to notify you of newly available updates before updating. This is controlled by your settings in Options -> Advanced -> Update -> When Updates are found.)

2) Install the “Update Channel Selector” addon into your browser,which allows you to change channels by picking from a popdown menu, and then using CheckForUpdates to install the latest updates from whatever channel you choose. See details at http://www.oxymoronical.com/web/firefox/updatechannel.

3) Monitor new release candidate announcement details in newsgroups, email lists, discussion forms and on Mozilla websites. Once notified of an upcoming release, you can manually download and install the release candidate.

#1 allows slightly less control, always updating the one FF installation as updates become available, but it also the easiest for ongoing effort – everything just happens automatically. #3 allows you the most control, but also takes the most ongoing manual effort. #2 is somewhere in between. For my usage, I prefer to use #1 approach, but all these approaches will work, so its a matter of personal preference.

Sorry for the long post, but hopefully the background details help.