First off, Merry Christmas from the Guru! For those readers who were not around this time last year, I did an impromptu special feature called the Fx Year In Review. I thought it would be neat to look back and see what happened with Firefox that year, especially with the release of Firefox 2.0! I want to continue this as an annual Christmas tradition so here’s a look back at Firefox in 2007.
A lot of us were hoping to see Firefox 3 come out in 2007, however given the huge complexity of Firefox 3 (especially Places) this just did not happen. Now keep in mind for nearly the first half of 2007, there were three different branches of Firefox in development. There was the old 1.5.0.X branch which Mozilla phased out, 10 releases on the 2.0.0.X branch and then the very slow progression of Fx 3 with 9 releases (7 Alphas and 2 Betas).
- There were no Firefox releases during the month of January 2007.
Firefox 22.214.171.124 & 126.96.36.199 were both released together on February 23rd. Both releases fixed a Permissions
Bug in the German (de) locale on Linux.
Firefox 188.8.131.52 induced several security fixes
Firefox 184.108.40.206 fixed several issues for Windows Vista users:
- Automatic Updates now works with users who have limited account privilege and User Account Control
- Uses the Vista Default Application API which means Firefox should now be able to set itself as the default browser without having to be run as an administrator.
- Before Firefox would remain elevated (a.k.a. running as an administrator) after an update was performed, but that has been fixed.
- Fixed several security issues
Firefox 3.0a2/Gecko 1.9a2 were released on February 7th and came the following warning:
The browser may consume excessive amounts of memory after prolonged browsing. In order to better handle memory issues, a new garbage collection system has been implemented. However, as the process of integrating Gecko into this system is still ongoing, there are some known leaks that result in large memory usage when the browser is used for a long period of time. A restart should
resolve the problem, which will be fixed in Alpha 3.
Some of the improvements in this milestone included:
- Resolved remaining issues with ACID2 test compliance.
- Support for the Web Apps 1.0 API for changing stylesheets.
- XML documents can now be rendered as they’re downloaded instead of only after the full document has been loaded.
- Greatly improved Mac widgets support since Alpha 1.
- Improvements in the Cairo graphics layer.
Firefox 220.127.116.11 & 18.104.22.168 were both released together on March 20th.
Firefox 22.214.171.124 included several security fixes
Firefox 126.96.36.199 included these fixes:
- Various web compatibility regressions.
- Several security issues
Firefox 3.0a3/Gecko 1.9a3 were released on March 23rd. Some of the improvements in this milestone included:
- Animated PNG (APNG) images are now supported.
- The DOM clientLeft and clientTop attributes are now supported.
- Introduced support for <link rel="offline-resource">, which puts resources into the browser’s offline cache. This allows a web application to ensure that its resources are available in the cache when the browser goes into offline mode. See Marking Resources for Offline Use for further details on offline support.
- Improved precision of layout and scaling across a wide range of screen and printer resolutions.
- Implemented cycle collection in XPCOM, which detects cases where two released objects hold one another, but neither is held by anyone else. In this scenario, both objects can safely be purged. Previously, the holds each has on the other would have prevented them from being purged.
- Added support for the
HttpOnlycookie attribute, which marks a cookie as readable only by the server and not by client-side scripts.
- Added a new preference, “Warn me when web sites try to redirect or reload the page”, which notifies the user when the page specifies
Firefox 3.0a4/Gecko 1.9a4 were released on April 27th. Some of the improvements in this milestone included:
- New Page Info window
- Many Cocoa user interface improvements and bug fixes
- Improvements to offline application support. Enabled Listing of Offline Resources and implemented SQL device for the offline cache. See Marking Resources for Offline Use for further details on offline support.
- Miscellaneous Gecko 1.9 bug fixes
Firefox 188.8.131.52 & 184.108.40.206 were both released together on May 30th.
Firefox 220.127.116.11 was the final release on the Fx 1.5.0.X branch marking the end of updates for Firefox 1.5 users. Included were these security fixes
Firefox 18.104.22.168 included:
- Several security issues have been fixed.
- More enhancements and fixes for Windows Vista are included, with the following caveats.
- Afrikaans (af) and Belarusian (be) language supprt.
Firefox 3.0a5/Gecko 1.9a5 were released on June 6th. Some of the major improvements in this milestone included the reintroduction of Places (bookmark portion) and the partial enabling 9by default on Mac OS X, on about 50% of Windows) of Breakpad. Other improvements included:
- Support for Growl notification under Mac OS X
- Support for native controls on Mac OS X
- Miscellaneous Gecko 1.9 bug fixes
Firefox 22.214.171.124 was a ‘Firedrill’ (unplanned security) release on July 30th fixing bug 389580: some schemes with %00 launch unexpected handlers on windows.
Firefox 3.0a6/Gecko 1.9a6 were released on July 2nd and were suppose to be the last ‘Alpha’ build. Some of the improvements in this milestone included:
- A major rewrite of the text layout and rendering code, including:
- Better support for Thai and other complex scripts
- Better kerning (Windows & Linux) and ligature support (Mac only)
- Groundwork for soft hyphen support
- Groundwork for line-breaking improvements
- Updated SQLite engine to version 3.3.17
- Support for site-specific preferences – text size
- A new Quit dialog box that resolves termination errors
- Added permanent ‘Restart Firefox’ button to Add-Ons Manager
- Miscellaneous fixes to download manager including correctly displaying large file sizes
- Various Places fixes
- Miscellaneous Gecko 1.9 bug fixes
Firefox 3.0a7/Gecko 1.9a7 were released on August 3rd and this was really the last ‘Alpha’ build. Lots of improvements in this milestone including:
- Support for Mac OS X 10.3 (Panther) has been removed. Gecko 1.9 will no longer build or run on Mac OS X 10.3.
- Default visited pages history size 9 to 180 days (see bug 332748)
- Full page zoom of images, layout and text (see bug 4821)
- Many fixes for context menus, clipboard, and drag services on Mac OS X.
- Reworking of XUL menus and popups (see bug 279703)
- document.all now returns a NodeList of elements (see bug 259332)
- Several new clipboard events (see bug 280959).
- A class of wrappers to mediate access between web pages from different origins (see bug 367911)
- Cross site XMLHttpRequest specification implemented (see bug 389508)
- A method for opening modal dialogs from content (see bug 194404)
- Color profile support (see bug 16769)
- Text in <canvas> (see bug bug 339553)
- SVG lighting (bug 383184) and tile filters (bug 373572)
- Support for CSS text-rendering property for HTML (see bug 387969)
- Many fixes to CSS font property bugs (see bug 377947, bug 216456, bug 383979), bug 388458), and bug 383979)
- -moz-border-*-start and -moz-border-*-end CSS properties are implemented (see bug 74880)
-moz-initialimplemented for all remaining CSS properties except
-moz-border-*-colors(see bug 80887)
- window.getComputedStyle supports all supported CSS properties (see bug 316981)
- Dropped SOAP support (see bug 332174)
- Browser-side support for windowless plugins on Unix/X11 (see bug 137189)
- A full Gecko 1.9 bug fix list
Firefox 3.0a8/Gecko 1.9a8 were released on September 20th and again is suppose to be the last ‘Alpha’ build. This time last year Firefox 2 was nearing RC1 status and here Firefox 3 is still in the Alphas. Some of the improvements in this milestone included:
- Basic and unpolished UI for starring and tagging pages has been added, as well as a richer Location Bar autocomplete algorithm that matches against page title (see Places UI Plan for more details)
- Prompt for remembering passwords is no longer a modal dialog
- Built in malware protection (which you can test here)
- Basic and unpolished UI for indicating richer website identity information has been added
- Support for web-based protocol handlers, though it doesn’t work in all situations (see bug 394483).
- A new Applications preference panel for configuring handlers for various content types (see bug 377784) has replaced the Download Actions dialog and the Feeds preference panel
- All Firefox add-ons must now use a secure method for auto-updating (see bug 378216 and this guide for more details)
- Firefox now quits properly (instead of just being killed) when Windows is shut down or restarted (see bug 333907)
- Added support for document.elementFromPoint method (see bug 199692)
- DOMWillOpenModalDialog events are no longer fired by the nsIPrompt implementation (see bug 391100)
- TYPE_PLUGIN has been removed from the Extension Manager code (see bug 392140)
Firefox 126.96.36.199 was released on October 18th. This build included fixes which were originally planned for the 188.8.131.52 then 2.0.07 releases including:
- eight security vulnerabilities including two labeled critical
- 100+ stability and performance patches.
Firefox 184.108.40.206 was released on November 1st. This fixed several regression from the prior 220.127.116.11 release:
- 391412/400406 – layout regression with CSS (Win XP/Vista, Mac, Linux)
- 400421 – dynamically removing an <area> makes the whole map disappear (Win XP/Vista, Mac, Linux)
- 400467 – After upgrading to FF 18.104.22.168 Java applets stop working on Vista [Fx 22.214.171.124/JAVA/Vista Issues]
- 400714 – Flash crashes on Mac have skyrocketed in FF 2008
- 396695 – Win XP Add-ons are disabled after updating. Users can fix this problem by opening their profile folder and removing three files (extensions.rdf, extensions.ini and extensions.cache)
- 400735 – Win XP Some Windows users may experience crashes at startup. There is no workaround available at this time.
Firefox 126.96.36.199 was released on November 26th. Fixed were several High Impact security issues:
- MFSA 2007-39 Referer-spoofing via window.location race condition
- MFSA 2007-38 Memory corruption vulnerabilities (rv:188.8.131.52)
- MFSA 2007-37 jar: URI scheme XSS hazard
Firefox 184.108.40.206 was released on November 30th as a ‘Firedrill’ release to correct a major regression in the just released Firefox 220.127.116.11 affecting an important <canvas> HTML element interface (.drawImage). This bug affected several web sites and extensions (FoxSaver, Fotofox) that rely on it to deliver the intended experience to their users. This was also the first time there were 3 releases on the same branch in the same month AND 2 in the same week.
Firefox 3.0a8/Gecko 1.9b1 were released on November 19th. Finally a beta release and it is official, Firefox 3 will not be released in 2007. Also because this is a ‘Beta’ release CyberNet News warned “be prepared for poor extension compatibility. Many extensions, especially those pertaining to bookmarks, will probably not function to their full potential if at all.” Some of the improvements in this milestone included:
- Improved security features such as: better presentation of website identity and security, malware protection, stricter SSL error pages, anti-virus integration in the download manager, and version checking for insecure plugins.
- Improved ease of use through: better password management, easier add-on installation, new download manager with resumable downloading, full page zoom, animated tab strip, and better integration with Windows Vista and Mac OS X.
- Richer personalization through: one-click bookmarking, smart search bookmark folders, direct typing in location bar searches your history and bookmarks for URLs and page titles, ability to register web applications as protocol handlers, and better customization of download actions for file types.
- Improved platform features such as: new graphics and font rendering architecture, major changes to the HTML rendering engine to provide better CSS, float-, and table layout support, native web page form controls, colour profile management, and offline application support.
- Performance improvements such as: better data reliability for user profiles, architectural improvements to speed up page rendering, over 300 memory leak fixes, and a new XPCOM cycle collector to reduce entire classes of leaks.
- All the changes/fixes/improvements are too numerous to list, see the Firefox 3 Beta 1 Release Notes for a complete list.
Firefox 3.0 Beta 2 was an early Christmas present from Mozilla, released on December 18th.
Some of the improvements in this milestone included:
- Improved security features such as: protection from cross-site JSON data leaks, tighter restrictions on site-specific content using effective TLD service, better presentation of website identity and security, malware protection, stricter SSL error pages, anti-virus integration in the download manager, version checking for insecure plugins.
- Improved ease of use through: better password management, easier add-on installation, new download manager with resumable downloading, full page zoom, animated tab strip, and better integration with Windows Vista, Mac OS X and Linux.
- Richer personalization through: one-click bookmarking, smart bookmark folders, location bar that matches against your history and bookmarks for URLs and page titles, ability to register web applications as protocol handlers, and better customization of download actions for file types.
- Performance improvements such as: better data reliability for user profiles, architectural improvements to speed up page rendering, over 330 memory leak fixes, a new XPCOM cycle collector to reduce entire classes of leaks, and reductions in the memory footprint.
Closing Thoughts & 2008
All in all it has been quite a year for Firefox with the three branches. Hard to say if we will see this again next year with Firefox 2, Firefox 3…provided it ever gets released..and Firefox 4.
I know there is going to be a Firefox 3 Beta 3 and I don’t expect to see that until sometime in mid February 2008. I really think the developers should have waited on Beta 2 until after the holidays as it seems they were in a big hurry to push this out. Consider that it was almost 2 months between the Alpha 8 and Beta 1 releases and yet barley a month after Beta 1 they push out Beta 2.
How many more betas after this, I haven’t a clue. I sure wasn’t expecting to see 8 Alphas on Firefox 3, just hope we don’t end up seeing 8 (or more) Betas. Granted, Places has been a major reason for the multiple Alphas, but looks like they finally got the major kinks worked out.
Further haven’t a clue when the final version of Firefox 3 will be out. I hope it will be released by this time next year, though I wouldn’t be all that surprised if I am writing about Firefox 3 RC 8 (but I sure hope not) when I am doing the 2008 Firefox Year In Review.
2008 we could see another race between Microsoft and Mozilla to see who will release their ‘new & improved’ browser first. This was the case in 2006 with IE7 and Firefox 2. Now keep in mind there is little known about IE 8 other than it just recently was certified passing the Acid 2 test. As for a release date, that is about as unknown as that of Firefox 3
Should I even speculate on Firefox 4? Um…nope, not even go there.