Implemented HTMLFormElement.relList
<!-- Please describe your changes on the following line: -->
Updated the tests to reflect addition of rel and relList for HTMLFormElement, as well as porting those code snippets from HTMLAnchorElement.
---
<!-- 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#27252 (GitHub issue number if applicable)
<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because ___
<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Updated tests to reflect rel and relList in HTMLFormElement
Added AttrValue as style
Added attr
Updated outstanding test cases
Fixed formatting. Hopefully this time works
Implemented HTMLFormElement.relList
build(deps): bump adler from 0.2.2 to 0.2.3
Bumps [adler](https://github.com/jonas-schievink/adler) from 0.2.2 to 0.2.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/jonas-schievink/adler/releases">adler's releases</a>.</em></p>
<blockquote>
<h2>v0.2.3</h2>
<ul>
<li>Process 4 Bytes at a time, improving performance by up to 50% (<a href="https://github-redirect.dependabot.com/jonas-schievink/adler/issues/2">#2</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/jonas-schievink/adler/blob/master/CHANGELOG.md">adler's changelog</a>.</em></p>
<blockquote>
<h2><a href="https://github.com/jonas-schievink/adler/releases/tag/v0.2.3">0.2.3 - 2020-07-11</a></h2>
<ul>
<li>Process 4 Bytes at a time, improving performance by up to 50% (<a href="https://github-redirect.dependabot.com/jonas-schievink/adler/issues/2">#2</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="052fb30a86"><code>052fb30</code></a> Release 0.2.3</li>
<li><a href="b32d526574"><code>b32d526</code></a> Update changelog</li>
<li><a href="a875252c94"><code>a875252</code></a> Move algorithm into its own module</li>
<li><a href="1aad4dbcd4"><code>1aad4db</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/jonas-schievink/adler/issues/2">#2</a> from NathanaelLane/master</li>
<li><a href="d7f0da2743"><code>d7f0da2</code></a> rustfmt import alphabetization</li>
<li><a href="6caed1f1bd"><code>6caed1f</code></a> Remove all unsafe code and related infrastructure, thanks to insight from <a href="https://github.com/ja">@ja</a>...</li>
<li><a href="0cb41e6b8e"><code>0cb41e6</code></a> various improvements:</li>
<li><a href="4bc0273554"><code>4bc0273</code></a> Improve performance for short input slices.</li>
<li><a href="082e3cd7dd"><code>082e3cd</code></a> add alignment test and coerce intended alignment with repr ([u8; N] is by def...</li>
<li><a href="b0b72f247b"><code>b0b72f2</code></a> fix upstream rustfmt issues</li>
<li>Additional commits viewable in <a href="https://github.com/jonas-schievink/adler/compare/v0.2.2...v0.2.3">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=adler&package-manager=cargo&previous-version=0.2.2&new-version=0.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>
devtools: TabDescription actor
We could do better by creating the browsing context actor lazily, but that's good enough to re-enable devtools with a recent version of Firefox. fix#27113.
Support depth and stencil in webxr
<!-- Please describe your changes on the following line: -->
Creates a `DEPTH_STENCIL` attachment if one is provided by the webxr device.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because we don't reftest webxr
<!-- 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. -->
Add a sessionavailable event that allows content to enter an XR session without a user gesture
<!-- Please describe your changes on the following line: -->
This allows servo to implement immersive web apps. https://immersive-web.github.io/webxr/#application-launch
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because I'm not sure we should have a WPT for something this non-standard.
<!-- 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. -->
Mediadevices.enumeratedevices
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#26877
Add support for webxr cubemap and spherical 360 rendering
<!-- Please describe your changes on the following line: -->
Part of rendering webxr content as 360 video
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because it's back-end rendering
<!-- 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. -->
build(deps): bump webxr from `e507076` to `88f287d`
Bumps [webxr](https://github.com/servo/webxr) from `e507076` to `88f287d`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="88f287d639"><code>88f287d</code></a> Auto merge of <a href="https://github-redirect.dependabot.com/servo/webxr/issues/180">#180</a> - asajeffrey:openxr-secondary-view, r=Manishearth</li>
<li><a href="1bad69b45b"><code>1bad69b</code></a> Store supports_secondary in OpenXRDevice, avoiding an extra locking</li>
<li><a href="eb7240ce56"><code>eb7240c</code></a> Fix issues with secondary views and layer management.</li>
<li><a href="a17324853a"><code>a173248</code></a> Auto merge of <a href="https://github-redirect.dependabot.com/servo/webxr/issues/179">#179</a> - Manishearth:openxrs-up, r=asajeffrey</li>
<li><a href="cd25d0ea03"><code>cd25d0e</code></a> Update openxr to forked 0.12.2 with upstreamed generated bindings for extensions</li>
<li>See full diff in <a href="e507076cc6...88f287d639">compare view</a></li>
</ul>
</details>
<br />
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>
build(deps): bump euclid from 0.20.13 to 0.20.14
Bumps [euclid](https://github.com/servo/euclid) from 0.20.13 to 0.20.14.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/servo/euclid/commits">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=euclid&package-manager=cargo&previous-version=0.20.13&new-version=0.20.14)
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>
Replace ws-rs with async-tungstenite.
This change moves us from ws-rs (which doesn't see a lot of maintainer activity) and its custom async implementation to tungstenite and the tokio ecosystem. This is particularly important because of #27043, which breaks SSL websockets on Windows.
Depends on https://github.com/sdroege/async-tungstenite/pull/40/.
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#27043
- [x] There are tests for these changes
build(deps): bump backtrace from 0.3.49 to 0.3.50
[//]: # (dependabot-start)
⚠️ **Dependabot is rebasing this PR** ⚠️
If you make any changes to it yourself then they will take precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [backtrace](https://github.com/rust-lang/backtrace-rs) from 0.3.49 to 0.3.50.
<details>
<summary>Commits</summary>
<ul>
<li><a href="2ad451ace0"><code>2ad451a</code></a> Bump to 0.3.50</li>
<li><a href="6f14beca82"><code>6f14bec</code></a> Update some dependency versions (<a href="https://github-redirect.dependabot.com/rust-lang/backtrace-rs/issues/358">#358</a>)</li>
<li><a href="b0f850276c"><code>b0f8502</code></a> Bump miniz-oxide version (<a href="https://github-redirect.dependabot.com/rust-lang/backtrace-rs/issues/354">#354</a>)</li>
<li>See full diff in <a href="https://github.com/rust-lang/backtrace-rs/compare/0.3.49...0.3.50">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=backtrace&package-manager=cargo&previous-version=0.3.49&new-version=0.3.50)
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>