When `choco` is not available, we can install the same packages from
winget. winget is an official package manager from Microsoft, which is
available by default on Windows 11.
Note: `winget` also has non-interactive installation options, but
accepting license agreements should still be the responsibility of the
user, so we don't add any such option for now.
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix: Bootstrap on windows without `choco` available.
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
Replace the holder of actual pixel data of the ImageBitmap interface
([[BitmapData]] slot) from Vec<u8> to snapshot::Snapshot (image bitmap
with metadata).
https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface
It will allow to have all required information (e.g. size, pixel format,
alpha mode)
for further drawing processing to/from canvas2D output bitmap.
Testing: No required tests
Fixes: https://github.com/servo/servo/issues/34112
Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
In https://github.com/servo/servo/pull/36977, when transferring
`TransformStream`, `CrossRealmTransform::Writable` and
`CrossRealmTransform::Readable` are set to different message ports. The
message port will not be readable and writable at the same time when
transferring the stream, so we can now merge
`cross_realm_transform_readable` and `cross_realm_transform_writable`
into a single field `cross_realm_transform`.
Testing: WPT ([passed on try
branch](4278417951))
Fixes: https://github.com/servo/servo/issues/37084
---------
Signed-off-by: Jason Tsai <git@pews.dev>
Bumps [mio](https://github.com/tokio-rs/mio) from 1.0.3 to 1.0.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/mio/blob/master/CHANGELOG.md">mio's
changelog</a>.</em></p>
<blockquote>
<h1>1.0.4</h1>
<ul>
<li>Update windows-sys to 0.59
(<a
href="https://redirect.github.com/tokio-rs/mio/pull/1857">tokio-rs/mio#1857</a>).</li>
<li>Fix build failure of uds tests on Android
(<a
href="https://redirect.github.com/tokio-rs/mio/pull/1847">tokio-rs/mio#1847</a>).</li>
<li>Fix set nonblocking socket on AIX
(<a
href="https://redirect.github.com/tokio-rs/mio/pull/1867">tokio-rs/mio#1867</a>).</li>
<li>Emit a better error when using mio on WASM
(<a
href="https://redirect.github.com/tokio-rs/mio/pull/1856">tokio-rs/mio#1856</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/tokio-rs/mio/commits">compare view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.45.0 to 1.45.1.
<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.45.1</h2>
<h1>1.45.1 (May 24th, 2025)</h1>
<p>This fixes a regression on the wasm32-unknown-unknown target, where
code that previously did not panic due to calls to
<code>Instant::now()</code> started failing. This is due to the
stabilization of the first time-based metric.</p>
<h3>Fixed</h3>
<ul>
<li>Disable time-based metrics on wasm32-unknown-unknown (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7322">#7322</a>)</li>
</ul>
<p><a
href="https://redirect.github.com/tokio-rs/tokio/issues/7322">#7322</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/7322">tokio-rs/tokio#7322</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3768696d92"><code>3768696</code></a>
chore: prepare Tokio v1.45.1 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7359">#7359</a>)</li>
<li><a
href="421a7b001c"><code>421a7b0</code></a>
rt: do not track time-based metrics on wasm32-unknown-unknown (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7322">#7322</a>)</li>
<li><a
href="b1bdb3c57b"><code>b1bdb3c</code></a>
ci: update macros_type_mismatch for Rust 1.87.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7339">#7339</a>)</li>
<li>See full diff in <a
href="https://github.com/tokio-rs/tokio/compare/tokio-1.45.0...tokio-1.45.1">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [gpu-descriptor](https://github.com/zakarumych/gpu-descriptor)
from 0.3.1 to 0.3.2.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/zakarumych/gpu-descriptor/commits">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [cursor-icon](https://github.com/rust-windowing/cursor-icon) from
1.1.0 to 1.2.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-windowing/cursor-icon/releases">cursor-icon's
releases</a>.</em></p>
<blockquote>
<h2>Cursor icon version 1.2.0</h2>
<ul>
<li>Implement <code>Hash</code> for <code>ParseError</code>.</li>
<li>Add <code>CursorIcon::DndAsk</code> and
<code>CursorIcon::AllResize</code> from the wayland-protocols version
1.42.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-windowing/cursor-icon/blob/main/CHANGELOG.md">cursor-icon's
changelog</a>.</em></p>
<blockquote>
<h2>1.2.0</h2>
<ul>
<li>Implement <code>Hash</code> for <code>ParseError</code>.</li>
<li>Add <code>CursorIcon::DndAsk</code> and
<code>CursorIcon::AllResize</code> from the wayland-protocols version
1.42.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="766287581d"><code>7662875</code></a>
cursor-icon version 1.2.0</li>
<li><a
href="7a3f2e3d95"><code>7a3f2e3</code></a>
api: add new cursors from Wayland spec</li>
<li><a
href="97f87ed795"><code>97f87ed</code></a>
Fix typos (<a
href="https://redirect.github.com/rust-windowing/cursor-icon/issues/16">#16</a>)</li>
<li><a
href="35d512d1a3"><code>35d512d</code></a>
chore: implement <code>Hash</code> for <code>ParseError</code></li>
<li><a
href="b2471cafe3"><code>b2471ca</code></a>
chore: remove deprecated feature cargo-clippy</li>
<li>See full diff in <a
href="https://github.com/rust-windowing/cursor-icon/compare/v1.1.0...v1.2.0">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [socket2](https://github.com/rust-lang/socket2) from 0.5.9 to
0.5.10.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/socket2/blob/master/CHANGELOG.md">socket2's
changelog</a>.</em></p>
<blockquote>
<h1>0.5.10</h1>
<ul>
<li>Add cygwin support
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/568">rust-lang/socket2#568</a>,
<a
href="https://redirect.github.com/rust-lang/socket2/pull/578">rust-lang/socket2#578</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/rust-lang/socket2/commits">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pathfinder_simd](https://github.com/servo/pathfinder) from 0.5.4
to 0.5.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/servo/pathfinder/releases">pathfinder_simd's
releases</a>.</em></p>
<blockquote>
<h2>Initial preview build</h2>
<p>This is an initial preview release of Pathfinder.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/servo/pathfinder/commits">compare view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Much of the coordination of Servo development happens in the Zulip and
in the regular meetings (TSC call, Coordination meeting, Triage
meeting).
This PR adds prominent links to these places in the README so that
people can find them.
Signed-off-by: Nico Burns <nico@nicoburns.com>
Instead of only applying the theme when it changes, apply it to both
egui and all
newly created `WebView`s.
Reference Zulip thread:
520082314
Testing: There are tests for servoshell currently, so all testing is
manual.
Fixes: #34913
Signed-off-by: Tony <legendmastertony@gmail.com>
Previously, when the theme was set it was only set on currently active
`Window`s. This change makes setting the `Theme` stateful. Now the
`Constellation` tracks what theme is applied to a `WebView` and properly
passes that value to new `Pipeline`s when they are constructed. In
addition, the value is passed to layout when that is constructed as
well.
Testing: this change adds a unit test.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Requires servo/servo#37045 for deps and config.
Testing: No need for tests to test tests.
Fixes: servo/servo#37041
---------
Signed-off-by: zefr0x <zer0-x.7ty50@aleeas.com>
I'm not sure if `CodegenRust.py` was supposed to remove the underscore,
but we end up exposing `type_` to javascript which is obviously wrong.
There's no need to rename the method in the first place, because `Type`
(with a capital T) is not a rust keyword.
Testing: Covered by existing web platform tests
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Newer keywords such as `async`/`await`/`gen` were missing from the list
There are no web platform APIs with these names, but it doesn't hurt to
keep the list up to date.
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Testing: No tests, if `test-wpt` broke again then we would notice pretty
quickly.
Fixes: https://github.com/servo/servo/issues/37124
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
DomObject::global is a tricky API because it's used pervasively but has
subtle requirements that are not documented and not yet enforced by the
type system (#36116). The method returns the relevant global object for
a given DOM object, but that operation is only meaningful if there is an
active realm. We usually, but not always, have an active realm.
This change avoids a footgun by following the principle of least
surprise. Rather than making every single caller of `something.global()`
both prove that there is an active realm and think about which realm
they want active, we implement the obvious behaviour: always activate
the realm of the callee before obtaining the relevant global.
Testing: Existing WPT coverage is sufficient; this method is called all
over the codebase.
Fixes: #37070#27037
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
The initially used config is compatible with flake8 rules, including all
pycodestyle (pep8) and pyflakes rules.
Testing: Broke some python files and used `mach test-tidy --all` to test
the linting.
Fixes: servo/servo#37041
Signed-off-by: zefr0x <zer0-x.7ty50@aleeas.com>
We fail only a couple of the URLPattern tests and I think that's mostly
due to bugs in the `urlpattern` crate.
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
With this change the URLPattern API is fully implemented. I'll look into
the remaining failures and then enable the preference by default.
Testing: Covered by web platform tests
Depends on https://github.com/servo/servo/pull/37042
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Uses raycasting to determine whether point is in polygon
Testing: Added unittest
Fixes: None to my knowledge
---------
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
ImageBitmap::new always returns Ok. Simplify it by changing to return
DomRoot<ImageBitmap> directly.
The #[allow(dead_code)] seems unnecessary. This patch also removes it.
Testing: No test is needed.
Fixes: #37105
Signed-off-by: Kingsley Yung <kingsley@kkoyung.dev>
This fixes the combination of `background-attachment: fixed` and
`no-repeat`. The positioning of the background should be relative to the
viewport, so using an infinite rectangle breaks things like `center`.
I'm not sure what the original motivation of using an infinite rectangle
here
and it doesn't seem to break any tests to stop using it.
Testing: This fixes `/css/CSS2/backgrounds/background-bg-pos-206.xht`.
Fixes#37082.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
The `Column()` height and thus also the XComponent height extends beyond
the physical display for unknown reasons. This is a problem on websites
that have a footer bar, since the footer is partially below the display
end.
Using Flex with Column direction works as expected.
Testing: Manual inspection with DevEco Testing inspecting the height of
the children elements in ArkUI
Fixes: Part of the servoshell surface extending beyond the physical
screen on ohos
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
This allows to skip rebuilding the box tree when it's only necessary to
rebuild the stacking context tree.
Bumps Stylo to https://github.com/servo/stylo/pull/187
Testing: Unneeded (no behavior change). Just improving performance.
However, this adds a new test for dynamic changes of `z-index`, which we
were breaking in an earlier iteration of this patch.
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
According to specification ImageBitmap objects are serializable objects
and transferable objects.
https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:imagebitmap-11
Testing:
- html/canvas/element/manual/imagebitmap/*
- html/infrastructure/safe-passing-of-structured-data/*
- html/webappapis/structured-clone/*
- workers/semantics/structured-clone/*
Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
These were disabled long ago, but nowadays the intermittent filter can
ignore them when they flake. In addition, running them will allow us to
know if they are still intermittent or not since all intermittent
failures are tracked in GitHub via mentions on issues.
Testing: This is a change to test configuration.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.2.23 to 1.2.24.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/cc-rs/releases">cc's
releases</a>.</em></p>
<blockquote>
<h2>cc-v1.2.24</h2>
<h3>Other</h3>
<ul>
<li>Regenerate windows sys bindings (<a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1471">#1471</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md">cc's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/rust-lang/cc-rs/compare/cc-v1.2.23...cc-v1.2.24">1.2.24</a>
- 2025-05-23</h2>
<h3>Other</h3>
<ul>
<li>Regenerate windows sys bindings (<a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1471">#1471</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="332d31dd62"><code>332d31d</code></a>
chore: release v1.2.24 (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1472">#1472</a>)</li>
<li><a
href="77dddcae70"><code>77dddca</code></a>
Regenerate windows sys bindings (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1471">#1471</a>)</li>
<li>See full diff in <a
href="https://github.com/rust-lang/cc-rs/compare/cc-v1.2.23...cc-v1.2.24">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [weezl](https://github.com/image-rs/weezl) from 0.1.8 to 0.1.10.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/image-rs/weezl/blob/master/Changes.md">weezl's
changelog</a>.</em></p>
<blockquote>
<h2>Version 0.1.10</h2>
<ul>
<li>Reverted changes made in 0.1.9 to the behavior of the decoder under
non
libtiff-compatibility mode. Trying to read the decoder with an empty
output
buffer will at least inspect the next symbol and either error or
indicate the
end-of-stream accordingly.</li>
</ul>
<h2>Version 0.1.9 (yanked)</h2>
<ul>
<li>Increased decoding throughput by 3—30% depending on CPU and
data.</li>
<li>Added <code>{encode,decode}::Configuration</code> as builder types
for their respective
module. They can be cheaply cloned.</li>
<li>Added <code>decode::Configuration::with_yield_on_full_buffer</code>
to explicitly opt-in
to libtiff compatibility. The decoder will not read or interpret further
symbols of the decoding stream when the output buffer is full. This
enables a
caller to stop fetching symbols and elide an end of stream marker based
on
out-of-band length information. The decoder might otherwise error,
trying to
interpret data that does not belong to the stream.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fd444602c5"><code>fd44460</code></a>
Bump crate in Cargo.lock file</li>
<li><a
href="7ef0eb40ca"><code>7ef0eb4</code></a>
Release notes for 0.1.10</li>
<li><a
href="4dc5761d51"><code>4dc5761</code></a>
Merge pull request <a
href="https://redirect.github.com/image-rs/weezl/issues/49">#49</a> from
image-rs/issue-48-behavior-change-on-empty-buffer</li>
<li><a
href="9563fd8a47"><code>9563fd8</code></a>
Fix behavior difference for 0.1.9</li>
<li><a
href="cb2c8421cc"><code>cb2c842</code></a>
Merge pull request <a
href="https://redirect.github.com/image-rs/weezl/issues/47">#47</a> from
image-rs/release-0.1.9</li>
<li><a
href="6d36f9b616"><code>6d36f9b</code></a>
Bump lockfile</li>
<li><a
href="d14169c023"><code>d14169c</code></a>
Release information for 0.1.9</li>
<li><a
href="5fa96ad878"><code>5fa96ad</code></a>
Merge pull request <a
href="https://redirect.github.com/image-rs/weezl/issues/46">#46</a> from
image-rs/performance-tuning</li>
<li><a
href="3bdf6844cd"><code>3bdf684</code></a>
Reduce burst loop register pressure</li>
<li><a
href="d3022443f8"><code>d302244</code></a>
Elimite data dependencies in creating burst codes</li>
<li>Additional commits viewable in <a
href="https://github.com/image-rs/weezl/compare/v0.1.8...v0.1.10">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This fixes an issue where a viewport change did not trigger a reflow,
when the restyle damage was was otherwise REPAINT. Viewport changes
mean changes to the initial containing block, which is one of the main
inputs to layout. This should trigger a reflow always.
Testing: Unfortunately, our testing infrastructure is not good enough
yet
to test changes to layout when resizing the `WebView`, so it is quite
difficult to write tests for this change.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Removed unused dependencies in various crates using cargo-machete, grep
and cargo-udeps.
Testing: The CI tests if any dependencies were used that are removed.
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
Bumps [system-deps](https://github.com/gdesmott/system-deps) from 7.0.4
to 7.0.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gdesmott/system-deps/releases">system-deps's
releases</a>.</em></p>
<blockquote>
<h2>v7.0.5</h2>
<h3>Other</h3>
<ul>
<li>set rust-version to 1.78.0</li>
<li>allow cfg-expr between 0.17 and 0.20</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/gdesmott/system-deps/blob/main/CHANGELOG.md">system-deps's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/gdesmott/system-deps/compare/v7.0.4...v7.0.5">7.0.5</a>
- 2025-05-22</h2>
<h3>Other</h3>
<ul>
<li>set rust-version to 1.78.0</li>
<li>allow cfg-expr between 0.17 and 0.20</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c421e3d455"><code>c421e3d</code></a>
chore: release v7.0.5</li>
<li><a
href="88a7508ba6"><code>88a7508</code></a>
set rust-version to 1.78.0</li>
<li><a
href="383a578e21"><code>383a578</code></a>
allow cfg-expr between 0.17 and 0.20</li>
<li>See full diff in <a
href="https://github.com/gdesmott/system-deps/compare/v7.0.4...v7.0.5">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Re-remove deleted logic from `WebDriverSession::input_cancel_list` logic
in #37010 which was re-adedd during merge resolution in #36932.
Otherwise, duplicate items would be registered in Release Actions.
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
The CI does multiple build runs so we need to handle it being
overwritten.
Multiple different build of OHOS servoshell would fight for who is first
to upload run.json and the other would error out.
Now we allow both to succeed by overwrite the run.json
Testing: Testrun:
4268974880
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
- Add support for `text-decoration-line: double`: Line drawing is done
similar to how it works in Firefox and Chromium. A gap of half of line
thickness is added between each line.
- Fix support for `text-decoration-line: wavy`: Wavy lines rectangles
were not calcualted properly, which meant they were rendered as solid
lines. Now the amplitude of the wave is 1.5 times line thickness.
Testing: A manual test is updated `tests/html/text_deco_simple.html`
to cover more cases. In general, rendering of text-decorations is
difficult
to test via reftesting.
Fixes#17887.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Bumps [anstyle-wincon](https://github.com/rust-cli/anstyle) from 3.0.7
to 3.0.8.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a731b50503"><code>a731b50</code></a>
chore: Release</li>
<li><a
href="f20e5baf87"><code>f20e5ba</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/anstyle/issues/253">#253</a>
from epage/once</li>
<li><a
href="37c9af4dfa"><code>37c9af4</code></a>
refactor: Avoid once_cell on new Rust</li>
<li><a
href="4d45d3a016"><code>4d45d3a</code></a>
chore(deps): Update Rust Stable to v1.87 (<a
href="https://redirect.github.com/rust-cli/anstyle/issues/252">#252</a>)</li>
<li><a
href="382dc34489"><code>382dc34</code></a>
style: Make clippy happy</li>
<li><a
href="2c10c471be"><code>2c10c47</code></a>
chore: Release</li>
<li><a
href="e77af2ef8b"><code>e77af2e</code></a>
docs: Update changelog</li>
<li><a
href="6d3640291c"><code>6d36402</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/anstyle/issues/248">#248</a>
from rust-cli/renovate/crossterm-0.x</li>
<li><a
href="7617d95baa"><code>7617d95</code></a>
chore(deps): Update Rust crate crossterm to 0.29.0</li>
<li><a
href="2f5287b8be"><code>2f5287b</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/anstyle/issues/249">#249</a>
from epage/foo</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-cli/anstyle/compare/anstyle-wincon-v3.0.7...anstyle-wincon-v3.0.8">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [rustversion](https://github.com/dtolnay/rustversion) from 1.0.20
to 1.0.21.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/rustversion/releases">rustversion's
releases</a>.</em></p>
<blockquote>
<h2>1.0.21</h2>
<ul>
<li>Support <code>-Zfmt-debug=none</code> (<a
href="https://redirect.github.com/dtolnay/rustversion/issues/61">#61</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1f833903f9"><code>1f83390</code></a>
Release 1.0.21</li>
<li><a
href="8be7057332"><code>8be7057</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/rustversion/issues/61">#61</a>
from dtolnay/debugnone</li>
<li><a
href="91dd8ef7b1"><code>91dd8ef</code></a>
Ignore elidable_lifetime_names pedantic clippy lint</li>
<li><a
href="052138c8c8"><code>052138c</code></a>
Support -Zfmt-debug=none</li>
<li><a
href="17dc0fd54f"><code>17dc0fd</code></a>
Pin nightly toolchain used for miri job</li>
<li>See full diff in <a
href="https://github.com/dtolnay/rustversion/compare/1.0.20...1.0.21">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Workflow changes includes to allow a given runs.json file to be read by
hitrace-bench and perform the benchmarks.
It depends on the updated CI tools. Requires CI modification in
https://github.com/servo/ci-runners/pull/36.
Testing: This change was tested on the CI.
4261677656
A corresponding bencher output is here:
99a369f7-e6c3-4141-83f9-0ecddac484a5?back=L2NvbnNvbGUvcHJvamVjdHMvc2Vydm8tY2kvcmVwb3J0cz9wZXJfcGFnZT04JnBhZ2U9MQ%3D%3D
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
This follows firefox's implementation:
24d49101ce/dom/webgpu/Instance.h (L68)
It changes the default on most systems to `Bgra8Unorm` but leaves it as
`Rgba8Unorm` on android.
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
This includes removing an implementation of normalize for `ByteString`,
because it is effectively duplicated in net under
`trim_http_whitespace`. This is part of an attempt to cleanup and
centralize code for header parsing and manipulation.
Testing: Covered by existing WPT tests
Signed-off-by: Sebastian C <sebsebmc@gmail.com>
Bumps [winit](https://github.com/rust-windowing/winit) from 0.30.10 to
0.30.11.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-windowing/winit/releases">winit's
releases</a>.</em></p>
<blockquote>
<h2>Winit release v0.30.11</h2>
<h3>Fixed</h3>
<ul>
<li>On Windows, fixed crash in should_apps_use_dark_mode() for Windows
versions < 17763.</li>
<li>On Wayland, fixed <code>pump_events</code> driven loop deadlocking
when loop was not drained before exit.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="911fad0af0"><code>911fad0</code></a>
Winit version 0.30.11</li>
<li><a
href="2191eacfc8"><code>2191eac</code></a>
chore: appease clippy</li>
<li><a
href="f7ac8127e3"><code>f7ac812</code></a>
wayland: fix pump events's loop drop deadlock</li>
<li><a
href="bd2b5cda8d"><code>bd2b5cd</code></a>
windows: Fix crash in for Windows versions < 17763</li>
<li><a
href="3930a6334f"><code>3930a63</code></a>
ci/deny: allow scripts in zerocopy</li>
<li><a
href="17b5737972"><code>17b5737</code></a>
Fix typos from updated <code>typos</code> tool (<a
href="https://redirect.github.com/rust-windowing/winit/issues/4213">#4213</a>)</li>
<li><a
href="f49a2a1827"><code>f49a2a1</code></a>
clippy: fix casing in windows backend</li>
<li>See full diff in <a
href="https://github.com/rust-windowing/winit/compare/v0.30.10...v0.30.11">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [jiff](https://github.com/BurntSushi/jiff) from 0.2.13 to 0.2.14.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/BurntSushi/jiff/blob/master/CHANGELOG.md">jiff's
changelog</a>.</em></p>
<blockquote>
<h1>0.2.14 (2025-05-20)</h1>
<p>This release includes a smattering of bug fixes, and hopefully a
small
improvement to the time it takes to compile Jiff. Also, in this release,
when
<code>TZ</code> is set to a non-empty but invalid value, Jiff will
always fall back to
<code>Etc/Unknown</code> when using <code>TimeZone::system()</code>.
This differs from previous
behavior where Jiff would, in this case, attempt to read the system's
default
time zone. This change brings Jiff into consistency with existing Unix
tooling
like <code>date</code>, and is also arguably a better failure mode. That
is, when <code>TZ</code> is
set but invalid, we shouldn't silently fall back to the default system
time
zone, but instead do something that indicates something has potentially
gone
wrong.</p>
<p>Enhancements:</p>
<ul>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/364">#364</a>:
Jiff now falls back to <code>Etc/Unknown</code> for invalid
<code>TZ</code> values.</li>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/pull/379">#379</a>:
Improve compilation times.</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/365">#365</a>:
Fixes a compile error in Jiff when only the
<code>tzdb-concatenated</code> feature was
enabled.</li>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/366">#366</a>:
Fixes slow initial <code>Zoned::now()</code> in environments where
<code>/usr/share/zoneinfo</code>
is on a very slow file system (like CI environments).</li>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/376">#376</a>:
Avoids searching for a tzdb at <code>/usr/share/zoneinfo</code> on
Windows.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8105228403"><code>8105228</code></a>
0.2.14</li>
<li><a
href="39b9903e06"><code>39b9903</code></a>
changelog: 0.2.14</li>
<li><a
href="c0cfb2390d"><code>c0cfb23</code></a>
test: add another scratch test for printing some interesting spans</li>
<li><a
href="ca0697735b"><code>ca06977</code></a>
error: try to reduce amount of codegen by forcefully unlining error
constructors</li>
<li><a
href="08abeadd09"><code>08abead</code></a>
tz: fallback to <code>Etc/Unknown</code> when <code>TZ</code> is set to
an invalid value</li>
<li><a
href="e22013e9b9"><code>e22013e</code></a>
tz: don't search for tzdb at /usr/share/zoneinfo</li>
<li><a
href="c5c232094c"><code>c5c2320</code></a>
ci: improve tzdb init times and tests</li>
<li><a
href="0f9fdf8ec8"><code>0f9fdf8</code></a>
tz: improve performance of initial <code>Zoned::now()</code></li>
<li><a
href="4e4939d199"><code>4e4939d</code></a>
jiff-icu: bump ICU4X to 2.0.0</li>
<li><a
href="e729efaea3"><code>e729efa</code></a>
jiff-icu: upgrade to ICU4X 2.0.0</li>
<li>Additional commits viewable in <a
href="https://github.com/BurntSushi/jiff/compare/jiff-static-0.2.13...jiff-static-0.2.14">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Text decorations have a special kind of propagation. Instead of
propating these during box tree construction, move propagation to
stacking context tree construction. This will allow for using a very
easy type of incremental layout when text decorations change. For
instance, when a link changes color during hovering over it, we can skip
all of box and fragment tree construction.
In addition, propagation works a bit better now and color and style
properly move down from their originating `Fragment`s.
This introduces three new failures, because now we are drawing the
text-decoration with the correct color in more places, which exposes an
issue we have with text-decorations not being drawn in relation to the
baseline (taking into account `vertical-align`).
Testing: There are tests for these changes.
Fixes#31736.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
Fix warnings from `components/fonts/platform/windows/font.rs` and
`components/fonts/platform/windows/font_list.rs` due to deprecations
from dwrote.
Testing: none, should behave as it did before
---------
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
When the computed restyle damage is empty, do not do a layout. Instead,
just rebuild the display list. In the future, even that can be omitted,
but that requires changes to the compositor.
These kind of relayouts commonly happen when the cursor is moving around
the page and no style rules cause changes to :hover.
Testing: This is covered existing WPT tests and should only have
performance
impacts. Unfortunately there are currently no performance tests.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>