Mozilla Firefox/Platform Engineering Update 39.1

This engineering update is also available on the Platform/2015-03-17 wiki.

Firefox Release Schedule

Only two weeks and two beta builds until Firefox Beta 37 is released. The Tracking Firefox dashboard shows tracked bugs for the Aurora and Beta releases.

OrangeFactor

RyanVM sends a major shout out to Tim Taubert for being on an orange fixing tear last week.

MemShrink

Mike Hommey enabled jemalloc3 (bug 762449) on Nightly. It’s configured to not ride the trains for now. There are a number of perf regressions and crashes that Mike is diligently working through.

Media

The media team is close to shipping Media Source Extensions (MSE bug 1083588) for YouTube. MSE improves HTML5 video performance as YouTube transitions its default video player from Flash to HTML5 video. The team plans to ship MSE on Windows in Firefox 37, OS X in Firefox 38, and then Linux. Be on the look out for any YouTube bugs, such as videos that won’t load or get stuck rebuffering.

Performance

Telemetry and FHR measurements were unified into a single system on Nightly 39 (bug 1069869). The old FHR will still be around for a couple of releases. The unified Telemetry client-side is still being stabilized, so Telemetry from Nightly 39 isn’t reliable yet. Be very careful when interpreting Nightly 39 data!

The unified Telemetry pings are sent to a new Telemetry backend (DataPipeline) which will support streaming analyses. The Telemetry wiki is now up to date with information about Telemetry client-side & server-side workings. We added a Telemetry errata page to help with analyzing Telemetry data.

Many Telemetry histograms will automatically expire in Firefox 40. Check Histograms.json to see if the expiry version of your telemetry probes should updated.

Test results comparing e10s vs non-e10s Talos scores and an explanatory blog post are coming soon. Results in very raw form: http://pastebin.com/raw.php?i=D7fr2EtM.

Aaron Klotz created a tool for visualizing Windows attached input queues, as detailed on his blog. Attached input queues can cause odd problems like bug 1105386 where a page won’t load or render if the mouse is not moving.

With bug 1128768, we can now gather information about the amount of jank caused by different types of Flash content. This will be used to quantify the benefit of targeting Shumway at different types of Flash content.

Per-compartment CPU accounting (bug 674779) should land in the next week or two. Use it to report add-ons that use too much CPU or CPOWs (e.g. bug 1136923).

Shumway

The team’s current focus is playing Flash ads in Shumway instead of Flash. Using Shumway will reduce the number of Flash plugin instantiations, which is correlated with Flash deadlocks, and reduce page jank. Flash ads have also exploited Flash security bugs to install malware. Shumway should protect against many of those exploits.

Shumway now plays IMDb trailer videos on Nightly (bug 1137433) and substantial progress is being made on a verifiable sandboxed. An implementation of AS3’s meta-object protocol that should be pretty faithful to Flash’s an a new Shumway interpreter should land soon. This enables proper handling of SecurityDomains, a crucial Flash security feature.