diff --git a/commits.txt b/commits.txt new file mode 100644 index 000000000..bb3988444 --- /dev/null +++ b/commits.txt @@ -0,0 +1,7659 @@ +>>> 2026-08-01T23:32:55Z +https://github.com/servo/servo/pull/46553 (@shubhamg13, #46553) script: Wire `element` for `LargestContentfulPaint` (#46553) + ^ commit 3f08ca6d1664a50265140090b7faf3fcb86d82b1 + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # Wire the logic for `element` on `LargestContentfulPaint` using `OpaqueNode` + # + # While processing the `ReflowResult`, `OpaqueNode` is resolved and `Element` is stored in HashMap located in `document`. + # + # Testing: New WPT Passed (+ To be Added in #46851) + # Fixes: Part of #42000 + # ++https://github.com/servo/servo/pull/46917 (@Taym95, @yezhizhen, #46917) fetch: implement Request navigation flags (#46917) + dom; isReloadNavigation and isHistoryNavigation on Request + ^ commit d97c8c97a9a32f7aff09a340fa8443d68c2e7997 + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + ^ /!\ contains WebIDL changes! did we ship a new API? + # Implement Request.isReloadNavigation and Request.isHistoryNavigation. + # + # Testing: tests/wpt/meta/fetch/api/idlharness.https.any.js.ini and tests/wpt/meta/fetch/api/request/request-structure.any.js.ini + # +https://github.com/servo/servo/pull/46926 (@veyndan, #46926) android: Make `ServoView.GLThread` a static class (#46926) + ^ commit d26754353eda205f8ef9bbcb30425f38547828c8 + # Similar to ae3dbaa17d7c6bdd27a300e79a57e30816e798a7, this makes the inner class easier to reason about and makes the future conversion of `ServoView` to Kotlin easier. + # + # Testing: There are no automated tests for Android. +>>> 2026-08-02T23:26:51Z +-https://github.com/servo/servo/pull/46928 (@servo-wpt-sync, #46928) Sync WPT with upstream (02-08-2026) (#46928) + ^ commit e7fdc0c794bbff47ad5b338fe46871451966fb2a + # Automated downstream sync of changes from upstream as of 02-08-2026 + # [no-wpt-sync] +https://github.com/servo/servo/pull/46923 (@mrobinson, #46923) More gracefully handle header parsing errors (#46923) + ^ commit f4dde2701bacd4972e6cfa319a3f0cbc9be21f64 + # This change is mainly a code health improvement which more gracefully handles + # the case that a header name or value cannot be parsed. Instead a + # panicking, a warning is issued in more cases. In addition, a few other + # `unwrap`s are replaced with graceful error handling in + # `xmlhttprequest.rs`. Finally, some header addition is done via typed + # headers. This cannot be used for the "Content-Type" header as `hyper` + # seems to destroy the original case of the header, leading to WPT + # failures. + # + # Testing: This change shold not modify behavior so should be covered by existing tests. + # +https://github.com/servo/servo/pull/46930 (@sagudev, #46930) script: Stop using an unforgeable holder for global objects with unforgeable properties (#46930) + ^ commit aaacc0e62d5e471091aad9df67f60563b97e70e8 + # Porting https://hg-edge.mozilla.org/mozilla-central/rev/256ea0d0de34 (from FF 51!) to servo + # + # This will help with SM bump I am working on. + # + # Testing: Should be covered by WPT tests +https://github.com/servo/servo/pull/46937 (@nicoburns, #46937) Upgrade to resvg v0.48.0 (#46937) + ^ commit 89c1ccd8ff4034c69c052065a1208d85bc545f31 + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # - Upgrade resvg to v0.48.0 + # - Also upgrade base64 to 0.23.0 seeing resvg pulls in the new version anyway + # + # There are lots of new passing tests due to resvg now exposing a more web compatible width and height. + # + # Testing: WPT tests + # ++https://github.com/servo/servo/pull/46919 (@Gae24, #46919) script: Don't cache HTTP errors in the module map (#46919) + web; we can now retry JS module fetches when fetching fails + ^ commit f8ab249c71d9d904b093547659cf7b88457dd6b5 + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # Align Servo with the recent changes done in https://github.com/whatwg/html/pull/10327. Modules that are null due to network errors or MIME type mismatches are now ignored, allowing fetches to be retried. This change also simplifies the implementation by moving away from the previous Promise-based approach. + # + # Testing: New passes, expectations updated + # +https://github.com/servo/servo/pull/46925 (@veyndan, #46925) android: Convert `Servo` to Kotlin (#46925) + ^ commit 35672cc3d4beb768489f5218e73bee7aff0ddb01 + # Some types in other files have become non-nullable, since with the conversion of `Servo` to Kotlin, the Kotlin compiler can infer that these types are in fact non-nullable. + # + # Some types have also become nullable, as they were incorrectly labelled nullable in Kotlin since the caller was Java. Now that the invoker is also written in Kotlin, the incorrectly specified nullability produces a run time error. + # + # Testing: There are no automated tests for Android. + # Fixes: Part of #46701. +>>> 2026-08-03T23:34:33Z +https://github.com/servo/servo/pull/46940 (@veyndan, #46940) android: Remove unused code in `ServoView` (#46940) + ^ commit 2b3d009af9d8763a77a870e249f2700c21ab96e6 + # In preparation for converting this file to Kotlin (see #46701), this removes unused code so we're not migrating dead code. + # + # Testing: There are no automated tests for Android. +-https://github.com/servo/servo/pull/46943 (@dependabot[bot], @dependabot[bot], #46943) build: bump zerocopy from 0.8.54 to 0.8.55 (#46943) + ^ commit dac85f094b6e9744e676fac5f584f4c2449617fb + # Bumps [zerocopy](https://github.com/google/zerocopy) from 0.8.54 to 0.8.55. + #
+ # Release notes + #

Sourced from zerocopy's releases.

+ #
+ #

v0.8.55

+ # + #

What's Changed

+ # + #

Full Changelog: https://github.com/google/zerocopy/compare/v0.8.54...v0.8.55

+ #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=zerocopy&package-manager=cargo&previous-version=0.8.54&new-version=0.8.55)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46944 (@dependabot[bot], @dependabot[bot], #46944) build: bump time from 0.3.53 to 0.3.54 (#46944) + ^ commit e081179e43d61aa5781253585a771782337d4b0d + # Bumps [time](https://github.com/time-rs/time) from 0.3.53 to 0.3.54. + #
+ # Release notes + #

Sourced from time's releases.

+ #
+ #

v0.3.54

+ #

See the changelog for details.

+ #
+ #
+ #
+ # Changelog + #

Sourced from time's changelog.

+ #
+ #

0.3.54 [2026-07-20]

+ #

Added

+ # + #

For both PlainDateTime and SignedDuration, a non-deprecated type alias has been added for + # backwards compatibility. The new names should be preferred.

+ #

Changed

+ # + #

Performance

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=time&package-manager=cargo&previous-version=0.3.53&new-version=0.3.54)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46945 (@dependabot[bot], @dependabot[bot], #46945) build: bump bpaf from 0.9.26 to 0.9.27 (#46945) + ^ commit 7113b5b84e8fc1386a0b213427be901e3bfe1bb5 + # Bumps [bpaf](https://github.com/pacak/bpaf) from 0.9.26 to 0.9.27. + #
+ # Changelog + #

Sourced from bpaf's changelog.

+ #
+ #

bpaf [0.9.27], bpaf_derive [0.5.26] - 2026-07-29

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=bpaf&package-manager=cargo&previous-version=0.9.26&new-version=0.9.27)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46946 (@dependabot[bot], @dependabot[bot], #46946) build: bump pastey from 0.2.2 to 0.2.3 (#46946) + ^ commit d4195103b22bab6e3e18000ad4217a30fa2fcd3d + # Bumps [pastey](https://github.com/as1100k/pastey) from 0.2.2 to 0.2.3. + #
+ # Release notes + #

Sourced from pastey's releases.

+ #
+ #

v0.2.3

+ #

Improved

+ # + #

Full Changelog: https://github.com/AS1100K/pastey/compare/v0.2.2...v0.2.3

+ #
+ #
+ #
+ # Changelog + #

Sourced from pastey's changelog.

+ #
+ #

[0.2.3] - 2026-05-20

+ #

Improved

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pastey&package-manager=cargo&previous-version=0.2.2&new-version=0.2.3)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46947 (@dependabot[bot], @dependabot[bot], #46947) build: bump clang-sys from 1.8.1 to 1.9.1 (#46947) + ^ commit 5b8e417fdc0a4156216d6a33f7e602d1917f994a + # Bumps [clang-sys](https://github.com/KyleMayes/clang-sys) from 1.8.1 to 1.9.1. + #
+ # Release notes + #

Sourced from clang-sys's releases.

+ #
+ #

v1.9.1

+ #

Added

+ # + #

Changed

+ # + #

Fixed

+ # + #

v1.9.0 [YANKED]

+ #

Changed

+ # + #

v1.8.2 [YANKED]

+ #

Changed

+ # + #

Fixed

+ # + #
+ #
+ #
+ # Changelog + #

Sourced from clang-sys's changelog.

+ #
+ #

[1.9.1] - 2026-06-29

+ #

Added

+ # + #

Changed

+ # + #

Fixed

+ # + #

[1.9.0] - 2024-09-24 [YANKED]

+ #

Changed

+ # + #

[1.8.2] - 2024-05-29 [YANKED]

+ #

Fixed

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clang-sys&package-manager=cargo&previous-version=1.8.1&new-version=1.9.1)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
++https://github.com/servo/servo/pull/46886 (@SimonSapin, #46886) script: More consistent compareDocumentPosition for disconnected nodes (#46886) + dom; more conformant compareDocumentPosition() on Node when nodes are not in the same tree + ^ commit 469f9721e58f65125fe28d88092f275436fcbe6b + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # When comparing disconnected nodes by pointer addresses, use stable GC-owned pointers rather than temporary pointers to pointers. + # + # Testing: extending WPT to test the relation is anti-commutative (`a < b => b < a`) and manually checking that it fails before the code change + # +https://github.com/servo/servo/pull/46951 (@veyndan, #46951) android: Make `glThread` immutable (#46951) + ^ commit e84dbee53e37fd00171e31f631b407516a2f98ca + # By doing the initialisation steps directly in the constructor's initialisation section, we can make `glThread` final as the Java compiler knows that we only initialise `glThread` on instantiation. Previously, we could've theoretically called `init()` from elsewhere, hence we couldn't make the immutable guarantee to Java. + # + # Testing: There are no automated tests for Android. ++https://github.com/servo/servo/pull/46829 (@mrobinson, #46829) layout: Allow shaping across inline box boundaries (#46829) + layout; we can now shape text across inline box boundaries, e.g. `ffi` + ^ commit da291ca3c487fa525866776a5bcfdc0c34684a88 + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # Allow shaping across inline box boundaries by collecting text to shape during + # inline formatting context construction in a `ShapingQueue`. The `ShapingQueue` + # is responsible for shaping all text as well as placing it into its originating + # `TextRun`. The queue is flushed when an incompatible piece of text (using CSS + # specification rules) is pushed. + # + # Testing: This causes a good number of WPT tests to start to pass. + # Fixes: #35397. + # +https://github.com/servo/servo/pull/46836 (@mrobinson, #46836) font: Expose `ShapedTextSliceType` to clarify different `ShapedTextSlice`s (#46836) + ^ commit 72c9b0c8df5e13d76f0e69ba10075fe0feada0bf + # Instead of using two boolean fields that could encode unreachable + # behavior, this change makes it so that the `ShapedTextSlice` holds a + # type. This type more clearly defines the kinds of `ShapedTextSlice`s + # making it easier to read what's happening as they are created and + # simplifying the constructor. + # + # Testing: This does not change behavior, so should be covered by existing tests. + # +https://github.com/servo/servo/pull/46955 (@veyndan, #46955) android: Split `SurfaceHolderCallback` into own class (#46955) + ^ commit 40dba3dd1f4cef8b442d5768b8cd4861dfc792da + # Responding to `SurfaceHolder` callback events from `GLThread` is confusing, as these callback events are unrelated to thread management. Splitting these out into two separate classes creates a separation of concerns. + # + # Testing: There are no automated tests for Android. +https://github.com/servo/servo/pull/46959 (@jschwe, #46959) mach: Fix windows servoshell version bump regex (#46959) + ^ commit 26c53dbddfc03fa3bd989a193dfe2db1ba5a35ef + # Recent refactoring broke `./mach release`: + # + # - The path to the `wxs.mako` file is now lowercase. + # - The added `InstallerVersion` field meant `./mach release` now changed the wrong field (InstallerVersion instead of version). This is fixed by performing lazy matching, requiring whitespace before `Version`, and not requiring the closing `>` tag after Version anymore. + # + # Testing: `./mach release` is not covered by automated tests + # +https://github.com/servo/servo/pull/46960 (@eachra-bawn, #46960) webcrypto: Add remaining error messages. (#46960) + ^ commit f02ab1bb8f586cccb3927ad3da3c187bbc340b06 + # Part of: #40756 + # + # + # + # +https://github.com/servo/servo/pull/46956 (@jschwe, #46956) release: Validate tag before release workflow (#46956) + ^ commit d908aa399f3162533d806f628295c73de0b0c9ea + # We should consistently use the `v` prefix for real releases. This doesn't completely prevent issues, since the job just creates a release draft, which can be edited manually before publish, but getting the tag right here, makes it less likely to forget to add the `v` prefix. + # Motivated by https://github.com/servo/servo/issues/46908. + # + # Testing: Not covered by automated tests. Manually verified `0.0.5` fails and `v0.0.5` passes in my fork. + # +-https://github.com/servo/servo/pull/46962 (@jschwe, #46962) release: Bump version to 0.5.0 (#46962) + ^ commit d6ade2f68725062eb04db7670766aad01192320c + ^ /!\ contains servoshell changes! does it affect the user experience? + # Monthly version bump, slightly delayed this time. + # Created by running `./mach release 0.5.0` + # + # Testing: Not required + # +>>> 2026-08-05T00:00:26Z +-https://github.com/servo/servo/pull/46970 (@dependabot[bot], @dependabot[bot], #46970) build: bump cc from 1.2.67 to 1.4.0 (#46970) + ^ commit 76771ba28b6cacbde2335e536646ce434dc04a2d + # Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.2.67 to 1.4.0. + #
+ # Release notes + #

Sourced from cc's releases.

+ #
+ #

cc-v1.4.0

+ #

Added

+ # + #

cc-v1.3.0

+ #

Added

+ # + #
+ #
+ #
+ # Changelog + #

Sourced from cc's changelog.

+ #
+ #

1.4.0 - 2026-07-24

+ #

Added

+ # + #

1.3.0 - 2026-07-18

+ #

Added

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cc&package-manager=cargo&previous-version=1.2.67&new-version=1.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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46971 (@dependabot[bot], @dependabot[bot], #46971) build: bump async-compression from 0.4.42 to 0.4.43 (#46971) + ^ commit 577e946d839dd79fc76482613b5269c51c41bee5 + # Bumps [async-compression](https://github.com/Nullus157/async-compression) from 0.4.42 to 0.4.43. + #
+ # Release notes + #

Sourced from async-compression's releases.

+ #
+ #

async-compression-v0.4.43

+ #

Other

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=async-compression&package-manager=cargo&previous-version=0.4.42&new-version=0.4.43)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46972 (@dependabot[bot], @dependabot[bot], #46972) build: bump clap from 4.6.4 to 4.6.5 (#46972) + ^ commit dcfb42a210c815873a5a5dc582810218e99631ff + # Bumps [clap](https://github.com/clap-rs/clap) from 4.6.4 to 4.6.5. + #
+ # Release notes + #

Sourced from clap's releases.

+ #
+ #

v4.6.5

+ #

[4.6.5] - 2026-07-31

+ #

Fixes

+ # + #
+ #
+ #
+ # Changelog + #

Sourced from clap's changelog.

+ #
+ #

[4.6.5] - 2026-07-31

+ #

Fixes

+ # + #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.6.4&new-version=4.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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/46973 (@dependabot[bot], @dependabot[bot], #46973) build: bump hybrid-array from 0.4.13 to 0.4.14 (#46973) + ^ commit a75f0318b6727974171fb5cf9d77350552244dae + # Bumps [hybrid-array](https://github.com/RustCrypto/hybrid-array) from 0.4.13 to 0.4.14. + #
+ # Changelog + #

Sourced from hybrid-array's changelog.

+ #
+ #

0.4.14 (2026-07-30)

+ #

Added

+ # + #

#231: RustCrypto/hybrid-array#231

+ #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hybrid-array&package-manager=cargo&previous-version=0.4.13&new-version=0.4.14)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+https://github.com/servo/servo/pull/46953 (@niyabits, #46953) crown: allow `std::collections::hash_map::Values` in `unrooted_must_root` lint. (#46953) + ^ commit 75ec1dc635009c3da4ee9cff10339e6532eadded + # Adds a new case for `is_unrooted_ty` for the `std::collections::hash_map::Values` type. + # Removes the cases relating to `accountable_refcell` as the crate was removed: https://github.com/servo/servo/issues/44709 + # Refactors existing hashmap `iter()`s that don't use the key to use `values()` instead. + # + # Testing: Added a new run-pass test to validate all pointer-like types in the std library that we currently allow. + # Fixes: #46920 +https://github.com/servo/servo/pull/46976 (@kkoyung, #46976) script: Tidy up comments in `subtlecrypto.rs` (#46976) + ^ commit e01c44c0e6a7e3c547baefa820678d28b11aea36 + # - Add spec link to `struct SubtleCrypto` block. + # - Add missing spec links on algorithm registrations. + # - Change the regular comments for `DecapsulateOperation` and `GetPublicKeyOperation` to outer documentation comments. + # + # Testing: No test since there is no actual code change. +https://github.com/servo/servo/pull/46978 (@simonwuelker, #46978) fonts: Remove manual definition of `FT_LOAD_TARGET_LIGHT` (#46978) + ^ commit 5bbf8e075acf5824a835603b922199aa3c297ee5 + # The constant is now included in the bindings, so there's no need for us to re-define it ourselves. +https://github.com/servo/servo/pull/46965 (@veyndan, #46965) android: Convert `ServoView` to Kotlin (#46965) + ^ commit d325a76433a5151a1540127f69b8e77b8943188a + # I've deliberately kept some non-null assertions. They were always there in the Java world, but they weren't explicit. I'm keeping the assertions as converting them to nullable assertions will balloon out the number of decision paths, making this whole class even harder to reason about. + # + # Testing: There are no automated tests for Android. + # Fixes: #46701 ++https://github.com/servo/servo/pull/46963 (@mrobinson, @SimonSapin, #46963) layout: No longer combine adjacent text nodes into the same `TextRun` (#46963) + layout; part of #46829 + ^ commit 9453067361cf1ac4b5cbdd3f1309947b60ac2bac + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # Previously, adjacent text nodes (for instance those separated by a + # comment) were combined into the same `TextRun`. This ensured that the + # text was shaped together. Servo now supports shaping across node + # boundaries, so this is no longer necessary. For selection, it will be + # useful for every `TextFragment` to correspond to, at most, one DOM + # node. This change makes that possible. + # + # Testing: One WPT test starts to pass as we no longer combine text fragments before BiDi reordering. ++https://github.com/servo/servo/pull/46906 (@mrobinson, #46906) script: More carefully handle dirty root and descendant damage marking (#46906) + crash; fix crash in layout + ^ commit 2eab09483c8783c6f516a2d60c1a6ef83bb0f991 + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # Script passes a dirty root to layout along with setting the + # HAS_DIRTY_DESCENDANTS flag on elements at or below that root indicating + # that children need to be traversed. There was an undocumented invariant + # that no nodes above that dirty root were marked with + # HAS_DIRTY_DESCENDANTS, as the flag itself was used to determine + # when the dirty root is raised to some common ancestor of the old dirty + # root and a damaged node. + # + # There were some problems with the old implementation and this change + # fixes them by hewing closer to Gecko (from which we took this design). + # Notably: + # + # - In the complex situation where we cannot trivially calculate the dirty + # root, we now calculate it by walking up from the old dirty root and + # finding the first element which already has the flag set. + # - When removing nodes from the flat tree, if they were the previous + # dirty root, the dirty root is cleared. + # - Ensure that all marking traversals for the HAS_DIRTY_DESCENDANTS flag + # marking happen in the flat tree. + # - When slotting nodes into `` elements, the style and layout data + # of fallback content is cleared, and the dirty root is potentially reset. + # - Comments are added everywhere in this tricky algorithm explaining what + # the heck is going on. + # - The new debug assertion for the invariant found a case where we were + # triggering restyles too late before a relayout -- when setting selection flags. + # This is moved earlier in the method. + # + # Testing: This change adds a new WPT crash test. + # Fixes: #46024. + # Fixes: #46883. + # +https://github.com/servo/servo/pull/46867 (@jschwe, #46867) deps: Update bundled harfbuzz to 14.2.1 (#46867) + ^ commit 679c211fda1cc353b9dbfda908b8be76054abc2a + # pending crates.io release + # + # Testing: Dependency update, covered by existing tests. + # +https://github.com/servo/servo/pull/46985 (@Narfinger, #46985) paint: Switch forgotten IpcChannel to GenericChannel (#46985) + ^ commit 655f052f26a6a19438ceaccb40c3cacf6b059608 + # This just switches the channel for profiling exit msg to GenericChannel to be more consistent. + # + # Testing: Does not change functionality. + # +https://github.com/servo/servo/pull/46983 (@yezhizhen, #46983) paint: Lock touch panning to its initial dominant axis (#46983) + ^ commit 882810b5568a1b7d1e6b10b8443cd0ff870300ad + ^ /!\ contains changes to WPT expectations! it probably affects the web platform + # Lock a touch pan gesture to the axis dominant at pan-start, for the whole sequence, to match FF/Chrome. + # The video in https://github.com/servo/servo/issues/46954 explains visual difference better. + # + # Testing: For existing test `/pointerevents/touch-action-with-swipe-dir-change.html`, + # - New Passing in: + # touch-action:pan-x with right,down swipe + # touch-action:pan-y with down,right swipe + # - New failure in: + # touch-action:auto with right,down swipe + # touch-action:auto with down,right swipe + # + # The passing/failure are accidental, as we don't support `touch-action` yet, which controls gesture within element's region. + # + # For right, down, we would now only move horizontally. This matches `pan-x` expectation, but fails `auto` which expects both axis to move. + # + # Also added a new test similar to `touch-action-with-swipe-dir-change.html` to match our issue. This reuses logic introduced in https://github.com/web-platform-tests/wpt/pull/57804 to avoid accelerated scrolling & out of bound error, as we scroll the viewport. + # + # Fixes: https://github.com/servo/servo/issues/46954 which has strange jitter when we pan. + # +https://github.com/servo/servo/pull/46981 (@Narfinger, #46981) script: Cleanup custom node dirty inclusive ancestor walk (#46981) + ^ commit 21faece5673d75323f6c3084d0dc96e754b4f8ba + # This replaces the custom method in Node::dirty to do an inclusive ancestor walk without rooting with our unrooted iterator, cleaning up the code. + # This requires no_gc to be propagates through places. + # + # Testing: This should not change functionality. + # +https://github.com/servo/servo/pull/41309 (@Narfinger, #41309) OHOS: More efficient window buffer mode (#41309) + ^ commit 5ad865393fdef9b45e9c0c17dbc410e2f9b335c5 + ^ /!\ contains servoshell changes! does it affect the user experience? + # According to https://developer.huawei.com/consumer/en/doc/harmonyos-faqs/faqs-arkgraphics-2d-14 we can enable a performance hint here. + # + # Signed-off-by: Narfinger + # + # Testing: Tested on device and it doesn't crash. + # +https://github.com/servo/servo/pull/46988 (@jdm, #46988) constellation: Do not request permission for initial about:blank loads. (#46988) + ^ commit 66d034cfc8cbd9824da5a4a19164f1afb063c678 + # The initial about:blank document is intended to be synchronously available. Our current implementation is too tied to our asynchronous navigation infrastructure, and this gets in the way of the work happening in #46975. This change removes one source of intermittent failures due to timing when a test attempts to navigate the initial about:blank shortly after it is created—when the constellation observes that there is a pending navigation approval for the about:blank, it will silently discard any navigation attempt for the pipeline. I expect to revisit this later after we have decoupled about:blank from our asynchronous navigation infrastructure. + # + # Testing: Not observable behaviour within WPT except via timing changes in tests that involve navigating about:blank iframes/windows. + # Fixes: part of #43149 + # +>>> 2026-08-05T23:44:36Z +-https://github.com/servo/servo/pull/46994 (@veyndan, #46994) android: Inline `InitOptions` (#46994) + ^ commit 8d959efeb696b493de0e7ede89dcfc54a6e25f2b + ^ /!\ contains servoshell changes! does it affect the user experience? + # This can be seen as the Rust equivalent to #46916. Wrapping some of these `init()` options in a `struct` and then immediately unwrapping them makes the code harder to following by being a bit obtuse. + # + # Testing: There are no automated tests for Android. +-https://github.com/servo/servo/pull/47000 (@dependabot[bot], @dependabot[bot], #47000) build: bump rustls from 0.23.42 to 0.23.43 (#47000) + ^ commit cc5aa44dc3e13b60eb93973a9b2969cf976f8232 + # Bumps [rustls](https://github.com/rustls/rustls) from 0.23.42 to 0.23.43. + #
+ # Commits + #
    + #
  • fcf61cd Prepare 0.23.43
  • + #
  • f0dad4c Check server's proposed suite against actual offer
  • + #
  • b480cc6 Test for server choosing a non-QUIC TLS1.3 suite
  • + #
  • 883a44d Consider Protocol in ServerConfig::supports_version
  • + #
  • c2f1fd9 Check suitability of server version in QUIC client
  • + #
  • d98e1b9 Add test for server Tls13RequiredForQuic
  • + #
  • e63d9bf Bound ticket age calculation
  • + #
  • 79cd462 Defensiveness improvement for binder suffix arithmetic
  • + #
  • 4a9f025 use checked_sub for the mac tag offset in Rfc5077Ticketer::decrypt
  • + #
  • 3131e5c Accept that libcrux deps are vulnerable
  • + #
  • Additional commits viewable in compare view
  • + #
+ #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustls&package-manager=cargo&previous-version=0.23.42&new-version=0.23.43)](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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+-https://github.com/servo/servo/pull/47003 (@dependabot[bot], @dependabot[bot], #47003) build: bump bytemuck from 1.25.1 to 1.25.2 (#47003) + ^ commit a8c9c9007a648e29621666fdd90ec8c7ab5eec1b + # Bumps [bytemuck](https://github.com/Lokathor/bytemuck) from 1.25.1 to 1.25.2. + #
+ # Changelog + #

Sourced from bytemuck's changelog.

+ #
+ #

1.25.2

+ #
    + #
  • implement NoUninit for char, bool, NonZero* arrays
  • + #
+ #
+ #
+ #
+ # Commits + # + #
+ #
+ # + # + # [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=bytemuck&package-manager=cargo&previous-version=1.25.1&new-version=1.25.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) + # + # --- + # + #
+ # Dependabot commands and options + #
+ # + # 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 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) + # + # + #
+https://github.com/servo/servo/pull/46991 (@jschwe, #46991) canvas: Limit worker threads for vello_cpu (#46991) + ^ commit 49fa5106cac95620e985ede1c0ddf744709e6c62 + # The default implementation (as of 0.0.9) spawns too many threads: + # + # ``` + # num_threads: (std::thread::available_parallelism() + # .unwrap() + # .get() + # .saturating_sub(1) as u16) + # .min(8), + # ``` + # + # We override this and define a minimum canvas size to use multi-threading and limit the amount of threads to 3, since upstream docs suggest 2-4 is usually best. + # I don't see an immediate need to add a pref! to finetune the behavior, but could be an idea for the future. + # + # Testing: No functional changes. No automated performance tests for canvas. + # + # +-https://github.com/servo/servo/pull/46989 (@TimvdLippe, #46989) script: Move form controls into form_controls (#46989) + ^ commit a7a5eff507bf4054c93020d12535ecd80b810087 + # Testing: it compiles + # Part of #46329 +https://github.com/servo/servo/pull/46986 (@mrobinson, #46986) script: Only note dirty `Element`s (#46986) + ^ commit 61f178247759dfe44416d0d025eec3a73e9123f8 + # In practice this is always the case, except when the `Document` itself + # is marked. In that case, we just need to do some bookkeeping for removed + # documents. This changes removes a long-standing FIXME and simplifies the + # way the dirty root is calculated quite a bit. + # + # Testing: This should not change behavior so is covered by existing tests. + # +https://github.com/servo/servo/pull/47005 (@jdm, #47005) script: Prevent borrow hazards in Element::ensure_rare_data. (#47005) + ^ commit 6e8d1679605b48e4c4181e6411a30cf3623a3589 + # Element::ensure_rare_data returns a dynamic mutable borrow, so by using safe_borrow_mut we can statically prevent multiple lurking borrow hazards. First noticed in an unexpected test failure in #46990. + # + # Testing: Existing test coverage suffices. + # Fixes: #47004 + # ++https://github.com/servo/servo/pull/46980 (@RichardTjokroutomo, @yezhizhen, #46980) script: Fire `focusin`/`focusout` (#46980) + dom; partial impl ‘focusin’ and ‘focusout’ events, except with