Project |
Status |
ETA (weeks)
|
Incremental Cycle Collection (ICC)
|
- I started landing various cycle collector refactorings
- Used ASAN to fix a crash involving a set of weakly-held DOM nodes
- Fixed issue with not cutting off ICC enough in Mochitests, causing Windows oranges
- Investigating how to deal with weak references keeping things alive
|
Preffed off by end of June
|
Keep JS-accessible APIs from blocking the main thread
|
- component: Downloads API
- Constant-stack promise (bug 810490) - Landed.
- Modules for workers (bug 872421) - Blocked by lack of review [from irakli].
- Non-blocking session restore (bug 838577) - Blocked by lack of review [from ttaubert].
- Async mozStorage (bug 702559) - Review in progress [from mak].
- ETA: Hopefully end of June
- Making mochitests play nice with Task.jsm (bug 872229) - Pending review [from Yoric].
- ETA: Hopefully end of June
- Support for readahead in OS.File (bug 865389) - Unix version making good progress.
- ETA: Hopefully end of June
- Remove postMessage jank (bug 879083, bug 852187, bug 873293) - Design in progress.
- Investigate crashes when Workers are initialized during shutdown - Looks like this will need some changes to either xpcom or necko.
- Downloads API news
- Downloads API next
- Communicating more widely
- firefox-dev, mozilla.dev.platform, mozilla.dev.extensions, Add-ons blog
- Major milestones
- Consumer interface complete
- Feature complete and stabilized
- Enabled in Firefox Desktop
- July / Early August
- Firefox 25 or Firefox 26
- Enabled everywhere, nsIDownloadManager decommissioned
|
Hopefully end of June
|
Profiler Backend for Mobile
|
- Read and use ARM EXIDX unwind information (bug 863475) -- finally through review, needs landing
- All other prereqs for native unwind on Android are already in place
- Profiler backend segfaults due to possible data races; investigating (no bug # yet)
- Starting to collect data on unwind memory use/speed for B2G
|
June
|
Reducing time to first paint - Phase 1
|
- bug 873640: Read-ahead was not actually happening on omni.ja's
- bug 879957: Don't load feclient.dll on startup
- Profiling & analysis of Firefox & other browsers' startups
- Found issues:
- meta bug 880296: Reduce number of DLLs loaded during startup
- bug 880300: Don't stat plugin libs on the main thread during startup
- bug 880307: search.json still read on main thread during startup
|
End of June
|
Replace Addon Manager SQLITE with JSON file
|
- AddonRepository changes have mostly passed review, expect patches to start landing soon.
- XPIProvider core changes starting to get review comments.
- Initial implementation of asynchronous save of the JSON data files is implemented and gathering feedback.
- Still expect a couple of weeks of cleanup on open issues.
|
Late June
|
Smooth Tab Animation
|
- Landed vsync support on windows (bug 856427) - works well.
- Regressions from timer filter removal (bug 590422) - reviewed all "inhouse" talos suites (tscroll, tsvg, dhtml). All suites didn't actually measure performance due to wrong approach to timing. Landed partial tscroll improvement, working on full fix for all, with followups (e.g. bug 880036).
- Tab animation regression tests - in progress. Talos will need some modifications to acomodate it. Working with jmaher.
- Newtab and reflows - ttaubert
ETA: Should be mostly complete in the next week except for requestAnimationFrame/setTimeout issues
- Enabled preloading about:newtab by default (bug 791670)
- Deferred preloading of next newtab page (bug 875509)
- Eliminated reflow after swapping docShells by correctly sizing the preloading browser (bug 875257)
- Got rid of a couple of layout flushes in gBrowser.addTab() (bug 876374)
- Implemented reflow observers (bug 453650)
- Removed browser.stop() call in addTab() by adding support for 'nodefaultsrc' attribute (bug 878747)
- setTimeout() instead of requestAnimationFrame()
- NewTab Perf numbers
- about:blank -> 12 frames avg / 8.5ms paint / 17.6 interval
- about:newtab -> 11 frames avg / 10.4 paint / 16.4 interval (setTimeout, not rAF)
- about:newtab before recent changes: 3 frames for the entire animation (practically a slideshow)
- Notes
- Australis work planned for Firefox 25, may need to coordinate with front-end team
- Tim to schedule discussion about requestAnimationFrame/setTime issues for work week
|
Hopefully end of June
|
Network Cache Rewrite
|
Still early in coding. Filesystem layer and new API for consumers being written separately, aren't integrated yet. Branch set up (gum) but not many patches landed yet.
|
Q4
|