Skip to content

Roadmap

larsbergstrom edited this page Oct 20, 2014 · 104 revisions

There are two overarching goals for Servo in 2014:

  • Demonstrate better performance than other engines. Servo aims to have significantly better latency and throughput than existing engines.
  • Implement the entire Servo architecture. In order to be convincing, we need to render most web pages faithfully with all of our major architectural pieces implemented.

This roadmap outlines our 2014 planning and highlights both the rough goals for each quarter as well as some of the biggest feature items we hope work with our partners and the community to deliver in those quarters. It does not go into too many details, infrastructure work, product plans, etc.

Q1 successes

  • Passed ACID2
  • Implemented JSManaged
  • Implemented parallel layout

Q2 goals: finish layout architecture; support basic webapps

  • xmlhttprequest
  • cross-language inlining + SpiderMonkey upgrade
  • HiDPI mode
  • Scrolling / pinch-zoom
  • Android support (get scrolling, zoom, 32bit, networking working)
  • Android buildbot support
  • Writing modes
  • Embedding / shell
  • HTML parser in Rust
  • Incremental layout
  • Optimizing inlines and SIMD experiments
  • W3C platform tests
  • CSS WG tests http://test.csswg.org/suites/css2.1/20110323/html4/toc.html

Q3 goal: feature growth & architecture tests

  • Vertical text
  • Browser shell
  • CSS - many features, per CSS tests
  • Dev tools
  • DOM - many features, per web platform tests
  • TLS/SSL
  • Pointer/touch
  • Support for xvfb for headless
  • Change to EFL or SDL from GLFW & GLUT
  • DOM workers
  • JS Interpreter
  • "wikipedia works"?

Q4 goal: dogfoodable

  • Pagination
  • Forms
  • Content editable
  • Caching
  • New graphics pipeline
  • High quality mobile
  • Nightlies

Q1 2015

  • Get embedding story into shape
  • Explore using Servo as a UI toolkit
  • Experiment with chrome (ie, reuse Android chrome)
  • Incrementalize everything
  • Get the browser "safe enough" to use for basic browsing scenarios

Q2 2015

  • Create dynamic test suite
  • Add high impact platform features
  • Add a Rust component to Gecko

Potential future work

  • canvas
  • web animations
  • COW DOM
  • CSSOM
  • Visualization support
  • Flexbox
  • multiprocess
  • multimedia
  • sandboxing
  • addons
  • prefs
  • bookmarks
  • history
  • cookies
Clone this wiki locally
You can’t perform that action at this time.