Platform/2014-Q2-Goals: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 245: Line 245:
** {{ok| Create a POC for Windows build systems on seamicro/SSD hardware and replicate to replace most of the existing Windows build infrastructure if successful. {{bug|982261}} [Get Firefox on a Growth Trajectory] }}
** {{ok| Create a POC for Windows build systems on seamicro/SSD hardware and replicate to replace most of the existing Windows build infrastructure if successful. {{bug|982261}} [Get Firefox on a Growth Trajectory] }}
** {{ok| Create a POC for OS X build systems using SSD drives and replicate to the rest of the existing OS X build infrastructure if successful. {{bug|992364}} [Get Firefox on a Growth Trajectory] }}
** {{ok| Create a POC for OS X build systems using SSD drives and replicate to the rest of the existing OS X build infrastructure if successful. {{bug|992364}} [Get Firefox on a Growth Trajectory] }}
** {{ok| Architect and deploy a 3-node Ceph Prototype instance if tests on the existing POC show significant build speed increases. {{bug|995512}} [Get Firefox on a Growth Trajectory] }}
** {{drop| Architect and deploy a 3-node Ceph Prototype instance if tests on the existing POC show significant build speed increases. {{bug|995512}} [Get Firefox on a Growth Trajectory] - ceph did not prove appropriate for this use }}


* Build/Test System Self-Serve Re-architecture
* Build/Test System Self-Serve Re-architecture

Revision as of 19:45, 5 May 2014

Platform

2014 General Goals

GFX

Items marked here with release 31 and 32 are part of the Q2 landings.

Layout

  • [ON TRACK] Table Rendering with DisplayLists
  • Layout to Moz2D
    • [ON TRACK] Migrate SVG to Moz2D (bug 703159)  
  • Improve Restyling Performance
    • [ON TRACK] bug 977991, and maybe bugs 804975/977594
  • GFx work items
    • [ON TRACK] E10S BasicCompositor
    • [ON TRACK] GFx tiling
    • [ON TRACK] Accelerated Filters
      • spec work
      • shader & support work
  •  CSS Flexbox  
    • [ON TRACK] pagination
    • recently-finalized spec changes (abspos, min-width, flex sizing) (874718, 984711, 985304)
  • Animations & Transitions
    • [ON TRACK] transitions/animations spec editing
    • [ON TRACK] transitions refactoring to match new spec (960465)
    • [ON TRACK] frame reconstruction (625289)
  • OMTA on non-B2G Platforms (980770)
    • [ON TRACK] test_animations covering OMTA
    • [ON TRACK] fix correctness bugs (cascading, etc.)
    • [ON TRACK] turning on on other OMTC platforms (Mac/Android)
  • Web animations:
    • [ON TRACK] Spec an API for querying basic properties of running CSS animations/transitions
  • Ship and/or unprefix:
    • [ON TRACK] position:sticky
    • [ON TRACK] Font-features that need fallback support (eg. small-caps)
  • 3D Transforms
    • interop bugs and spec improvement (bug 976365)
    • implement preserve-3d proposal
    • perf work
  • Font Inflation and Reflow-on-Zoom
    • both implementation bug fixing and spec work
    • -moz-text-size-adjust
  • CSS Projects with Adobe
    • [ON TRACK] CSS Filters
    • [ON TRACK] CSS Masking
    • [ON TRACK] CSS Compositing
  • ImageLib
    • [ON TRACK] RasterImage for multiple images
  • CSS Fonts
    • [ON TRACK] font load events

Media

DOM

  • [ON TRACK] Implement Xrays to 3 out of the following: Functions (bug 976148), Objects (bug 987111), Array/Array-like (bug 987163), and Error (bug 987669)
  • [ON TRACK] Get rid of the long tail of C++ objects that are still exposed to the web using XPConnect
  • [ON TRACK] Get LeakSanitizer builds enabled by default (bug 988041)
  • [ON TRACK] Identify and fix (DOM stuff, at least) hotspots in b2g app startup (smaug)
  • [ON TRACK] refactor how tokenizer and tree builder use buffers to reduce memory pressure crashes (hsivonen)
  • [ON TRACK] Land all non-cache bits of Service Workers preffed-off (on is a bonus) on m-c (nsm)
  • [ON TRACK] Help guide and review requestAutocomplete backend implementation (bug 939351) (likely smaug)
  • [CARRY OVER] implement <picture> (bug 870022) (johns)
  • [ON TRACK] Ensure plugins are shippable for e10s (sort of bug 874016) (johns)
  • [ON TRACK] Implement Shadow DOM :host style selector (bug 992245) (wchen)
  • [ON TRACK] Enable Shadow DOM for certified apps (bug 1000199) (wchen)
  • [ON TRACK] Define a plan for how to instrument code that triggers COW of pages post forking in a post Nuwa world (bonus if we can actually build that tool this quarter)

WebAPI

  • [ON TRACK] finalize moving main thread IDB to PBackground including blobs (bent)
  • [ON TRACK] Convert DataStore cursors and DataStore object itself from JS to C++ (baku)
  • [ON TRACK] Finalize moving quotamanager to PBackground (janv)
  • [ON TRACK] clarify design and spec issues around Fetch for Service Workers to ensure they're implementable (annevk)
  • [ON TRACK] implement gecko side of manifest spec (bug 997779) (marcosc)
    • Implement processing of V1 members (name, orientation, display, icons, start_url).
    • Finish implementation by Monday, June 30.
  • [ON TRACK] finish device orientation spec with Mounir (marcosc)
    • Write tests for all conformance requirements.
    • Publish LC by Monday, June 30.

JS

Accessibility

  • [ON TRACK] Sandboxing support: create and update cached structure of the accessible tree in the parent process (tbsaunde)
  • [CARRY OVER] Windows support: Land basic UIA text navigation implementation (surkov)
  • [ON TRACK] FFOS/GAIA: under construction (eeejay,marcoz,yzen)

Note nicks indicate DRI(s) and all work is collaborative.

Perf

  • Improve Firefox responsiveness & startup time:
    • Finish session-store work:
      • [ON TRACK] Improve session-store startup time bug 987592
      • [ON TRACK] Store less data in the sessionstore.js file bug 943352
      • [ON TRACK] Break up janky operations into smaller chunks bug 984886
    • Start eliminating top main-thread I/O offenders reported to Telemetry bug 572459:
      • 1. [ON TRACK] User dictionary (persdict.dat) read on the main thread bug 880864
      • 2. TBD
    • [ON TRACK] New storage system for prefs bug 897049
    • [ON TRACK] The add-on compatibility dialog should not interrupt startup unless strictly necessary bug 760356
    • [ON TRACK] Investigate feasibility of starting Flash plugin instances asynchronously
  • Fill gaps in test coverage (vs press benchmarks) and prevent regressions:
    • [ON TRACK] Create a Talos test for "cold" startup time bug 936617
    • [ON TRACK] Create a Talos test for time to restore a previous session bug 936630
    • [ON TRACK] Integrate our new power-profiling test into the test infrastructure bug 962715
    • [ON TRACK] Automatically detect new sources of main-thread I/O in tests bug 935482
    • [ON TRACK] Monitor & track regressions in important Talos tests during each release cycle
  • Partner with other teams on projects with big perf impact
    • [ON TRACK] Assist Necko team with measuring performance of new network cache
    • [ON TRACK] Make it easier to debug performance regressions by (optionally) capturing profiles during Talos tests bug 967619
    • [ON TRACK] Expand use of the T100 tablet/laptop as a reference slow device
    • [ON TRACK] Work with fx-team on ongoing regressions
    • [ON TRACK] Add performance tests for OMTC/APZC
  • Study impact of extensions on Firefox performance
    • [ON TRACK] Create a Telemetry dashboard to expose add-ons' impact on Firefox startup time
  • Grow community:
    • [ON TRACK] Mentor at least 5 new external contributors

Networking

  • [ON TRACK] Mitigate CSRF attacks against internal networks (block rfc 1918 local addresses from non-local addresses) (bug 354493) (sworkman)
  • [ON TRACK] HTTP/2: implement draft-11 of HTTP/2 spec and continue participating in spec development. (hurley / mcmanus)
  • [ON TRACK] Turn on new HTTP cache in nightly (honza / michal)
  • [ON TRACK] NetworkLinkService should be enabled so Necko can respond to network changes (bug 939318) (bagder)
  • [ON TRACK] B2G: Provide way to "set network offline" per app (bug 786419) (valentin)
  • [ON TRACK] Gather data and produce a report on performance wins vs resource costs of the seer on several desktop and mobile scenarios. (hurley)

Mobile

A*Team

full list: Auto-tools/Goals/2014Q2

  • B2G
    • [ON TRACK] Deliver v2 of the FxOS Certification Suite
    • [ON TRACK] Build a common harness for Python and NodeJS Marionette tests, and enable them to run on devices and emulators
  • Performance
    • [ON TRACK] Deploy a Talos dashboard that will allow Talos regressions to be more easily "sheriffed"
    • [ON TRACK] Improve Eideticker's ability to scale
    • [ON TRACK] Prototype Datazilla alerts for Talos and Eideticker data
  • Mobile
    • [ON TRACK] Move Android 2.3 reftests off of tegras
    • [ON TRACK] Designate autophone and/or Eideticker as official perf systems for Android 2.3
  • Bugzilla
    • [ON TRACK] Migrate BMO and upstream Bugzilla CI from Tinderbox to travis-ci.
    • [ON TRACK] Continue and deepen analysis of BMO perf data.
    • [ON TRACK] Determine list of possible improvements, estimate gains, prioritize, and implement.
  • Treeherder
    • [ON TRACK] Deploy a production version of Treeherder in coordination with Laura's team
    • [ON TRACK] Define and implement a sheriff transition plan to move from TBPL to Treeherder
    • [ON TRACK] Have Treeherder report data to OrangeFactor
  • Community
    • [ON TRACK] Refresh our list of "good first bugs" on a monthly basis
    • [ON TRACK] Review these and make sure they have adequate information for contributors to start with
    • [ON TRACK] Keep the numbers of open good first bugs steady or increasing

Web Engineering

  • crash-stats
    • [ON TRACK] Prototype work to support 100% crash processing for support classification and better user retention after a crash [Get Firefox on a Growth Trajectory / Scale FxOS]
    • [ON TRACK] Implement symbol upload by partners [Scale FirefoxOS]
    • [ON TRACK] Better search, graphs, and correlation reports to support QA and Crashkill teams [Get Firefox on a Growth Trajectory / Scale FxOS]
    • [ON TRACK] Infrastructure improvements to support shipping engineer-requested features faster [Get Firefox on a Growth Trajectory / Scale FxOS]
  • FHR
    • [ON TRACK] Research and develop a plan for addressing sideloading [Invest in Sustainability]
  • DXR
    • [ON TRACK] Move to a more scalable data store to enable indexing all trees [Scale FxOS]
    • [ON TRACK] Implement search result mixing [Get Firefox on a Growth Trajectory / Scale FxOS]
    • [ON TRACK] Improve documentation and install to lower the bar for contribution [Enable Communities with Impact]
  • l10n
    • [ON TRACK] (stretch) Remove dependency on buildbot [Enable Communities with Impact]
  • Plugincheck
    • [ON TRACK] Ship new version to support Firefox 29+ [Get Firefox on a Growth Trajectory]
  • Air Mozilla
    • [ON TRACK] Open event editing to all signed in users, wiki style [Enable Communities with Impact]
    • [ON TRACK] Protoype ability to search by transcript [Enable Communities with Impact]

Full list

SUMO and Input

  • SUMO
    • [DROPPED] Implement interactive onboarding for new community volunteers [Enable communities with impact]
    • [ON TRACK] Implement an initial community hub [Enable communities with impact]
    • [ON TRACK] Prototype BuddyUp app: interactive support for FirefoxOS [Scale FirefoxOS]
  • Input
    • [ON TRACK] Integrate with Gengo translation API to improve localization [Enable communities with impact]
    • AT RISK (stretch) Implement and roll out new product-centric dashboards [Scale FirefoxOS]

Full list

Release Engineering

  • [ON TRACK] Plan and implement a sustainable approach to releases on legacy Android platforms [Get Firefox on a Growth Trajectory]
  • [ON TRACK] Support infrastructure work on closing scl3 datacenter to save cost [Get Firefox on a Growth Trajectory]
  • [ON TRACK] Implement automation (slave loan tool) to reduce manual work [Get Firefox on a Growth Trajectory]
  • [ON TRACK] Stand up device builds for b2g reference phones [Scale FirefoxOS]
  • [ON TRACK] Remove dependencies on and turn off deprecated systems [Get Firefox on a Growth Trajectory]
  • [ON TRACK] Audit monitoring and instrumentation of release systems with a view to getting better insight, enabling better agility [Scale FirefoxOS]
  • [ON TRACK] Continue Balrog (new AUS) rollout to beta, and prepare for release/ESR [Get Firefox on a Growth Trajectory]
  • [ON TRACK] Automate merge day processes [Get Firefox on a Growth Trajectory]
  • Continue infrastructure improvement program:
    • [ON TRACK] Move more work into the cloud to reduce cost and increase agility [Scale FirefoxOS]
    • [ON TRACK] Improve build and test environment for Windows [Get Firefox on a Growth Trajectory]
    • [ON TRACK] Get taskcluster ready to replace buildbot in Q3 and Q3 [Scale FirefoxOS]
  • Joint goals with A-team:
    • [ON TRACK] Design an API that will be the single source of truth about release information [Get Firefox on a Growth Trajectory

Full list

Release Engineering Operations

  • Datacenter Consolidation
    • [ON TRACK] Migrate SCL1 infrastructure to SCL3 and close SCL1 datacenter. bug 981124 and bug 961164 [Datacenter consolidation and cost reduction]
    • [DONE] Decommission deprecated hardware. bug 997213 [Datacenter consolidation and cost reduction]
  • Build/Test System Performance Enhancements
    • [ON TRACK] Create a POC for Windows build systems on seamicro/SSD hardware and replicate to replace most of the existing Windows build infrastructure if successful. bug 982261 [Get Firefox on a Growth Trajectory]
    • [ON TRACK] Create a POC for OS X build systems using SSD drives and replicate to the rest of the existing OS X build infrastructure if successful. bug 992364 [Get Firefox on a Growth Trajectory]
    • [DROPPED] Architect and deploy a 3-node Ceph Prototype instance if tests on the existing POC show significant build speed increases. bug 995512 [Get Firefox on a Growth Trajectory] - ceph did not prove appropriate for this use
  • Build/Test System Self-Serve Re-architecture
    • [ON TRACK] Design a private cloud deployment architecture for bare metal and produce a POC that supports Ubuntu 12.04 test machines. bug 963165 [Get Firefox on a Growth Trajectory]
    • [ON TRACK] Develop a new image creation solution for 2008R2 build machines which can be used to deploy on bare metal. bug 798657 [Get Firefox on a Growth Trajectory]

Full list

Developer Services

  • [ON TRACK] Review and scale out git architecture [Scale FirefoxOS]
  • [ON TRACK] (with B-team) Improve performance and review tools for Bugzilla [Get Firefox on a Growth Trajectory / Enable communities with impact]
  • [ON TRACK] (with A-team) Deploy better tree visualization tools [Get Firefox on a Growth Trajectory / Enable communities with impact]
  • [ON TRACK] Plan and prototype future release engineering architecture [Get Firefox on a Growth Trajectory / Scale FirefoxOS]

Full list

Security & Privacy

Full list here: SecurityEngineering/2014/Q2Goals

  • Web Platform Security
    • [NEW] plan out replacement for nsIContentPolicy and start executing (dri=tanvi, +sicking,ckerschb)
    • [ON TRACK] Make new CSP parser on by default in nightly (dri=ckerschb, +grobinson,sstamm)
    • [ON TRACK] Land WebCrypto (dri=rbarnes) bug 865789
  • Secure Client Platform
    • [NEW] Get open.h264 plugin sandboxed on windows [dri=sstamm, a=tabraldes]
    • [CARRY OVER] something about sandboxing logging [dri=bobowen, a=sstamm,tabraldes]
  • Secure Communications
    • [CARRY OVER] Land key pinning [dri=cviecco, a=keeler,mmc]
    • [NEW] mozilla::pkix on by default, (riding the train to) / (targeting a) release [dri=keeler, a=cviecco]
    • [NEW] BONUS: Deploy UI for cert error reporting [dri=kathleen]
  • Tracking Protection / Privacy
    • [ON TRACK] Get through the next 2 releases of Lightbeam [dri=mmc, a=grobinson]