Platform/2011-Q3-Goals
< Platform
Jump to navigation
Jump to search
General Goals
- [ON TRACK] Realize Android as a top-tier supported platform alongside Windows, Mac, and Linux.
- [ON TRACK] Implement priortized list of features required to support Web Apps (Joint with Product and Apps teams).
- [ON TRACK] Ship a new web developer tool.
Firefox
Firefox
- [DONE] Ship Firefox 6 & 7 on desktop and android
- [MISSED] Complete 10 features from product team's list, including 6 P1s
- Hit 7, with 5 P1s according to this list
- [DONE] If you include Firefox 6, which shipped in Q3, but much of that work was Q2. (That would be 15 total, 13 P1s)
Developer Tools
- [MISSED] Land Highlighter
- [MISSED] Land HTML panel
- [MISSED] Land Style panel
These are all close, demo well, and a couple pieces have already landed, but we're not counting "close" here, and they aren't done. Ergo->MISS.
GFX
- [ON TRACK] Fennec layers acceleration
- Use OpenGL ES on at least a subset of Android hardware
- [ON TRACK] Electrolysis Accelerated Layers
- Land in Q3 - clean up from Q2
- For non-sandboxed processes only
- [ON TRACK] CSS 3 Font Spec Implementation
- Complete bug 651693
- [ON TRACK] Azure - Cairo 2D canvas implementation
- Land on mozilla-central by Sept 13 preffed on
- Other important Q3 work
- Start using telemetry
- Windows 7 font rendering
- WebGL improvements
- CORS support, finalize 1.0
- Anti-aliasing
- Ongoing security improvements
Layout
- [ON TRACK] CSS 3D transforms on mozilla-central
- [ON TRACK] CSS Ruby on mozilla-central
- [ON TRACK] fullscreen style-system support on mozilla-central
- [ON TRACK] Move the selection state bits from layout to content
Video
- [ON TRACK] MediaStream infrastructure landed on mozilla-central with some media element integration
- [ON TRACK] libcubeb sound library replacing libsydneyaudio on mozilla-central
- [ON TRACK] no threads used for paused media elements
- [ON TRACK] Media URI Fragment support
DOM
- [ON TRACK] e10s:ify IndexedDB
- [ON TRACK] Replace xpidl with a python based version
- [ON TRACK] Start collecting telemetry data for the DOM (number of JS wrappers per document, etc)
- [ON TRACK] Pre-cached JS libraries (not sure what the goal would be here)
- [ON TRACK] Support whole directory upload
- [ON TRACK] File API support in Workers
- [ON TRACK] Finish up the NodeList bindings
- [ON TRACK] Remove nsHTMLContentSink (in preparation for removing old HTML parser later on), carryover from last quarter
- [ON TRACK] Implement support for <input type "number">, carryover from last quarter
- [ON TRACK] JS Compartment per global
- [ON TRACK] Remove support for policy prefs in caps (significant code removal, dependes on JS compartment per global)
JS
- [ON TRACK] IonMonkey working prototype. This means a working compiler with GVN, LICM, inlining, LSRA, and on-stack replacement for a subset of JS that at least includes arrays and properties.
- [ON TRACK] Debug API: land new debug API through to mozilla-beta
- [ON TRACK] GC: finish incremental GC, start generational GC
Accessibility
- [ON TRACK] Telemetry [bug 648121]
- [ON TRACK] E10S [bug 646596]
- Other important Q3 work:
- Fennec Android accessibility
- Make NVDA screen reader users happier [bug 659863]
- Crush a11y oranges User:Ehsan/OrangeCrush
Multi-Process
Perf
- [ON TRACK] Valgrind on android
- [ON TRACK] Instrument at least 90% of Firefox IO with Telemetry
- Other important Q3 work:
- Shutdown telemetry
- Evangelizing telemetry
- Implementing telemetry probes for the metrics team
Networking
- [ON TRACK] SSL performance and responsiveness improvements. Also important for other projects like SPDY.
- Fix bug 511393, Allow multiple SSL worker threads.
- [ON TRACK] Start making use of telementry to collect network performance data.
- Fix bug 658894, Collect basic telemetry for HTTP requests and page load.
- Fix bug 662555, Race condition when measuring requestEnd.
- Fix bug 539093, Implement high-resolution platform timers for Tier I platforms.
- [DONE] Improve dual-stack IPv6 experience for users.
- Fix bug 621558, Implement "happy eyeballs" IPv6 autodetection at TCP open, or similar system.
- [ON TRACK] Keep WebSockets implementation up to date with latest spec drafts.
- We can't control when the spec is complete enough to ship but we can follow it closely and be ready to ship as soon as possible.
- Ship an implementation (possible prefixed if spec is not ready) in Firefox 7.
- [ON TRACK] Improvements to NeckoNet, our standalone networking performance testing tool.
- Should allow us to compare networking performance between two builds under various conditions, including:
- the ability to adjust latency
- the ability to adjust random packet loss
- the ability to turn on loss of the first SYN of a flow
- Ensure that the test server supports pipelining
- Allow testing against NeckoNet from Windows and Mac OS X
- Should allow us to compare networking performance between two builds under various conditions, including:
- [ON TRACK] Make progress with pipelining improvements.
- Review outstanding HTTP pipelining improvements. This means being able to mark the review-tracking bug 659760 as fixed.
- Complete performance framework for evaluating them.
- [ON TRACK] Make progress on an SPDY implementation, bug 528288.
- Hard to say what we might be able to accomplish over the course of three months, but we want to have an implementation in progress.
- [ON TRACK] Work towards an effective mobile disk cache implementation.
- Create system with which to measure cache performance locally.
- Use telemetry to collect cache performance data.
- Create a plan for a mobile disk cache based on that data
- [ON TRACK] Fix bug 666059. Only use memory cache for private browsing so that leaving private browsing mode doesn't necessitate blowing away the cache.
- [ON TRACK] Fix bug 670911. Make deleting the disk cache not kill responsiveness and hog i/o. Do it on a thread, perhaps throttled so as to not hog i/o bandwidth.