Platform/2014-Q3-Goals: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
m (→‎JS: ARM64 is a stretch goal)
Line 28: Line 28:


=== Accessibility ===
=== Accessibility ===
* Taking shape: [[Accessibility/Planning/Goals]]
* {{ok|}}e10s: proxy the common a11y API stuff like name, role, and states.
* {{ok|}}GAIA: Fix [https://bugzilla.mozilla.org/buglist.cgi?priority=--&f1=blocked&list_id=10674217&o1=anyexact&resolution=---&query_based_on=b2ga11y%20p%3D1&o2=substring&query_format=advanced&f2=status_whiteboard&v1=893789&component=Disability%20Access%20APIs&component=Gaia&component=Gaia%3A%3ABluetooth%20File%20Transfer&component=Gaia%3A%3ABrowser&component=Gaia%3A%3ABuild&component=Gaia%3A%3ACalendar&component=Gaia%3A%3ACamera&component=Gaia%3A%3AClock&component=Gaia%3A%3AContacts&component=Gaia%3A%3ACost%20Control&component=Gaia%3A%3ADialer&component=Gaia%3A%3AE-Mail&component=Gaia%3A%3AEverything.me&component=Gaia%3A%3AFirst%20Time%20Experience&component=Gaia%3A%3AFMRadio&component=Gaia%3A%3AGallery&component=Gaia%3A%3AGithubBot&component=Gaia%3A%3AHomescreen&component=Gaia%3A%3AKeyboard&component=Gaia%3A%3AL10n&component=Gaia%3A%3ALoop&component=Gaia%3A%3AMusic&component=Gaia%3A%3ANotes&component=Gaia%3A%3APDF%20Viewer&component=Gaia%3A%3APerformanceTest&component=Gaia%3A%3ARingtones&component=Gaia%3A%3ASearch&component=Gaia%3A%3ASettings&component=Gaia%3A%3ASMS&component=Gaia%3A%3ASystem&component=Gaia%3A%3ASystem%3A%3ABrowser%20Chrome&component=Gaia%3A%3ASystem%3A%3AInput%20Mgmt&component=Gaia%3A%3ASystem%3A%3ALockscreen&component=Gaia%3A%3ASystem%3A%3AWindow%20Mgmt&component=Gaia%3A%3ATestAgent&component=Gaia%3A%3AUI%20Tests&component=Gaia%3A%3AVideo&component=Gaia%3A%3AWallpaper&component=Gaia%3A%3AWappush&v2=b2ga11y%20p%3D1&product=Core&product=Firefox%20OS all Gaia P1 a11y bugs] (~30 at this time).
* {{ok|}}FFOS: {{Bug|1030465}} - Volume change should update the screen reader volume.
* {{ok|}}FFOS: {{Bug|1030466}} - Headphones screen reader volume is too low.
* {{ok|}}FFOS: {{Bug|1030468}} - VC rectangle needs to work with scaled content.
* {{ok|}}FFOS: {{Bug|1030470}} - Localization needs to work when switching locales in FxOS.


=== Perf ===
=== Perf ===

Revision as of 16:43, 7 July 2014

Platform

2014 General Goals

GFX

Layout

Media

DOM

  • [ON TRACK] Mirror prototype of DOM objects through xray wrappers (peterv)
  • [ON TRACK] Remove nsDOMClassInfo.cpp
  • [ON TRACK] Make less-privileged non-Xrayable unwaived opaque from privileged code (bug 856067)
  • [ON TRACK] Route all JSContext pushing through AutoJSAPI and Implement GetEntryGlobal (bug 951991)

WebAPI

JS

  • [ON TRACK] 837314 - ES6 classes
  • [ON TRACK] 941796 - Generational GC on Firefox OS
  • [ON TRACK] 650161 - Compacting GC to reduce memory usage
  • [ON TRACK] 856533 - Escape analysis JIT optimizations
  • [ON TRACK] 998392 - Use Latin1 strings to reduce memory usage
  • [ON TRACK] 903519 - Allocate strings in GC nursery (for performance)
  • [ON TRACK] 972710 - ARM64 JIT [stretch goal]

Accessibility

  • [ON TRACK] e10s: proxy the common a11y API stuff like name, role, and states.
  • [ON TRACK] GAIA: Fix all Gaia P1 a11y bugs (~30 at this time).
  • [ON TRACK] FFOS: bug 1030465 - Volume change should update the screen reader volume.
  • [ON TRACK] FFOS: bug 1030466 - Headphones screen reader volume is too low.
  • [ON TRACK] FFOS: bug 1030468 - VC rectangle needs to work with scaled content.
  • [ON TRACK] FFOS: bug 1030470 - Localization needs to work when switching locales in FxOS.

Perf

Networking

Mobile

A*Team

For full list, see A-Team Goals 2014Q3

B2G

  • [ON TRACK] Run a set of performance and correctness tests per-commit to b2g-inbound on Flame devices
  • [ON TRACK] Get gaia-integration tests running on device
  • [ON TRACK] Expand the FxOS Certification Suite with 1.4 support, test automation to prevent regressions, and investigation of support for non-phone devices
  • [ON TRACK] Green up B2G tests on TaskCluster (joint with RelEng)

Developer Productivity

  • [ON TRACK] Deploy ReviewBoard for developers to start using (joint with RelEng)

Performance

  • [ON TRACK] Deploy new Talos tests for tp5o_scroll, webgl, webrtc, and mainthread I/O
  • [ON TRACK] Get Datazilla alerts to beta mode (full parity with graph server alerts) with reduced noise
  • [ON TRACK] Get Eideticker running against Android again with increased frequency
  • [ON TRACK] Run B2G Eideticker against same branch/build combinations as our other on-device perf tests
  • [ON TRACK] Stand up a Games Benchmarking system for webaudio tests running against Firefox and Chrome

Treeherder

  • [ON TRACK] Deliver performance web service for ingesting and returning performance data
  • [ON TRACK] Deliver a UI for viewing Talos data

Sheriffing

  • [ON TRACK] Fully transition sheriffing from TBPL to Treeherder

General Automation

  • [ON TRACK] Create weekly reports that describe how many tests have been added/disabled/enabled per suite and platform
  • [ON TRACK] Move reftest to mozbase
  • [ON TRACK] Add command executors for Marionette for Java and Python

Bugzilla

  • [ON TRACK] Improve load time of related bugs; can decrease show_bug load times by up to 12%
  • [ON TRACK] Minify and concatenate JS files
  • [ON TRACK] Authoritative view for review history
  • [ON TRACK] Rewrite docs for REST API

Community

  • [ON TRACK] Create good_next_bugs (name can be adjusted) so once contributors are comfortable they can do more serious coding/problem solving on a project they are familiar with
  • [ON TRACK] Monthly review of mentored bugs and projects

Web Engineering

SUMO and Input

Release Engineering

Release Engineering Operations

Developer Services

Security & Privacy Engineering

6/30/2014 draft, not yet frozen (More details here: SecurityEngineering/2014/Q3Goals)

Content Security

  • [NEW] Gecko Security Hooks: Finish code and debugging for New Channel API, start getting reviews (dri=tanvi)
  • [NEW] Gecko Security Hooks: Create plan for addon compatibility (dri=tanvi)
  • [NEW] CSP: Remove old JS implementation from mozilla-central (dri=sstamm)
  • [NEW] Referer: Finish implementation of <meta> referrer control with volunteer help (dri=sstamm)
  • [NEW] Evangelism: Security Open Mic presentation + blog post about new CSP implementation, maybe again as brown bag. (dri=sstamm)
  • [NEW] [stretch goal] CSP: Fix majority of CSP 1.1 compatibility bugs (dri=ckerschb)

Tracking Protection

  • [NEW] Land first implementation of protection in Fx 33/34 off by default. (dri=mmc)

Communications Security

  • [CARRY OVER] SSL Error Reporting finish first implementation of ssl error reporting feature. (dri=grobinson)
  • [NEW] Land enforcment of at least 2 more Baseline Requirements in PSM (dri=keeler)
  • [NEW] Create roadmap for Cert Revocation improvements (dri=rbarnes)
  • [NEW] hpkp - implement pinning http header (dri=cviecco)
  • [NEW] [stretch goal] Get CA Program data into one database (dri=kathleen)

Firefox and Platform Security

  • Marifuzz fuzzer ported to and running on Flame devices.
  • Update ASan and LSan work for DOMFuzzer
  • Update "Bounty Stars" document with issues found by external reporters and updating DOMFuzzer to reflect these results.
  • Get Clang on RelEng ready for official OS X ASan builds.
  • Initial work to move CoreFuzz towards running in cloud environments.
  • WebCrypto API fuzzing using Dharma fuzzer.
  • Port a portion of WebRTC fuzzing from Frambois fuzzer to Dharma fuzzer.
  • Peach: Improving and porting Peach 2 to Python 3.
  • Public Mozilla Security Github work: Moving of fuzzing tools from Fuzzing Hg to GitHub, including work to separate harnesses from testcase generation tools.

Games Program