Skip to content
Lars Bergstrom edited this page Jul 10, 2016 · 87 revisions

Our 2016 goals for Servo are:

  • Explore new areas for performance improvements
    • e.g., GPU CSS, SIMD layout, DOM wrapper fusion
  • Create an initial end-to-end browser tech demo that we can start iterating
    • browser.html frontend
  • Fill in remaining placeholder subsystem implementations
    • e.g., I/O, caching
  • Track performance systematically
    • Allow comparisons with Gecko and Blink
    • Support more standard benchmarks
  • Continue adding web platform features
    • e.g., media, text input/editing, missing layout & JS features
  • Bring Windows port to Tier 1
  • Webrender: Move from prototype to production
  • Oxidation: Ship Rust/Servo components in Gecko

This roadmap outlines our 2016 planning, highlighting the goals for the upcoming quarter. It also states some of the biggest feature items we hope to deliver, together with our partners and the community.

Our long-term plan is to:

  1. Incrementally replace components in Gecko with ones written in Rust and shared with Servo.
  2. Determine product opportunities for a standalone Servo browser or embeddable library (e.g., for Android).

Q3 2016

Top priorities for this quarter are:

  • Stylo (style system in Gecko integration work)
  • Finishing WebRender 2 plus experiments around WebRender
  • Servo Nightly builds support

High-level work plan for staff members:

  • simon & manish on stylo
  • glenn webrender2
  • diane working on devtools fetch for profiling, rust-nss with nss team, security stuff
  • patrick page load performance (for fresh page loads, target FF pre-caching) & layout bugs
  • alan on error reporting for constellation + script/layout concurrency
  • nox indexeddb, webfont loading
  • ms2ger spidermonkey upgrade, JS error reporting
  • jack windows installer, windows fonts (w/nox), intermittents
  • lars autoupdate, android, quantum/oxidation
  • shing testing into servo org, flexbox, stylo, QA rampup
  • emily TC migration testing, etc.

Internally committed 2016 goals

  • Implement production IO and caching subsystems
  • Polish and validate WebRender, a next-generation graphics subsystem
  • Layout maturity
  • Ship one Rust component in Firefox Nightly, riding the trains
  • Experiment with the uplift of a major piece of Servo into Gecko
Clone this wiki locally