Mozilla cuts memory usage and adds new tools for developers
Mozilla debuted Firefox 7 just six weeks after Firefox 6, thanks to its rapid release cycle. One of the most significant improvements is a reduction in memory use, by as much as 50% in some cases, Mozilla claims. Users who keep lots of tabs open and leave their browser running for long periods of time will reap the benefits of Mozilla's MemShrink project, which is dedicated to improving Firefox's speed and stability by reducing its memory usage.
1. Improved memory handling
Mozilla engineers have been working hard to shed the browser's reputation for being a memory hog, in large part through the MemShrink effort. Firefox 7 is the first release to benefit from its successes, writes Firefox developer Nicholas Nethercote.
2. New rendering backend to speed up Canvas operations on Windows systems
Mozilla is working on a new graphics API dubbed Azure that will be used for rendering in its Gecko engine. In Firefox 7, it's being used only with Direct2D and when using Canvas, which allows the team to stress test the new API, says Firefox developer Bas Bchouten. "The bottom line is you should generally see a speed improvement using 2D Canvas in Firefox 7 when using Windows 7 or Vista with a sufficiently powerful graphics card."
3. URL prefix hidden by default
One easily visible difference in Firefox 7 is the loss of the http:// URL prefix in the address bar. It's now hidden by default for a cleaner, more streamlined view of the URL. Secure prefixes such as https remain visible.
4. Support for Navigation Web Timing specification
Firefox 7 features Mozilla's initial implementation of the Navigation Timing spec, which allows a website author to monitor parts of web page performance in the page itself, Mozilla's Blizzard explains. "For people who are interested in page load and navigation performance, they can send that back to the server which can give them a better view into real world performance," Blizzard blogged. Screenshot from the W3C Editor's Draft shows a script that calculates how much time it takes to load a page since the most recent navigation.
5. New opt-in system sends performance data to Mozilla
Traditional tools for measuring performance, including benchmarks like SunSpider, don't do a very good job of measuring when Firefox is slow, says Mozilla developer Asa Dotzler. What's needed is real world usage that reveals where code is slowest, and for that, Mozilla introduced an opt-in feature, called Telemetry, in version 7.
6. Updated WebSocket protocol support
The WebSocket protocol has been disabled in Firefox in the past because of security issues, but the new version of Firefox implements the most recent draft version of WebSocket (version 8, as specified by IETF draft 10). Mozilla also has enabled the WebSocket protocol by default in Firefox for Mobile. "For mobile networks that are high latency and have high connection setup costs, WebSockets offers an opportunity to create a much better experience than is available with polling HTTP," writes Mozilla's Blizzard.
7. Support for text-overflow: ellipsis
Firefox now supports the ellipsis mode for the text-overflow property, which is used when text content overflows its given layout area. Screenshot shows Christopher Blizzard's example of how text-overflow ellipsis works. "As you can see, it's pretty easy to make text that cuts off in a sane way with this new property," Mozilla's Blizzard blogged.
8. Enhanced support for MathML
Among the changes in Firefox 7 that affect web developers is expanded support for MathML, an application of XML for describing mathematical notations.