aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* wpt: Unskip old-tests/ folder as most tests are passing (#36333)Manuel Rego2025-04-046-3/+16
| | | Signed-off-by: Manuel Rego Casasnovas <rego@igalia.com>
* layout: Restrict stretch alignment to flex items with computed auto size ↵Oriol Brufau2025-04-047-67/+94
| | | | | | | | | | | | | | | | | | | | (#36288) We were allowing `align-self: stretch` to stretch flex items whose cross size behaves as `auto`, including cyclic percentages. However, https://github.com/w3c/csswg-drafts/issues/4525 resolved that stretching should only happen when the cross size computes to `auto`. So this patch exposes this information in `ContentBoxSizesAndPBM`, and refactors the flexbox stretching logic. Fixes: #36285 Testing: - `/css/css-flexbox/quirks-auto-block-size-with-percentage-item.html` - `/css/css-flexbox/stretch-requires-computed-auto-size.html` Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* wpt: Unskip css/css-text/i18n as many tests are passing there (#36314)Manuel Rego2025-04-0430-2/+1598
| | | | | | This patch unskips `css/css-text/i18n` WPT tests as many tests on that folder are already passing in Servo. Signed-off-by: Manuel Rego Casasnovas <rego@igalia.com>
* mach: Fix cross-compiling from windows to non windows (#36070)Jonathan Schwender2025-04-041-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we switched to using `aws-lc-rs` instead of `ring`, cross-compiling on windows (to non-windows) had been broken. Using the default MSVC Generator results in CMake erroneously being configured for the host platform, with failing compiler checks. Switching to Ninja fixes that issue. The CMake build rules of aws-lc-rs also make use of `tr` and assume it is installed, hence we provide a helpful error message suggesting to try using mach from `git bash` which does provide the `tr` command. <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix cross-compiling servo on windows hosts to non-windows targets - [x] These changes do not require tests because: We don't test cross-compiling from windows hosts in CI. These changes were manually tested by compiling for OpenHarmony on windows. Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* webgpu: Add a `webgpu_traits` crate (#36320)Martin Robinson2025-04-0452-566/+638
| | | | | | | | | | | | | | | This breaks the `script_traits` dependency on `webgpu`. In general, the `traits` crates shouldn't depend on Servo non-`traits` crates. This is necessary to move "script to constellation" messages to the `constellation_traits` crate, making it the entire API for talking to the constellation. This will break a circular dependency when that happens. Testing: Successfully building is enough of a test for this one as it is mainly moving types around. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Separate `WebviewManager` from `Webview` in `compositor` and `constellation` ↵Shubham Gupta2025-04-047-239/+253
| | | | | | | | | (#36302) Create a separate file for `WebviewManager` to improve clarity. Testing: This change is just a refactor, so no new tests are needed. Signed-off-by: Shubham Gupta <shubham13297@gmail.com>
* Move generated bindings to script_bindings (#36323)Josh Matthews2025-04-0444-1826/+1929
| | | | | | | | | | | | | | | | | | | | | This is the final step of #1799, where the majority of the generated code for the JS bindings is now compiled as part of the script_bindings build step. The remaining pieces in script must live there because they refer to concrete DOM types; all code in script_bindings is generic over the [DomTypes](https://doc.servo.org/script/dom/bindings/codegen/DomTypes/trait.DomTypes.html) trait. My testing with incremental builds shows me a 12 second reduction in build times on my 2024 M4 Macbook Pro when modifying code in the script crate after these changes. Before this PR those changes took 20 seconds to rebuild Servo, and now they take 8 seconds. Testing: Existing WPT tests ensure no regressions. Fixes: #1799 --------- Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Ignore cert errors when running wdspec tests. (#36327)Josh Matthews2025-04-042-1/+4
| | | | | | | | | | | This change makes the wdspec configuration match our other browser configurations to account for #30080. Testing: Tested locally, since we don't run webdriver conformance tests in CI yet. The STR from the issue do not reproduce the same problem any longer. Fixes: #36326. Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Webdriver delete cookie (#36306)Euclid Ye2025-04-047-4/+65
| | | | | | | | | | 1. Implement `WebDriverCommand::DeleteCookie` 2. Remove unnecessary clone for `WebDriverCommand::GetNamedCookie` Fixes: #36287 --------- Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
* Fix: `display: inline-grid` considered an atomic inline (#36298)Barigbue Nbira2025-04-0312-19/+10
| | | | | | | | | | | | | | | | | | This change ensures that `display: inline-grid` is considered an atomic inline - Add `is_atomic_inline_level()` logic to `box_fragment.rs` to improve accuracy. - Update `stacking_context.rs` to use the new `is_atomic_inline_level()` method instead of the one from stylo. - Update `repeat-auto-fill-005.html` test expectation. - Remove .ini expectations for tests that are no longer failing. Testing: covered by WPT Fixes: #35310 --------- Signed-off-by: Barigbue <barigbuenbira@gmail.com>
* Enable layout_grid_enabled pref for all tests (#36316)Oriol Brufau2025-04-0381-479/+123
| | | | | | This is part of #36315 Testing: This improves several tests that rely on this feature Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* fix: root element not establishing stacking context (#35390) (#36174)Michael Rees2025-04-038-0/+53
| | | | | | | | | | | | | | | | | - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #35390 - [X] There are tests for these changes [Successful WPT run](https://github.com/reesmichael1/servo/actions/runs/14097679625) (which includes the new test files) (I didn't make the formatting changes intentionally--those came from `mach format` following `mach test-tidy`.) --------- Signed-off-by: Michael Rees <mrees@noeontheend.com>
* script: Implement deprecated CSSStyleSheet members (#36313)Oriol Brufau2025-04-0315-309/+57
| | | | | | | | | | | | | | | | | | | | | | | Implements `rules`, `addRule()` and `removeRule()` for `CSSStyleSheet`. https://drafts.csswg.org/cssom/#legacy-css-style-sheet-members This is part of #36162 Testing: - `/css/css-cascade/at-scope-parsing.html` - `/css/css-conditional/at-supports-whitespace.html` - `/css/css-nesting/invalidation-004.html` - `/css/css-nesting/parsing.html` - `/css/css-nesting/serialize-group-rules-with-decls.html` - `/css/css-syntax/custom-property-rule-ambiguity.html` - `/css/css-syntax/invalid-nested-rules.html` - `/css/css-syntax/trailing-braces.html` - `/css/css-syntax/var-with-blocks.html` - `/css/css-transitions/parsing/starting-style-parsing.html` - `/css/cssom/CSSStyleSheet.html` - `/css/cssom/idlharness.html` - `/css/cssom/insertRule-across-context.html` Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* layout: Improve style conversion for Taffy (#36311)Oriol Brufau2025-04-038-71/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | This imports the following changes from Blitz: - Map position:sticky to relative rather than absolute position https://github.com/DioxusLabs/blitz/commit/16a7c1654455bee62e83854f83304a2931b29a0d - Map left and right alignment from Stylo https://github.com/DioxusLabs/blitz/commit/c71cc681d8c877dbd30853b3c4a2a7449c6450e4 - Improve mapping of align-items/self https://github.com/DioxusLabs/blitz/commit/7bf2a25e756c1310a9e4603b4757e20548b961e2 Fixes: #35998 Testing: - `/css/css-grid/alignment/grid-align-justify-margin-border-padding.html` - `/css/css-grid/alignment/grid-align.html` - `/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-001.html` - `/css/css-grid/alignment/grid-gutters-and-alignment.html` - `/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html` - `/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-001.html` - `/css/css-grid/alignment/grid-self-alignment.html` Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* Support single-value `<select>` elements (#35684)Simon Wülker2025-04-0332-151/+633
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/user-attachments/assets/9aba75ff-4190-4a85-89ed-d3f3aa53d3b0 Among other things this adds a new `EmbedderMsg::ShowSelectElementMenu` to tell the embedder to display a select popup at the given location. This is a draft because some small style adjustments need to be made: * the select element should always have the width of the largest option * the border should be part of the shadow tree Apart from that, it's mostly ready for review. <details><summary>HTML for demo video</summary> ```html <html> <body> <select id="c" name="choice"> <option value="first">First Value</option> <option value="second">Second Value</option> <option value="third">Third Value</option> </select> </body> </html> ``` </details> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] Part of https://github.com/servo/servo/issues/3551 - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> --------- Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Add license for WHATWG specifications in code (#36282)Gregory Terzian2025-04-031-0/+15
| | | | | | | | | Add license for WHATWG specs incorporated into source code, as per the [TSC discussion](https://github.com/servo/project/blob/db2f4074d4a369beb16f23ccc010ba73a3fc9662/governance/tsc/tsc-2025-03-31.md#add-license-for-whatwg-specs-incorporated-into-source-code). As per for example https://html.spec.whatwg.org/#ipr Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* build(deps): bump clap from 4.5.34 to 4.5.35 (#36296)dependabot[bot]2025-04-021-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [clap](https://github.com/clap-rs/clap) from 4.5.34 to 4.5.35. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.5.35</h2> <h2>[4.5.35] - 2025-04-01</h2> <h3>Fixes</h3> <ul> <li><em>(help)</em> Align positionals and flags when put in the same <code>help_heading</code></li> <li><em>(help)</em> Don't leave space for shorts if there are none</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.5.35] - 2025-04-01</h2> <h3>Fixes</h3> <ul> <li><em>(help)</em> Align positionals and flags when put in the same <code>help_heading</code></li> <li><em>(help)</em> Don't leave space for shorts if there are none</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/55a18f518bc00886a6c1d88ea02df157f013cdd9"><code>55a18f5</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/3b0563580d1fcb26df7b81b9c0204af730c47bcd"><code>3b05635</code></a> fix(complete): Ensure new enough clap is used</li> <li>See full diff in <a href="https://github.com/clap-rs/clap/compare/clap_complete-v4.5.34...clap_complete-v4.5.35">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.5.34&new-version=4.5.35)](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>
* build(deps): bump env_logger from 0.11.7 to 0.11.8 (#36294)dependabot[bot]2025-04-021-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.11.7 to 0.11.8. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-cli/env_logger/releases">env_logger's releases</a>.</em></p> <blockquote> <h2>v0.11.8</h2> <h2>[0.11.8] - 2025-04-01</h2> <h3>Compatibility</h3> <ul> <li><em>(kv)</em> Deprecate the <code>unstable-kv</code> feature which may be removed in a future patch release</li> </ul> <h3>Features</h3> <ul> <li><em>(kv)</em> Stabilize key-value support behind the <code>kv</code> feature</li> <li>Expose <code>ConfigurableFormat</code> to build custom [<code>Builder::format</code>]s that leverage this</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md">env_logger's changelog</a>.</em></p> <blockquote> <h2>[0.11.8] - 2025-04-01</h2> <h3>Compatibility</h3> <ul> <li><em>(kv)</em> Deprecate the <code>unstable-kv</code> feature which may be removed in a future patch release</li> </ul> <h3>Features</h3> <ul> <li><em>(kv)</em> Stabilize key-value support behind the <code>kv</code> feature</li> <li>Expose <code>ConfigurableFormat</code> to build custom [<code>Builder::format</code>]s that leverage this</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rust-cli/env_logger/commit/f0443b26fef10f5f2ec6561e5ed670f66107836a"><code>f0443b2</code></a> chore: Release</li> <li><a href="https://github.com/rust-cli/env_logger/commit/d8b5e1e8841d6d99e846bdff6f8bb5b002bb5eb9"><code>d8b5e1e</code></a> docs: Update changelog</li> <li><a href="https://github.com/rust-cli/env_logger/commit/3ca671fe6d6bbe98a1a8a8993f2e0d595607fde4"><code>3ca671f</code></a> Merge pull request <a href="https://redirect.github.com/rust-cli/env_logger/issues/360">#360</a> from epage/format</li> <li><a href="https://github.com/rust-cli/env_logger/commit/bc02d61e0a60210f846896c0cc80d52a55901460"><code>bc02d61</code></a> feat(fmt): Expose ConfigurableFormat</li> <li><a href="https://github.com/rust-cli/env_logger/commit/c567fdee731d76f19da887ba9f4ebdf435335d3c"><code>c567fde</code></a> refactor(fmt): Pull out format logic</li> <li><a href="https://github.com/rust-cli/env_logger/commit/ce25c7396116665cd3dc2f4622d25fce5a818975"><code>ce25c73</code></a> refactor(fmt): Make DefaultFormats name more specific</li> <li><a href="https://github.com/rust-cli/env_logger/commit/739ebb1d37dcfc466d0533aa2c974449610e7910"><code>739ebb1</code></a> refactor(fmt): Pull out logger's builder methods</li> <li><a href="https://github.com/rust-cli/env_logger/commit/3acb571daa9e9c63ac4a491df55ec69000380630"><code>3acb571</code></a> refactor(fmt): Delegate formatting to DefaultFormat</li> <li><a href="https://github.com/rust-cli/env_logger/commit/e351bcb92d99d7835c987838f09ba7d3949df055"><code>e351bcb</code></a> refactor(fmt): Reduce duplication in DefaultFormatWriter</li> <li><a href="https://github.com/rust-cli/env_logger/commit/3c9e6ff528a3ac7e798a96d443f5b87f38b0294a"><code>3c9e6ff</code></a> Merge pull request <a href="https://redirect.github.com/rust-cli/env_logger/issues/359">#359</a> from epage/kv</li> <li>Additional commits viewable in <a href="https://github.com/rust-cli/env_logger/compare/v0.11.7...v0.11.8">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=env_logger&package-manager=cargo&previous-version=0.11.7&new-version=0.11.8)](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>
* build(deps): bump aws-lc-rs from 1.12.6 to 1.13.0 (#36293)dependabot[bot]2025-04-022-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [aws-lc-rs](https://github.com/aws/aws-lc-rs) from 1.12.6 to 1.13.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/aws/aws-lc-rs/releases">aws-lc-rs's releases</a>.</em></p> <blockquote> <h2>aws-lc-rs v1.13.0</h2> <h2>What's Changed</h2> <ul> <li>Support serializing <code>RsaSubjectPublicKey</code> to/from X509 by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/742">aws/aws-lc-rs#742</a></li> <li>ML-DSA support in <code>unstable</code> module by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/690">aws/aws-lc-rs#690</a></li> <li>Remove Kyber, KDF from <code>unstable</code> module by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/747">aws/aws-lc-rs#747</a></li> </ul> <h3>Build improvements</h3> <ul> <li>Fix CMake submodule warning by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/730">aws/aws-lc-rs#730</a></li> <li>Prefixing applied to all external symbols in <code>aws-lc-sys</code>: <ul> <li>Align aws-lc-sys v0.27.2 w/ AWS-LC v1.48.5 by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/740">aws/aws-lc-rs#740</a></li> </ul> </li> <li>Improve cross-build support to <code>x86_64-pc-windows-gnu</code>: <ul> <li>Include Go source in <code>aws-lc-sys</code> crate by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/754">aws/aws-lc-rs#754</a></li> </ul> </li> <li>Support build using CMake 4.0: <ul> <li>Bump aws-lc-fips-sys to v0.13.5 by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/760">aws/aws-lc-rs#760</a></li> <li>Regenerate aws-lc-sys @ v1.48.3 by <a href="https://github.com/skmcgrail"><code>@​skmcgrail</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/734">aws/aws-lc-rs#734</a></li> </ul> </li> <li>CI for <code>x86_64-unknown-illumos</code> build target: <ul> <li>Try to support illumos by <a href="https://github.com/LecrisUT"><code>@​LecrisUT</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/709">aws/aws-lc-rs#709</a></li> </ul> </li> </ul> <h3>Issues Being Resolved</h3> <ul> <li>implement <code>encoding::AsDer&lt;PublicKeyX509Der&lt;'a&gt;&gt;</code> for <code>rsa::PublicKey</code> -- <a href="https://redirect.github.com/aws/aws-lc-rs/issues/741">aws/aws-lc-rs#741</a></li> <li>-sys: include aws-lc/crypto/err/err_data_generate.go in published crates -- <a href="https://redirect.github.com/aws/aws-lc-rs/issues/752">aws/aws-lc-rs#752</a></li> <li>Failing to cross build for <code>x86_64-pc-windows-gnu</code> -- <a href="https://redirect.github.com/aws/aws-lc-rs/issues/753">aws/aws-lc-rs#753</a></li> <li>Failure to build with CMake 4 -- <a href="https://redirect.github.com/aws/aws-lc-rs/issues/755">aws/aws-lc-rs#755</a></li> </ul> <h2>Other Merged PRs</h2> <ul> <li>Update rustls integ test by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/717">aws/aws-lc-rs#717</a></li> <li>Bump aws-lc-fips-sys to v0.13.4 by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/731">aws/aws-lc-rs#731</a></li> <li>Test script for bindings pregeneration by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/732">aws/aws-lc-rs#732</a></li> <li>No libssl cross test for arm-linux-androideabi by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/739">aws/aws-lc-rs#739</a></li> <li>aws-lc-sys: output only one library by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/749">aws/aws-lc-rs#749</a></li> <li>Align aws-lc-sys v0.28.0 w/ AWS-LC 1.49.0 by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/757">aws/aws-lc-rs#757</a></li> <li>Bump to aws-lc-rs v1.13.0 by <a href="https://github.com/justsmth"><code>@​justsmth</code></a> in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/758">aws/aws-lc-rs#758</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/LecrisUT"><code>@​LecrisUT</code></a> made their first contribution in <a href="https://redirect.github.com/aws/aws-lc-rs/pull/709">aws/aws-lc-rs#709</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/aws/aws-lc-rs/compare/v1.12.6...v1.13.0">https://github.com/aws/aws-lc-rs/compare/v1.12.6...v1.13.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-lc-rs/commit/8ed1be8f6cfbf1288ceef72c6e429089c17a6f5c"><code>8ed1be8</code></a> Bump to aws-lc-rs v1.13.0 (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/758">#758</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/1e96391d4034df4661cd994eb550a9aca450818b"><code>1e96391</code></a> Bump aws-lc-fips-sys to v0.13.5 (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/760">#760</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/706565c162839c20ac3257f0a7e81aaa5c1775da"><code>706565c</code></a> Include Go source in <code>aws-lc-sys</code> crate (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/754">#754</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/344a56fc8605eeb83238b575018def1fae1d370f"><code>344a56f</code></a> Align aws-lc-sys v0.28.0 w/ AWS-LC 1.49.0 (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/757">#757</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/b6d070b12ae244aefefa342153303e5b73b98c5d"><code>b6d070b</code></a> Remove Kyber, KDF from unstable (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/747">#747</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/2e8b15872ee167c1bdf3eac0ac000723ea41f020"><code>2e8b158</code></a> Unstable API for ML-DSA (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/690">#690</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/d998c017ad1666be1b6017c441e824b0384cb8b8"><code>d998c01</code></a> Try to support illumos (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/709">#709</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/44de3d2110c8690ec06dfaf88b5d43ec37d577d2"><code>44de3d2</code></a> aws-lc-sys: output only one library (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/749">#749</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/bfe34e86361bdeb4a272d5d4fbd1e250ba257e7c"><code>bfe34e8</code></a> Support RsaSubjectPublicKey to/from X509; Bump version (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/742">#742</a>)</li> <li><a href="https://github.com/aws/aws-lc-rs/commit/4fe81985d8e3c978a8ebd7cf5328fc61ca4999bd"><code>4fe8198</code></a> Align aws-lc-sys v0.27.2 w/ AWS-LC v1.48.5 (<a href="https://redirect.github.com/aws/aws-lc-rs/issues/740">#740</a>)</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-lc-rs/compare/v1.12.6...v1.13.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aws-lc-rs&package-manager=cargo&previous-version=1.12.6&new-version=1.13.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump flate2 from 1.1.0 to 1.1.1 (#36292)dependabot[bot]2025-04-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.1.0 to 1.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/flate2-rs/releases">flate2's releases</a>.</em></p> <blockquote> <h2>1.1.1</h2> <p>This release should be smaller and thus faster to download. Additionally, when using the <code>zlib-rs</code> backend, duplicate symbol issues shouldn't occur anymore.</p> <h2>What's Changed</h2> <ul> <li>docs: Update README to promote zlib-rs by <a href="https://github.com/Xuanwo"><code>@​Xuanwo</code></a> in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/470">rust-lang/flate2-rs#470</a></li> <li>Update miniz_oxide to 0.8.5 by <a href="https://github.com/oyvindln"><code>@​oyvindln</code></a> in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/475">rust-lang/flate2-rs#475</a></li> <li>Remove stale CHANGELOG.md by <a href="https://github.com/jayvdb"><code>@​jayvdb</code></a> in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/476">rust-lang/flate2-rs#476</a></li> <li>More informative README on backends by <a href="https://github.com/Shnatsel"><code>@​Shnatsel</code></a> in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/480">rust-lang/flate2-rs#480</a></li> <li>Rewrite outdated backend notes in lib.rs by <a href="https://github.com/Shnatsel"><code>@​Shnatsel</code></a> in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/481">rust-lang/flate2-rs#481</a></li> <li>upgrade zlib-rs to version <code>0.5.0</code> by <a href="https://github.com/folkertdev"><code>@​folkertdev</code></a> in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/482">rust-lang/flate2-rs#482</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Xuanwo"><code>@​Xuanwo</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/470">rust-lang/flate2-rs#470</a></li> <li><a href="https://github.com/jayvdb"><code>@​jayvdb</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/flate2-rs/pull/476">rust-lang/flate2-rs#476</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rust-lang/flate2-rs/compare/1.1.0...1.1.1">https://github.com/rust-lang/flate2-rs/compare/1.1.0...1.1.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rust-lang/flate2-rs/commit/98c98c8a57586b37e6f93e94d993e4f038fd8d32"><code>98c98c8</code></a> Merge pull request <a href="https://redirect.github.com/rust-lang/flate2-rs/issues/482">#482</a> from folkertdev/update-zlib-rs-0.5.0</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/94b36b01e6d23f15705ce9530ad6b47342383daa"><code>94b36b0</code></a> upgrade zlib-rs to version <code>0.5.0</code></li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/a79bfe495a5089898177984bda38a6161ac48135"><code>a79bfe4</code></a> Merge pull request <a href="https://redirect.github.com/rust-lang/flate2-rs/issues/481">#481</a> from Shnatsel/backend-docs</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/694e822cd198f37b2e5fb47f3d476808df1d60b3"><code>694e822</code></a> less editorializing</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/6debe9512b059054c8b31817fb32b9fad6304f9f"><code>6debe95</code></a> Merge pull request <a href="https://redirect.github.com/rust-lang/flate2-rs/issues/480">#480</a> from Shnatsel/zlib-rs-readme</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/a24e276931c72b0c39e39aa39cf3eac51a567101"><code>a24e276</code></a> Rewrite outdated backend notes in lib.rs</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/78ca1741a62c838c834b28ca726b76e8961b011d"><code>78ca174</code></a> More informative README on backends</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/c9a3efaf1f0b4c705a3dbc530ce76265d621cca2"><code>c9a3efa</code></a> Merge pull request <a href="https://redirect.github.com/rust-lang/flate2-rs/issues/476">#476</a> from jayvdb/rm-changelog</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/0b2137d8d8d231c88edaa10baf085e6c7545bd33"><code>0b2137d</code></a> Remove stale CHANGELOG.md</li> <li><a href="https://github.com/rust-lang/flate2-rs/commit/0abbd1c0e636841eabf18010f54b5470ea90ce91"><code>0abbd1c</code></a> Merge pull request <a href="https://redirect.github.com/rust-lang/flate2-rs/issues/475">#475</a> from oyvindln/patch-1</li> <li>Additional commits viewable in <a href="https://github.com/rust-lang/flate2-rs/compare/1.1.0...1.1.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=flate2&package-manager=cargo&previous-version=1.1.0&new-version=1.1.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) --- <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>
* Use Window in new methods instead of GlobalScope for interfaces with … ↵Richard Dushime2025-04-0240-240/+226
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#36133) …Window-only constructors <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #36118 (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> --------- Signed-off-by: richarddushime <mudaherarich@gmail.com> Signed-off-by: Richard Dushime <45734838+richarddushime@users.noreply.github.com>
* script: Create `CSSStyleOwner::Null` for `getComputedStyle` (#36272)Martin Robinson2025-04-0220-219/+171
| | | | | | | | | | | | | | | | | | | | This new `CSSStyleOwner` variant is used when the pseudo-element argument fails to parse properly or is for some unknown or unsupported pseudo-element. Testing: There are tests for this change. Various tests start to pass and some start to fail. New failures are due to partial or fully missing support for pseudo-elements such as: - `::selection` - `::first-letter` and `::first-line` - `::marker` Co-authored-by: Oriol Brufau <obrufau@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* layout: Allow collapsing bottom margins with any indefinite block size (#36278)Oriol Brufau2025-04-027-1/+181
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to CSS2, the bottom margin of a block container can collapse with the bottom margin of its last in-flow child if `height` computes to `auto`. However, according to CSS Sizing, that was "legacy spec prose" and should be interpreted as "behaves as `auto`". Therefore, cyclic percentages and intrinsic keywords like `min-content` shouldn't prevent margin collapse, because they behave as `auto`. This change aligns Servo with Gecko and Blink, but diverges from WebKit. https://www.w3.org/TR/CSS22/box.html#collapsing-margins https://www.w3.org/TR/css-sizing/#behave-auto Testing: - `tests/wpt/tests/css/css-sizing/margin-collapse-with-indefinite-block-size-001.html` - `tests/wpt/tests/css/css-sizing/margin-collapse-with-indefinite-block-size-002.html` - `tests/wpt/tests/css/css-sizing/margin-collapse-with-indefinite-block-size-003.html` - `tests/wpt/tests/css/css-sizing/margin-collapse-with-indefinite-block-size-004.html` - `tests/wpt/tests/css/css-sizing/margin-collapse-with-indefinite-block-size-005.html` Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* dom: Firing "click" event as synthetic pointer event (#36274)Andrei Volykhin2025-04-027-60/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to specification https://html.spec.whatwg.org/multipage/webappapis.html#fire-a-click-event "Firing a click event at target means firing a synthetic pointer event named click at target" So need to replace synthetic mouse event with "click" type to pointer event. https://w3c.github.io/pointerevents/#the-click-auxclick-and-contextmenu-events https://www.w3.org/TR/uievents/#event-type-click Firing "click" event could be triggered from script or by UA: - element.click() (https://html.spec.whatwg.org/multipage/interaction.html#dom-click) - form implicit submission (https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#implicit-submission) - keyboard activation (space) --- - [x] ./mach build -d does not report any errors - [x] ./mach test-tidy does not report any errors - [x] There are tests for these changes tests/wpt/tests/shadow-dom/event-composed.html tests/wpt/tests/uievents/interface/click-event.htm Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
* libservo: Start moving `WindowMethods` to `WebViewDelegate` (#36223)Martin Robinson2025-04-0217-183/+235
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `WindowMethods` is used by the embedding layer to get information from the embedder. This change moves the functionality for getting screen size and `WebView` offsets to `WebViewDelegate`. This is important because `WebView`s might be on different screens or have different offsets on the screen itself, so it makes sense for this to be per-`WebView` and not global to the embedder. HiDPI and animation state functionality will move to the embedder in subsequent changes. Signed-off-by: Martin Robinson <mrobinson@igalia.com> <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes do not require tests because they just modify the `WebView` API surface a bit. <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Fix broken unit-test of webview (#36238)Shubham Gupta2025-04-022-9/+11
| | | | | | | | | | | This PR fixes the broken unit-test after [#35662](https://github.com/servo/servo/pull/35662) Testing: Verified locally and CI confirms too. Fixes: Migrate the test to use new API cc: @xiaochengh Signed-off-by: Shubham Gupta <shubham13297@gmail.com>
* libservo: Remove a couple `EmbedderMethods` (#36276)Martin Robinson2025-04-0127-206/+95
| | | | | | | | | | | | | | | | | | | | | | | - Remove `EmbedderMethods::get_user_agent_string`. This is now part of the `Preferences` data structure, which should allow it to be per-`WebView` in the future. - Remove `EmbedderMethods::get_version_string`. This was used to include some data along with WebRender captures about the Servo version. This isn't really necessary and it was done to replace code in the past that output the WebRender version, so also isn't what the original code did. I think we can just remove this entirely. The idea with these changes is that `EmbedderMethods` can be removed in a followup and the rest of the methods can be added to `ServoDelegate`. These two methods are ones that cannot be added to a delegate as they are used during `Servo` initialization. Testing: There is currently no testing for libservo. These changes are meant as preparation for adding a suite of `WebView` unit tests. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Remove meta-legacy-layout wpt tests (#36281)Tim van der Lippe2025-04-0110-20/+0
| | | | | | | | | These tests were related to the legacy layout engine which has been removed. Therefore, they are considered leftover and can be removed. Fixes #36277 Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>
* Turn `CSSStyleRule` into a `CSSGroupingRule` subclass (#36254)Oriol Brufau2025-04-018-76/+83
| | | | | | | | | | | | | | | Note that `StyleRule` may not have the `CssRules` readily available, they may need to be created. So the previous approach of providing `CSSGroupingRule` with the `CssRules` is no good: it would require writing them in advance, just in case they end up being used. Therefore, this removes the `CSSGroupingRule::rules` field. Instead, they are lazily obtained in `CSSGroupingRule::rulelist()` by downcasting and calling the appropriate method for the subclass. Testing: covered by WPT Fixes: #36245 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* build(deps): bump quick-xml from 0.37.3 to 0.37.4 (#36280)dependabot[bot]2025-04-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [quick-xml](https://github.com/tafia/quick-xml) from 0.37.3 to 0.37.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tafia/quick-xml/releases">quick-xml's releases</a>.</em></p> <blockquote> <h2>v0.37.4 - Derive more traits for readers</h2> <h2>What's Changed</h2> <h3>Misc Changes</h3> <ul> <li><a href="https://redirect.github.com/tafia/quick-xml/issues/852">#852</a>: Add <code>Debug</code> impl for <code>NsReader</code> and <code>Reader</code> and <code>Clone</code> impl for <code>NsReader</code></li> </ul> <p><a href="https://redirect.github.com/tafia/quick-xml/issues/852">#852</a>: <a href="https://redirect.github.com/tafia/quick-xml/pull/852">tafia/quick-xml#852</a></p> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/lukasfri"><code>@​lukasfri</code></a> made their first contribution in <a href="https://redirect.github.com/tafia/quick-xml/pull/852">tafia/quick-xml#852</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tafia/quick-xml/compare/v0.37.3...v0.37.4">https://github.com/tafia/quick-xml/compare/v0.37.3...v0.37.4</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tafia/quick-xml/blob/master/Changelog.md">quick-xml's changelog</a>.</em></p> <blockquote> <h2>0.37.4 -- 2025-04-01</h2> <h3>Misc Changes</h3> <ul> <li><a href="https://redirect.github.com/tafia/quick-xml/issues/852">#852</a>: Add <code>Debug</code> impl for <code>NsReader</code> and <code>Reader</code> and <code>Clone</code> impl for <code>NsReader</code></li> </ul> <p><a href="https://redirect.github.com/tafia/quick-xml/issues/852">#852</a>: <a href="https://redirect.github.com/tafia/quick-xml/pull/852">tafia/quick-xml#852</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tafia/quick-xml/commit/a81bac74d6c30b80024a4f9198e501d4aed29d3d"><code>a81bac7</code></a> Release 0.37.4</li> <li><a href="https://github.com/tafia/quick-xml/commit/cbcf835776d969472a57ae7418c45483f9090239"><code>cbcf835</code></a> Add some standard derives for Debug and Clone on Reader and NsReader.</li> <li>See full diff in <a href="https://github.com/tafia/quick-xml/compare/v0.37.3...v0.37.4">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=quick-xml&package-manager=cargo&previous-version=0.37.3&new-version=0.37.4)](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>
* build(deps): bump hyper-util from 0.1.10 to 0.1.11 (#36279)dependabot[bot]2025-04-011-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [hyper-util](https://github.com/hyperium/hyper-util) from 0.1.10 to 0.1.11. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/hyperium/hyper-util/releases">hyper-util's releases</a>.</em></p> <blockquote> <h2>v0.1.11</h2> <h2>What's Changed</h2> <ul> <li>fix(client): Fix <code>HTTP/2</code> websocket request by <a href="https://github.com/0x676e67"><code>@​0x676e67</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/165">hyperium/hyper-util#165</a></li> <li>builder: expose methods for determining if HTTP/1.1 or HTTP/2 support are enabled by <a href="https://github.com/tobz"><code>@​tobz</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/164">hyperium/hyper-util#164</a></li> <li>feat(server): support <code>auto_date_header</code>, <code>max_local_error_reset_streams</code>, and <code>ignore_invalid_headers</code>. by <a href="https://github.com/finnbear"><code>@​finnbear</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/161">hyperium/hyper-util#161</a></li> <li>fix(tracing): propagate span context by <a href="https://github.com/alpeb"><code>@​alpeb</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/166">hyperium/hyper-util#166</a></li> <li>feat(rt/tokio): additive tokio and hyper i/o adaptors by <a href="https://github.com/cratelyn"><code>@​cratelyn</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/170">hyperium/hyper-util#170</a></li> <li>feat(client): implement Connection for UnixStream and NamedPipeClient by <a href="https://github.com/seanmonstar"><code>@​seanmonstar</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/177">hyperium/hyper-util#177</a></li> <li>enable <code>HttpConnector::interface</code> on macOS and Solarish systems by <a href="https://github.com/hawkw"><code>@​hawkw</code></a> in <a href="https://redirect.github.com/hyperium/hyper-util/pull/176">hyperium/hyper-util#176</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/jlizen"><code>@​jlizen</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/159">hyperium/hyper-util#159</a></li> <li><a href="https://github.com/linyihai"><code>@​linyihai</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/160">hyperium/hyper-util#160</a></li> <li><a href="https://github.com/tobz"><code>@​tobz</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/164">hyperium/hyper-util#164</a></li> <li><a href="https://github.com/finnbear"><code>@​finnbear</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/161">hyperium/hyper-util#161</a></li> <li><a href="https://github.com/alpeb"><code>@​alpeb</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/166">hyperium/hyper-util#166</a></li> <li><a href="https://github.com/cratelyn"><code>@​cratelyn</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/168">hyperium/hyper-util#168</a></li> <li><a href="https://github.com/hawkw"><code>@​hawkw</code></a> made their first contribution in <a href="https://redirect.github.com/hyperium/hyper-util/pull/176">hyperium/hyper-util#176</a></li> </ul> <h2>Thanks</h2> <ul> <li><a href="https://github.com/tottoto"><code>@​tottoto</code></a></li> <li><a href="https://github.com/gretchenfrage"><code>@​gretchenfrage</code></a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/hyperium/hyper-util/blob/master/CHANGELOG.md">hyper-util's changelog</a>.</em></p> <blockquote> <h1>0.1.11 (2025-03-31)</h1> <ul> <li>Add <code>tracing</code> crate feature with support in <code>TokioExecutor</code>.</li> <li>Add <code>HttpConnector::interface()</code> support for macOS and Solarish systems.</li> <li>Add <code>rt::WithHyperIo</code> and <code>rt::WithTokioIo</code> combinators.</li> <li>Add <code>auto_date_header()</code> for auto server builder.</li> <li>Add <code>max_local_error_reset_streams()</code> for auto server builder.</li> <li>Add <code>ignore_invalid_headers()</code> for auto server builder.</li> <li>Add methods to determine if auto server is configured for HTTP/1 or HTTP/2.</li> <li>Implement <code>Connection</code> for <code>UnixStream</code> and <code>NamedPipeClient</code>.</li> <li>Fix HTTP/2 websocket requests sent through <code>legacy::Client</code>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/hyperium/hyper-util/commit/4c4e0622aaaceb43acceb20834a854faef86f65d"><code>4c4e062</code></a> v0.1.11</li> <li><a href="https://github.com/hyperium/hyper-util/commit/486e3b6bb471ae5c685f940d4225d2586e68e655"><code>486e3b6</code></a> bump license year</li> <li><a href="https://github.com/hyperium/hyper-util/commit/5831ace168fc243ce03b97b6f6f8a0de3aa68d17"><code>5831ace</code></a> feat(client): enable <code>HttpConnector::interface</code> on macOS and Solarish systems...</li> <li><a href="https://github.com/hyperium/hyper-util/commit/dc03ad41340d4e6d5d67a7d0b4a184cd73228fd8"><code>dc03ad4</code></a> feat(client): implement Connection for UnixStream and NamedPipeClient (<a href="https://redirect.github.com/hyperium/hyper-util/issues/177">#177</a>)</li> <li><a href="https://github.com/hyperium/hyper-util/commit/94afd503b4cb9f77195b8f12f9a327363db4add7"><code>94afd50</code></a> feat(rt/tokio): additive tokio and hyper i/o adaptors (<a href="https://redirect.github.com/hyperium/hyper-util/issues/170">#170</a>)</li> <li><a href="https://github.com/hyperium/hyper-util/commit/ef35d8ab08268a67a7a6b7478d9e155babe8c285"><code>ef35d8a</code></a> chore: pin once-cell on msrv ci job (<a href="https://redirect.github.com/hyperium/hyper-util/issues/175">#175</a>)</li> <li><a href="https://github.com/hyperium/hyper-util/commit/d51318df3461d40e5f5e5ca163cb3905ac960209"><code>d51318d</code></a> chore(client/legacy): remove unused <code>PoolClient::is_closed()</code> (<a href="https://redirect.github.com/hyperium/hyper-util/issues/169">#169</a>)</li> <li><a href="https://github.com/hyperium/hyper-util/commit/1290685fbb65d8f381c4cc0ec107d4e5abd6aebf"><code>1290685</code></a> chore(tokio): warn on dead code (<a href="https://redirect.github.com/hyperium/hyper-util/issues/168">#168</a>)</li> <li><a href="https://github.com/hyperium/hyper-util/commit/b90ff7d882d39a5d1d24c2da0e3c70d1e94f7035"><code>b90ff7d</code></a> feat(rt): add <code>tracing</code> feature that will propagate span context in TokioExec...</li> <li><a href="https://github.com/hyperium/hyper-util/commit/46826ea75836852fac53ff075a12cba7e290946e"><code>46826ea</code></a> feat(server): support <code>auto_date_header</code>, <code>max_local_error_reset_streams</code>, an...</li> <li>Additional commits viewable in <a href="https://github.com/hyperium/hyper-util/compare/v0.1.10...v0.1.11">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hyper-util&package-manager=cargo&previous-version=0.1.10&new-version=0.1.11)](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>
* canvas: Implement line dash setters and getters (#36257)Steven Novaryo2025-04-0121-92/+144
| | | | | | | | | | | Implement `setLineDash`, `getLineDash`, and `lineDashOffset` from `CanvasPathDrawingStyles` mixin, according to the spec https://html.spec.whatwg.org/multipage/canvas.html#canvaspathdrawingstyles. Testing: Existing WPT. --------- Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
* Implement CSSNestedDeclarations (#36248)Oriol Brufau2025-04-017-2/+120
| | | | | | | | | | | This is the CSSOM interface that represents a nested declarations rule. https://drafts.csswg.org/css-nesting/#the-cssnestrule Testing: `/_mozilla/mozilla/interfaces.https.html`. And once `CSSStyleRule` becomes a `CSSGroupingRule` subclass, this will be further covered by `/css/css-nestting/`. This is part of #36245 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* Enable CSS parent selector (`&`) (#36249)Oriol Brufau2025-04-0111-65/+12
| | | | | | | | | | Bumps Stylo to servo/stylo#164 Changelog: https://github.com/servo/stylo/compare/bc4717c7842ad59243f00ae76ba23f998c749b94...600b5c42970fdbe301f18c013a0f0ca4ed5f08db Testing: covered by WPT This is part of https://github.com/servo/servo/issues/36245 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* devtools: Fix id collisions by using incrementing counters (#35971)Delan Azabani2025-04-018-33/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Devtools clients need a `browserId`, `browsingContextID`, and `outerWindowID`, which correspond to WebViewId, BrowsingContextId, and PipelineId in Servo. These u32 values were previously derived from our sharded (u32,u32) id values by taking only the `index` (second u32) and ignoring the `namespace_id` (first u32), leading to collisions. This patch fixes that by mapping those Servo ids to sequential u32 values. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #35954 <!-- Either: --> - [x] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> --------- Signed-off-by: Delan Azabani <dazabani@igalia.com>
* Fix null realm assertion when activating a service worker (#36256)Josh Matthews2025-04-0150-114/+577
| | | | | | | | | | | Ensure there is an active realm when dispatching the `activation` DOM event to the ServiceWorker global. Testing: Existing WPT coverage. Fixes: #36114 Fixes: #36235 Fixes: #36231 Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Use `RegExpFlag_UnicodeSets` when validating regular expressions in ↵MDCODE2472025-04-013-33/+3
| | | | | | | | | | | | | | | `HTMLInputElement` (#36236) Changed `RegExpFlag_Unicode` to `RegExpFlag_UnicodeSets` in all instances. Testing: Ran `./mach test-wpt tests/wpt/tests/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html` and all tests passed successfully. Fixes: #36075 --------- Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>
* Add SimulateColorScheme command and script thread handling (#36253)Usman Yahaya Baba2025-04-014-0/+13
| | | | | | | | | | | | | | | | Implements Steps 2-3 of #35867: - Adds `SimulateColorScheme` to `DevtoolScriptControlMsg` for light/dark mode simulation. - Handles it in `ScriptThread` with `handle_theme_change` to toggle themes. Testing: This PR does not require testing because it only adds infrastructure (command and handler) but doesn’t yet integrate with devtools actors. Fixes: Part of #35867 (https://github.com/servo/servo/issues/35867) --------- Signed-off-by: Uthman Yahaya Baba <uthmanyahayababa@gmail.com>
* Remove ServoParser::do_parse_sync (#36255)Simon Wülker2025-04-011-8/+0
| | | | | | The indirection through ServoParser::parse_sync does nothing, so the method can simply be called directly. Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Enable css-nesting WPT tests (#36246)Oriol Brufau2025-03-3125-1/+217
| | | | | | | | So that we can see the improvement when enabling the feature. Testing: This PR enables tests This is part of #36245 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* build(deps): bump darling from 0.20.10 to 0.20.11 (#36244)dependabot[bot]2025-03-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [darling](https://github.com/TedDriggs/darling) from 0.20.10 to 0.20.11. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/TedDriggs/darling/releases">darling's releases</a>.</em></p> <blockquote> <h2>v0.20.11</h2> <ul> <li>Support <code>#[darling(with = ...)]</code> on the <code>data</code> field when deriving <code>FromDeriveInput</code>. This allows the use of simpler receiver types, such as a <code>Vec</code> of enum variants.</li> <li>Bump version of <code>proc-macro2</code> to 1.0.86.</li> <li>Accept closures for <code>#[darling(with = ...)]</code> on fields in <code>FromDeriveInput</code>, <code>FromMeta</code>, <code>FromField</code>, etc. <a href="https://redirect.github.com/TedDriggs/darling/issues/309">#309</a></li> <li>Add <code>darling::util::Callable</code> to accept a path or closure as a meta-item expression</li> <li>Add <code>#[darling(from_word = ...)]</code> and <code>#[darling(from_none = ...)]</code> to control shorthand and fallback behaviors for structs and enums deriving <code>FromMeta</code> <a href="https://redirect.github.com/TedDriggs/darling/issues/320">#320</a></li> <li>Add <code>FromMeta</code> impl for <code>syn::ExprRange</code> <a href="https://github.com/TedDriggs/issues/329">#329</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/TedDriggs/darling/blob/master/CHANGELOG.md">darling's changelog</a>.</em></p> <blockquote> <h2>v0.20.11 (March 28, 2025)</h2> <ul> <li>Support <code>#[darling(with = ...)]</code> on the <code>data</code> field when deriving <code>FromDeriveInput</code>. This allows the use of simpler receiver types, such as a <code>Vec</code> of enum variants.</li> <li>Bump version of <code>proc-macro2</code> to 1.0.86.</li> <li>Accept closures for <code>#[darling(with = ...)]</code> on fields in <code>FromDeriveInput</code>, <code>FromMeta</code>, <code>FromField</code>, etc. <a href="https://redirect.github.com/TedDriggs/darling/issues/309">#309</a></li> <li>Add <code>darling::util::Callable</code> to accept a path or closure as a meta-item expression</li> <li>Add <code>#[darling(from_word = ...)]</code> and <code>#[darling(from_none = ...)]</code> to control shorthand and fallback behaviors for structs and enums deriving <code>FromMeta</code> <a href="https://redirect.github.com/TedDriggs/darling/issues/320">#320</a></li> <li>Add <code>FromMeta</code> impl for <code>syn::ExprRange</code> <a href="https://github.com/TedDriggs/issues/329">#329</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/TedDriggs/darling/commit/82a51e0b65b158de02ffb5d753ea4cd03529743b"><code>82a51e0</code></a> Bump version to 0.20.11</li> <li><a href="https://github.com/TedDriggs/darling/commit/61834da6a27ed75306a6d1aaf7db7c425f9d185c"><code>61834da</code></a> Impl FromMeta for syn::ExprRange (<a href="https://redirect.github.com/TedDriggs/darling/issues/332">#332</a>)</li> <li><a href="https://github.com/TedDriggs/darling/commit/f18d5d53883ee62377f2374bfb272b8d67e03754"><code>f18d5d5</code></a> Add explicit implementations of <code>FromMeta</code> methods to <code>SpannedValue</code> and `Ove...</li> <li><a href="https://github.com/TedDriggs/darling/commit/a6e5f524b234a5694b89549e11f2aed789c9461e"><code>a6e5f52</code></a> Move generation of from_word body for unit variants</li> <li><a href="https://github.com/TedDriggs/darling/commit/c8c82015214cdf4289e68da07482db267e77b840"><code>c8c8201</code></a> Add from_word and from_none options</li> <li><a href="https://github.com/TedDriggs/darling/commit/3a848ca2821ee34973f0d7407c1860a57d418f84"><code>3a848ca</code></a> Extract path-or-closure to darling::util::Callable</li> <li><a href="https://github.com/TedDriggs/darling/commit/fa552e4fd74319dc7c5a03a2b9ed28bfd33c61c4"><code>fa552e4</code></a> Error if <code>attrs</code> field is declared and <code>forward_attrs</code> is missing.</li> <li><a href="https://github.com/TedDriggs/darling/commit/af24bdf87a824eadb365c32441171bf2216ddf6e"><code>af24bdf</code></a> Reject extra data passed to unit enum variants</li> <li><a href="https://github.com/TedDriggs/darling/commit/b7a248f8ee4503a949de0730170934587dccfb8e"><code>b7a248f</code></a> Fix clippy violations by removing unnecessary iifetimes</li> <li><a href="https://github.com/TedDriggs/darling/commit/b746a0c4a92b3c357338c430bdfd8ba9f3eafab6"><code>b746a0c</code></a> Accept a closure for <code>with</code> in lieu of a path for fields (<a href="https://redirect.github.com/TedDriggs/darling/issues/310">#310</a>)</li> <li>Additional commits viewable in <a href="https://github.com/TedDriggs/darling/compare/v0.20.10...v0.20.11">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=darling&package-manager=cargo&previous-version=0.20.10&new-version=0.20.11)](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>
* build(deps): bump socket2 from 0.5.8 to 0.5.9 (#36243)dependabot[bot]2025-03-311-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [socket2](https://github.com/rust-lang/socket2) from 0.5.8 to 0.5.9. <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 /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=socket2&package-manager=cargo&previous-version=0.5.8&new-version=0.5.9)](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>
* Track the active tab and browsing context for devtools (#36168)Usman Yahaya Baba2025-03-313-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <!-- Please describe your changes on the following line: --> ---Part of #35867, per Step 5 suggestion. This PR: - Adds active_tab (via RefCell) to RootActor, updated in get_tab_msg_by_browser_id. - Adds browsing_context() helper to TabDescriptorActor. - Adds actor()`getter to TabDescriptorActorMsg for access in root.rs. -Creates the chain (Root - Tab - BrowsingContext) for routing colorSchemeSimulation. <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [X ] `./mach build -d` does not report any errors - [X ] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [X] These changes do not require tests because they’re structural setup for the actor chain and don’t change the system's behavior yet. <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> --------- Signed-off-by: Uthman Yahaya Baba <uthmanyahayababa@gmail.com>
* build(deps): bump iana-time-zone from 0.1.62 to 0.1.63 (#36242)dependabot[bot]2025-03-311-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [iana-time-zone](https://github.com/strawlab/iana-time-zone) from 0.1.62 to 0.1.63. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/strawlab/iana-time-zone/blob/main/CHANGELOG.md">iana-time-zone's changelog</a>.</em></p> <blockquote> <h2>[0.1.63] - 2025-03-31</h2> <h3>Changes</h3> <ul> <li>Bump MSRV (minimum supported rust version) to 1.62 (<a href="https://redirect.github.com/strawlab/iana-time-zone/pull/131">#131</a>)</li> <li>Bump <code>windows-core</code> to <code>0.56-0.61</code> range (<a href="https://redirect.github.com/strawlab/iana-time-zone/pull/131">#131</a>, <a href="https://redirect.github.com/strawlab/iana-time-zone/pull/133">#133</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/strawlab/iana-time-zone/commit/6adcd016a82fc11e6ee6c1a7f8086d2330ea747a"><code>6adcd01</code></a> Bump version number to 0.1.63</li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/16f281a63e91ad9a1b210244aed49fad5c488c04"><code>16f281a</code></a> Merge pull request <a href="https://redirect.github.com/strawlab/iana-time-zone/issues/133">#133</a> from MarijnS95/windows-0.56</li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/798e4319253c6e183583bc75ccad6cea7fe98068"><code>798e431</code></a> Bump <code>windows-core</code> range to <code>0.56-0.61</code> and regenerate with <code>0.59</code></li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/66033d9a0fbd863676635052eb84d91554dc4b29"><code>66033d9</code></a> Bump <code>windows-core</code> to <code>0.56</code></li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/10c843db67ffc5c4aa8e729d9428d61e9540f11c"><code>10c843d</code></a> Merge pull request <a href="https://redirect.github.com/strawlab/iana-time-zone/issues/131">#131</a> from MarijnS95/windows-core-0.54</li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/a26e540edbfa7aef3288ab6da97a118a54bbc9e2"><code>a26e540</code></a> Bump <code>windows-core</code> to <code>0.53-0.54</code> range</li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/5bad55850b40fcf82ceafac04ce7933c3fceb966"><code>5bad558</code></a> WIP: Bump MSRV to 1.62</li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/343f31b804314027ca6bc32a1d1aaa5200ef1651"><code>343f31b</code></a> Merge pull request <a href="https://redirect.github.com/strawlab/iana-time-zone/issues/164">#164</a> from strawlab/dev/astraw-fix-aix</li> <li><a href="https://github.com/strawlab/iana-time-zone/commit/995347ff2be619d6446963a7c0aa55b8e212b66d"><code>995347f</code></a> AIX: remove unused code</li> <li>See full diff in <a href="https://github.com/strawlab/iana-time-zone/compare/v0.1.62...v0.1.63">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=iana-time-zone&package-manager=cargo&previous-version=0.1.62&new-version=0.1.63)](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>
* build(deps): bump once_cell from 1.21.2 to 1.21.3 (#36241)dependabot[bot]2025-03-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [once_cell](https://github.com/matklad/once_cell) from 1.21.2 to 1.21.3. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/matklad/once_cell/blob/master/CHANGELOG.md">once_cell's changelog</a>.</em></p> <blockquote> <h2>1.21.3</h2> <ul> <li>Outline more initialization in <code>race</code>: <a href="https://redirect.github.com/matklad/once_cell/pull/284">#284</a>, <a href="https://redirect.github.com/matklad/once_cell/pull/285">#285</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/matklad/once_cell/commit/29e3d93cf0367fc6c295785b282b8101127a3e16"><code>29e3d93</code></a> Merge pull request <a href="https://redirect.github.com/matklad/once_cell/issues/286">#286</a> from briansmith/b/once-ref-dry</li> <li><a href="https://github.com/matklad/once_cell/commit/a206950676c638fdb65a1298a293ecffef78fbf9"><code>a206950</code></a> Prepare for 1.21.3 release.</li> <li><a href="https://github.com/matklad/once_cell/commit/17d4a9b4336f6393b596d1e80772371623c1502d"><code>17d4a9b</code></a> DRY <code>race::OnceRef::{get_or_try_init, set}</code>.</li> <li><a href="https://github.com/matklad/once_cell/commit/01b1d560f43cf6b96718d43d12d1961524ad5798"><code>01b1d56</code></a> Merge pull request <a href="https://redirect.github.com/matklad/once_cell/issues/285">#285</a> from briansmith/b/once-ref-cold</li> <li><a href="https://github.com/matklad/once_cell/commit/a851cc4788eadb2534bc0e3e7468091e0bc795f3"><code>a851cc4</code></a> Mark initialization of <code>OnceRef::get_or_try_init</code> cold.</li> <li><a href="https://github.com/matklad/once_cell/commit/2447a93fbe82808997e9ddd8117e39c53290fd06"><code>2447a93</code></a> Merge pull request <a href="https://redirect.github.com/matklad/once_cell/issues/281">#281</a> from briansmith/b/init-inner</li> <li><a href="https://github.com/matklad/once_cell/commit/c294d64f9c52239713e8ee67ab42766066c2d437"><code>c294d64</code></a> Merge pull request <a href="https://redirect.github.com/matklad/once_cell/issues/280">#280</a> from briansmith/b/self</li> <li><a href="https://github.com/matklad/once_cell/commit/5f0fdd427a6e7ede57458ec3393656ae73de473a"><code>5f0fdd4</code></a> Merge pull request <a href="https://redirect.github.com/matklad/once_cell/issues/283">#283</a> from briansmith/b/cast_mut</li> <li><a href="https://github.com/matklad/once_cell/commit/899e3195234354d9ef92a0e6a466f6d6587e1b0f"><code>899e319</code></a> Merge pull request <a href="https://redirect.github.com/matklad/once_cell/issues/284">#284</a> from briansmith/b/dry-get</li> <li><a href="https://github.com/matklad/once_cell/commit/90da60ba44553d893068f42155ba6778dbcf49fb"><code>90da60b</code></a> Mark initialization of <code>OnceBox::get_or_try_init</code> cold.</li> <li>Additional commits viewable in <a href="https://github.com/matklad/once_cell/compare/v1.21.2...v1.21.3">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=once_cell&package-manager=cargo&previous-version=1.21.2&new-version=1.21.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) --- <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>
* dom: Set "composed" flag on construction for some event types (#36239)Andrei Volykhin2025-03-3110-21/+24
| | | | | | | | | | | | | | | | | | | | "Composed" flag (https://dom.spec.whatwg.org/#composed-flag) should be properly set on event construction phase from optional "EventInit" dictionary (https://dom.spec.whatwg.org/#dom-eventinit-composed). The limited set of event types (Custom/Error/Focus/Mouse) will be affected by this CL (used in WPT tests). --- - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] There are WPT shadow-dom tests which have new issues related to event "relatedTarget" property tests/wpt/tests/shadow-dom/event-composed-path-with-related-target.html tests/wpt/tests/shadow-dom/event-with-related-target.html Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
* script: Fix resize observer depth calculation for Shadow DOM. (#36230)Josh Matthews2025-03-312-6/+1
| | | | | | | | | Follow the specification more closely by using the flat tree when calculating depth for the resize observer. Testing: Newly passing WPT test. Fixes: #36092 Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Remove interior mutability from `ResizeObservation` (#36233)Simon Wülker2025-03-311-17/+16
| | | | | | This is struct is always already wrapped in a RefCell by `ResizeObserver`. It is not exposed to JS itself, so it doesn't need `RefCell`s. Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Refuse to provide partial response from earlier ranged request to API that ↵Simon Wülker2025-03-314-13/+51
| | | | | | | did not make a range request (#36227) Part of https://github.com/servo/servo/issues/33616 Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Fixed the crash issue when the openharmony web component is adapted. (#36229)Bi Fuguo2025-03-311-1/+2
| | | Signed-off-by: kongbai1996 <1782765876@qq.com>