These algorithms are used to check whether an attribute/property can
accept a Trusted Type.
Part of #36258
Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>
Move parsing of Refresh values to Document.
Send Refresh header to Document and have meta tags reuse the logic.
I transplanted the existing Regex and made some updates so that it
passed all the existing parser tests.
I added the comments that made sense but it is not very clean to add
many comments within the regex.
Testing: There are existing WPT tests
---------
Signed-off-by: Sebastian C <sebsebmc@gmail.com>
[OHOS]Bugfix: unimplemented WebviewDelegate.sceen_geometry causes failed
page loading
this [PR 36223](https://github.com/servo/servo/pull/36223) causes that
some page can not be loaded on ohos platform. The newly added
WebviewDelegate.screen_geometry is unimplemented at ohos platform
Besides, this commit also fix the bug that failed to copy the prefs.json
to cache dir when the servo is started at the first time after an ohos
application is installed, due to the cache dir is not existed.
@mrobinson @jschwe
Testing: the ohos platform test demo hap
Fixes: No issue exists i can find
Signed-off-by: coding-joedow <ibluegalaxy_taoj@163.com>
This PR addresses a crash in text input element due to a hack to prevent
text input being trimmed.
The updated behavior will only add `zero width space` unicode character
to the node if there's no text content instead of adding it constantly.
Also by adding the same `zero width space` unicode character to text
area when there's no text content within will allow text area element to
properly display caret.
<img width="197" alt="截圖 2025-04-11 中午12 51 00"
src="https://github.com/user-attachments/assets/10bc7314-9aa3-49df-baac-ef26d39a96d8"
/>
This PR also addresses issues with multiple glyph runs:
https://github.com/user-attachments/assets/658db56f-b166-47ec-bc77-c6c13114d669
Testing: This PR is tested using:
- `./mach run -d 'data:text/html,<input id="input_element"
value="xxxxxxxxxxxxxxxxxxxx">'`
- `./mach run -d 'data:text/html,<textarea id="input_element"
value="xxxxxxxxxxxxxxxxxxxx">'`
without causing crashes, while the results should be covered by WPT
tests
Fixes: https://github.com/servo/servo/issues/36449
---------
Signed-off-by: DK Liao <dklassic@gmail.com>
add CanGc as argument to methods in Element
Testing: These changes do not require tests because they are a refactor.
Addresses part of https://github.com/servo/servo/issues/34573.
Signed-off-by: Yerkebulan Tulibergenov <yerkebulan@gmail.com>
Bumps [rustls](https://github.com/rustls/rustls) from 0.23.25 to
0.23.26.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="88dccec476"><code>88dccec</code></a>
Prepare 0.23.26</li>
<li><a
href="0ab530f85d"><code>0ab530f</code></a>
Detect and error on faulty <code>io::Write::write_vectored</code></li>
<li><a
href="c5b9b10147"><code>c5b9b10</code></a>
Rework further tests to use encoding module</li>
<li><a
href="d71046e992"><code>d71046e</code></a>
Rework QUIC tests to use new encoding module</li>
<li><a
href="0f3c823f75"><code>0f3c823</code></a>
Rework SNI tests to use new test-only TLS encoder</li>
<li><a
href="99db311d7e"><code>99db311</code></a>
Replace hand-written encodings with <code>encoding</code> module</li>
<li><a
href="334760fb06"><code>334760f</code></a>
Invert working of <code>SignatureScheme::supported_in_tls13</code></li>
<li><a
href="68d6ef21eb"><code>68d6ef2</code></a>
Use tlswg name for draft-kwiatkowski-tls-ecdhe-mlkem</li>
<li><a
href="c1fc0f424c"><code>c1fc0f4</code></a>
Take semver-compatible updates</li>
<li><a
href="d3b810d6b6"><code>d3b810d</code></a>
build(deps): bump openssl from 0.10.71 to 0.10.72</li>
<li>Additional commits viewable in <a
href="https://github.com/rustls/rustls/compare/v/0.23.25...v/0.23.26">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Adds support for both the content and the IDL attribute.
Note this doesn't cover dynamic updates to `document.styleSheets` and
the owner node of the sheet.
Testing: Covered by WPT
Fixes: #26739
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
This PR introduces an initial, straightforward implementation for
displaying text selection and the caret.
This is achieved by passing the selection range and insertion point
index down to `TextFragment`, along with the starting offset of each
`TextFragment` to determine the proper range for displaying the caret
and text selection. Additionally, the `selected_style` was passed into
`TextFragment` to specify the background color.
During the final build phase, although whitespace is typically ignored
when constructing glyphs, we still need to retrieve it to render both
the caret and text selection at the correct location. This ensures that
whitespace is not overlooked when the `TextFragment` contains an
insertion point or selection range.
There are several improvements yet to be made, including:
- The caret is static and does not flash.
- The caret is not rendered when the input field is empty. (I suppose
there should be an easy fix somewhere but I haven't found it yet)
**Working Examples**
macOS
https://github.com/user-attachments/assets/f3622cbe-9fa6-40c0-b2d8-b3a8f9842c28
Windows
https://github.com/user-attachments/assets/9b008a0d-0011-4c76-a2e2-0e35869a216c
Linux
[Screencast from 03-07-2025 11_05_41
AM.webm](https://github.com/user-attachments/assets/09a311ad-f975-4450-a66c-b20be525a5ed)
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix part of #33237 (But the cursor isn't blinking
yet)
- [x] These changes do not require tests because there's no behavior
change
Signed-off-by: DK Liao <dklassic@gmail.com>
Manually call `git rev-parse --short HEAD` to retrieve the commit hash,
instead of using Emitter from vergen_git2. This helps remove
dependencies and shorten compile time.
Testing: It doesn't require tests because it is a refactoring for
removing dependencies
Fixes: #36435
Signed-off-by: Kingsley Yung <kingsley@kkoyung.dev>
Extending the original set from #36402 since there are additional tests
relevant to the work happening in #36409 and #36363.
Testing: New tests in CI.
Fixes: Part of https://github.com/servo/servo/issues/4577
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Use `is_zero()` instead of comparing with `Au::Zero()` for zero checks.
Testing: This change does not cause behaviour change, a test is not
necessary.
Fixes: #36300
---------
Signed-off-by: Barigbue <barigbuenbira@gmail.com>
This changes removes animation tracking from the `WindowMethods` trait
and moves it to `ServoDelegate` and `WebViewDelegate`.
- Animation changes per-`WebView` are now triggered in the compositor
only when the value is updated there, rather than right after ticking
animations.
- Both `WebView` and `Servo` now expose an `animation()` method, so
tracking animation state actually becomes unecessary in many cases,
such as that of desktop servoshell, which can just read the value
when the event loop spins.
Testing: No tests necessary as the API layer is still untested. Later,
tests will be added for the `WebView` API and this can be tested then.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Bumps [xml-rs](https://github.com/kornelski/xml-rs) from 0.8.25 to
0.8.26.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="250211cffc"><code>250211c</code></a>
Bump</li>
<li><a
href="7eebb96e87"><code>7eebb96</code></a>
DRY</li>
<li><a
href="f444155cc7"><code>f444155</code></a>
Never buffer more than 4 bytes for broken encodings</li>
<li><a
href="17225aa476"><code>17225aa</code></a>
Warn about io::Read overhead</li>
<li><a
href="20e0318f14"><code>20e0318</code></a>
Clarify the error is intentional</li>
<li>See full diff in <a
href="https://github.com/kornelski/xml-rs/compare/0.8.25...0.8.26">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Fixes an oversight of #36097, in which converting to a Promise would
fail if the value passed wasn't actually a Promise, while in binding
code we actually call `Promise::new_resolved` on the value.
Testing: There are wpt tests that should pass now
---------
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
Now that `webxr` is integrated into the Servo directory, `webxr` can
depend on `embedder_traits` instead of having it re-export this type
conditionally (and sometimes duplicating it).
Testing: This just moves a data type, so no tests are necessary.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Bumps [gilrs-core](https://gitlab.com/gilrs-project/gilrs) from 0.6.1 to
0.6.4.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d66688c571"><code>d66688c</code></a>
Prepare for gilrs-core 0.6.4</li>
<li><a
href="e5131234ca"><code>e513123</code></a>
core: Expand <code>windows</code> version range to include
<code>0.61</code> release</li>
<li><a
href="5bc62a555a"><code>5bc62a5</code></a>
Prepare for gilrs-core 0.6.3</li>
<li><a
href="634c36805c"><code>634c368</code></a>
Update docs to reflect switch to Windows Gaming Input and include some
useful...</li>
<li><a
href="cb93e0425a"><code>cb93e04</code></a>
Fix some differences between readme and crate docs</li>
<li><a
href="21853a82b1"><code>21853a8</code></a>
Fix panic on MacOS</li>
<li><a
href="aa64e7c6cc"><code>aa64e7c</code></a>
ci: Generate Cargo.lock with MSRV-aware resolver</li>
<li><a
href="ab717edb2d"><code>ab717ed</code></a>
core: Expand <code>windows</code> version range to include
<code>0.60</code> release</li>
<li><a
href="d63f407458"><code>d63f407</code></a>
Prepare for gilrs-core 0.6.2 release</li>
<li><a
href="0bf02ceeaf"><code>0bf02ce</code></a>
Don’t unwrap result of NonRoamableId</li>
<li>Additional commits viewable in <a
href="https://gitlab.com/gilrs-project/gilrs/compare/gilrs-core-v0.6.1...gilrs-core-v0.6.4">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This starts to enable the fragment cache for all layout modes, except
grid. The main tricky bit here is that update points are absolutes and
these need to be laid out again in their containing blocks. We punt a
little bit on this, by forcing ancestors of update points to rebuild
their Fragments. This is just the first step.
Testing: We do not currently have layout performance tests, but will try
to run some tests manually later. Behavior is covered by the WPT.
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>
Add `wpt` alias for `linux-wpt` in try_parser, because that's the what I
have in muscle memory.
Testing: Tested with new try_parser unit tests.
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
This fixes errors when running `./mach clippy -r -p layout_2020` and
`./mach clippy -r -p script`.
Also addressing an unused import warning when running the latter.
Testing: These changes do not require tests because it's just a compile
error fix.
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Bumps [miniz_oxide](https://github.com/Frommi/miniz_oxide) from 0.8.7 to
0.8.8.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/Frommi/miniz_oxide/blob/master/CHANGELOG.md">miniz_oxide's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/Frommi/miniz_oxide/compare/0.8.7..0.8.8">0.8.8</a>
- 2025-04-08</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>(inflate)</strong> fix possible <code>attempt to subtract
with overflow</code> (<a
href="https://redirect.github.com/Frommi/miniz_oxide/issues/172">#172</a>)
- (<a
href="db85297b64">db85297</a>)
- Tymoteusz Kubicz</li>
<li><strong>(inflate)</strong> use wrapping instead of saturating in
transfer and add test cate for overflow panic in debug mode - (<a
href="4ed4535230">4ed4535</a>)
- oyvindln</li>
<li>disable a bunch more stuff that is not used when compiled as part of
rustc - (<a
href="bf3cca66bf">bf3cca6</a>)
- oyvindln</li>
<li>add fuzz target for running via flate2 - (<a
href="adadb9f538">adadb9f</a>)
- oyvindln</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f177ab233c"><code>f177ab2</code></a>
bump version and changelog</li>
<li><a
href="f1082df11e"><code>f1082df</code></a>
add flate2 fuzz target code</li>
<li><a
href="adadb9f538"><code>adadb9f</code></a>
fix: add fuzz target for running via flate2</li>
<li><a
href="bf3cca66bf"><code>bf3cca6</code></a>
fix: disable a bunch more stuff that is not used when compiled as part
of rustc</li>
<li><a
href="4ed4535230"><code>4ed4535</code></a>
fix(inflate): use wrapping instead of saturating in transfer and add
test cat...</li>
<li><a
href="db85297b64"><code>db85297</code></a>
fix(inflate): fix possible <code>attempt to subtract with
overflow</code> (<a
href="https://redirect.github.com/Frommi/miniz_oxide/issues/172">#172</a>)</li>
<li>See full diff in <a
href="https://github.com/Frommi/miniz_oxide/compare/0.8.7...0.8.8">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
copy generated `include!`d files from script_bindings's OUT_DIR, to
script's OUT_DIR to allow Rust Analyzer to load them.
This is done to bypass limitation of Rust Analyzer:
https://github.com/rust-lang/rust-analyzer/issues/17040
Also build script will now be rerun only when there are actual changes
to concrete bindings due to emitted `cargo::rerun-if-changed` (not for
each change in script crate).
Testing: It compiles so it works, I tested manually and RA now works as
expected (although we need to from type alias to concrete union-types
definitions)
Fixes:
https://servo.zulipchat.com/#narrow/channel/263398-general/topic/rust-analyzer.20failed.20to.20include.20codes.20in.20script_bindings
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Remove the `unsafe` annotation from the `cross_origin_get` function and
add `unsafe` blocks around unsafe code within the function
Testing: Testing is not required as this change does not alter
behaviour.
Fixes: #36358
---------
Signed-off-by: Barigbue <barigbuenbira@gmail.com>
[//]: # (dependabot-start)
⚠️ **Dependabot is rebasing this PR** ⚠️
Rebasing might not happen immediately, so don't worry if this takes some
time.
Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [winnow](https://github.com/winnow-rs/winnow) from 0.7.4 to 0.7.6.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/winnow-rs/winnow/blob/main/CHANGELOG.md">winnow's
changelog</a>.</em></p>
<blockquote>
<h2>[0.7.6] - 2025-04-07</h2>
<h3>Features</h3>
<ul>
<li>Add <code>TokenSlice::previous_tokens</code></li>
</ul>
<h2>[0.7.5] - 2025-04-07</h2>
<h3>Features</h3>
<ul>
<li>Add <code>Stream::next_slice_unchecked</code> and
<code>Stream::peek_slice_unchecked</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1c31fde9d4"><code>1c31fde</code></a>
chore: Release</li>
<li><a
href="9b42e02de6"><code>9b42e02</code></a>
docs: Update changelog</li>
<li><a
href="35f6c04aed"><code>35f6c04</code></a>
Merge pull request <a
href="https://redirect.github.com/winnow-rs/winnow/issues/765">#765</a>
from epage/prev</li>
<li><a
href="0055561a03"><code>0055561</code></a>
feat(stream): Add access to previous tokens</li>
<li><a
href="85cef7e0f8"><code>85cef7e</code></a>
chore: Release</li>
<li><a
href="5886515d13"><code>5886515</code></a>
docs: Update changelog</li>
<li><a
href="582d253875"><code>582d253</code></a>
Merge pull request <a
href="https://redirect.github.com/winnow-rs/winnow/issues/764">#764</a>
from epage/unchecked</li>
<li><a
href="3b13a4ffce"><code>3b13a4f</code></a>
feat(stream): Allow unchecked slicing</li>
<li><a
href="38458d280e"><code>38458d2</code></a>
refactor(stream): Simplify peek_slice</li>
<li><a
href="a5345d58c5"><code>a5345d5</code></a>
Merge pull request <a
href="https://redirect.github.com/winnow-rs/winnow/issues/760">#760</a>
from epage/repeat</li>
<li>Additional commits viewable in <a
href="https://github.com/winnow-rs/winnow/compare/v0.7.4...v0.7.6">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
[//]: # (dependabot-start)
⚠️ **Dependabot is rebasing this PR** ⚠️
Rebasing might not happen immediately, so don't worry if this takes some
time.
Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [jiff](https://github.com/BurntSushi/jiff) from 0.2.5 to 0.2.6.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/BurntSushi/jiff/blob/master/CHANGELOG.md">jiff's
changelog</a>.</em></p>
<blockquote>
<h1>0.2.6 (TBD)</h1>
<p>TODO</p>
<p>Enhancements:</p>
<ul>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/315">#315</a>:
Add support for automatically finding the tzdb on Illumos.</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/305">#305</a>:
Fixed <code>Zoned</code> rounding on days with DST time zone
transitions.</li>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/309">#309</a>:
Fixed bug where <code>TimeZone::preceding</code> could omit historical
time zone
transitions for time zones that have eliminated DST in the present.</li>
<li><a
href="https://redirect.github.com/BurntSushi/jiff/issues/312">#312</a>:
Fixed <code>nth_weekday_in_month</code>, where it would sometimes
incorrectly return an
error.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0bdb3b0207"><code>0bdb3b0</code></a>
0.2.6</li>
<li><a
href="6c1cd0e1b0"><code>6c1cd0e</code></a>
changelog: 0.2.6</li>
<li><a
href="2bd7148090"><code>2bd7148</code></a>
tz: add <code>/usr/share/lib/zoneinfo</code></li>
<li><a
href="7bbe21a6cb"><code>7bbe21a</code></a>
civil: fix <code>Date::nth_weekday_of_month</code></li>
<li><a
href="f41d586445"><code>f41d586</code></a>
shared: remove pointless <code>as_ref</code></li>
<li><a
href="9aeb3f1328"><code>9aeb3f1</code></a>
changelog: add entry for <a
href="https://redirect.github.com/BurntSushi/jiff/issues/309">#309</a></li>
<li><a
href="9259f79099"><code>9259f79</code></a>
tz: fix retrieval of past time zone transitions for
<code>America/Sao_Paulo</code></li>
<li><a
href="2b84020287"><code>2b84020</code></a>
zoned: fix rounding to "days" when near a time zone
transition</li>
<li><a
href="a22abc7617"><code>a22abc7</code></a>
bench: add benchmarks for constructing a timestamp type</li>
<li><a
href="ef5ee45a1b"><code>ef5ee45</code></a>
span: avoid cloning when rounding</li>
<li>Additional commits viewable in <a
href="https://github.com/BurntSushi/jiff/compare/jiff-static-0.2.5...jiff-static-0.2.6">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [half](https://github.com/VoidStarKat/half-rs) from 2.5.0 to
2.6.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/VoidStarKat/half-rs/releases">half's
releases</a>.</em></p>
<blockquote>
<h2>2.6.0</h2>
<h3>Changed</h3>
<ul>
<li>Fixed some incorrect minimum supported versions of dependencies that
weren't caught due to
improper <code>Cargo.lock</code>:
<ul>
<li><code>num-traits</code> 0.2.14 -> 0.2.16</li>
<li><code>zerocopy</code> 0.8.0 -> 0.8.23</li>
<li><code>arbitrary</code> 1.3.2 -> 1.4.1</li>
</ul>
</li>
</ul>
<h3>Added</h3>
<ul>
<li><code>f16</code> and <code>bf16</code> now implement
<code>Immutable</code> and <code>KnownLayout</code> for
<code>zerocopy</code> crate. By [<a
href="https://github.com/usamoi"><code>@usamoi</code></a>].</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/VoidStarKat/half-rs/blob/main/CHANGELOG.md">half's
changelog</a>.</em></p>
<blockquote>
<h2>[2.6.0] - 2024-04-08 <!-- raw HTML omitted --><!-- raw HTML omitted
--></h2>
<h3>Changed</h3>
<ul>
<li>Fixed some incorrect minimum supported versions of dependencies that
weren't caught due to
improper <code>Cargo.lock</code>:
<ul>
<li><code>num-traits</code> 0.2.14 -> 0.2.16</li>
<li><code>zerocopy</code> 0.8.0 -> 0.8.23</li>
<li><code>arbitrary</code> 1.3.2 -> 1.4.1</li>
</ul>
</li>
</ul>
<h3>Added</h3>
<ul>
<li><code>f16</code> and <code>bf16</code> now implement
<code>Immutable</code> and <code>KnownLayout</code> for
<code>zerocopy</code> crate. By [<a
href="https://github.com/usamoi"><code>@usamoi</code></a>].</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b1894e9550"><code>b1894e9</code></a>
Bump version to 2.6.0</li>
<li><a
href="ec91af59c8"><code>ec91af5</code></a>
Fix min dependency versions</li>
<li><a
href="bee721b27a"><code>bee721b</code></a>
update changelog</li>
<li><a
href="2ba131f218"><code>2ba131f</code></a>
Merge pull request <a
href="https://redirect.github.com/VoidStarKat/half-rs/issues/125">#125</a>
from tensorchord/2.5.0-zerocopy</li>
<li><a
href="55c36c1b2c"><code>55c36c1</code></a>
Update unmaintained/outdated CI actions</li>
<li><a
href="7580fd6ed1"><code>7580fd6</code></a>
Update repository link</li>
<li><a
href="9dc2559e95"><code>9dc2559</code></a>
derive Immutable and KnownLayout for f16 and bf16</li>
<li>See full diff in <a
href="https://github.com/VoidStarKat/half-rs/compare/v2.5.0...v2.6.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This will establish a baseline for the changes from #36363.
Testing: New tests in CI.
Fixes: Part of #4577
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This patch adds support for listing scripts in the Sources panel.
Classic scripts, both external and inline, are implemented, but worker
scripts and imported module scripts are not yet implemented.
For example:
```html
<!-- sources.html -->
<!doctype html><meta charset=utf-8>
<script src="classic.js"></script>
<script>
console.log("inline classic");
new Worker("worker.js");
</script>
<script type="module">
import module from "./module.js";
console.log("inline module");
</script>
<script src="https://servo.org/js/load-table.js"></script>
```
```js
// classic.js
console.log("external classic");
```
```js
// worker.js
console.log("external classic worker");
```
```js
// module.js
export default 1;
console.log("external module");
```

---
<!-- 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 partially implement #36027
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes require tests, but they are blocked on #36325
Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: atbrakhi <atbrakhi@igalia.com>
add CanGc as argument to methods in DissimilarOriginWindow,
DocumentFragment, DocumentType, DOMRect, DOMRectReadOnly, DOMStringMap
Testing: These changes do not require tests because they are a refactor.
Addressed part of https://github.com/servo/servo/issues/34573.
Signed-off-by: Yerkebulan Tulibergenov <yerkebulan@gmail.com>
Add CanGc as arguments in methods in Document
Testing: These changes do not require tests because they are a refactor.
Addressed part of https://github.com/servo/servo/issues/34573.
Signed-off-by: Yerkebulan Tulibergenov <yerkebulan@gmail.com>
Previously the referrer policy used tree order but the spec only cares
about the most-recently-updated or most-recently-added meta referrer.
Testing: change has existing WPT tests
---------
Signed-off-by: Sebastian C <sebsebmc@gmail.com>
Bumps [smallvec](https://github.com/servo/rust-smallvec) from 1.14.0 to
1.15.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/servo/rust-smallvec/releases">smallvec's
releases</a>.</em></p>
<blockquote>
<h2>v1.15.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Fix typos by <a
href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a>
in <a
href="https://redirect.github.com/servo/rust-smallvec/pull/373">servo/rust-smallvec#373</a></li>
<li>Implement bincode2 encode/decode support for smallvec v1 by <a
href="https://github.com/markbt"><code>@markbt</code></a> in <a
href="https://redirect.github.com/servo/rust-smallvec/pull/375">servo/rust-smallvec#375</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/markbt"><code>@markbt</code></a> made
their first contribution in <a
href="https://redirect.github.com/servo/rust-smallvec/pull/375">servo/rust-smallvec#375</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/servo/rust-smallvec/compare/v1.14.0...v1.15.0">https://github.com/servo/rust-smallvec/compare/v1.14.0...v1.15.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7c4d350f5e"><code>7c4d350</code></a>
Versoin 1.15.0</li>
<li><a
href="aeceb0a5b1"><code>aeceb0a</code></a>
Temporarily disable broken fuzzing in CI</li>
<li><a
href="a2fb430411"><code>a2fb430</code></a>
Pin honggfuzz binary version</li>
<li><a
href="35e7ffeede"><code>35e7ffe</code></a>
Add support for bincode encode and decode</li>
<li><a
href="0d019cd54a"><code>0d019cd</code></a>
Rename bincode dev-dependency to bincode1</li>
<li><a
href="6c8751df6a"><code>6c8751d</code></a>
Merge pull request <a
href="https://redirect.github.com/servo/rust-smallvec/issues/373">#373</a>
from waywardmonkeys/v1-fix-typos</li>
<li><a
href="36317fa17f"><code>36317fa</code></a>
Fix typos</li>
<li>See full diff in <a
href="https://github.com/servo/rust-smallvec/compare/v1.14.0...v1.15.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
The current implementation is already rather large at ~2.5k lines (~2k
LoC). There is still quite a lot of functionality left to implement, so
let's split it up while it's still manageable.
Testing: Covered by existing web platform tests
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Bumps [indexmap](https://github.com/indexmap-rs/indexmap) from 2.8.0 to
2.9.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md">indexmap's
changelog</a>.</em></p>
<blockquote>
<h2>2.9.0 (2025-04-04)</h2>
<ul>
<li>Added a <code>get_disjoint_mut</code> method to
<code>IndexMap</code>, matching Rust 1.86's
<code>HashMap</code> method.</li>
<li>Added a <code>get_disjoint_indices_mut</code> method to
<code>IndexMap</code> and <code>map::Slice</code>,
matching Rust 1.86's <code>get_disjoint_mut</code> method on
slices.</li>
<li>Deprecated the <code>borsh</code> feature in favor of their own
<code>indexmap</code> feature,
solving a cyclic dependency that occured via
<code>borsh-derive</code>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1818d4140d"><code>1818d41</code></a>
Merge pull request <a
href="https://redirect.github.com/indexmap-rs/indexmap/issues/387">#387</a>
from cuviper/release-2.9.0</li>
<li><a
href="9f4998341b"><code>9f49983</code></a>
Release 2.9.0</li>
<li><a
href="582a90fda3"><code>582a90f</code></a>
Merge pull request <a
href="https://redirect.github.com/indexmap-rs/indexmap/issues/386">#386</a>
from cuviper/de-borsh</li>
<li><a
href="90117397b6"><code>9011739</code></a>
Deprecate the "borsh" feature</li>
<li><a
href="0a836e8648"><code>0a836e8</code></a>
Merge pull request <a
href="https://redirect.github.com/indexmap-rs/indexmap/issues/238">#238</a>
from NiklasJonsson/get_many_mut</li>
<li><a
href="434d7ac6d1"><code>434d7ac</code></a>
Avoid let-else for MSRV's sake</li>
<li><a
href="5be552d557"><code>5be552d</code></a>
Implement additional suggestions from review</li>
<li><a
href="4e1d8cef47"><code>4e1d8ce</code></a>
Address review feedback</li>
<li><a
href="5aec9ec674"><code>5aec9ec</code></a>
Implement get_disjoint_mut for arrays of keys</li>
<li><a
href="d10de30e74"><code>d10de30</code></a>
Merge pull request <a
href="https://redirect.github.com/indexmap-rs/indexmap/issues/385">#385</a>
from iajoiner/docs/macros</li>
<li>Additional commits viewable in <a
href="https://github.com/indexmap-rs/indexmap/compare/2.8.0...2.9.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [prettyplease](https://github.com/dtolnay/prettyplease) from
0.2.31 to 0.2.32.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/prettyplease/releases">prettyplease's
releases</a>.</em></p>
<blockquote>
<h2>0.2.32</h2>
<ul>
<li>Forbid block comments that end in a slash (<a
href="https://redirect.github.com/dtolnay/prettyplease/issues/113">#113</a>,
thanks <a
href="https://github.com/arkeet"><code>@arkeet</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="81c6daa38b"><code>81c6daa</code></a>
Release 0.2.32</li>
<li><a
href="9e7423e889"><code>9e7423e</code></a>
Reorder block comment logic to consider bytes in order</li>
<li><a
href="3cf820b4d8"><code>3cf820b</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/prettyplease/issues/113">#113</a>
from arkeet/block-comment-slash</li>
<li><a
href="7c441be880"><code>7c441be</code></a>
Forbid block comments that end in a slash.</li>
<li>See full diff in <a
href="https://github.com/dtolnay/prettyplease/compare/0.2.31...0.2.32">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This change implements the pattern parser, completing the "parsing
pipeline" for URL patterns.
Testing: Primarily `urlpattern/urlpattern-hasregexpgroups.any.js`, some
other subtests start to pass too.
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
This change adds support for the `::marker` pseudo-element and ensure
that
markers are cached into the box tree. This is only initial support,
there are a few
things missing such as animations, transitions, and support the
`content` CSS
property.
Testing: There are WPT tests for this change.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Introduces the concept of different types of underlying sinks for the
writable controller, and a minor fix to the abort algorithm.
The dead code is already used in the wip at
https://github.com/servo/servo/pull/36181/, and will also be used in a
another wip in parallel to implement transform stream, so the concept is
introduced here with dead code to facilitate the work in parallel and
prevent too much merge conflicts down the road.
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
-Remove trailing space in CSSStyleSheet::AddRule()
Testing: The change made does not require testing
Fixes: https://github.com/servo/servo/issues/36380
Signed-off-by: Uthman Yahaya Baba <uthmanyahayababa@gmail.com>
More details in Stylo PR: https://github.com/servo/stylo/pull/145
---
<!-- 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
- fixes https://github.com/servo/servo/issues/35833
- fixes https://github.com/servo/servo/issues/35982
<!-- Either: -->
- [x] There are new passing test: `css/css-logical/animation-004.html:
Transitions from physical to logical update when the direction is
changed`
Created new test files as well:
1. `css-transitions/transition-remove-and-change-immediate.html`
2. `css-transitions/transition-zero-duration-with-delay.html`
3. `css-transitions/transitioncancel-003.html`
<!-- 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. -->
cc @Asun0204 @xiaochengh @stevennovaryo
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
This PR makes it so the `resolution` factor in `image-set` also affects
the image size.
For instance, in the example below:
```css
background-image: image-set("./small.png" 1x, "./large.png" 2x);
```
if `large.png` is used, an image which is 32x32 will be rendered as
16x16. This is specified
in <https://drafts.csswg.org/css-images-4/#image-set-notation>.
Testing:
- `css/css-images/image-set/image-set-resolution-002.html`
---------
Signed-off-by: tobinio <Tobias.frischmann1@gmail.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
This feature is part of --enable-experimental-web-platform-features, so
it should be enabled on all tests.
It's not really implemented beyond parsing, but it should be safe to
enable. It mostly changes test results from ERROR to FAIL.
This is part of #36315
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
The upstream PR (web-platform-tests/wpt#51084) to update the WPT.fyi
docker image to 22.04 landed a few days back. No new issues have been
discovered so far in wpt.fyi, so it should be safe for us to move to
22.04 for the nightly builds.
Fixes#35747.
---------
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Not a lot of new tests start to pass because the actual parser is still
missing, so we're only passing tests for invalid inputs. The parser will
be added in the next PR.
This is part 3 of upstreaming the changes in
https://github.com/simonwuelker/servo/tree/urlpattern
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>