Quantum/Stylo: Difference between revisions
(→stylo-nightly: List more bugs) |
(Updated the summary to mention quantum.) |
||
Line 1: | Line 1: | ||
' | Stylo (a.k.a. Quantum CSS) will integrate Servo's CSS style system into Gecko, such that the style system code can be shared by Gecko and Servo. Stylo V1 will support Firefox on Windows, macOS, and Linux. Android support may ship in a later release. | ||
Stylo | Stylo is a core part of [[Quantum|Project Quantum]]. | ||
= Getting Involved = | = Getting Involved = |
Revision as of 18:51, 16 January 2017
Stylo (a.k.a. Quantum CSS) will integrate Servo's CSS style system into Gecko, such that the style system code can be shared by Gecko and Servo. Stylo V1 will support Firefox on Windows, macOS, and Linux. Android support may ship in a later release.
Stylo is a core part of Project Quantum.
Getting Involved
If you're interested in contributing to Stylo or Servo, drop by the #servo IRC channel on Mozilla's IRC server.
One front where you can help out is adding new properties to Servo's CSS parsing crate. This requires familiarity with Rust, but is otherwise a good way to dip your toes into Servo's style system. To get started, see Servo's CSS property hacking guide for more information.
If you do not know Rust, you can help implement keyword properties. See the Stylo hacking guide for more details. The Stylo hacking guide also has instructions for building Stylo if you wish to play with it yourself. If you know C++, Firefox bug 1277133 has information about easy Gecko bugs that will assist Stylo's integration with Gecko.
Some Stylo bugs that are good for new Servo contributors are tagged on GitHub as “easy” bugs and “less-easy” bugs.
Release Criteria
Stylo should not cause us to regress any CSS feature unless we explicitly decide that regressing that specific feature is acceptable. The existing test suite will be the primary benchmark of this, with cross-validation from an automated analysis and manual QA of the Alexa Top 500 sites.
- Stylo should have zero blocking bugs.
- Stylo should pass all (non-disabled) Gecko reftests and mochitests.
- Stylo should have no more unimplemented properties on the Alexa Top 500 sites than Gecko.
- Stylo's Talos test performance should be faster than or equal to Gecko's.
- Stylo's memory usage (both Talos and beta telemetry) should be less than or equal to Gecko's.
- Stylo's crash rate should be less than or equal to Gecko's.
- Stylo's user engagement ratio (DAU/MAU) should be greater than or equal to Gecko's.
Work Breakdown Structure
- Tests
- reftests: Shing
- mochitests: TBD
- Cargo
- Build Support: Nathan, Ralph
- Build Stylo: Lars
- Vendoring Support: Ted, Yehuda
- Vendor Servo: Lars
- Build Support: Nathan, Ralph
- Glue (Gecko/C++/Rust/Servo): Manish, Simon, Xidorn, Michael
- CSS Support
- CSS Properties: Cameron, Xidorn, Simon, Emilio, Bobby, Brian
- CSSOM: Xidorn, Simon
- Autoland
- Servo CI and Autolander: Emily
- Gecko CI and Autolander: Emily
Bugs
- Stylo meta bug 1243581
- Stylo dependencies
stylo-central
- Run linux64-stylo tests in mozilla-central (bug 1330414)
- Enable stop-gap vcs sync (bug 1317525)
- Vendor servo in mozilla-central (bug 1322769)
- Make all tests green (by skipping or expecting failure)
- Stylo-central meta bug 1330414
- Stylo-central dependencies
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);
stylo-nightly
- Enable Stylo in Nightly (bug 1330412) (only on Linux first?)
- Implement parsing of all CSS properties supported by Firefox
- Fix and enable all tests (without skipping or expecting failure)
- Fix all crashes and assertion failures
- Fuzz Stylo
- Pass BugHunter
- Manual QA sign-off
- Smoke test Alexa Top N sites
- Exploratory testing of browser UI and features
- Stylo-nightly meta bug 1330412
- Stylo-nightly dependencies
ID | Priority | Summary | Whiteboard | Keywords | Assigned to |
---|---|---|---|---|---|
1419158 | P3 | border width display bug(page zoom + fractional pixels) | regression | ||
1330069 | P4 | Create Stylo performance tests based on old Gecko style system performance bugs | |||
1320841 | P5 | [meta] Pass all mochitests for Stylo | meta | ||
1324348 | P5 | [meta] stylo: Reftest failures | meta | ||
1362908 | P5 | [meta] stylo: mochitest crashes | meta |
5 Total; 5 Open (100%); 0 Resolved (0%); 0 Verified (0%);
stylo-release
- Run experiment comparing Stylo vs Gecko on engagement ratio, performance, crash rate, and memory usage.
- Let Stylo ride the trains
- Enable Stylo on all platforms (bug stylo-nightly)
- Pass QA on all platforms (tests, fuzzing, BugHunter)
- Enable Stylo on all platforms (bug stylo-nightly)
- Ship Stylo to Release