When unhidding a ::marker element, we construct its generated item, and
then call StyleNewSubtree() on this generated item. During traversal, we
may update any animation related values in Gecko_UpdateAnimations(), which
may update the base styles for animation properties.
The test case is an animation segment from "null" to "inital" value. We
replace the "null" value with the base style value for the specific animation
property, so we can do interpolation properly.
(e.g. opacity: "null => initial" becomes "1.0 => initial")
If we don't update the animation related values in
Gecko_UpdateAnimations after generating ::marker, we may do
interpolation from "null" to "initial", which causes a panic.
Differential Revision: https://phabricator.services.mozilla.com/D73408
That way elements inside links, form controls, etc have the right
contrast, even if the page overrides the color.
We can't do it when inheriting from transparent because we've already
forgotten about the "right" color to inherit, so the default color makes
sense. But that is a pretty unlikely edge case.
Differential Revision: https://phabricator.services.mozilla.com/D73069
This way, something like:
*:where(.foo, .bar)
Will end up twice on the selector map, just as if you would've written
.foo, .bar.
But we're a bit careful to not be wasteful, so:
.foo:where(div, span)
Will still end up using the .foo bucket.
It needs a bit of borrow-checker gymnastics to avoid cloning the entry
in the common path. It's a bit gross but not too terrible I think.
Differential Revision: https://phabricator.services.mozilla.com/D71457
See the comment about why this is valuable. For a selector like:
.foo:is(.bar) > .baz
Before this patch we'd generate an Dependency for .bar like this:
Dependency {
selector: .bar,
offset: 0,
parent: Some(Dependency {
selector: .foo:is(.bar) > .baz,
offset: 1, // Pointing to the `>` combinator.
parent: None,
}),
}
After this patch we'd generate just:
Dependency {
selector: .foo:is(.bar) > .baz,
offset: 1, // Pointing to the `>` combinator.
parent: None,
}
This is not only less memory but also less work. The reason for that is that,
before this patch, when .bar changes, we'd look the dependency, and see there's
a parent, and then scan that, so we'd match `.bar` two times, one for the
initial dependency, and one for .foo:is(.bar).
Instead, with this we'd only check `.foo:is(.bar)` once.
Differential Revision: https://phabricator.services.mozilla.com/D71423
That way we can look at the parent dependency as described in the previous
patch. An alternative would be to add a:
parent_dependency: Option<&'a Dependency>
on construction to `Invalidation`, but this way seems slightly better to avoid
growing the struct. It's not even one more indirection because the selector is
contained directly in the Dependency struct.
Differential Revision: https://phabricator.services.mozilla.com/D71422
The tricky part of :is() and :where() is that they can have combinators inside,
so something like this is valid:
foo:is(#bar > .baz) ~ taz
The current invalidation logic is based on the assumption that you can
represent a combinator as a (selector, offset) tuple, which are stored in the
Dependency struct. This assumption breaks with :is() and :where(), so we need
to make them be able to represent a combinator in an "inner" selector.
For this purpose, we add a `parent` dependency. With it, when invalidating
inside the `:is()` we can represent combinators inside as a stack.
The basic idea is that, for the example above, when an id of "bar" is added or
removed, we'd find a dependency like:
Dependency {
selector: #bar > .baz,
offset: 1, // pointing to the `>` combinator
parent: Some(Dependency {
selector: foo:is(#bar > .baz) > taz,
offset: 1, // Pointing to the `~` combinator.
parent: None,
})
}
That way, we'd start matching at the element that changed, towards the right,
and if we find an element that matches .baz, instead of invalidating that
element, we'd look at the parent dependency, then double-check that the whole
left-hand-side of the selector (foo:is(#bar > .baz)) actually changed, and then
keep invalidating to the right using the parent dependency as usual.
This patch only builds the data structure and keeps the code compiling, the
actual invalidation work will come in a following patch.
Differential Revision: https://phabricator.services.mozilla.com/D71421
Bump gstreamer-base-sys from 0.8.0 to 0.8.1
Bumps gstreamer-base-sys from 0.8.0 to 0.8.1.
[](https://dependabot.com/compatibility-score/?dependency-name=gstreamer-base-sys&package-manager=cargo&previous-version=0.8.0&new-version=0.8.1)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Extract some of CGClassConstructHook to utils.rs
<!-- Please describe your changes on the following line: -->
Moving some of the functionality from the massive tripled quoted string in CGClassConstructHook in `components/script/dom/bindings/codegen/CodegenRust.py` to `components/script/dom/bindings/utils.rs`. Must be made unsafe because of UnwrapObjectDynamic and other functions. Added imports as necessary as well, as well as cleaning up using test-tidy.
---
<!-- 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#25395 (GitHub issue number if applicable)
<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because the issue says so
<!-- 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. -->
Improve worker shutdown
<!-- Please describe your changes on the following line: -->
FIX#26548FIX#25212
and also a step towards https://github.com/servo/servo/issues/26502
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (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. -->
Bump xdg from 2.1.0 to 2.2.0
Bumps [xdg](https://github.com/whitequark/rust-xdg) from 2.1.0 to 2.2.0.
<details>
<summary>Commits</summary>
<ul>
<li><a href="f404ae631b"><code>f404ae6</code></a> Bump version.</li>
<li><a href="090afef250"><code>090afef</code></a> Add methods to iterate over matching config/data files (<a href="https://github-redirect.dependabot.com/whitequark/rust-xdg/issues/20">#20</a>)</li>
<li><a href="a1c9249f78"><code>a1c9249</code></a> Treat redox as an *nix OS explicitly.</li>
<li><a href="e083a1d1d8"><code>e083a1d</code></a> Fix copy/paste errors.</li>
<li>See full diff in <a href="https://github.com/whitequark/rust-xdg/compare/v2.1.0...v2.2.0">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=xdg&package-manager=cargo&previous-version=2.1.0&new-version=2.2.0)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump arrayref from 0.3.5 to 0.3.6
Bumps [arrayref](https://github.com/droundy/arrayref) from 0.3.5 to 0.3.6.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/droundy/arrayref/commits">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=arrayref&package-manager=cargo&previous-version=0.3.5&new-version=0.3.6)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump harfbuzz-sys from 0.3.3 to 0.3.4
Bumps [harfbuzz-sys](https://github.com/servo/rust-harfbuzz) from 0.3.3 to 0.3.4.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/servo/rust-harfbuzz/commits/harfbuzz-sys-v0.3.4">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=harfbuzz-sys&package-manager=cargo&previous-version=0.3.3&new-version=0.3.4)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump rand_chacha from 0.2.1 to 0.2.2
Bumps [rand_chacha](https://github.com/rust-random/rand) from 0.2.1 to 0.2.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-random/rand/blob/master/CHANGELOG.md">rand_chacha's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>All notable changes to this project will be documented in this file.</p>
<p>The format is based on <a href="http://keepachangelog.com/en/1.0.0/">Keep a Changelog</a>
and this project adheres to <a href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p>
<p>A <a href="https://github.com/rust-random/rand/blob/master/rand_core/CHANGELOG.md">separate changelog is kept for rand_core</a>.</p>
<p>You may also find the <a href="https://rust-random.github.io/book/update.html">Upgrade Guide</a> useful.</p>
<h2>[Unreleased]</h2>
<h3>Additions</h3>
<ul>
<li>impl PartialEq+Eq for StdRng, SmallRng, and StepRng (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/975">#975</a>)</li>
<li>Added a <code>serde1</code> feature and added Serialize/Deserialize to <code>UniformInt</code> and <code>WeightedIndex</code> (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/974">#974</a>)</li>
</ul>
<h2>[0.7.3] - 2020-01-10</h2>
<h3>Fixes</h3>
<ul>
<li>The <code>Bernoulli</code> distribution constructors now reports an error on NaN and on
<code>denominator == 0</code>. (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/925">#925</a>)</li>
<li>Use <code>std::sync::Once</code> to register fork handler, avoiding possible atomicity violation (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/928">#928</a>)</li>
<li>Fix documentation on the precision of generated floating-point values</li>
</ul>
<h3>Changes</h3>
<ul>
<li>Unix: make libc dependency optional; only use fork protection with std feature (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/928">#928</a>)</li>
</ul>
<h3>Additions</h3>
<ul>
<li>Implement <code>std::error::Error</code> for <code>BernoulliError</code> (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/919">#919</a>)</li>
</ul>
<h2>[0.7.2] - 2019-09-16</h2>
<h3>Fixes</h3>
<ul>
<li>Fix dependency on <code>rand_core</code> 0.5.1 (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/890">#890</a>)</li>
</ul>
<h3>Additions</h3>
<ul>
<li>Unit tests for value stability of distributions added (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/888">#888</a>)</li>
</ul>
<h2>[0.7.1] - 2019-09-13</h2>
<h3>Yanked</h3>
<p>This release was yanked since it depends on <code>rand_core::OsRng</code> added in 0.5.1
but specifies a dependency on version 0.5.0 (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/890">#890</a>), causing a broken builds
when updating from <code>rand 0.7.0</code> without also updating <code>rand_core</code>.</p>
<h3>Fixes</h3>
<ul>
<li>Fix <code>no_std</code> behaviour, appropriately enable c2-chacha's <code>std</code> feature (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/844">#844</a>)</li>
<li><code>alloc</code> feature in <code>no_std</code> is available since Rust 1.36 (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/856">#856</a>)</li>
<li>Fix or squelch issues from Clippy lints (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/840">#840</a>)</li>
</ul>
<h3>Additions</h3>
<ul>
<li>Add a <code>no_std</code> target to CI to continuously evaluate <code>no_std</code> status (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/844">#844</a>)</li>
<li><code>WeightedIndex</code>: allow adjusting a sub-set of weights (<a href="https://github-redirect.dependabot.com/rust-random/rand/issues/866">#866</a>)</li>
</ul>
</tr></table> ... (truncated)
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="e2112c4404"><code>e2112c4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/rust-random/rand/issues/950">#950</a> from coltfred/rand-chacha-0.2.2</li>
<li><a href="c67a857b16"><code>c67a857</code></a> Update changelog for rand-chacha 0.2.2</li>
<li><a href="8ed19df4fd"><code>8ed19df</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/rust-random/rand/issues/944">#944</a> from coltfred/crypto-rng-chachacore</li>
<li><a href="108632c900"><code>108632c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/rust-random/rand/issues/940">#940</a> from dhardy/work</li>
<li><a href="5ecaeb3b4f"><code>5ecaeb3</code></a> Add CryptoRng marker trait to ChaChaXCore</li>
<li><a href="d66d4d169c"><code>d66d4d1</code></a> Impl Fill for slices over bool, char, f32, f64</li>
<li><a href="eccd1f8f7e"><code>eccd1f8</code></a> Optimise: avoid inlining</li>
<li><a href="7bdfa855e2"><code>7bdfa85</code></a> Replace AsByteSliceMut with Fill</li>
<li><a href="571c9af9a6"><code>571c9af</code></a> Misc bench: add gen_1kb_u16_*</li>
<li><a href="6403c10d64"><code>6403c10</code></a> Move Rng trait to sub-module</li>
<li>Additional commits viewable in <a href="https://github.com/rust-random/rand/compare/rand_chacha-0.2.1...rand_chacha-0.2.2">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=rand_chacha&package-manager=cargo&previous-version=0.2.1&new-version=0.2.2)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump clipboard-win from 2.1.1 to 2.2.0
Bumps [clipboard-win](https://github.com/DoumanAsh/clipboard-win) from 2.1.1 to 2.2.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DoumanAsh/clipboard-win/commits">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=clipboard-win&package-manager=cargo&previous-version=2.1.1&new-version=2.2.0)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump nom from 4.1.1 to 4.2.3
Bumps [nom](https://github.com/Geal/nom) from 4.1.1 to 4.2.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/Geal/nom/blob/master/CHANGELOG.md">nom's changelog</a>.</em></p>
<blockquote>
<h2>4.2.3 - 2019-03-23</h2>
<h3>Fixed</h3>
<ul>
<li>add missing <code>build.rs</code> file to the package</li>
<li>fix code comparison links in changelog</li>
</ul>
<h2>4.2.2 - 2019-03-04</h2>
<h3>Fixed</h3>
<ul>
<li>regression in do_parse macro import for edition 2018</li>
</ul>
<h2>4.2.1 - 2019-02-27</h2>
<h3>Fixed</h3>
<ul>
<li>macro expansion error in <code>do_parse</code> due to <code>compile_error</code> macro usage</li>
</ul>
<h2>4.2.0 - 2019-01-29</h2>
<h3>Thanks</h3>
<ul>
<li><a href="https://github.com/JoshMcguigan">@JoshMcguigan</a> for unit test fixes</li>
<li><a href="https://github.com/oza">@oza</a> for documentation fixes</li>
<li><a href="https://github.com/wackywendell">@wackywendell</a> for better error conversion</li>
<li><a href="https://github.com/Zebradil">@Zebradil</a> for documentation fixes</li>
<li><a href="https://github.com/tsraom">@tsraom</a> for new combinators</li>
<li><a href="https://github.com/hcpl">@hcpl</a> for minimum Rust version tests</li>
<li><a href="https://github.com/KellerFuchs">@KellerFuchs</a> for removing some unsafe uses in float parsing</li>
</ul>
<h3>Changed</h3>
<ul>
<li>macro import in edition 2018 code should work without importing internal macros now</li>
<li>the regex parsers do not require the calling code to have imported the regex crate anymore</li>
<li>error conversions are more ergonomic</li>
<li>method combinators are now deprecated. They might be moved to a separate crate</li>
<li>nom now specifies Rust 1.24.1 as minimum version. This was already the case before, now it is made explicit</li>
</ul>
<h3>Added</h3>
<ul>
<li><code>many0_count</code> and <code>many1_count</code> to count applications of a parser instead of
accumulating its results in a <code>Vec</code></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>overflow in the byte wrapper for bit level parsers</li>
<li><code>f64</code> parsing does not use <code>transmute</code> anymore</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="8d195e7728"><code>8d195e7</code></a> update changelog and bump version to 4.2.3</li>
<li><a href="0761cca7f2"><code>0761cca</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Geal/nom/issues/779">#779</a> from khernyo/issue-768-bitvec-parser</li>
<li><a href="ed915073c8"><code>ed91507</code></a> Merge branch 'master' into issue-768-bitvec-parser</li>
<li><a href="c543bc1c6a"><code>c543bc1</code></a> update changelog and bump version to 4.2.2</li>
<li><a href="e826f28999"><code>e826f28</code></a> fix again edition 2018 macro import in do_parse</li>
<li><a href="b645b10957"><code>b645b10</code></a> update changelog and bump version to 4.2.1</li>
<li><a href="e17fe771ab"><code>e17fe77</code></a> activate LTO and jemallocator for benchmarks</li>
<li><a href="027fe80a05"><code>027fe80</code></a> move to criterion for benchmarking</li>
<li><a href="80eb111ec9"><code>80eb111</code></a> fix previous commit</li>
<li><a href="34df62047d"><code>34df620</code></a> fix macro import in do_parse</li>
<li>Additional commits viewable in <a href="https://github.com/Geal/nom/compare/4.1.1...4.2.3">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=nom&package-manager=cargo&previous-version=4.1.1&new-version=4.2.3)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Remove unnecessary generics from low-level script code
This should remove one of the larger offenders from the cargo-llvm-lines output for the script crate.
Move most of `SequenceWriter::write_item` to non-generic functions
The size of LLVM IR for the `style` crate is reduced by ~1.5% (27k lines out of 1.8M)
CC https://github.com/servo/servo/issues/26713
Bump gfx-backend-dx12 from 0.5.3 to 0.5.4
Bumps [gfx-backend-dx12](https://github.com/gfx-rs/gfx) from 0.5.3 to 0.5.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/gfx-rs/gfx/blob/master/CHANGELOG.md">gfx-backend-dx12's changelog</a>.</em></p>
<blockquote>
<h3>backend-dx12-0.5.4 (29-05-2020)</h3>
<ul>
<li>fix detection of integrated gpus</li>
<li>fix UB in <code>compile_shader</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/gfx-rs/gfx/commits">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=gfx-backend-dx12&package-manager=cargo&previous-version=0.5.3&new-version=0.5.4)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump gstreamer-video-sys from 0.8.0 to 0.8.1
Bumps gstreamer-video-sys from 0.8.0 to 0.8.1.
[](https://dependabot.com/compatibility-score/?dependency-name=gstreamer-video-sys&package-manager=cargo&previous-version=0.8.0&new-version=0.8.1)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Bump gstreamer-player from 0.15.3 to 0.15.5
Bumps gstreamer-player from 0.15.3 to 0.15.5.
[](https://dependabot.com/compatibility-score/?dependency-name=gstreamer-player&package-manager=cargo&previous-version=0.15.3&new-version=0.15.5)
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 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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
</details>
Support replacing external scripts with local copies from disk
<!-- 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 #26456(GitHub issue number if applicable)
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] 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. -->