mirror of
https://github.com/servo/servo
synced 2026-04-25 17:15:48 +02:00
0c21c9090e784445b1f8a68b64dc8d001a6496b6
Bumps the gstreamer-related group with 29 updates: | Package | From | To | | --- | --- | --- | | [glib](https://github.com/gtk-rs/gtk-rs-core) | `0.21.5` | `0.22.0` | | [glib-sys](https://github.com/gtk-rs/gtk-rs-core) | `0.21.5` | `0.22.0` | | gstreamer | `0.24.4` | `0.25.0` | | gstreamer-app | `0.24.4` | `0.25.0` | | gstreamer-audio | `0.24.4` | `0.25.0` | | gstreamer-base | `0.24.4` | `0.25.0` | | gstreamer-gl | `0.24.4` | `0.25.0` | | gstreamer-gl-egl | `0.24.4` | `0.25.0` | | gstreamer-gl-sys | `0.24.4` | `0.25.0` | | gstreamer-gl-wayland | `0.24.4` | `0.25.0` | | gstreamer-gl-x11 | `0.24.4` | `0.25.0` | | gstreamer-play | `0.24.4` | `0.25.0` | | gstreamer-sdp | `0.24.4` | `0.25.0` | | gstreamer-sys | `0.24.4` | `0.25.0` | | gstreamer-video | `0.24.4` | `0.25.0` | | gstreamer-webrtc | `0.24.4` | `0.25.0` | | [gio-sys](https://github.com/gtk-rs/gtk-rs-core) | `0.21.5` | `0.22.0` | | [glib-macros](https://github.com/gtk-rs/gtk-rs-core) | `0.21.5` | `0.22.0` | | [gobject-sys](https://github.com/gtk-rs/gtk-rs-core) | `0.21.5` | `0.22.0` | | gstreamer-app-sys | `0.24.4` | `0.25.0` | | gstreamer-audio-sys | `0.24.4` | `0.25.0` | | gstreamer-base-sys | `0.24.4` | `0.25.0` | | gstreamer-gl-egl-sys | `0.24.4` | `0.25.0` | | gstreamer-gl-wayland-sys | `0.24.4` | `0.25.0` | | gstreamer-gl-x11-sys | `0.24.4` | `0.25.0` | | gstreamer-play-sys | `0.24.4` | `0.25.0` | | gstreamer-sdp-sys | `0.24.4` | `0.25.0` | | gstreamer-video-sys | `0.24.4` | `0.25.0` | | gstreamer-webrtc-sys | `0.24.4` | `0.25.0` | Updates `glib` from 0.21.5 to 0.22.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/gtk-rs/gtk-rs-core/releases">glib's releases</a>.</em></p> <blockquote> <h2>0.22.0</h2> <pre><code>Bernhard M. Wiedemann: glib-macros: Use BTreeMap instead of HashMap <p>Biagio Festa:<br /> glib-macros/async_test: unwrap result when setting default context<br /> glib-macros/async_test: dont move main context within closure<br /> glib/bytes: relax start offset constraint for <code>from_bytes</code></p> <p>Bilal Elmoussaoui:<br /> ci: Switch from gsvbuild to MSVC<br /> Generate bindings for win32/unix GLib/Gio<br /> Build new crates on CI<br /> gio/unix: Remove the manual fallback for MountEntry<br /> glib: Lower host dep requirement<br /> glib/unix: Add missing futures feature<br /> gio/unix: Ignore a clippy lint<br /> gio: Comment out a test & drop UnixFdMessage<br /> gio/tests: Remove no longer useful headers<br /> gio: Move various config options to gio-unix<br /> glib: Remove no longer needed manual ffi functions<br /> glib/sys: Don't generate UnixPipe<br /> Regenerate with fixed GIR files<br /> glib/source: Fix imports on Win32<br /> glib/win32: Add missing imports<br /> gio/win32: Manually implement streams<br /> gio/win32: Add a type for GNetworkMonitorBase and drop duplicated manual ones<br /> gio/win32: Add missing dep<br /> deny: Drop no longer needed skips<br /> Add missing licenses<br /> Adapt to rust nightly docs changes<br /> gio: Move test to gio-unix<br /> gdk-pixbuf: Ignore another clippy lint<br /> Fix docs for new crates<br /> Force update windows-sys for new crates<br /> win32: Always depend on windows-sys<br /> win32: Guard std::os::windows usage<br /> gio/win32: Add missing feature<br /> Re-export preludes<br /> glib: Use 'static lifetime for nick/name<br /> Use 'a lifetime instead<br /> glib: Mark push_thread_default as renamed</p> <p>Casey Jao:<br /> Clarify the GObject subclass mechanism<br /> Add missing comment markers<br /> Update glib/src/subclass/mod.rs<br /> Clarify Rust-C analogy for external interface<br /> Improve diagram<br /> </tr></table><br /> </code></pre></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="5b440606f1"><code>5b44060</code></a> Update versions to 0.22.0</li> <li><a href="838d4400c0"><code>838d440</code></a> Update dependencies</li> <li><a href="0cac69d45e"><code>0cac69d</code></a> Regenerate with latest gir</li> <li><a href="7f631810e2"><code>7f63181</code></a> Update gir</li> <li><a href="f52ab6bdda"><code>f52ab6b</code></a> glib: Mark push_thread_default as renamed</li> <li><a href="e93a49c354"><code>e93a49c</code></a> build(deps): bump futures-task from 0.3.31 to 0.3.32</li> <li><a href="f2d29d9f92"><code>f2d29d9</code></a> build(deps): bump futures-channel from 0.3.31 to 0.3.32</li> <li><a href="46dda5ff4b"><code>46dda5f</code></a> build(deps): bump libc from 0.2.180 to 0.2.182</li> <li><a href="dcc35f7144"><code>dcc35f7</code></a> build(deps): bump tempfile from 3.24.0 to 3.25.0</li> <li><a href="f86b993073"><code>f86b993</code></a> build(deps): bump futures-core from 0.3.31 to 0.3.32</li> <li>Additional commits viewable in <a href="https://github.com/gtk-rs/gtk-rs-core/compare/0.21.5...0.22.0">compare view</a></li> </ul> </details> <br /> Updates `glib-sys` from 0.21.5 to 0.22.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/gtk-rs/gtk-rs-core/releases">glib-sys's releases</a>.</em></p> <blockquote> <h2>0.22.0</h2> <pre><code>Bernhard M. Wiedemann: glib-macros: Use BTreeMap instead of HashMap <p>Biagio Festa:<br /> glib-macros/async_test: unwrap result when setting default context<br /> glib-macros/async_test: dont move main context within closure<br /> glib/bytes: relax start offset constraint for <code>from_bytes</code></p> <p>Bilal Elmoussaoui:<br /> ci: Switch from gsvbuild to MSVC<br /> Generate bindings for win32/unix GLib/Gio<br /> Build new crates on CI<br /> gio/unix: Remove the manual fallback for MountEntry<br /> glib: Lower host dep requirement<br /> glib/unix: Add missing futures feature<br /> gio/unix: Ignore a clippy lint<br /> gio: Comment out a test & drop UnixFdMessage<br /> gio/tests: Remove no longer useful headers<br /> gio: Move various config options to gio-unix<br /> glib: Remove no longer needed manual ffi functions<br /> glib/sys: Don't generate UnixPipe<br /> Regenerate with fixed GIR files<br /> glib/source: Fix imports on Win32<br /> glib/win32: Add missing imports<br /> gio/win32: Manually implement streams<br /> gio/win32: Add a type for GNetworkMonitorBase and drop duplicated manual ones<br /> gio/win32: Add missing dep<br /> deny: Drop no longer needed skips<br /> Add missing licenses<br /> Adapt to rust nightly docs changes<br /> gio: Move test to gio-unix<br /> gdk-pixbuf: Ignore another clippy lint<br /> Fix docs for new crates<br /> Force update windows-sys for new crates<br /> win32: Always depend on windows-sys<br /> win32: Guard std::os::windows usage<br /> gio/win32: Add missing feature<br /> Re-export preludes<br /> glib: Use 'static lifetime for nick/name<br /> Use 'a lifetime instead<br /> glib: Mark push_thread_default as renamed</p> <p>Casey Jao:<br /> Clarify the GObject subclass mechanism<br /> Add missing comment markers<br /> Update glib/src/subclass/mod.rs<br /> Clarify Rust-C analogy for external interface<br /> Improve diagram<br /> </tr></table><br /> </code></pre></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="5b440606f1"><code>5b44060</code></a> Update versions to 0.22.0</li> <li><a href="838d4400c0"><code>838d440</code></a> Update dependencies</li> <li><a href="0cac69d45e"><code>0cac69d</code></a> Regenerate with latest gir</li> <li><a href="7f631810e2"><code>7f63181</code></a> Update gir</li> <li><a href="f52ab6bdda"><code>f52ab6b</code></a> glib: Mark push_thread_default as renamed</li> <li><a href="e93a49c354"><code>e93a49c</code></a> build(deps): bump futures-task from 0.3.31 to 0.3.32</li> <li><a href="f2d29d9f92"><code>f2d29d9</code></a> build(deps): bump futures-channel from 0.3.31 to 0.3.32</li> <li><a href="46dda5ff4b"><code>46dda5f</code></a> build(deps): bump libc from 0.2.180 to 0.2.182</li> <li><a href="dcc35f7144"><code>dcc35f7</code></a> build(deps): bump tempfile from 3.24.0 to 3.25.0</li> <li><a href="f86b993073"><code>f86b993</code></a> build(deps): bump futures-core from 0.3.31 to 0.3.32</li> <li>Additional commits viewable in <a href="https://github.com/gtk-rs/gtk-rs-core/compare/0.21.5...0.22.0">compare view</a></li> </ul> </details> <br /> Updates `gstreamer` from 0.24.4 to 0.25.0 Updates `gstreamer-app` from 0.24.4 to 0.25.0 Updates `gstreamer-audio` from 0.24.4 to 0.25.0 Updates `gstreamer-base` from 0.24.4 to 0.25.0 Updates `gstreamer-gl` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-egl` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-wayland` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-x11` from 0.24.4 to 0.25.0 Updates `gstreamer-play` from 0.24.4 to 0.25.0 Updates `gstreamer-sdp` from 0.24.4 to 0.25.0 Updates `gstreamer-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-video` from 0.24.4 to 0.25.0 Updates `gstreamer-webrtc` from 0.24.4 to 0.25.0 Updates `gio-sys` from 0.21.5 to 0.22.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/gtk-rs/gtk-rs-core/releases">gio-sys's releases</a>.</em></p> <blockquote> <h2>0.22.0</h2> <pre><code>Bernhard M. Wiedemann: glib-macros: Use BTreeMap instead of HashMap <p>Biagio Festa:<br /> glib-macros/async_test: unwrap result when setting default context<br /> glib-macros/async_test: dont move main context within closure<br /> glib/bytes: relax start offset constraint for <code>from_bytes</code></p> <p>Bilal Elmoussaoui:<br /> ci: Switch from gsvbuild to MSVC<br /> Generate bindings for win32/unix GLib/Gio<br /> Build new crates on CI<br /> gio/unix: Remove the manual fallback for MountEntry<br /> glib: Lower host dep requirement<br /> glib/unix: Add missing futures feature<br /> gio/unix: Ignore a clippy lint<br /> gio: Comment out a test & drop UnixFdMessage<br /> gio/tests: Remove no longer useful headers<br /> gio: Move various config options to gio-unix<br /> glib: Remove no longer needed manual ffi functions<br /> glib/sys: Don't generate UnixPipe<br /> Regenerate with fixed GIR files<br /> glib/source: Fix imports on Win32<br /> glib/win32: Add missing imports<br /> gio/win32: Manually implement streams<br /> gio/win32: Add a type for GNetworkMonitorBase and drop duplicated manual ones<br /> gio/win32: Add missing dep<br /> deny: Drop no longer needed skips<br /> Add missing licenses<br /> Adapt to rust nightly docs changes<br /> gio: Move test to gio-unix<br /> gdk-pixbuf: Ignore another clippy lint<br /> Fix docs for new crates<br /> Force update windows-sys for new crates<br /> win32: Always depend on windows-sys<br /> win32: Guard std::os::windows usage<br /> gio/win32: Add missing feature<br /> Re-export preludes<br /> glib: Use 'static lifetime for nick/name<br /> Use 'a lifetime instead<br /> glib: Mark push_thread_default as renamed</p> <p>Casey Jao:<br /> Clarify the GObject subclass mechanism<br /> Add missing comment markers<br /> Update glib/src/subclass/mod.rs<br /> Clarify Rust-C analogy for external interface<br /> Improve diagram<br /> </tr></table><br /> </code></pre></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="5b440606f1"><code>5b44060</code></a> Update versions to 0.22.0</li> <li><a href="838d4400c0"><code>838d440</code></a> Update dependencies</li> <li><a href="0cac69d45e"><code>0cac69d</code></a> Regenerate with latest gir</li> <li><a href="7f631810e2"><code>7f63181</code></a> Update gir</li> <li><a href="f52ab6bdda"><code>f52ab6b</code></a> glib: Mark push_thread_default as renamed</li> <li><a href="e93a49c354"><code>e93a49c</code></a> build(deps): bump futures-task from 0.3.31 to 0.3.32</li> <li><a href="f2d29d9f92"><code>f2d29d9</code></a> build(deps): bump futures-channel from 0.3.31 to 0.3.32</li> <li><a href="46dda5ff4b"><code>46dda5f</code></a> build(deps): bump libc from 0.2.180 to 0.2.182</li> <li><a href="dcc35f7144"><code>dcc35f7</code></a> build(deps): bump tempfile from 3.24.0 to 3.25.0</li> <li><a href="f86b993073"><code>f86b993</code></a> build(deps): bump futures-core from 0.3.31 to 0.3.32</li> <li>Additional commits viewable in <a href="https://github.com/gtk-rs/gtk-rs-core/compare/0.21.5...0.22.0">compare view</a></li> </ul> </details> <br /> Updates `glib-macros` from 0.21.5 to 0.22.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/gtk-rs/gtk-rs-core/releases">glib-macros's releases</a>.</em></p> <blockquote> <h2>0.22.0</h2> <pre><code>Bernhard M. Wiedemann: glib-macros: Use BTreeMap instead of HashMap <p>Biagio Festa:<br /> glib-macros/async_test: unwrap result when setting default context<br /> glib-macros/async_test: dont move main context within closure<br /> glib/bytes: relax start offset constraint for <code>from_bytes</code></p> <p>Bilal Elmoussaoui:<br /> ci: Switch from gsvbuild to MSVC<br /> Generate bindings for win32/unix GLib/Gio<br /> Build new crates on CI<br /> gio/unix: Remove the manual fallback for MountEntry<br /> glib: Lower host dep requirement<br /> glib/unix: Add missing futures feature<br /> gio/unix: Ignore a clippy lint<br /> gio: Comment out a test & drop UnixFdMessage<br /> gio/tests: Remove no longer useful headers<br /> gio: Move various config options to gio-unix<br /> glib: Remove no longer needed manual ffi functions<br /> glib/sys: Don't generate UnixPipe<br /> Regenerate with fixed GIR files<br /> glib/source: Fix imports on Win32<br /> glib/win32: Add missing imports<br /> gio/win32: Manually implement streams<br /> gio/win32: Add a type for GNetworkMonitorBase and drop duplicated manual ones<br /> gio/win32: Add missing dep<br /> deny: Drop no longer needed skips<br /> Add missing licenses<br /> Adapt to rust nightly docs changes<br /> gio: Move test to gio-unix<br /> gdk-pixbuf: Ignore another clippy lint<br /> Fix docs for new crates<br /> Force update windows-sys for new crates<br /> win32: Always depend on windows-sys<br /> win32: Guard std::os::windows usage<br /> gio/win32: Add missing feature<br /> Re-export preludes<br /> glib: Use 'static lifetime for nick/name<br /> Use 'a lifetime instead<br /> glib: Mark push_thread_default as renamed</p> <p>Casey Jao:<br /> Clarify the GObject subclass mechanism<br /> Add missing comment markers<br /> Update glib/src/subclass/mod.rs<br /> Clarify Rust-C analogy for external interface<br /> Improve diagram<br /> </tr></table><br /> </code></pre></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="5b440606f1"><code>5b44060</code></a> Update versions to 0.22.0</li> <li><a href="838d4400c0"><code>838d440</code></a> Update dependencies</li> <li><a href="0cac69d45e"><code>0cac69d</code></a> Regenerate with latest gir</li> <li><a href="7f631810e2"><code>7f63181</code></a> Update gir</li> <li><a href="f52ab6bdda"><code>f52ab6b</code></a> glib: Mark push_thread_default as renamed</li> <li><a href="e93a49c354"><code>e93a49c</code></a> build(deps): bump futures-task from 0.3.31 to 0.3.32</li> <li><a href="f2d29d9f92"><code>f2d29d9</code></a> build(deps): bump futures-channel from 0.3.31 to 0.3.32</li> <li><a href="46dda5ff4b"><code>46dda5f</code></a> build(deps): bump libc from 0.2.180 to 0.2.182</li> <li><a href="dcc35f7144"><code>dcc35f7</code></a> build(deps): bump tempfile from 3.24.0 to 3.25.0</li> <li><a href="f86b993073"><code>f86b993</code></a> build(deps): bump futures-core from 0.3.31 to 0.3.32</li> <li>Additional commits viewable in <a href="https://github.com/gtk-rs/gtk-rs-core/compare/0.21.5...0.22.0">compare view</a></li> </ul> </details> <br /> Updates `gobject-sys` from 0.21.5 to 0.22.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/gtk-rs/gtk-rs-core/releases">gobject-sys's releases</a>.</em></p> <blockquote> <h2>0.22.0</h2> <pre><code>Bernhard M. Wiedemann: glib-macros: Use BTreeMap instead of HashMap <p>Biagio Festa:<br /> glib-macros/async_test: unwrap result when setting default context<br /> glib-macros/async_test: dont move main context within closure<br /> glib/bytes: relax start offset constraint for <code>from_bytes</code></p> <p>Bilal Elmoussaoui:<br /> ci: Switch from gsvbuild to MSVC<br /> Generate bindings for win32/unix GLib/Gio<br /> Build new crates on CI<br /> gio/unix: Remove the manual fallback for MountEntry<br /> glib: Lower host dep requirement<br /> glib/unix: Add missing futures feature<br /> gio/unix: Ignore a clippy lint<br /> gio: Comment out a test & drop UnixFdMessage<br /> gio/tests: Remove no longer useful headers<br /> gio: Move various config options to gio-unix<br /> glib: Remove no longer needed manual ffi functions<br /> glib/sys: Don't generate UnixPipe<br /> Regenerate with fixed GIR files<br /> glib/source: Fix imports on Win32<br /> glib/win32: Add missing imports<br /> gio/win32: Manually implement streams<br /> gio/win32: Add a type for GNetworkMonitorBase and drop duplicated manual ones<br /> gio/win32: Add missing dep<br /> deny: Drop no longer needed skips<br /> Add missing licenses<br /> Adapt to rust nightly docs changes<br /> gio: Move test to gio-unix<br /> gdk-pixbuf: Ignore another clippy lint<br /> Fix docs for new crates<br /> Force update windows-sys for new crates<br /> win32: Always depend on windows-sys<br /> win32: Guard std::os::windows usage<br /> gio/win32: Add missing feature<br /> Re-export preludes<br /> glib: Use 'static lifetime for nick/name<br /> Use 'a lifetime instead<br /> glib: Mark push_thread_default as renamed</p> <p>Casey Jao:<br /> Clarify the GObject subclass mechanism<br /> Add missing comment markers<br /> Update glib/src/subclass/mod.rs<br /> Clarify Rust-C analogy for external interface<br /> Improve diagram<br /> </tr></table><br /> </code></pre></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="5b440606f1"><code>5b44060</code></a> Update versions to 0.22.0</li> <li><a href="838d4400c0"><code>838d440</code></a> Update dependencies</li> <li><a href="0cac69d45e"><code>0cac69d</code></a> Regenerate with latest gir</li> <li><a href="7f631810e2"><code>7f63181</code></a> Update gir</li> <li><a href="f52ab6bdda"><code>f52ab6b</code></a> glib: Mark push_thread_default as renamed</li> <li><a href="e93a49c354"><code>e93a49c</code></a> build(deps): bump futures-task from 0.3.31 to 0.3.32</li> <li><a href="f2d29d9f92"><code>f2d29d9</code></a> build(deps): bump futures-channel from 0.3.31 to 0.3.32</li> <li><a href="46dda5ff4b"><code>46dda5f</code></a> build(deps): bump libc from 0.2.180 to 0.2.182</li> <li><a href="dcc35f7144"><code>dcc35f7</code></a> build(deps): bump tempfile from 3.24.0 to 3.25.0</li> <li><a href="f86b993073"><code>f86b993</code></a> build(deps): bump futures-core from 0.3.31 to 0.3.32</li> <li>Additional commits viewable in <a href="https://github.com/gtk-rs/gtk-rs-core/compare/0.21.5...0.22.0">compare view</a></li> </ul> </details> <br /> Updates `gstreamer-app-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-audio-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-base-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-egl-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-wayland-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-gl-x11-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-play-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-sdp-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-video-sys` from 0.24.4 to 0.25.0 Updates `gstreamer-webrtc-sys` from 0.24.4 to 0.25.0 Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Indexeddb: Move IDBFactory to global scope(away from specific globals like window and worker) (#42757)
layout: Create a webrender stacking context for fragments with
transform-style: preserve-3d (#42755)
The Servo Parallel Browser Engine Project
Servo is a prototype web browser engine written in the Rust language. It is currently developed on 64-bit macOS, 64-bit Linux, 64-bit Windows, 64-bit OpenHarmony, and Android.
Servo welcomes contribution from everyone. Check out:
- The Servo Book for documentation
- servo.org for news and guides
Coordination of Servo development happens:
- Here in the Github Issues
- On the Servo Zulip
- In video calls advertised in the Servo Project repo.
Getting started
For more detailed build instructions, see the Servo Book under Getting the Code and Building Servo.
macOS
- Download and install Xcode and
brew. - Install
uv:curl -LsSf https://astral.sh/uv/install.sh | sh - Install
rustup:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Restart your shell to make sure
cargois available - Install the other dependencies:
./mach bootstrap - Build servoshell:
./mach build
Linux
- Install
curl:- Arch:
sudo pacman -S --needed curl - Debian, Ubuntu:
sudo apt install curl - Fedora:
sudo dnf install curl - Gentoo:
sudo emerge net-misc/curl
- Arch:
- Install
uv:curl -LsSf https://astral.sh/uv/install.sh | sh - Install
rustup:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Restart your shell to make sure
cargois available - Install the other dependencies:
./mach bootstrap - Build servoshell:
./mach build
Windows
- Download
uv,choco, andrustup- Be sure to select Quick install via the Visual Studio Community installer
- In the Visual Studio Installer, ensure the following components are installed:
- Windows 10/11 SDK (anything >= 10.0.19041.0) (
Microsoft.VisualStudio.Component.Windows{10, 11}SDK.{>=19041}) - MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest) (
Microsoft.VisualStudio.Component.VC.Tools.x86.x64) - C++ ATL for latest v143 build tools (x86 & x64) (
Microsoft.VisualStudio.Component.VC.ATL)
- Windows 10/11 SDK (anything >= 10.0.19041.0) (
- Restart your shell to make sure
cargois available - Install the other dependencies:
.\mach bootstrap - Build servoshell:
.\mach build
Android
- Ensure that the following environment variables are set:
ANDROID_SDK_ROOTANDROID_NDK_ROOT:$ANDROID_SDK_ROOT/ndk/28.2.13676358/ANDROID_SDK_ROOTcan be any directory (such as~/android-sdk). All of the Android build dependencies will be installed there.
- Install the latest version of the Android command-line
tools to
$ANDROID_SDK_ROOT/cmdline-tools/latest. - Run the following command to install the necessary components:
sudo $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --install \ "build-tools;34.0.0" \ "emulator" \ "ndk;28.2.13676358" \ "platform-tools" \ "platforms;android-33" \ "system-images;android-33;google_apis;x86_64" - Follow the instructions above for the platform you are building on
OpenHarmony
- Follow the instructions above for the platform you are building on to prepare the environment.
- Depending on the target distribution (e.g.
HarmonyOS NEXTvs pureOpenHarmony) the build configuration will differ slightly. - Ensure that the following environment variables are set
DEVECO_SDK_HOME(Required when targetingHarmonyOS NEXT)OHOS_BASE_SDK_HOME(Required when targetingOpenHarmony)OHOS_SDK_NATIVE(e.g.${DEVECO_SDK_HOME}/default/openharmony/nativeor${OHOS_BASE_SDK_HOME}/${API_VERSION}/native)SERVO_OHOS_SIGNING_CONFIG: Path to json file containing a valid signing configuration for the demo app.
- Review the detailed instructions at [Building for OpenHarmony].
- The target distribution can be modified by passing
--flavor=<default|harmonyos>tomach <build|package|install>.
Languages
Rust
87.7%
Python
6%
WebIDL
3.1%
HTML
2%
JavaScript
0.5%
Other
0.5%