These Weeks In Servo 85

In the last three weeks, we landed 236 PRs in the Servo organization’s repositories. This number is lower than usual due to a week-long Mozilla All-Hands gathering that many team members attended.

jdm presented a plan for the DOM-related work in Servo for 2017. Please provide feedback if you feel anything important is missing from it!

Congratulations to kvark on their new reviewer privileges. They have been contributing important features to WebRender and reviewing changes by other contributors, so it’s great to make this official.

Planning and Status

Our overall roadmap is available online, including the Q4 plans and tentative outline of some ideas for 2017. Please check it out and provide feedback!

This week’s status updates are here.

Notable Additions

impowski rewrote the bluetooth manager code to be more idiomatic and maintainable.

DominoTree corrected the serialization of linear gradients in CSS.

Ms2ger avoided dynamic borrowing errors in reentrant code.

emilio implemented suport for @import rules in CSS.

rules in CSS. Manishearth updated rust-url to match new specification changes.

frewsxcv made placeholders appear in text areas.

SimonSapin replaced some uses of strings for CSS property names with enums.

UK992 fixed some issues with the Windows installer.

mmatyas made a number of improvements to allow Android to build again.

gw & frewsxcv avoided a macOS 10.12 graphics error that made Servo unusable.

stshine improved the calculation of sizes of replaced elements.

gterzian implemented transactions for scrolling operations.

canaltinova added tests for a number of under-tested CSSOM interfaces.

mrnayak redesigned the in-memory storage for cookies.

changm added an API to read GL pixels into an existing buffer.

canaltinova implemented the MediaList DOM API.

julienw exposed quirks mode information to layout.

Manishearth made the automated build machines recognize known intermittent failures and avoid failing the build.

nox ensured that XHTML documents are properly treated as XML.

upsuper implemented CSSOM manipulation for Stylo.

kimsnj ensured that software rendering is always used in headless mode.

nox specialized the types used in generated DOM binding code.

mrobinson reimplemented scrolling to fragments in webpages.

danieldk corrected the heap allocation size calculation for hash tables.

nox implemented the document.write API.

API. vvuk added a useful tool for debugging WebRender changes.

samuknet added support for scrolling to the start and end of a scene in WebRender.

MortimerGoro implemented support for resizing WebGL canvases.

Ms2ger made iframe elements synchronously load about:blank.

farodin91 implemented the fullscreen DOM API.

notriddle added heuristics to decide between parallel or sequential layout based on DOM tree size.

New Contributors

Interested in helping build a web browser? Take a look at our curated list of issues that are good for new contributors!

Screenshot

No screenshots.