Platform/2008-Q4-Goals: Difference between revisions
< Platform
Jump to navigation
Jump to search
(→JS) |
|||
(23 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
=== Goals | === General Goals === | ||
* Ship two 1.9.1 milestones. | |||
* Joint w/ Security Team: Have JS, GFX, Content, and Layout focus on 1-3 security bugs each and resolve at least one bug a week per group in order to reduce our security bug backlog. | |||
=== XPCOM+XPConnect === | === XPCOM+XPConnect === | ||
Line 14: | Line 17: | ||
** Security bugs | ** Security bugs | ||
** Performance hotspots | ** Performance hotspots | ||
** All 1.9.1 blockers marked blocking before December fixed by end of December | |||
[On track for layout proper; at risk for SVG and Video/Audio] | |||
* Linux support for CSS downloadable fonts | * Linux support for CSS downloadable fonts | ||
[Done] | |||
* Land and stabilize support for external resource documents | * Land and stabilize support for external resource documents | ||
[Done] | |||
* Plan post-1.9.1 feature set | * Plan post-1.9.1 feature set | ||
[On track] | |||
=== GFX === | === GFX === | ||
* Performance | |||
** (atrisk) Create plan for hardware graphics acceleration | |||
** (done -- ongoing) Optimize mobile performance for high user perf on next-gen devices | |||
* Capabilities | |||
** (miss) Experimental builds with access to more OpenType and other low-level features | |||
** (?) Have decode-on-draw option for image rendering | |||
** (inprogress) Draft of Canvas 3D OpenGL API spec | |||
=== Mac OS X === | === Mac OS X === | ||
* Finish Mac OS X platform blockers for Gecko 1.9.1. | * [DONE] Finish Mac OS X platform blockers for Gecko 1.9.1. | ||
* Complete specification for plugin event handling which will allow plugins to not eat events they don't handle (bug 78414). Spec should cover windowed and windowless plugins. | ** Goal of zero blockers unrealistic. Should have worded this better. | ||
* Make decisions about PPC and Mac OS X 10.4 support post-1.9.1. | * [NOT DONE] Complete specification for plugin event handling which will allow plugins to not eat events they don't handle (bug 78414). Spec should cover windowed and windowless plugins. | ||
* Make significant progress towards an NPAPI testing framework. | ** Not going to be finished in Q4, in progress. Delayed due to unforeseen problems with the plugin testing system. | ||
* | * [NOT DONE] Make decisions about PPC and Mac OS X 10.4 support post-1.9.1. | ||
** Not dropping PPC support for 1.9.next | |||
** 10.4 decision is near complete, people are on vacation. | |||
* [DONE] Make significant progress towards an NPAPI testing framework. | |||
* [DONE] Make significant progress towards 64-bit readiness. | |||
=== Content === | === Content === | ||
* | * [DONE] Support Firefox 3.1 ship | ||
* Major DOM performance improvements | |||
** [AT RISK] Fast JS JIT->DOM calls for performance critical methods | |||
** [AT RISK] innerHTML perf improvments | |||
** [DONE] Stake out off-main thread HTML parsing work | |||
* Tie up loose ends from previous releases | |||
** [ON TRACK] Fix nsIDocument::GetScriptGlobalObject() properly | |||
** [ON TRACK] Cycle collection sanitizing (inner/outer window lifetime cleanup, docshell cycle collection, delayed window collection regression tests) | |||
** [AT RISK] Make XHR (*not* crossite related) spec compliant | |||
* Misc | |||
** [AT RISK, progress made but most likely won't be ready this quarter] Eliminate notification batching in the content sinks | |||
=== JS === | === JS === | ||
Line 38: | Line 66: | ||
* regex: substantial perf improvement ( > 2x) | * regex: substantial perf improvement ( > 2x) | ||
* tracing: recursion | * tracing: recursion | ||
=== Build System === | === Build System === | ||
Line 47: | Line 71: | ||
* Finish the spidermonkey standalone build system | * Finish the spidermonkey standalone build system | ||
* Get the spidermonkey unit tests running as part of TUnit | * Get the spidermonkey unit tests running as part of TUnit | ||
=== | === Static Analysis === | ||
* Aggregate dead code data from mac/linux/windows and present it via html reports with links to relevant sourcecode. | |||
* Setup dehydra buildbots on mac/linux | |||
* Produce debian packages for pluginified gcc + dehydra |
Latest revision as of 23:43, 7 January 2009
General Goals
- Ship two 1.9.1 milestones.
- Joint w/ Security Team: Have JS, GFX, Content, and Layout focus on 1-3 security bugs each and resolve at least one bug a week per group in order to reduce our security bug backlog.
XPCOM+XPConnect
- Map out allocator strategy: if XPCOMGC+Boehm, then:
- Fragementation improvements in Boehm allocator
- Make spidermonkey use the new GC
- Make content GCed instead of refcounted, remove cycle-collector, and make xpconnect aware of GCed nodes (probably longer than a 3-month goal)
Layout
- Double down on wanted1.9.1/blocking1.9.1 bug list
- Regressions
- Security bugs
- Performance hotspots
- All 1.9.1 blockers marked blocking before December fixed by end of December
[On track for layout proper; at risk for SVG and Video/Audio]
- Linux support for CSS downloadable fonts
[Done]
- Land and stabilize support for external resource documents
[Done]
- Plan post-1.9.1 feature set
[On track]
GFX
- Performance
- (atrisk) Create plan for hardware graphics acceleration
- (done -- ongoing) Optimize mobile performance for high user perf on next-gen devices
- Capabilities
- (miss) Experimental builds with access to more OpenType and other low-level features
- (?) Have decode-on-draw option for image rendering
- (inprogress) Draft of Canvas 3D OpenGL API spec
Mac OS X
- [DONE] Finish Mac OS X platform blockers for Gecko 1.9.1.
- Goal of zero blockers unrealistic. Should have worded this better.
- [NOT DONE] Complete specification for plugin event handling which will allow plugins to not eat events they don't handle (bug 78414). Spec should cover windowed and windowless plugins.
- Not going to be finished in Q4, in progress. Delayed due to unforeseen problems with the plugin testing system.
- [NOT DONE] Make decisions about PPC and Mac OS X 10.4 support post-1.9.1.
- Not dropping PPC support for 1.9.next
- 10.4 decision is near complete, people are on vacation.
- [DONE] Make significant progress towards an NPAPI testing framework.
- [DONE] Make significant progress towards 64-bit readiness.
Content
- [DONE] Support Firefox 3.1 ship
- Major DOM performance improvements
- [AT RISK] Fast JS JIT->DOM calls for performance critical methods
- [AT RISK] innerHTML perf improvments
- [DONE] Stake out off-main thread HTML parsing work
- Tie up loose ends from previous releases
- [ON TRACK] Fix nsIDocument::GetScriptGlobalObject() properly
- [ON TRACK] Cycle collection sanitizing (inner/outer window lifetime cleanup, docshell cycle collection, delayed window collection regression tests)
- [AT RISK] Make XHR (*not* crossite related) spec compliant
- Misc
- [AT RISK, progress made but most likely won't be ready this quarter] Eliminate notification batching in the content sinks
JS
- tracing: no known regressions and on by default
- regex: substantial perf improvement ( > 2x)
- tracing: recursion
Build System
- Finish the spidermonkey standalone build system
- Get the spidermonkey unit tests running as part of TUnit
Static Analysis
- Aggregate dead code data from mac/linux/windows and present it via html reports with links to relevant sourcecode.
- Setup dehydra buildbots on mac/linux
- Produce debian packages for pluginified gcc + dehydra