This Month In Servo 128

In the past month, we merged 189 PRs in the Servo organization’s repositories.

Planning and Status

Our roadmap is available online, including the team’s plans for 2019.

This week’s status updates are here.

Exciting works in progress

paulrouget is redesigning the desktop embedding to better support splitting the compositor from the constellation.

mmatyas is implementing support for compressed WebGL textures.

ferjm is implementing parts of the Shadow DOM API in order to support UI for media controls and complex form controls.

Notable Additions

ferjm added support for replaying media that has ended.

ferjm fixed a panic that could occur when playing audio on certain platforms.

nox ensured a source of unsafety in layout now panics instead of causing undefined behaviour.

soniasinglad removed the need for OpenSSL binaries to be present in order to run tests.

ceyusa implemented support for EGL-only hardware accelerated media playback.

Manishearth improved the transform-related parts of the WebXR implementation.

AZWN exposed some hidden unsafe behaviour in Promise-related APIs.

ferjm added support for using MediaStream as media sources.

georgeroman implemented support for the media canPlayType API.

JHBalaji and others added support for value curve automation in the WebAudio API.

jdm implemented a sampling profiler.

gterzian made the sampling profiler limit the total number of samples stored.

Manishearth fixed a race in the WebRTC backend.

kamal-umudlu added support for using the fullscreen capabilities of the OS for the Fullscreen API.

jdm extended the set of supported GStreamer packages on Windows.

pylbrecht added measurements for layout queries that are forced to wait on an ongoing layout operation to complete.

TheGoddessInari improved the MSVC detection in Servo’s build system on Windows.

sbansal3096 fixed a panic when importing a stylesheet via CSSOM APIs.

georgeroman implemented the missing XMLSerializer API.

KwanEsq fixed web compatibility issue with a CSSOM API.

aditj added support for the DeleteCookies WebDriver API.

peterjoel redesigned the preferences support to better support preferences at compile-time.

gterzian added a thread pool for the network code.

lucasfantacuci refactored a bunch of code that makes network requests to use a builder pattern.

cdeler implemented the missing DOMException constructor API.

gterzian and jdm added Linux support to the thread sampling implementation.

New Contributors

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