Platform/2009-Q1-Goals: Difference between revisions

 
(18 intermediate revisions by 7 users not shown)
Line 24: Line 24:
=== Video/Audio ===
=== Video/Audio ===


* Ship the current feature set in 1.9.1 with reasonable stability and performance
* Ship the current feature set in 1.9.1 with reasonable stability and performance [on track]


=== GFX  ===
=== GFX  ===
* 1.9.x
* 1.9.x
** [in-progress] (partial carryover) Plan and initial prototype of 3d-accelerated cairo on at least one platform
** [miss] (partial carryover) Plan and initial prototype of 3d-accelerated cairo on at least one platform
** (partial carryover) Expose at least 3 graphics or text related features to web developers
** [miss] (partial carryover) Expose at least 3 graphics or text related features to web developers
*** e.g. OpenType features, gradients through CSS, compositing, etc.
*** e.g. OpenType features, gradients through CSS, compositing, etc.
** [in-progress] Significantly improve Cairo software rendering peformance for complex graphics on both x86 and ARM
** [done] Significantly improve Cairo software rendering peformance for complex graphics on both x86 and ARM
** [danger] (?) Continue to unify text frameworks across platforms; plan for cross-platform Harfbuzz integration
** [miss] Continue to unify text frameworks across platforms; plan for cross-platform Harfbuzz integration
* 3D
* 3D
** [in-progress] Public OpenGL ES for HTML spec
** [done] Public OpenGL ES for HTML spec
** [in-progress] Extension available for 3.1 beta (and final, if released)
** [done] Extension available for 3.1 beta (and final, if released)
** (needs evang assistance) At least one compelling demo that takes advantage of OpenGL on the web
** [miss] (needs evang assistance) At least one compelling demo that takes advantage of OpenGL on the web
*** (stretch, some parts out of our control) Demonstrate 3D capabilities on mobile
*** [miss] (stretch, some parts out of our control) Demonstrate 3D capabilities on mobile
* Testing
* Testing
** Ensure adequate performance testing coverage of graphics features provided by Thebes and Gecko
** [miss] Ensure adequate performance testing coverage of graphics features provided by Thebes and Gecko


=== Mac OS X ===
=== Mac OS X ===


* Stay on top of Gecko 1.9.1 blockers, be prepared to ship Firefox 3.1 in line with other groups.
* Stay on top of Gecko 1.9.1 blockers, be prepared to ship Firefox 3.1 in line with other groups.
** On track
** [COMPLETED] Blockers hovering around 0-1 for a while now.
* Perform basic tests on Mac OS X 10.6. File bugs on any critical issues.
* Perform basic tests on Mac OS X 10.6. File bugs on any critical issues.
** Completed, QA and Mac OS X developers have been testing on 10.6 and filing bugs.
** [COMPLETED] QA and Mac OS X developers have been testing on 10.6 and filing bugs.
* Continue making progress on 64-bit Mac OS X port. Get JS compiling and do the work necessary to port at least one other significant outstanding problem component (e.g. XPCOM I/O, MoreFilesX, printing, AppleScript, plugins, cursors).
* Continue making progress on 64-bit Mac OS X port. Get JS compiling and do the work necessary to port at least one other significant outstanding problem component (e.g. XPCOM I/O, MoreFilesX, printing, AppleScript, plugins, cursors).
** Completed. JS, MoreFilesX, cursors, and almost all of XPCOM have been finished.
** [COMPLETED] JS, MoreFilesX, AppleScript, cursors, and much of XPCOM have been finished.
* Complete specification for plugin event handling which will allow plugins to not eat events they don't handle (bug 78414).
* Complete specification for plugin event handling which will allow plugins to not eat events they don't handle (bug 78414).
** On track but not near completion.
** [COMPLETED] Specification is [https://wiki.mozilla.org/Plugins:AdvancedKeyHandling here].
* For 1.9.2, replace use of (deprecated) ATSUI APIs with CoreText when running on 10.5 and later {{nbug|389074}}.
* For 1.9.2, replace use of (deprecated) ATSUI APIs with CoreText when running on 10.5 and later {{nbug|389074}}.
** On track, patch in review.
** [COMPLETED] Core Text backend pushed to mozilla-central


=== Content ===
=== Content ===


* [ON TRACK] Assist with shipping Firefox 3.1. (all)
* [ON TRACK] Assist with shipping Firefox 3.1. (all)
* Further improved DOM performance (i.e. dromaeo). (peterv)
* [ON TRACK] Further improved DOM performance (i.e. dromaeo). (peterv)
* Get an off-main thread HTML parser up n' running. (bnewman)
* [ON TRACK] Get an off-main thread HTML parser up n' running. (bnewman)
* [ON TRACK] Actually start working on XBL2. (sicking)
* [ON TRACK] Actually start working on XBL2. (sicking)
* [ON TRACK] Finish up the remainder of our Web Workers implementation (excluding shared workers), bugs {{nbug|466254}}, {{nbug|468665}}. (bent)
* [ON TRACK] Finish up the remainder of our Web Workers implementation (excluding shared workers), bugs {{nbug|466254}}, {{nbug|468665}}. (bent)
Line 68: Line 68:


=== JS ===
=== JS ===
* ship tracer in Fx3.1
* ship tracer in Fx3.1 (on track)
*  recursion in the tracer (gal dvander)
*  recursion in the tracer (at risk)
* ICC (finally!!!) https://bugzilla.mozilla.org/show_bug.cgi?id=472952 (building 3.2 - mac, know windows benefit)
* ICC (finally!!!) https://bugzilla.mozilla.org/show_bug.cgi?id=472952 (building 3.2 - mac, know windows benefit) (on track)
* ES 3.1 planned, with big progress (significant meta hooks)
* ES 3.1 planned, with big progress (at risk)
* Analysis of GC shortcomings (dmandelin)
* Analysis of GC shortcomings (at risk)
* Continued performance improvements (sunspider, v8 bench, real world cases, dromaeo)
* Continued performance improvements (on track)
* progress on inline/context threaded interpreter (using nanojit?) (step 1 = make jsop cases functions so they can be called reliably and on Windows)
* progress on inline/context threaded interpreter (using nanojit?) (step 1 = make jsop cases functions so they can be called reliably and on Windows) (at risk)
* caching eval, run eval without re-entering the interp, trace eval
* caching eval, run eval without re-entering the interp, trace eval (done)
* read-only code pages (q1)
* read-only code pages (on track)
* significantly improve OS X valgrind quality using measurements from njn's blog
* significantly improve OS X valgrind quality using measurements from njn's blog (on track)
* work with intel on backend optimization
* work with intel on backend optimization (at risk)


=== Build System ===
=== Build System ===
* Fix things so we can run tests on prepackaged builds {{bug|421611}}
* Fix things so we can run tests on prepackaged builds {{bug|421611}} (on track)
* Squeeze some more speed out of the Windows build
* Squeeze some more speed out of the Windows build (on track: pymake)


=== Static Analysis ===
=== Static Analysis ===


* Document Treehydra and abstract interpretation (ESP) libraries.
* Document Treehydra and abstract interpretation (ESP) libraries. (at risk: dmandelin and graydon both head-down in tracemonkey)


* Get a type-based call graph for Mozilla in a conveniently usable, documented form. Test it by trying out a simple interprocedural analysis.
* Get a type-based call graph for Mozilla in a conveniently usable, documented form. Test it by trying out a simple interprocedural analysis (?: who was going to do this?)


=== Accessibility ===
=== Accessibility ===


* Code cleanup and bug fixing are top priority.
* Code cleanup and bug fixing are top priority.
** update: on-track but will be ongoing
** [COMPLETED]
*** We made good progress here, but this will be ongoing.
*** Mochitest coverage greatly improved in this quarter.


* Near-full ARIA 1.0 compliance (DHTML accessibility)
* Near-full WAI-ARIA 1.0 compliance (DHTML accessibility)
** on-track for decent compliance, dependency on W3C spec changes.
** [COMPLETED]
*** We have decent compliance with the WAI-ARIA 1.0 spec. Compliance work will probably extend into Q2+, as specification is only recently in "last call".


* Lazy instantiation for GNOME/Linux for performance.
* Lazy instantiation for GNOME/Linux for performance.
** done but [http://mail.gnome.org/archives/gnome-accessibility-list/2009-January/msg00030.html fragile], dependency on GNOME
** [COMPLETED]
*** This involved mostly community glue work (lining up the right people) as well as backporting some GNOME FF bootstrapping.


* Updating documentation - ARIA User Agent Implementation Guide.
* Updating documentation - ARIA User Agent Implementation Guide.
** at-risk, W3C has delayed forming this group since the doc moved into W3C space.
** [COMPLETED]
*** Expectations were met here, but this will be ongoing.
*** Document moved into W3C so will move slowly now.
*** Work will proceed in [http://mindforks.blogspot.com/2009/02/aria-user-agent-implementation-task.html ARIA User Agent Implementation Task Force]


(Note: Mac A11y pushed to Q2)
(Note: Mac A11y pushed to Q2)
Confirmed users, Bureaucrats and Sysops emeriti
792

edits