The process of decoding the network byte stream to Unicode is backed by
an instance of `encoding_rs::Decoder`, which will switch the encoding it
uses if it finds a BOM in the byte stream. However, this change in
encoding is not communicated back to the caller and so
`document.characterSet` gives the wrong result. This change fixes that.
See whatwg/html#5359 and whatwg/encoding#203 for the spec-level backing
for this change.
Signed-off-by: Andreu Botella <abb@randomunok.com>
Bump env_logger from 0.7.1 to 0.8.2
Bumps [env_logger](https://github.com/env-logger-rs/env_logger) from 0.7.1 to 0.8.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/env-logger-rs/env_logger/releases">env_logger's releases</a>.</em></p>
<blockquote>
<h2>0.8.2</h2>
<p>Fixed a panic on io errors when writing to stdout / stderr (<a href="https://github-redirect.dependabot.com/env-logger-rs/env_logger/issues/184">#184</a>).</p>
<h2>0.8.1</h2>
<p>Update links in the documentation that were pointing to the old repository location.</p>
<h2>0.8.0</h2>
<p>Breaking changes:</p>
<ul>
<li>Update public dependency humantime to 2.0</li>
</ul>
<p>Improvements:</p>
<ul>
<li>Update default colors for debug (white => blue) and trace (black => cyan)</li>
</ul>
<p>Deprecations:</p>
<ul>
<li><code>env_logger::from_env</code> has been deprecated in favor of <code>env_logger::Builder::from_env</code></li>
</ul>
<p>This release raises the minimum supported Rust version to 1.41.0.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0f53c8dd5b"><code>0f53c8d</code></a> Release version 0.8.2</li>
<li><a href="26e821b94f"><code>26e821b</code></a> Update repository links and release 0.8.1</li>
<li><a href="9ffe00de4f"><code>9ffe00d</code></a> Release version 0.8.0</li>
<li><a href="2b33c97117"><code>2b33c97</code></a> Fix rustc & clippy lints</li>
<li><a href="b8c3754a1d"><code>b8c3754</code></a> chore(examples): add syslog friendly format (<a href="https://github-redirect.dependabot.com/env-logger-rs/env_logger/issues/174">#174</a>)</li>
<li><a href="a5a7ddc34e"><code>a5a7ddc</code></a> ci(docs): remove ci crate (<a href="https://github-redirect.dependabot.com/env-logger-rs/env_logger/issues/173">#173</a>)</li>
<li><a href="3a331e4636"><code>3a331e4</code></a> chore(readme): fix badge links</li>
<li><a href="eeedfa99be"><code>eeedfa9</code></a> ci(docs): add manual run trigger (<a href="https://github-redirect.dependabot.com/env-logger-rs/env_logger/issues/171">#171</a>)</li>
<li><a href="2793bb5696"><code>2793bb5</code></a> ci(workflow): add documentation workflow (<a href="https://github-redirect.dependabot.com/env-logger-rs/env_logger/issues/170">#170</a>)</li>
<li><a href="0ef5cffa29"><code>0ef5cff</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/env-logger-rs/env_logger/issues/168">#168</a> from KodrAus/chore/build-fn-cleanup</li>
<li>Additional commits viewable in <a href="https://github.com/env-logger-rs/env_logger/compare/v0.7.1...v0.8.2">compare view</a></li>
</ul>
</details>
<br />
[](https://dependabot.com/compatibility-score/?dependency-name=env_logger&package-manager=cargo&previous-version=0.7.1&new-version=0.8.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>
Update the "bad ports" list
https://github.com/whatwg/fetch/issues/1108
<!-- 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
- [ ] These changes fix #___ (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. -->
Embedding support for offscreen-rendering
The current embedding API assumes it should render directly to a native widget at all times. These changes expose an option to render to an offscreen surface when starting the engine, as well as a new WebrenderSurfman API for temporarily acquiring the surface corresponding to the front buffer so it can be used for blitting purposes.
Demonstrated to work in https://github.com/jdm/servo-embedding-example.
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
Pin bluetooth devices.
The lack of a pinned revision in this manifest makes it harder for people to experiment with using libsimpleservo from other projects.
Set CORS preflight requests' `mode` to `cors`
<!-- 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#23780 (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. -->
preferences actor now returns real values.
The preferences actor was previously returning mock values. This changes
picks up the pref_values from the pref_map which is global preferences
state and returns values from there.
<!-- 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#27510 (GitHub issue number if applicable)
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because none of the actors have tests.
<!-- 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. -->
Allow mutating <input disabled type=checkbox/radio>
---
<!-- 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#27586
<!-- 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. -->
WebGPU: Use GPULimits and extensions provided by user
<!-- Please describe your changes on the following line: -->
- update wgpu
- spec update
r?@kvark
---
<!-- 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
<!-- Either: -->
- [X] There are tests for these changes
<!-- 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. -->
Resolve `whenDefined` with the class constructor
I still don't have time to find the root cause of why nightly sync failed :( so we don't have the tests in our tree now.
But I tried to verify it with `wpt.live` that this is correct
<img width="1136" alt="image" src="https://user-images.githubusercontent.com/6782666/92739547-f7ca0c80-f3b7-11ea-966e-fd7ecd2638cf.png">
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#27626
- [x] There are tests for these changes
<!-- 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. -->