81 Commits

Author SHA1 Message Date
Gae24
e2f17e0d28 deps: Bump jni-rs to 0.22 (#44322)
Update jni-rs to 0.22, the main changes involve the introduction of
`with_env` within native methods, and updating uses of
`attach_current_thread`, which now requires a closure passed to it.
Callback object is now stored inside a `OnceLock`, since it would crash
when it was deleted, probably once a `WakeupCallback` was dropped:
```
JNI DETECTED ERROR IN APPLICATION: JNI ERROR (app bug): jobject is an invalid global reference: 0x2fc6 (deleted reference at index 382)
```
Also update android-activity and rustls-platform-verifier.

Testing: We don't have android tests in CI, manual testing is required
Fixes: Part of #40979

---------

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2026-04-23 11:55:29 +00:00
Nico Burns
2c91740059 Use our own http server for the webdriver server (#44338)
Helps with: https://github.com/servo/servo/issues/38776. Reduces total
Servo crate count by 7 (977 -> 970).

This PR simply:
- Disables the `server` feature in the `webdriver` crate
- Vendors the implementation of the server from the `webdriver` crate
- Updates dependencies + fixes code to work with new versions

Unfortunately `webdriver` depends on `http` even with the `server`
feature disabled, so we still end up with duplicate versions of `http`.
But at least the duplicate `hyper` is eliminated. Future work could
change the implementation to e.g. move away from `warp` or similar.

Testing: WPT tests use webdriver, so this should be exercised heavily by
those tests.

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2026-04-19 15:42:45 +00:00
Josh Matthews
f70f94ad0e servoshell: Update egui to 0.34. (#44053)
Testing: We have no automated testing for the servoshell UI. Some quick
manual testing of servo.org seemed to work as expected.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2026-04-10 19:19:01 +00:00
dependabot[bot]
5184707255 build: bump tokio from 1.50.0 to 1.51.0 in the tokio-rs-related group across 1 directory (#43960)
Bumps the tokio-rs-related group with 1 update in the / directory:
[tokio](https://github.com/tokio-rs/tokio).

Updates `tokio` from 1.50.0 to 1.51.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tokio/releases">tokio's
releases</a>.</em></p>
<blockquote>
<h2>Tokio v1.51.0</h2>
<h1>1.51.0 (April 3rd, 2026)</h1>
<h3>Added</h3>
<ul>
<li>net: implement <code>get_peer_cred</code> on Hurd (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7989">#7989</a>)</li>
<li>runtime: add <code>tokio::runtime::worker_index()</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7921">#7921</a>)</li>
<li>runtime: add runtime name (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7924">#7924</a>)</li>
<li>runtime: stabilize <code>LocalRuntime</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7557">#7557</a>)</li>
<li>wasm: add wasm32-wasip2 networking support (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7933">#7933</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>runtime: steal tasks from the LIFO slot (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7431">#7431</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>docs: do not show &quot;Available on non-loom only.&quot; doc label
(<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7977">#7977</a>)</li>
<li>macros: improve overall macro hygiene (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7997">#7997</a>)</li>
<li>sync: fix <code>notify_waiters</code> priority in
<code>Notify</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7996">#7996</a>)</li>
<li>sync: fix panic in <code>Chan::recv_many</code> when called with
non-empty vector on closed channel (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7991">#7991</a>)</li>
</ul>
<p><a
href="https://redirect.github.com/tokio-rs/tokio/issues/7431">#7431</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7431">tokio-rs/tokio#7431</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7557">#7557</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7557">tokio-rs/tokio#7557</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7921">#7921</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7921">tokio-rs/tokio#7921</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7924">#7924</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7924">tokio-rs/tokio#7924</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7933">#7933</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7933">tokio-rs/tokio#7933</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7977">#7977</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7977">tokio-rs/tokio#7977</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7989">#7989</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7989">tokio-rs/tokio#7989</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7991">#7991</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7991">tokio-rs/tokio#7991</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7996">#7996</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7996">tokio-rs/tokio#7996</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7997">#7997</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7997">tokio-rs/tokio#7997</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0af06b7bab"><code>0af06b7</code></a>
chore: prepare Tokio v1.51.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/8005">#8005</a>)</li>
<li><a
href="01a7f1dfab"><code>01a7f1d</code></a>
chore: prepare tokio-macros v2.7.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/8004">#8004</a>)</li>
<li><a
href="eeb55c733b"><code>eeb55c7</code></a>
runtime: steal tasks from the LIFO slot (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7431">#7431</a>)</li>
<li><a
href="1fc450aefb"><code>1fc450a</code></a>
runtime: stabilize <code>LocalRuntime</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7557">#7557</a>)</li>
<li><a
href="324218f9bb"><code>324218f</code></a>
Merge tag 'tokio-1.47.4' (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/8003">#8003</a>)</li>
<li><a
href="aa65d0d0b8"><code>aa65d0d</code></a>
chore: prepare Tokio v1.47.4 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/8002">#8002</a>)</li>
<li><a
href="bf18ed452d"><code>bf18ed4</code></a>
sync: fix panic in <code>Chan::recv_many</code> when called with
non-empty vector on clo...</li>
<li><a
href="43134f1e57"><code>43134f1</code></a>
wasm: add wasm32-wasip2 networking support (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7933">#7933</a>)</li>
<li><a
href="b4c3246d33"><code>b4c3246</code></a>
macros: improve overall macro hygiene (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7997">#7997</a>)</li>
<li><a
href="7947fa4bd7"><code>7947fa4</code></a>
rt: add runtime name (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7924">#7924</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/tokio/compare/tokio-1.50.0...tokio-1.51.0">compare
view</a></li>
</ul>
</details>
<br />

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-06 07:16:38 +00:00
webbeef
ae78fbb03a bluetooth: switch to btleplug (#43529)
btleplug depends on tokio so we use a bridge thread to interface with
Servo thread based messaging.
We keep feature parity except for BtleplugGATTService::get_includes()
that will require upstream implementation.
In terms of OS support, I verified on Linux and MacOS. Android is
untested, but btleplug claims support.


Testing: No test failures, green try run at
https://github.com/webbeef/servo/actions/runs/23390850825
Fixes: #43254.

Signed-off-by: webbeef <me@webbeef.org>
2026-03-23 17:01:24 +00:00
dependabot[bot]
eae2cd812b build: bump aws-lc-rs from 1.16.1 to 1.16.2 (#43467)
Bumps [aws-lc-rs](https://github.com/aws/aws-lc-rs) from 1.16.1 to
1.16.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/aws/aws-lc-rs/releases">aws-lc-rs's
releases</a>.</em></p>
<blockquote>
<h2>aws-lc-rs v1.16.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Implement HMAC <code>sign_to_buffer</code> by <a
href="https://github.com/fabrice102"><code>@​fabrice102</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1058">aws/aws-lc-rs#1058</a></li>
<li>Fix <code>PublicEncryptingKey::from_der</code> to reject undersized
RSA keys by <a
href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1065">aws/aws-lc-rs#1065</a>
<ul>
<li><code>from_der()</code> now correctly enforces the 2048-bit minimum
key size, consistent with <code>PrivateDecryptingKey::from_pkcs8</code>.
Users loading &lt;2048-bit public keys for encryption will now receive
<code>KeyRejected</code>.</li>
</ul>
</li>
<li>Update licensing of <code>aws-lc-sys</code> to reflect third-party
component licenses by <a
href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1062">aws/aws-lc-rs#1062</a></li>
<li>Improved <code>dev-tests-only</code> documentation and <a
href="https://docs.rs/aws-lc-rs/latest/aws_lc_rs/">docs.rs</a> rendering
by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in
<a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1054">aws/aws-lc-rs#1054</a></li>
</ul>
<h3>Build Improvements</h3>
<ul>
<li>Fix jitterentropy build failure caused by <code>cc</code> crate
CFLAGS handling change by <a
href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1064">aws/aws-lc-rs#1064</a></li>
<li>Unify sys-crate build scripts by <a
href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/995">aws/aws-lc-rs#995</a></li>
</ul>
<h3>Issues Being Closed</h3>
<ul>
<li>sys: license of s2n-bignum and fiat-crypto not reflected &amp;
license texts partially missing -- <a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1044">aws/aws-lc-rs#1044</a></li>
<li>Deterministic key agreement for testing -- <a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1020">aws/aws-lc-rs#1020</a></li>
</ul>
<h2>Other Merged PRs</h2>
<ul>
<li>Prepare aws-lc-fips-sys v0.13.13 by <a
href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1066">aws/aws-lc-rs#1066</a></li>
<li>Prepare aws-lc-sys v0.39.0 by <a
href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1067">aws/aws-lc-rs#1067</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/fabrice102"><code>@​fabrice102</code></a> made
their first contribution in <a
href="https://redirect.github.com/aws/aws-lc-rs/pull/1058">aws/aws-lc-rs#1058</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/aws/aws-lc-rs/compare/v1.16.1...v1.16.2">https://github.com/aws/aws-lc-rs/compare/v1.16.1...v1.16.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1f8a0602f5"><code>1f8a060</code></a>
Prepare aws-lc-sys v0.39.0 (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1067">#1067</a>)</li>
<li><a
href="0553c46a0e"><code>0553c46</code></a>
Prepare aws-lc-fips-sys v0.13.13 (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1066">#1066</a>)</li>
<li><a
href="80dfe876a7"><code>80dfe87</code></a>
Validate RSA-key size (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1065">#1065</a>)</li>
<li><a
href="3f4dca4442"><code>3f4dca4</code></a>
Fix jitterentropy build failure caused by <code>cc</code> crate CFLAGS
handling change (...</li>
<li><a
href="b60cc41529"><code>b60cc41</code></a>
Implement HMAC <code>sign_to_buffer</code> (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1058">#1058</a>)</li>
<li><a
href="6996ba65a3"><code>6996ba6</code></a>
Update licensing (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1062">#1062</a>)</li>
<li><a
href="c0d4bcba38"><code>c0d4bcb</code></a>
Unify sys-crate build scripts (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/995">#995</a>)</li>
<li><a
href="ef19ea3832"><code>ef19ea3</code></a>
docs: improve dev-tests-only documentation and docs.rs rendering (<a
href="https://redirect.github.com/aws/aws-lc-rs/issues/1054">#1054</a>)</li>
<li>See full diff in <a
href="https://github.com/aws/aws-lc-rs/compare/v1.16.1...v1.16.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aws-lc-rs&package-manager=cargo&previous-version=1.16.1&new-version=1.16.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-20 07:43:23 +00:00
Josh Matthews
3d25895caf Update wayland crates. (#43299)
Updates the wayland crates and adds a new exemption for the quick-xml
duplication. This prevents dependabot opening a PR every day for these
crates which can never be merged.

Closes: #43294

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2026-03-16 03:30:36 +00:00
Jonathan Schwender
fca0a2555e deny.toml: Clarify time-rs CVE. (#43148)
The CVE doesn't impact us, so we can ignore it safely. This improves the
comment above the ignored entry in deny.toml. We test our own code via
`clippy` and we aren't using the vulnerable type. Our dependencies could
in theory use it, but that seems rather unlikely.

Testing: test-tidy is tested in CI.

---------

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2026-03-11 09:42:41 +00:00
Alice
2ca69d3576 Bump accesskit version and patch egui to use updated accesskit (#42402)
We need to bump the accesskit version in order to use
[subtrees](https://docs.rs/accesskit/latest/accesskit/struct.Node.html#method.tree_id),
which are required to join the servo tree into the embedder tree.
We need to patch egui for servoshell, as we're waiting for them to land
the patch bumping their version of accesskit.
Once https://github.com/emilk/egui/pull/7850 lands and a new version of
egui is pushed out, we'll be able to remove the patch.

Testing: No tests.
Fixes: Part of #4344

Signed-off-by: Alice Boxhall <alice@igalia.com>
2026-02-20 03:01:44 +00:00
Euclid Ye
cad0ded8b3 deps: Deduplicate futures, disable features & improve consistency (#42678)
- Remove deps on `futures@0.1.31`. Update deny
- Remove `compat` features of futures. This is not used anywhere and
introduces duplication.
- Move deps to root. Fix weird field like `futures = { version = "0.3",
package = "futures" }`. Use 0.3 instead of minor version as recommended
by
[README](https://github.com/rust-lang/futures-rs/tree/master/futures-executor#readme)
- Use workspace version for sha2
- Update `futures` & `futures-executor` to 0.3.32
- Disable default features of `futures`: this decreases binary size by
12KB in release.

Testing: Existing UT.

---------

Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2026-02-17 08:19:00 +00:00
Euclid Ye
10209cc183 deny: Skip GHSA-r6v5-fh4h-64xc to unblock CI (#42392)
Unblock the CI.

We cannot upgrade time right now due to MSRV.
This thing has high attack complexity.

Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2026-02-06 08:50:27 +00:00
Martin Robinson
1db3ad5bd4 fonts: Port macOS font code to use objc2-* crates (#41711)
This change moves Servo's macOS font code away from using our homegrown
`core-*` crates and toward the more general-purpose `objc2-*` crates.
Development of these crates is more active and they use automatic code
generation to have more complete coverage of the relevant platform APIs.
In
addition, this means that it is easier to understand Servo's code if you
are familiar with the platform APIs as the `objc2` crate are a more
direct Rust wrapper over them. In comparison, our wrappers had more
batteries-included behavior that was less flexible.

This change:
- is the first step toward more flexible font fallback on macOS (#41426)
- means we can now remove our manually FFI bindings for font variation
code.

Testing: This should not change behavior and macOS is currently untested
via WPT on the Ci.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2026-02-05 20:55:47 +00:00
Taym Haddadi
b18d119261 fetch: implement multipart/form-data parsing for Request::formData() (#42041)
Testing: More test passed in `fetch/api/abort/request.any.js.ini`

fixes: #25106

---------

Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
2026-02-03 23:31:41 +00:00
Euclid Ye
e137bec9cc deny: Ignore GHSA-hcp2-x6j4-29j7 to unblock CI. (#42203)
This vulnerability is just issued 3 hours ago. It is patched in
>=0.1.0-rc.3, but we tried last week: it takes significant effort to
upgrade:
https://github.com/servo/servo/pull/42120#issuecomment-3793543197

Given that it blocks the CI, no exploit is known yet, and the high
attack complexity, we should ignore it for now.

---------

Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2026-01-28 03:28:38 +00:00
dependabot[bot]
03ea3a3d74 build(deps): bump gilrs-core from 0.6.6 to 0.6.7 (#41874)
Bumps [gilrs-core](https://gitlab.com/gilrs-project/gilrs) from 0.6.6 to
0.6.7.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://gitlab.com/gilrs-project/gilrs/commits/master">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gilrs-core&package-manager=cargo&previous-version=0.6.6&new-version=0.6.7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2026-01-13 05:26:35 +00:00
Mukilan Thiyagarajan
688691609e mach: Upgrade cargo-deny and report unknown errors in test-tidy (#41853)
The versions of `cargo-deny` older than 0.18.6 have a bug which causes
the executions of `cargo-deny check` to prematurely fail when reading
the advisory db
(https://github.com/EmbarkStudios/cargo-deny/issues/804).

This error is ignored by `test-tidy` since the error message doesn't
have the expected JSON fields, causing `test-tidy` to succeed even when
there are valid issues in `deny.toml` or `Cargo.lock`.

So upgrade the `cargo-deny` version installed by `mach` to be the latest
version and ensure that at least the version with the fix is installed
on the system. Also fix the `test-tidy` code to always fail when the
exit code from `cargo-deny` is non-zero.

This patch also updates `deny.toml` to include exceptions to allow
`./mach test-tidy` to pass. Some of these need to be investigated
separately from this change.

Fixes #41845.
Fixes #38945.

Testing: Tested locally on NixOS.

---------

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2026-01-12 11:43:28 +00:00
Euclid Ye
e1e4462bc4 lint: Update deny.toml (#41846)
`quick-xml` is no longer duplicated. Checking rest later.

Fixes: The case reported in #41845, but not the issue itself.

Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2026-01-12 06:53:34 +00:00
Narfinger
ed02764ac9 Base: Remove unneded cargo deny entries (#41778)
These entries are not needed anymore so they can be removed.

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>


Testing: ./mach test-tidy still works.

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2026-01-08 18:29:20 +00:00
Kingsley Yung
df9877a94c script: Implement import key operations of ML-DSA (#41628)
Start adding ML-DSA support to WebCrypto API.

This patch implements the import key operations of ML-DSA, with `ml-dsa`
crate.

Specification:
https://wicg.github.io/webcrypto-modern-algos/#ml-dsa-operations-import-key

Testing:
- Pass some WPT tests that were expected to fail.
- Some new FAIL expectations are added. They were skipped by WPT when
the import key operations of ML-DSA had not been implemented, and
requires other not-yet-implemented operations to pass.

Fixes: Part of #41626

Signed-off-by: Kingsley Yung <kingsley@kkoyung.dev>
2026-01-02 09:59:00 +00:00
Narfinger
44f3f34f88 net: Implement eviction in the HTTP cache using quick_cache (#40613)
This uses quick_cache to have a proper cache for http.

Previously, the http cache would just grow over the lifetime of the
servo instance. Now we use the quick_cache crate to have a cache with
proper eviction procedures.

We currently weight the entries by the number of responses for the url.
The cache size is configurable.

Testing: Tested WPT run
(https://github.com/Narfinger/servo/actions/runs/19338794789) and
websites.

---------

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: gterzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: Taym Haddadi <haddadi.taym@gmail.com>
2025-12-16 12:08:15 +00:00
Kingsley Yung
56d9e24bff script: Implement import key operation of RSA-PSS (#41157)
Start adding RSA-PSS support to WebCrypto API.

This patch implements import key operation of RSA-PSS, with `rsa` crate.

Testing:
- Pass some WPT tests that were expected to fail.
- Some new FAIL expectations are added. They were skipped by WPT when
the import key operation of RSA-PSS had not been implemented, and
requires other not-yet-implemented operations to pass.

Fixes: #34362, and part of #41113

---------

Signed-off-by: Kingsley Yung <kingsley@kkoyung.dev>
2025-12-09 15:34:01 +00:00
Martin Robinson
1e8d1cf081 Remove our macOS-only task-info crate (#41132)
This crate is just using system APIs to get the resident and virtual
memory size of the current process. We can do this directly with
`mach2`, which also allows more flexibility if we want to fetch other
values in the future.

This does require duplicating `mach2` as the version used by `gilrs` is
older. Presumably, some future release of `gilrs` will upgrade soon.

Testing: There aren't really tests for this, but I tested it manually by
running the memory reporter and ensuring that both the old and new
values were
the same.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-12-08 12:04:26 +00:00
Jonathan Schwender
92312fdb3a build(deps): Bump mozangle to 0.5.4 (#40903)
This allows removing a duplicate bindgen version.

Testing: Regular dependency bump testing

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-11-26 17:08:43 +00:00
Oriol Brufau
ffd74b9a1c deps: De-duplicate phf (#40555)
Other than upgrading phf, phf_codegen and phf_shared to 0.13, this also
upgrades html5ever, markup5ever and xml5ever to 0.36, string_cache to
0.9, and Stylo to https://github.com/servo/stylo/pull/266.

Testing: Not needed, no behavior change
Fixes: #40533

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-11-11 09:15:29 +00:00
Oriol Brufau
1d0a8b05fb Upgrade Stylo to 2025-11-01 (#40522)
This continues #39612

Changelog:
- Upstream:
b98470a5cb...d71fd89b78
- Servo fixups:
4714bab122...7481d7f7af

Stylo tracking issue: https://github.com/servo/stylo/issues/264

---------

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-11-11 02:59:38 +00:00
Oriol Brufau
35084b6889 Upgrade cssparser to version 0.36 (#40525)
Stylo PR: https://github.com/servo/stylo/pull/262

Testing: Various WPT now pass

---------

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-11-10 11:30:26 +00:00
Sam
6e9ef7673c chore: Update mozjs to remove cargo_metadata (#40342)
With https://github.com/servo/mozjs/pull/639 we use vendored icu_capi
headers, thus we removed cargo_metadata. Offline builds should now work.

Testing: Done in mozjs

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-11-01 12:43:32 +00:00
Sam
427866f3df cargo: Update linebender crates (#40181)
Bump various linebender crates (most importantly kurbo and peniko). We
will now use released versions of both vello and vello_cpu.
Unfortunately new kurbo is not yet in svgtypes (on which we depends via
usvg), so for now we need to duplicate it, but all in all I still think
this bump is worth it.

This PR is mostly mechanical. I will do follow up to better use new
peniko/kurbo options.

Testing: It should be covered by existing WPT tests
try run: https://github.com/sagudev/servo/actions/runs/18817103076

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-10-26 12:43:00 +00:00
Ashwin Naren
7ef5b1c50c Revert "blurmac: Update objc2 to 0.4.1 (#40113)" (#40145)
Fixes #40142. I'll redo the update with testing this time.

Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
2025-10-24 23:46:25 +00:00
Ashwin Naren
0e297de3b4 blurmac: Update objc2 to 0.4.1 (#40113)
Bumps from 0.2.0 to 0.4.0, we have to temporarily duplicate
`objc2-encode`, but the next PR will finish the upgrade and unduplicate
that dependency.

Testing: No functionality changed, only a refactor

Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
2025-10-23 23:56:05 +00:00
Mukilan Thiyagarajan
4a0aa2859b cargo-deny: add exceptions for 'unic-*' crates. (#40058)
These crates are now marked as 'unmaintained' and cause `test-tidy` to
fail on CI. They are pulled in by the `urlpattern 0.3` crate which needs
to be upgraded to `0.4` but that is blocked to the duplication of some
icu4x crates (which need to be upgraded to 2.0) and a few other crates.

Testing:  No testing needed.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2025-10-21 14:49:53 +00:00
dependabot[bot]
86ae029d7b build(deps): bump the tungstenite-related group with 2 updates (#40017)
Bumps the tungstenite-related group with 2 updates:
[async-tungstenite](https://github.com/sdroege/async-tungstenite) and
[tungstenite](https://github.com/snapview/tungstenite-rs).

Updates `async-tungstenite` from 0.29.1 to 0.31.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sdroege/async-tungstenite/blob/main/CHANGELOG.md">async-tungstenite's
changelog</a>.</em></p>
<blockquote>
<h2>[0.31.0] - 2025-08-09</h2>
<h3>Changed</h3>
<ul>
<li><code>WebSocketSender::send()</code> and <code>close()</code>
require a mutable reference now.</li>
</ul>
<h2>[0.30.0] - 2025-07-15</h2>
<h3>Changed</h3>
<ul>
<li>Update to tungstenite 0.27.</li>
<li>Update to webpki-roots to 1.0.</li>
<li>Update to glib / gio 0.21.</li>
</ul>
<h3>Added</h3>
<ul>
<li>Add support for splitting a <code>WebSocketStream</code> into a
sender and receiver
type without making use of the future's <code>Sink</code> trait, and
re-combining them
again into a single value.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c3bba9cb11"><code>c3bba9c</code></a>
Release 0.31.0</li>
<li><a
href="caa815be80"><code>caa815b</code></a>
Make <code>WebSocketSender</code> methods take <code>&amp;mut
self</code></li>
<li><a
href="782ad71bdc"><code>782ad71</code></a>
Hide internal state in <code>Debug</code> for
<code>ByteWriter</code></li>
<li><a
href="5241a19e25"><code>5241a19</code></a>
Add closing state for <code>ByteWriter</code></li>
<li><a
href="e05133a217"><code>e05133a</code></a>
Remove <code>futures-03-sink</code> feature flag for
<code>ByteWriter</code></li>
<li><a
href="5419857734"><code>5419857</code></a>
Update CHANGELOG.md for 0.30.0</li>
<li><a
href="2af272de75"><code>2af272d</code></a>
Update version to 0.30.0</li>
<li><a
href="17b8f87c71"><code>17b8f87</code></a>
Update various dependencies</li>
<li><a
href="ee47b7ecf2"><code>ee47b7e</code></a>
Add <code>reunite</code> and <code>is_pair_of</code> methods</li>
<li><a
href="f4f78cd57c"><code>f4f78cd</code></a>
Add <code>concurrent_send</code> test</li>
<li>Additional commits viewable in <a
href="https://github.com/sdroege/async-tungstenite/compare/0.29.1...0.31.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `tungstenite` from 0.26.2 to 0.27.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/snapview/tungstenite-rs/blob/master/CHANGELOG.md">tungstenite's
changelog</a>.</em></p>
<blockquote>
<h1>0.27.0</h1>
<ul>
<li>Fix large message read performance by enforcing max
<code>read_buffer_size</code> read chunks.</li>
<li>Make <code>Hash</code> implementation consistent for
<code>Utf8Bytes</code> payloads.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3ffeb33e29"><code>3ffeb33</code></a>
Prepare 0.27.0 release</li>
<li><a
href="5e15390029"><code>5e15390</code></a>
When reading avoid over-reserving the in the case WouldBlock causes
multiple ...</li>
<li><a
href="d8b45ee3e7"><code>d8b45ee</code></a>
Add end to end &quot;send+recv&quot; benchmarks (<a
href="https://redirect.github.com/snapview/tungstenite-rs/issues/497">#497</a>)</li>
<li><a
href="f20436ca16"><code>f20436c</code></a>
Update src/protocol/frame/frame.rs</li>
<li><a
href="e4fb204fb0"><code>e4fb204</code></a>
Don't allow zero <code>in_buf_max_read</code></li>
<li><a
href="1dc706ced6"><code>1dc706c</code></a>
Fix large message read performance by enforcing max
<code>read_buffer_size</code> read c...</li>
<li><a
href="255aaa2c0c"><code>255aaa2</code></a>
add more details for utf8 errors for debugging</li>
<li><a
href="75b59d9792"><code>75b59d9</code></a>
Implement <code>From\&lt;Bytes&gt;</code> for <code>Message</code></li>
<li><a
href="56d758bebd"><code>56d758b</code></a>
fix(Utf8Bytes): hash consistency for Borrow + Hash traits</li>
<li>See full diff in <a
href="https://github.com/snapview/tungstenite-rs/compare/v0.26.2...v0.27.0">compare
view</a></li>
</ul>
</details>
<br />


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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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>
Signed-off-by: Euclid Ye <euclid.ye@huawei.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <euclid.ye@huawei.com>
2025-10-20 11:19:49 +00:00
Martin Robinson
c776475b3b Remove Servo's wrapper around rand (#39979)
This wrapper was added in order to eliminate the number of file
descriptors used accessing `/dev/urandom`, but these days `osrandom` and
by proxy `rand` will try to use `getrandom` on Linux and similar system
APIs on other platforms [^1].

This is a trial balloon for removing the wrapper, since almost all
modern Linux systems have `getrandom`  (available since Linux
3.17).

[^1]: https://docs.rs/getrandom/0.3.4/getrandom/#supported-targets

Testing: Should not change observable behavior (only in random ways), so
should
be covered by WPT tests.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-10-18 13:54:20 +00:00
dependabot[bot]
4066111c25 build(deps): bump tokio from 1.46.1 to 1.48.0 (#39910)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.46.1 to 1.48.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tokio/releases">tokio's
releases</a>.</em></p>
<blockquote>
<h2>Tokio v1.48.0</h2>
<h1>1.48.0 (October 14th, 2025)</h1>
<p>The MSRV is increased to 1.71.</p>
<h3>Added</h3>
<ul>
<li>fs: add <code>File::max_buf_size</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7594">#7594</a>)</li>
<li>io: export <code>Chain</code> of <code>AsyncReadExt::chain</code>
(<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7599">#7599</a>)</li>
<li>net: add <code>SocketAddr::as_abstract_name</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7491">#7491</a>)</li>
<li>net: add <code>TcpStream::quickack</code> and
<code>TcpStream::set_quickack</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7490">#7490</a>)</li>
<li>net: implement <code>AsRef&lt;Self&gt;</code> for
<code>TcpStream</code> and <code>UnixStream</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7573">#7573</a>)</li>
<li>task: add <code>LocalKey::try_get</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7666">#7666</a>)</li>
<li>task: implement <code>Ord</code> for <code>task::Id</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7530">#7530</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>deps: bump windows-sys to version 0.61 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7645">#7645</a>)</li>
<li>fs: preserve <code>max_buf_size</code> when cloning a
<code>File</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7593">#7593</a>)</li>
<li>macros: suppress <code>clippy::unwrap_in_result</code> in
<code>#[tokio::main]</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7651">#7651</a>)</li>
<li>net: remove <code>PollEvented</code> noise from Debug formats (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7675">#7675</a>)</li>
<li>process: upgrade <code>Command::spawn_with</code> to use
<code>FnOnce</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7511">#7511</a>)</li>
<li>sync: remove inner mutex in <code>SetOnce</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7554">#7554</a>)</li>
<li>sync: use <code>UnsafeCell::get_mut</code> in
<code>Mutex::get_mut</code> and <code>RwLock::get_mut</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7569">#7569</a>)</li>
<li>time: reduce the generated code size of
<code>Timeout&lt;T&gt;::poll</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7535">#7535</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>macros: fix hygiene issue in <code>join!</code> and
<code>try_join!</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7638">#7638</a>)</li>
<li>net: fix copy/paste errors in udp peek methods (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7604">#7604</a>)</li>
<li>process: fix error when runtime is shut down on nightly-2025-10-12
(<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7672">#7672</a>)</li>
<li>runtime: use release ordering in <code>wake_by_ref()</code> even if
already woken (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7622">#7622</a>)</li>
<li>sync: close the <code>broadcast::Sender</code> in
<code>broadcast::Sender::new()</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7629">#7629</a>)</li>
<li>sync: fix implementation of unused <code>RwLock::try_*</code>
methods (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7587">#7587</a>)</li>
</ul>
<h3>Unstable</h3>
<ul>
<li>tokio: use cargo features instead of <code>--cfg</code> flags for
<code>taskdump</code> and <code>io_uring</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7655">#7655</a>,
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7621">#7621</a>)</li>
<li>fs: support <code>io_uring</code> in <code>fs::write</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7567">#7567</a>)</li>
<li>fs: support <code>io_uring</code> with <code>File::open()</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7617">#7617</a>)</li>
<li>fs: support <code>io_uring</code> with <code>OpenOptions</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7321">#7321</a>)</li>
<li>macros: add <code>local</code> runtime flavor (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7375">#7375</a>,
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7597">#7597</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>io: clarify the zero capacity case of
<code>AsyncRead::poll_read</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7580">#7580</a>)</li>
<li>io: fix typos in the docs of <code>AsyncFd</code> readiness guards
(<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7583">#7583</a>)</li>
<li>net: clarify socket gets closed on drop (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7526">#7526</a>)</li>
<li>net: clarify the behavior of <code>UCred::pid()</code> on Cygwin (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7611">#7611</a>)</li>
<li>net: clarify the supported platform of <code>set_reuseport()</code>
and <code>reuseport()</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7628">#7628</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="556820ff84"><code>556820f</code></a>
chore: prepare Tokio v1.48.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7677">#7677</a>)</li>
<li><a
href="fd1659a052"><code>fd1659a</code></a>
chore: prepare tokio-macros v2.6.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7676">#7676</a>)</li>
<li><a
href="53e8acac64"><code>53e8aca</code></a>
ci: update nightly version to 2025-10-12 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7670">#7670</a>)</li>
<li><a
href="9e5527d1d5"><code>9e5527d</code></a>
process: fix error when runtime is shut down on nightly-2025-10-12 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7672">#7672</a>)</li>
<li><a
href="25a24de0e6"><code>25a24de</code></a>
net: remove PollEvented noise from Debug formats (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7675">#7675</a>)</li>
<li><a
href="c1fa25f300"><code>c1fa25f</code></a>
task: clarify the behavior of several <code>spawn_local</code> methods
(<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7669">#7669</a>)</li>
<li><a
href="e7e02fcf0f"><code>e7e02fc</code></a>
fs: use <code>FileOptions</code> inside <code>fs::File</code> to support
uring (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7617">#7617</a>)</li>
<li><a
href="f7a7f62959"><code>f7a7f62</code></a>
ci: remove cargo-deny Unicode-DFS-2016 license exception config (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7619">#7619</a>)</li>
<li><a
href="d1f1499f63"><code>d1f1499</code></a>
tokio: use cargo feature for taskdump support instead of cfg (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7655">#7655</a>)</li>
<li><a
href="ad6f618952"><code>ad6f618</code></a>
runtime: clarify the behavior of <code>Handle::block_on</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7665">#7665</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/tokio/compare/tokio-1.46.1...tokio-1.48.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tokio&package-manager=cargo&previous-version=1.46.1&new-version=1.48.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2025-10-16 04:46:22 +00:00
Alex Touchet
56b806b129 Update getrandom and deduplicate wasi (#39882)
Update getrandom and deduplicate wasi.

Testing: No tests for dependency update.

Signed-off-by: Alex Touchet <26315797+atouchet@users.noreply.github.com>
2025-10-15 04:37:21 +00:00
Martin Robinson
a77d03998c deps: Upgrade to WebRender 0.68 (#39687)
This is the latest release of WebRender that will be based on a recent
version of WebRender from the Gecko repository.

Testing: This should not change Servo's behavior and is thus covered
by existing tests.
Fixes: https://github.com/servo/webrender/issues/4875

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-10-08 07:26:48 +00:00
dependabot[bot]
54ba027db6 build(deps): bump gilrs-core from 0.6.4 to 0.6.5 (#39424)
Bumps [gilrs-core](https://gitlab.com/gilrs-project/gilrs) from 0.6.4 to
0.6.5.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e07b360284"><code>e07b360</code></a>
Prepare for gilrs-core 0.6.5</li>
<li><a
href="4b074c18cf"><code>4b074c1</code></a>
Update nix</li>
<li><a
href="583ad9b658"><code>583ad9b</code></a>
core: Expand <code>windows</code> version range to include
<code>0.62</code> release</li>
<li><a
href="f165d80b62"><code>f165d80</code></a>
Fix new Jitter comment</li>
<li><a
href="9490be58ad"><code>9490be5</code></a>
refactor: fixed some inconsistencies</li>
<li><a
href="e27689dda8"><code>e27689d</code></a>
add fallback warning for no uuid found</li>
<li>See full diff in <a
href="https://gitlab.com/gilrs-project/gilrs/compare/gilrs-core-v0.6.4...gilrs-core-v0.6.5">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gilrs-core&package-manager=cargo&previous-version=0.6.4&new-version=0.6.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2025-09-22 01:43:03 +00:00
Martin Robinson
020b82e1fe profile: Remove integration with Instruments.app "Points of Interest" (#39354)
This changes removes the integration with Instruments.app "Points of
Interest" track for a variety of reasons:

 - This functionality is made somewhat redundant by Servo's support for
   Perfetto traces.
 - This functionality depends on the `signpost` crate which hasn't seen
   activity for 9 years and only supports macOS.

Testing: This removes some functionality that is only observable via
Instruments.app, so testing it is difficult.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-09-18 02:37:00 +00:00
dependabot[bot]
07c3f32947 build(deps): bump proc-macro-crate from 3.3.0 to 3.4.0 (#39339)
Bumps [proc-macro-crate](https://github.com/bkchr/proc-macro-crate) from
3.3.0 to 3.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/bkchr/proc-macro-crate/releases">proc-macro-crate's
releases</a>.</em></p>
<blockquote>
<h2>v3.4.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Update documentation for crate_name by <a
href="https://github.com/thesamet"><code>@​thesamet</code></a> in <a
href="https://redirect.github.com/bkchr/proc-macro-crate/pull/60">bkchr/proc-macro-crate#60</a></li>
<li>chore: upgrade toml_edit version by <a
href="https://github.com/tisonkun"><code>@​tisonkun</code></a> in <a
href="https://redirect.github.com/bkchr/proc-macro-crate/pull/61">bkchr/proc-macro-crate#61</a></li>
<li>Release 3.4.0 by <a
href="https://github.com/bkchr"><code>@​bkchr</code></a> in <a
href="https://redirect.github.com/bkchr/proc-macro-crate/pull/62">bkchr/proc-macro-crate#62</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/thesamet"><code>@​thesamet</code></a>
made their first contribution in <a
href="https://redirect.github.com/bkchr/proc-macro-crate/pull/60">bkchr/proc-macro-crate#60</a></li>
<li><a href="https://github.com/tisonkun"><code>@​tisonkun</code></a>
made their first contribution in <a
href="https://redirect.github.com/bkchr/proc-macro-crate/pull/61">bkchr/proc-macro-crate#61</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/bkchr/proc-macro-crate/compare/v3.3.0...v3.4.0">https://github.com/bkchr/proc-macro-crate/compare/v3.3.0...v3.4.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0f9a4ec5e9"><code>0f9a4ec</code></a>
Merge pull request <a
href="https://redirect.github.com/bkchr/proc-macro-crate/issues/62">#62</a>
from bkchr/release-3.4.0</li>
<li><a
href="84b5df71ee"><code>84b5df7</code></a>
Release 3.4.0</li>
<li><a
href="dfcec81852"><code>dfcec81</code></a>
Merge pull request <a
href="https://redirect.github.com/bkchr/proc-macro-crate/issues/61">#61</a>
from tisonkun/upgrade-toml</li>
<li><a
href="e32fd5f155"><code>e32fd5f</code></a>
chore: upgrade toml_edit version</li>
<li><a
href="e49826c9d3"><code>e49826c</code></a>
chore: run fmt</li>
<li><a
href="4f0990ee20"><code>4f0990e</code></a>
Merge pull request <a
href="https://redirect.github.com/bkchr/proc-macro-crate/issues/60">#60</a>
from thesamet/patch-1</li>
<li><a
href="fe80e542be"><code>fe80e54</code></a>
Update src/lib.rs</li>
<li><a
href="e4887bf9f6"><code>e4887bf</code></a>
Update documentation for crate_name</li>
<li>See full diff in <a
href="https://github.com/bkchr/proc-macro-crate/compare/v3.3.0...v3.4.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=proc-macro-crate&package-manager=cargo&previous-version=3.3.0&new-version=3.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2025-09-17 13:48:01 +00:00
Martin Robinson
6deb42dbd5 servoshell: Switch from winres to winresources (#39344)
`winres` is unmaintained and it seems like `winresoures` is the
successor.

Testing: This should not have any behavior changes and just modifies
a build step, so shouldn't need tests.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-09-17 08:04:45 +00:00
Wu Yuwei
a0c3dcefe4 chore: update wgpu to v26 (#39016)
Vello has updated to wgpu v26 recently. It might be a good time for
servo to update as well. This PR should wait for #39015 and #38717

Testing: WebGPU CTS
Fixes: None

---------

Signed-off-by: Wu Yu Wei <yuweiwu@pm.me>
2025-09-14 04:09:17 +00:00
dependabot[bot]
722b0de8d8 build(deps): bump zbus from 5.9.0 to 5.11.0 (#39239)
Bumps [zbus](https://github.com/dbus2/zbus) from 5.9.0 to 5.11.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dbus2/zbus/releases">zbus's
releases</a>.</em></p>
<blockquote>
<h2>🔖 zbus 5.11.0</h2>
<ul>
<li> API to specify timeouts for method calls. Add a way to specify an
timeout for method calls. If
set, the method calls will timeout after the specified duration,
returning an error. This can be
used to handle the issues with non-answering D-Bus services.</li>
<li>🩹 Add <code>connection::socket::Split::new</code> method, allowing
<code>Socket</code> trait impls outside zbus.</li>
<li>📝 Mention receive_X_changes in <code>proxy</code> docs.</li>
</ul>
<h2>🔖 zbus 5.10.0</h2>
<ul>
<li> Property stream will now first yield the current value.</li>
<li>🐛 Fall back to no groups rather than erroring out for peer
creds.</li>
<li>📝 Fix wrong documentation in blocking <code>Proxy</code>
methods.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="edd9a3c3d3"><code>edd9a3c</code></a>
Merge pull request <a
href="https://redirect.github.com/dbus2/zbus/issues/1494">#1494</a> from
zeenix/prep-zb-5.11</li>
<li><a
href="ee3fb1b4f7"><code>ee3fb1b</code></a>
🔖 zb,zm: Release 5.11.0</li>
<li><a
href="9f85ee4b3d"><code>9f85ee4</code></a>
 zb: Much shorter timeout in method timeout test</li>
<li><a
href="000039a7d8"><code>000039a</code></a>
♻️ zb: Micro simplification</li>
<li><a
href="dbd853e3be"><code>dbd853e</code></a>
⬆️ micro: Update chrono to v0.4.42 (<a
href="https://redirect.github.com/dbus2/zbus/issues/1493">#1493</a>)</li>
<li><a
href="bd4d5c722e"><code>bd4d5c7</code></a>
Merge pull request <a
href="https://redirect.github.com/dbus2/zbus/issues/1491">#1491</a> from
dbus2/security-policy</li>
<li><a
href="29825e74cc"><code>29825e7</code></a>
🔒️ Add comprehensive security policy</li>
<li><a
href="e46151c9ad"><code>e46151c</code></a>
Merge pull request <a
href="https://redirect.github.com/dbus2/zbus/issues/1477">#1477</a> from
sergeyfd/main</li>
<li><a
href="979f5f9030"><code>979f5f9</code></a>
 zb: API to specify timeouts for method calls</li>
<li><a
href="442063d295"><code>442063d</code></a>
⬆️ micro: Update time to v0.3.43 (<a
href="https://redirect.github.com/dbus2/zbus/issues/1490">#1490</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/dbus2/zbus/compare/zbus-5.9.0...zbus-5.11.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=zbus&package-manager=cargo&previous-version=5.9.0&new-version=5.11.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <yezhizhenjiakang@gmail.com>
2025-09-11 07:43:35 +00:00
Sam
d67a7bad39 cargo: Ignore advisory for deprecated crate 'fxhash' (#39174)
Unblock CI, we will do migration slowly (because stylo).

Signed-off-by: Sam <16504129+sagudev@users.noreply.github.com>
2025-09-05 20:55:17 +00:00
dependabot[bot]
0d58c2be76 build(deps): bump windows-sys from 0.59.0 to 0.61.0 (#39156)
Bumps [windows-sys](https://github.com/microsoft/windows-rs) from 0.59.0
to 0.61.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/microsoft/windows-rs/releases">windows-sys's
releases</a>.</em></p>
<blockquote>
<h2>61</h2>
<p>Major crate updates:</p>
<ul>
<li><code>windows</code> 0.59.0</li>
<li><code>windows-core</code> 0.59.0
<ul>
<li><code>windows-implement</code> 0.59.0</li>
<li><code>windows-interface</code> 0.59.0</li>
</ul>
</li>
<li><code>windows-targets</code> 0.53.0
<ul>
<li><code>windows_i686_msvc</code> 0.53.0</li>
<li><code>windows_x86_64_msvc</code> 0.53.0</li>
<li><code>windows_aarch64_msvc</code> 0.53.0</li>
<li><code>windows_i686_gnu</code> 0.53.0</li>
<li><code>windows_x86_64_gnu</code> 0.53.0</li>
<li><code>windows_i686_gnullvm</code> 0.53.0</li>
<li><code>windows_x86_64_gnullvm</code> 0.53.0</li>
<li><code>windows_aarch64_gnullvm</code> 0.53.0</li>
</ul>
</li>
<li><code>windows-bindgen</code> 0.59.0</li>
<li><code>windows-registry</code> 0.4.0</li>
<li><code>windows-result</code> 0.3.0</li>
<li><code>windows-strings</code> 0.3.0</li>
<li><code>cppwinrt</code> 0.2.0</li>
</ul>
<p>Minor crate updates:</p>
<ul>
<li><code>windows-version</code> 0.1.2</li>
</ul>
<p>Excluded:</p>
<ul>
<li><code>windows-sys</code> 0.59.0</li>
</ul>
<p>Things to keep in mind:</p>
<ul>
<li>
<p>The tag/release names no longer map directly to the crate versions,
so to <a
href="https://github.com/microsoft/windows-rs/tree/master/crates/samples">find
samples</a> for a particular release requires looking at <a
href="https://github.com/microsoft/windows-rs/releases">the releases</a>
page and finding the release that most recently updated a particular
crate.</p>
</li>
<li>
<p>The <code>windows-bindgen</code> crate includes the major code
generation overhaul that brings many improvements - be sure to check out
the PR description for more information. The resulting code gen depends
on the new version of <code>windows-core</code> and its dependencies,
unless you include the <code>--sys</code> option. <a
href="https://redirect.github.com/microsoft/windows-rs/issues/3359">#3359</a></p>
</li>
<li>
<p>The <code>cppwinrt</code> crate constitutes a major update due to
streamlining the error handling. <a
href="https://redirect.github.com/microsoft/windows-rs/issues/3415">#3415</a></p>
</li>
<li>
<p>The <code>windows-registry</code>, <code>windows-strings,</code> and
<code>windows-result</code> crates are also major version updates since
they include small breaking changes.</p>
</li>
<li>
<p>The <code>windows-targets</code> crate finally receives a major
version update, the first in over a year. This is due to <a
href="https://redirect.github.com/microsoft/windows-rs/issues/3359">#3359</a>
and <a
href="https://redirect.github.com/microsoft/windows-rs/issues/3342">#3342</a>
potentially introducing breaking changes. Although unlikely, these
updates introduced sufficient changes that make it hard to ensure that
the <code>windows-targets</code> libs don't break existing code. As
we're updating <code>windows-targets</code> anyway, I took the liberty
to bump the MSRV to 1.60 - to match the latest version of
<code>windows-sys</code> - and remove the old but unused doc macro
feature. Both remained for compatibility with very old dependents of the
<code>windows-targets</code> crate.</p>
</li>
<li>
<p>The <code>windows-version</code> crate receives a minor update to
update its dependency on the <code>windows-targets</code> crate.</p>
</li>
<li>
<p>Beyond these specifics, this update is the culmination of around 6
months worth of work on the <code>windows-rs</code> project. The biggest
improvements comes from the new code generation engine, but many other
improvements are now also available for production. This includes
support for many new lints, warnings, and suggestions provided by the
Rust toolchain; much smaller code gen thanks to deriving many more
traits; more efficient code gen; major improvements to WinRT type system
and implementation support; more robust and consistent error handling;
stock collection and async support; improved support for class
hierarchies; and much more!</p>
</li>
</ul>
<p>In addition to &quot;what's changed&quot; below, check out what's
changed for notes for <a
href="https://github.com/microsoft/windows-rs/releases/tag/0.60.0">0.60.0</a>
and <a
href="https://github.com/microsoft/windows-rs/releases/tag/0.59.0">0.59.0</a>
for additional changes that roll up to the crates published as part of
this release.</p>
<h2>What's Changed</h2>
<ul>
<li>Remove improper_ctypes workaround by <a
href="https://github.com/ChrisDenton"><code>@​ChrisDenton</code></a> in
<a
href="https://redirect.github.com/microsoft/windows-rs/pull/3296">microsoft/windows-rs#3296</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5888c8c472"><code>5888c8c</code></a>
Release 0.61.0 (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3418">#3418</a>)</li>
<li><a
href="9911fee2a9"><code>9911fee</code></a>
Improve feature search UX, add dark mode, and update deps (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3422">#3422</a>)</li>
<li><a
href="eed74532cd"><code>eed7453</code></a>
Update GitHub Actions runners (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3423">#3423</a>)</li>
<li><a
href="284f18906a"><code>284f189</code></a>
Avoid <code>transmute</code> where possible (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3421">#3421</a>)</li>
<li><a
href="b35dfd1470"><code>b35dfd1</code></a>
Update web workflow to use external origin (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3420">#3420</a>)</li>
<li><a
href="3566fca8c5"><code>3566fca</code></a>
Fix provenance in direct32 sample (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3419">#3419</a>)</li>
<li><a
href="382ea566c2"><code>382ea56</code></a>
Use <code>track_caller</code> to make debugging <code>cppwinrt</code>
build script errors easier (#...</li>
<li><a
href="f09c13292a"><code>f09c132</code></a>
Shorten sample crate names (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3416">#3416</a>)</li>
<li><a
href="5e8ce09c70"><code>5e8ce09</code></a>
<code>cppwinrt</code> should consistently panic on failure (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3415">#3415</a>)</li>
<li><a
href="d02c977dc8"><code>d02c977</code></a>
Detect unsupported array parameters (<a
href="https://redirect.github.com/microsoft/windows-rs/issues/3402">#3402</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/microsoft/windows-rs/compare/0.59.0...0.61.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=windows-sys&package-manager=cargo&previous-version=0.59.0&new-version=0.61.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Euclid Ye <euclid.ye@huawei.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <euclid.ye@huawei.com>
2025-09-05 10:52:17 +00:00
dependabot[bot]
4a4a615eb7 build(deps): bump tracing-subscriber from 0.3.19 to 0.3.20 (#39030)
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing) from
0.3.19 to 0.3.20.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tracing/releases">tracing-subscriber's
releases</a>.</em></p>
<blockquote>
<h2>tracing-subscriber 0.3.20</h2>
<p><strong>Security Fix</strong>: ANSI Escape Sequence Injection
(CVE-TBD)</p>
<h2>Impact</h2>
<p>Previous versions of tracing-subscriber were vulnerable to ANSI
escape sequence injection attacks. Untrusted user input containing ANSI
escape sequences could be injected into terminal output when logged,
potentially allowing attackers to:</p>
<ul>
<li>Manipulate terminal title bars</li>
<li>Clear screens or modify terminal display</li>
<li>Potentially mislead users through terminal manipulation</li>
</ul>
<p>In isolation, impact is minimal, however security issues have been
found in terminal emulators that enabled an attacker to use ANSI escape
sequences via logs to exploit vulnerabilities in the terminal
emulator.</p>
<h2>Solution</h2>
<p>Version 0.3.20 fixes this vulnerability by escaping ANSI control
characters in when writing events to destinations that may be printed to
the terminal.</p>
<h2>Affected Versions</h2>
<p>All versions of tracing-subscriber prior to 0.3.20 are affected by
this vulnerability.</p>
<h2>Recommendations</h2>
<p>Immediate Action Required: We recommend upgrading to
tracing-subscriber 0.3.20 immediately, especially if your
application:</p>
<ul>
<li>Logs user-provided input (form data, HTTP headers, query parameters,
etc.)</li>
<li>Runs in environments where terminal output is displayed to
users</li>
</ul>
<h2>Migration</h2>
<p>This is a patch release with no breaking API changes. Simply update
your Cargo.toml:</p>
<pre lang="toml"><code>[dependencies]
tracing-subscriber = &quot;0.3.20&quot;
</code></pre>
<h2>Acknowledgments</h2>
<p>We would like to thank <a href="http://github.com/zefr0x">zefr0x</a>
who responsibly reported the issue at
<code>security@tokio.rs</code>.</p>
<p>If you believe you have found a security vulnerability in any
tokio-rs project, please email us at <code>security@tokio.rs</code>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4c52ca5266"><code>4c52ca5</code></a>
fmt: fix ANSI escape sequence injection vulnerability (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3368">#3368</a>)</li>
<li><a
href="f71cebe41e"><code>f71cebe</code></a>
subscriber: impl Clone for EnvFilter (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3360">#3360</a>)</li>
<li><a
href="3a1f571102"><code>3a1f571</code></a>
Fix CI (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3361">#3361</a>)</li>
<li><a
href="e63ef57f3d"><code>e63ef57</code></a>
chore: prepare tracing-attributes 0.1.30 (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3316">#3316</a>)</li>
<li><a
href="6e59a13b1a"><code>6e59a13</code></a>
attributes: fix tracing::instrument regression around shadowing (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3311">#3311</a>)</li>
<li><a
href="e4df761275"><code>e4df761</code></a>
tracing: update core to 0.1.34 and attributes to 0.1.29 (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3305">#3305</a>)</li>
<li><a
href="643f392ebb"><code>643f392</code></a>
chore: prepare tracing-attributes 0.1.29 (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3304">#3304</a>)</li>
<li><a
href="d08e7a6eea"><code>d08e7a6</code></a>
chore: prepare tracing-core 0.1.34 (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3302">#3302</a>)</li>
<li><a
href="6e70c571d3"><code>6e70c57</code></a>
tracing-subscriber: count numbers of enters in <code>Timings</code> (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/2944">#2944</a>)</li>
<li><a
href="c01d4fd9de"><code>c01d4fd</code></a>
fix docs and enable CI on <code>main</code> branch (<a
href="https://redirect.github.com/tokio-rs/tracing/issues/3295">#3295</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.19...tracing-subscriber-0.3.20">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tracing-subscriber&package-manager=cargo&previous-version=0.3.19&new-version=0.3.20)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts page](https://github.com/servo/servo/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Euclid Ye <euclid.ye@huawei.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Euclid Ye <euclid.ye@huawei.com>
2025-08-30 02:38:23 +00:00
Simon Wülker
c4dcd17214 Update image to 0.25 (#38950)
Testing: These changes should be covered by existing web platform tests
and `image`'s own test suite.

---------

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
2025-08-27 00:51:14 +00:00
Martin Robinson
01a9b317d4 deps: Upgrade surfman to 0.10.0 (#38914)
Fixes: #38902

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-08-26 07:42:23 +00:00
dependabot[bot]
71db9494bb build(deps): bump url from 2.5.3 to 2.5.6 (#38879)
Bumps [url](https://github.com/servo/rust-url) from 2.5.3 to 2.5.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/servo/rust-url/releases">url's
releases</a>.</em></p>
<blockquote>
<h2>v2.5.5</h2>
<h2>What's Changed</h2>
<ul>
<li>ci: downgrade crates when building for Rust 1.67.0 by <a
href="https://github.com/mxinden"><code>@​mxinden</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1003">servo/rust-url#1003</a></li>
<li>ci: run unit tests with sanitizers by <a
href="https://github.com/mxinden"><code>@​mxinden</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1002">servo/rust-url#1002</a></li>
<li>fix small typo by <a
href="https://github.com/hkBst"><code>@​hkBst</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1011">servo/rust-url#1011</a></li>
<li>chore: fix clippy errors on main by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1019">servo/rust-url#1019</a></li>
<li>perf: remove heap allocation in parse_query by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1020">servo/rust-url#1020</a></li>
<li>perf: slightly improve parsing a port by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1022">servo/rust-url#1022</a></li>
<li>perf: improve to_file_path() by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1018">servo/rust-url#1018</a></li>
<li>perf: make parse_scheme slightly faster by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1025">servo/rust-url#1025</a></li>
<li>update LICENSE-MIT by <a
href="https://github.com/wmjae"><code>@​wmjae</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1029">servo/rust-url#1029</a></li>
<li>perf: url encode path segments in longer string slices by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1026">servo/rust-url#1026</a></li>
<li>Disable the default features on serde by <a
href="https://github.com/rilipco"><code>@​rilipco</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1033">servo/rust-url#1033</a></li>
<li>docs: base url relative join by <a
href="https://github.com/tisonkun"><code>@​tisonkun</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1013">servo/rust-url#1013</a></li>
<li>perf: remove heap allocation in parse_host by <a
href="https://github.com/dsherret"><code>@​dsherret</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1021">servo/rust-url#1021</a></li>
<li>Update tests to Unicode 16.0 by <a
href="https://github.com/hsivonen"><code>@​hsivonen</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1045">servo/rust-url#1045</a></li>
<li>Add some some basic functions to <code>Mime</code> by <a
href="https://github.com/mrobinson"><code>@​mrobinson</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1047">servo/rust-url#1047</a></li>
<li>ran <code>cargo clippy --fix -- -Wclippy::use_self</code> by <a
href="https://github.com/mrobinson"><code>@​mrobinson</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1048">servo/rust-url#1048</a></li>
<li>Fix MSRV and clippy CI by <a
href="https://github.com/Manishearth"><code>@​Manishearth</code></a> in
<a
href="https://redirect.github.com/servo/rust-url/pull/1058">servo/rust-url#1058</a></li>
<li>Update <code>Url::domain</code> docs to show that it includes
subdomain by <a
href="https://github.com/supercoolspy"><code>@​supercoolspy</code></a>
in <a
href="https://redirect.github.com/servo/rust-url/pull/1057">servo/rust-url#1057</a></li>
<li>set_hostname should error when encountering colon ':' by <a
href="https://github.com/edgul"><code>@​edgul</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1060">servo/rust-url#1060</a></li>
<li>version bump to 2.5.5 by <a
href="https://github.com/edgul"><code>@​edgul</code></a> in <a
href="https://redirect.github.com/servo/rust-url/pull/1061">servo/rust-url#1061</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mxinden"><code>@​mxinden</code></a> made
their first contribution in <a
href="https://redirect.github.com/servo/rust-url/pull/1003">servo/rust-url#1003</a></li>
<li><a href="https://github.com/hkBst"><code>@​hkBst</code></a> made
their first contribution in <a
href="https://redirect.github.com/servo/rust-url/pull/1011">servo/rust-url#1011</a></li>
<li><a href="https://github.com/wmjae"><code>@​wmjae</code></a> made
their first contribution in <a
href="https://redirect.github.com/servo/rust-url/pull/1029">servo/rust-url#1029</a></li>
<li><a href="https://github.com/rilipco"><code>@​rilipco</code></a> made
their first contribution in <a
href="https://redirect.github.com/servo/rust-url/pull/1033">servo/rust-url#1033</a></li>
<li><a href="https://github.com/tisonkun"><code>@​tisonkun</code></a>
made their first contribution in <a
href="https://redirect.github.com/servo/rust-url/pull/1013">servo/rust-url#1013</a></li>
<li><a
href="https://github.com/supercoolspy"><code>@​supercoolspy</code></a>
made their first contribution in <a
href="https://redirect.github.com/servo/rust-url/pull/1057">servo/rust-url#1057</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/servo/rust-url/compare/v2.5.4...v2.5.5">https://github.com/servo/rust-url/compare/v2.5.4...v2.5.5</a></p>
<h2>v2.5.4</h2>
<h2>What's Changed</h2>
<ul>
<li>Revert &quot;Normalize URL paths: convert /.//p, /..//p, and //p to
p (<a
href="https://redirect.github.com/servo/rust-url/issues/943">#943</a>)&quot;
by <a href="https://github.com/valenting"><code>@​valenting</code></a>
in <a
href="https://redirect.github.com/servo/rust-url/pull/999">servo/rust-url#999</a></li>
<li>Updates the MSRV to 1.63 required though the libc v0.2.164
dependency</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/servo/rust-url/compare/v2.5.3...v2.5.4">https://github.com/servo/rust-url/compare/v2.5.3...v2.5.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/servo/rust-url/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=url&package-manager=cargo&previous-version=2.5.3&new-version=2.5.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2025-08-24 11:27:40 +00:00
Jonathan Schwender
7b4032e972 mozjs: Remove vendored icu crates (#38803)
Instead of vendoring a copy of icu_capi, mozjs now instead determines
the location of the provided c header files by parsing the cargo
metadata output.
This will allow vendoring mozjs and is a step towards publishing mozjs
and thus servo again.
Corresponding mozjs PR: https://github.com/servo/mozjs/pull/596

Testing: Covered by existing tests

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-08-21 10:13:03 +00:00
Ashwin Naren
fc3feceee5 Switch indexeddb backend to sqlite and improve IPC messaging (#38187)
- Use sqlite instead of heed. (one indexed database = one sqlite
database)
- Implement the backend for indexes
- Use keyranges where needed (as specified by the spec)
- Implement `getKey`
- Fix channel error messaging (led to a bunch of changes to how async
requests are handled)

Note: `components/net/indexeddb/engines/sqlite/serialize.rs` is unused;
I can delete it if needed.

Testing: Switching to sqlite eliminated many panics (exposing some new
failures).
Fixes: #38040

---------

Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
2025-08-16 07:27:17 +00:00