Platform/2012-Q4-Goals

From MozillaWiki
< Platform
Revision as of 21:25, 3 January 2013 by Jst (talk | contribs) (→‎DOM)
Jump to navigation Jump to search

General Goals

GFX

  • [ON TRACK] Prototype GPU acceleration for Azure/Skia canvas on mobile
  • [ON TRACK] Prototype GPU acceleration for Azure/Skia canvas on Windows
    • Determine if this is possible on Windows XP due to context loss etc
  • [ON TRACK] Have a clean, dependable, extensible, all-platform, free-of-adverse-cache-effects driver blacklisting solution.
  • [MISSED] Enable Azure for content everywhere
    • De-prioritized for OMTC/Layers work
  • [ON TRACK] OMTC implemented, landed and turned on for Metro product beta
  • [ON TRACK] Turn on GL layers on Linux
  • Other important Q4 work
    • [ON TRACK] OMTC on Direct3D 9, OpenGL on Desktop, basic layers
    • [CARRY OVER] WebGL test suite compliance
    • [CARRY OVER] CSS font spec work
    • [MISSED] Convert drawing code to Azure
    • [ON TRACK] Other B2G and mobile work as necessary

Layout

  • [CARRY OVER] Readability 2.0
    • reflow-on-zoom ship/no-ship decision
    • [DONE] mobile fonts APK support
    • [CARRY OVER] mobile fonts licensing
    • [DONE] retina support
  • [CARRY OVER] Complete Graphite Fonts Project (bug 631479)
    • [MISSED] needs final sec-review
  • [DONE] Invalidation via DisplayList Analysis (bug 539356)
    • fix regressions
  • [ON TRACK] CSS Flexbox feature/spec (bug 666041)
    • pref'ed on
  • [ON TRACK] Add image visibility API (bug 689623)
    • r+ and land
  • [CARRY OVER] CSS Vertical Text (bug 145503)
  • [CARRY OVER] CSS Pagination (bug 775628)
  • [ON TRACK] CSS Variables (bug 773296)
  • [ON TRACK] Implement the auto value for the HTML dir attribute (bug 548206)
    • patch needs r+ and landed
  • [CARRY OVER] CSS 2.1 Test Suite v.2
  • [CARRY OVER] CSS Spec, Unprefixing & Testing (bug 775235)
  • [ON TRACK] Scoped Style Sheets (bug 508725)
  • [ON TRACK] SVG Text (bug 655877)
  • [CARRY OVER] Off Main Thread Animations (bug 755084, bug 706179)
  • [MISSED] Layout Azure Conversion (bug 776197
    • de-prioritized for OMTC work
  • [CARRY OVER] Support for Complex Scripts on Mobile


Media

  • [ON TRACK] WebRTC enabled by default (not behind a pref or config flag) in time for Firefox 20 uplift
  • [ON TRACK] Land media platform decoding functionality for Android's Gingerbread and Honeycomb OSs in mozilla-central. One target device for each OS will be identified and agreed upon by Media and Android to verify functionality. Success criteria: platform decoders running in Firefox will playback videos at a similar performance metric to the videos playing back in the default browser on the same device.
  • [ON TRACK] Demo H.264/MP4 support using Windows Media Foundation on Windows 7 or Windows 8 Metro

DOM

  • [DONE] Make new DOM bindings codegen generate stub class for implementers (in a text file or what not).
  • [DONE] New DOM bindings for HTMLElement.
  • [MISSED] new binding for HTMLDocument
    • The work that we planned to do here is done, but an unforeseen issue that came up when implementing, relating to the need for a new proxy for dealing with the goofy behavior of element ids shadowing properties on the prototype, caused us to miss the overall goal.
  • [ON TRACK] new bindings for 10 HTML element classes
  • [DONE] make calling new binding callbacks easy and safe

WebAPI

  • [CARRY OVER] Temporary storage for IndexedDB (bug 785884)
  • [AT RISK] Implement unified offline storage quota system, putting IndexedDB and localStorage under this quota system (bug 767944) (depends upon LocalStorage rewrite bugs bug 807021, bug 600307)
  • [ON TRACK] Assist with reducing memory usage and increasing performance of B2G (bug 797189)
  • [ON TRACK] Make B2G v1 a high quality release
  • [DEFERRED] Layout-agnostic DOM key events (useful for games; awaiting cross-browser decision)
  • [DEFERRED] Number form support for desktop
  • [DEFERRED] Develop and submit to W3C a proposal for "fixing appcache"
  • [ON TRACK] Runtime and security model specification for Sysapps WG

JS

  • [CARRY OVER] Incremental sweeping by compartment [bug 790338]
  • [CARRY OVER] Generational GC: get automated safety checks running and green
  • [ON TRACK] Manage memory by zones (to reduce memory usage) [bug 759585]
  • [CARRY OVER] Finish properties/elements split

Accessibility

  • [ON TRACK] FF OS for users who are blind (land accessfu + TTS on trunk pref'ed on).
  • [ON TRACK] AccessFu/jsat test coverage.
  • [AT RISK] Initial UIA implementation (Narrator support).

Perf

  • [CARRY OVER] 736144: Async local storage via blocking pageload
  • [CARRY OVER] 662397: Reorder xul.dll on windows to speed up startup
  • [CARRY OVER] 662444: call exit(0) on shutdown
  • [CARRY OVER] 661881: Bundle about-telemetry extension to ship with Firefox
  • [CARRY OVER] 769241: Make libunwind work on ARM
  • [CARRY OVER] Prevent, to a reasonable extent, background tabs from starving the main thread

Networking

This was a productive quarter but we ended up doing a lot of things that aren't on goals here (e.g. rewriting DOM storage [600307], improving Stone Ridge, network resource load prioritization [792438]), and we made great progress on goals we ultimately missed (e.g. DASH). B2G work was much more than we expected, taking up 2.5+ team members for the entire quarter.

  • [MISSED] Resolve all networking basecamp blockers that are marked as blocking before November 1st.
    • This work will be done primarily by Jason Duell, Honza Bambas, and Brian Smith.
    • This just turned out to be way more work than we thought, including new blockers that we took on. This matches the organization-wide trend.
  • [AT RISK] 713933 Enable TLS false start for NPN/SPDY in mozilla-central.
    • Patrick McManus will lead this effort.
    • Code is done, just waiting on reviews which are held up by B2G blocker work.
  • [MISSED] Remove all potentially blocking disk cache API usage in nsHTTPChannel and nsWYCIWYGChannel, on mozilla-central.
    • Nick Hurley and Michal Novotny will lead this effort.
    • Didn't get it done. Nick Hurley moved to other projects.
  • [MISSED] 702122: Have full adaptive DASH for WebM video enabled by default on Aurora.
    • Steve Workman will lead this effort.
    • Didn't make Aurora, but did make mozilla-central.
  • [MISSED] Resolve all networking security bugs that received a designation of sg:moderate or higher more than six weeks ago. This is a permanent goal for the group.
    • No sec-high or sec-criticals unresolved. We're only missing this goal because we have high standards including sec-moderate!
    • One old sec-moderate bug, bug 660749, remains unresolved. Brian Smith was working on the B2G security model instead.

Plugins

Mobile

  • [ON TRACK] Resolve all mobile security bugs that received a designation of sg:moderate or higher more than six weeks ago. This is a permanent goal for the group.
  • [ON TRACK] Support shipping ARMv6
  • [ON TRACK] Ship H.264 on ICS & JB [bug 787227]
  • [ON TRACK] Implement support for H.264 on GB on trunk [bug 787228]
  • [ON TRACK] Investigate support for Java addons [bug 799631]
  • [ON TRACK] Determine if we can be competitive with the stock browser on 256Mb devices [bug 792131]
  • [ON TRACK] Ship safe browsing to Beta
  • [ON TRACK] Support shipping fonts in the APK in Beta
  • [ON TRACK] Support shipping to an alternative app store with improved updater
  • [ON TRACK] Make full screen video experience pleasant for the user [bug 800673]

Dependencies

  • QA for shipping ARMv6
  • Media team for H.264 support

B2G

Research