Over the past few months we’ve been working on a number of improvements to the Firefox update experience. These improvements use new approaches to update that allow Firefox to update silently – without any interruption to your regular use of the browser.
In the rest of this post I focus on five Firefox update improvements and how they should improve your Firefox update experience.
Today Firefox periodically checks for updates. Once an update is detected, Firefox automatically downloads the update and waits to be restarted in order to install it. The update is applied on start-up as the updater needs to modify Firefox files, which may be locked while Firefox is running. Updating Firefox on start-up may result in a short delay in starting your browser as you wait for the update to be installed. You may also see a progress dialog as shown below.
A new update installation method allows Firefox to install an update while the browser is running. This means that the update can be installed immediately after it is downloaded. A restart of the browser is still required to apply the update but, using the new method, the application of the update will happen very quickly. So quickly, in fact, that you shouldn’t even notice it. The new version of Firefox will then launch with no delay as the update procedure has already taken place.
Background updates are currently planned to be delivered in the next couple of releases. This means that updates for subsequent Firefox releases should no longer display a progress dialog after restarting the browser.
See Ehsan Akhgari’s blog post Updating Firefox in the Background for more technical details about this change.
Reminder to update UI
Most Firefox updates include security fixes. In order to keep your system secure it is important that you install updates shortly after they are made available. As discussed above, Firefox must be restarted in order to apply an update. In order to facilitate the installation of an update, if Firefox has not been restarted within 12 hours of the download of the update you will be prompted to restart with a dialog.
In our user research we discovered that more than 99% of Firefox users restart their browser within 24 hours without prompting. The impact of extending the prompt period was considered minimal, so in November we changed the notification period to 24 hours.
This change means that the vast majority of Firefox users will restart their browser without being prompted and will therefore never see the Update Ready to Install dialog again.
Windows UAC service
On Microsoft Windows Vista and Windows 7, when updating Firefox you will be prompted with a User Access Control (UAC) dialog. This dialog is a Windows security mechanism to ensure that only applications that have been explicitly granted permission can make modifications to restricted areas of your system, such as writing to the Program Files directory.
The current structure of the Firefox updater requires that you grant permission to the updater each time it needs to install an update one of these versions of Windows. This repeated prompting occurs for two reasons: the Firefox installation resides in the Program Files directory and update changes are made to the registry. From a user perspective the repeated prompting is unnecessary because the first time that you accept the prompt you indicate that you put your trust in Firefox. After you have granted Firefox permission to update it should continue to be able to update future versions of Firefox without prompting you again.
In order to work with UAC security and provide an update experience that doesn’t prompt you for each installation, a new update service will land on Firefox Aurora shortly. This service runs as a background process and installs updates when they become available. After you grant permission to the Firefox update service you will not be prompted with a UAC dialog when installing updates for subsequent releases.
For those interested, Brian Bondy’s blog post Mozilla Firefox and silent updates contains more specific technical details about this Microsoft Windows specific change. We are also looking at ways to improve the update process for our Mac and Linux users.
Add-ons default to compatible
Add-ons are a key benefit of using Firefox. Our users depend on their add-ons and need them to work. Firefox historically took a conservative approach to add-on compatibility. This approach was taken to minimize the chance that an add-on would have an undesired affect on your Web browsing experience when updating to a new version of Firefox. There were typically add-ons that are incompatible the day of a Firefox release. If you had one of these add-ons installed you would see an Incompatible Add-ons dialog that prompted you for action before the update was downloaded.
Add-on authors had to explicitly state that their add-ons were compatible with new Firefox releases. If an add-on was hosted on addons.mozilla.org (AMO) and was using the add-ons SDK, we could automatically keep it up-to-date. However, most add-ons will continue to work with no modification with new versions of Firefox. So…
…with the latest version of Firefox, add-ons are compatible by default. Well, to be accurate, most add-ons are compatible by default. There are certain classes of add-ons that are still flagged as incompatible, such as add-ons that contain binary components, add-ons whose compatibility range does not include Firefox version 4 or later, and add-ons that have been determined to be incompatible by the Firefox Add-ons team.
These changes should result in more of your add-ons being compatible on day 0 of a release. This means less work for you and less work for add-on authors. This also means Firefox updates should download without any prompting by the Incompatible Add-ons dialog.
Add-on authors should see the post Solving Firefox’s add-on compatibility problem by Blair McBride (aka Unfocused) for all of the details about the changes to the add-on update system.
What’s New Page
The What’s New Page is displayed in Firefox after the browser is updated. This page notifies you that your update has completed successfully and informs you about relevant product changes. As of Firefox 8, the What’s New page can now be turned on or off per release. This means that we can elect to show or hide the page per release based on whether there is important product or Mozilla-related information to share with you.
The five updates detailed in this post will result in a silent Firefox update experience that continues to keep your browser up-to-date, current with the latest Web features, and secure.
All fantastic impovements! I’ve been enjoying some of them on nightly builds already. We’ve been able to selectively load/not load the what’s new page since Firefox 3.6, though, actually, we’ve just never set the server side bits appropriately! 🙂
Of course Linux users have been enjoying background Firefox updates for a long time 🙂
Do background updates work if Fireox is installed by an unprivileged user?
Is the update notification box that appears down right going away ? Because I’m currently using Aurora and this box appears everytime an update is avalaible (every day) and almost every time while I’m playing Battlefield 3, so it unfocus Battlefield and comes back to the desktop. It’s pretty annoying.
Great work. Now for a more controversial topic: disable all the update landing pages for addons. They appear far more often than the Firefox update UI. When tabs open by themselves it gives the feeling that I am no longer in control of my own computer. I have literally overhear people speaking to the computer asking why a the tab opened (firefox and addon update landing pages).
what is the difference between background updates and silent updates??
From my understanding, background updates apply most of the update while Firefox is still running. The update is installed to a separate folder somewhere on the hard drive. Then when Firefox closes (and reopens?), that new folder’s contents are moved over top of the old version. The move/copy operation is much faster than doing everything involved in applying the update directly, so there’s less time waiting for the update to apply, so the user can get back to work sooner.
Silent updates are just suppressing all indicators that the update is currently being applied.
Put the two together and you theoretically just get a newly updated Firefox the moment you start it back up.
Pingback: Firefox Engineering Program Management 4Q 2011 Summary | Lawrence Mandel
Finally, an end to the ‘my add-ons never work’ experience. Which used to apply to nightly/beta but, since Firefox went crazy on version numbers, had become the default experience.
Thank you, thank you.
We have translated your post to Japanese: http://mozilla.jp/blog/entry/7789/
As if I’d ever allow Firefox to auto-update. “Background”… almost synonymous with “hidden”.
The silent background updates should have a user preference setting! I do not want to download a 20Mb file when being online using a 3G mobile broadband connection where I have to pay for every byte downloaded. Roaming charges abroad are expensive!
Seems the only option currently is to downgrade to firefox to 3.6 again.
It is understandable that mozilla wants to push out security updates but I want to control when the software update (including download) is done! Big mistake from developers of mozilla firefox that they don’t allow users to control this.
Pingback: Changes to Firefox ‘Updates’ Coming | Firefox Extension Guru's Blog