Bumps [clap](https://github.com/clap-rs/clap) from 3.1.16 to 3.1.17.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.17</h2>
<h2>[3.1.17] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li>Allow value names for <code>arg!</code> macro to have dashes when quoted, like longs</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.17] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li>Allow value names for <code>arg!</code> macro to have dashes when quoted, like longs</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="55e791e80e"><code>55e791e</code></a> chore: Release</li>
<li><a href="ed0c01993c"><code>ed0c019</code></a> docs: Update changelog</li>
<li><a href="229b44d9bb"><code>229b44d</code></a> fix(macros): Allow dashed values (<a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3699">#3699</a>)</li>
<li><a href="95698a4f31"><code>95698a4</code></a> chore: Release</li>
<li><a href="3984e55363"><code>3984e55</code></a> docs(complete): Update changelog</li>
<li><a href="1a1a842aa0"><code>1a1a842</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3698">#3698</a> from epage/value</li>
<li><a href="b266e6d35d"><code>b266e6d</code></a> fix(complete): Complete visible, rather than hidden, values</li>
<li>See full diff in <a href="https://github.com/clap-rs/clap/compare/v3.1.16...v3.1.17">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.16&new-version=3.1.17)](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 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.15 to 3.1.16.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.16</h2>
<h2>[3.1.16] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li><em>(parser)</em> <code>Arg::exclusive</code> overrides <code>Arg::required</code>, like other conflicts</li>
<li><em>(error)</em> Don't duplicate arguments in usage</li>
<li><em>(error)</em> Don't show hidden arguments in conflict error usage</li>
<li><em>(help)</em> New <code>help_template</code> variable <code>{name}</code> to fix problems with <code>{bin}</code></li>
<li><em>(help)</em> Don't wrap URLs</li>
</ul>
<p><strong>gated behind <code>unstable-v4</code></strong></p>
<ul>
<li>Leading dashes in <code>Arg::long</code> are no longer allowed</li>
<li><em>(help)</em> Use <code>Command::display_name</code> in the help title rather than <code>Command::bin_name</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.16] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li><em>(parser)</em> <code>Arg::exclusive</code> overrides <code>Arg::required</code>, like other conflicts</li>
<li><em>(error)</em> Don't duplicate arguments in usage</li>
<li><em>(error)</em> Don't show hidden arguments in conflict error usage</li>
<li><em>(help)</em> New <code>help_template</code> variable <code>{name}</code> to fix problems with <code>{bin}</code></li>
<li><em>(help)</em> Don't wrap URLs</li>
</ul>
<p><strong>gated behind <code>unstable-v4</code></strong></p>
<ul>
<li>Leading dashes in <code>Arg::long</code> are no longer allowed</li>
<li><em>(help)</em> Use <code>Command::display_name</code> in the help title rather than <code>Command::bin_name</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="17b930c203"><code>17b930c</code></a> chore: Release</li>
<li><a href="e74864994a"><code>e748649</code></a> docs: Update changelog</li>
<li><a href="0e1e9525c8"><code>0e1e952</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3696">#3696</a> from epage/usage</li>
<li><a href="05aecf8248"><code>05aecf8</code></a> refactor(help): Remove more redundant required checks</li>
<li><a href="dcda237ecc"><code>dcda237</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3689">#3689</a> from epage/usage</li>
<li><a href="e23c786f62"><code>e23c786</code></a> refactor(help): Remove redundant required check</li>
<li><a href="f7c2deaa47"><code>f7c2dea</code></a> fix(help): Don't show hidden arguments for conflicts</li>
<li><a href="2375a8ec2a"><code>2375a8e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3693">#3693</a> from epage/template</li>
<li><a href="e4c096ea99"><code>e4c096e</code></a> fix(help): Use display name instead of bin name (unstable-v4)</li>
<li><a href="16791ab0a7"><code>16791ab</code></a> test(help): Update for display name change</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.15...v3.1.16">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.15&new-version=3.1.16)](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 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>
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.23 to 0.8.24.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/serde-yaml/releases">serde_yaml's releases</a>.</em></p>
<blockquote>
<h2>0.8.24</h2>
<ul>
<li>Work around <code>indexmap</code>/<code>autocfg</code> not always properly detecting whether a <code>std</code> sysroot crate is available (<a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/243">#243</a>, thanks <a href="https://github.com/cuviper"><code>@cuviper</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="915d013401"><code>915d013</code></a> Release 0.8.24</li>
<li><a href="74211ec8c7"><code>74211ec</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/243">#243</a> from cuviper/indexmap-std</li>
<li><a href="80bd0a494e"><code>80bd0a4</code></a> Explicitly enable indexmap/std</li>
<li><a href="748976003e"><code>7489760</code></a> Resolve type_repetition_in_bounds clippy lint</li>
<li><a href="85baedfebb"><code>85baedf</code></a> Add a miri test job in CI</li>
<li><a href="8040788ac1"><code>8040788</code></a> Drop unneeded quoting from env variable in workflows yaml</li>
<li><a href="13306e044d"><code>13306e0</code></a> Update workflows to actions/checkout@v3</li>
<li><a href="8155852f3b"><code>8155852</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/239">#239</a> from uta8a/fix-readme-example</li>
<li><a href="45affad0ce"><code>45affad</code></a> Fix README example</li>
<li><a href="a14e026560"><code>a14e026</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/237">#237</a> from dtolnay/description</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/serde-yaml/compare/0.8.23...0.8.24">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_yaml&package-manager=cargo&previous-version=0.8.23&new-version=0.8.24)](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 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>
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.80 to 1.0.81.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p>
<blockquote>
<h2>v1.0.81</h2>
<ul>
<li>Work around <code>indexmap</code>/<code>autocfg</code> not always properly detecting whether a <code>std</code> sysroot crate is available (<a href="https://github-redirect.dependabot.com/serde-rs/json/issues/885">#885</a>, thanks <a href="https://github.com/cuviper"><code>@cuviper</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a0ea9371cd"><code>a0ea937</code></a> Release 1.0.81</li>
<li><a href="6c3dfe948a"><code>6c3dfe9</code></a> Make it clearer that preserve_order implies a std dependency</li>
<li><a href="f34ef95fd1"><code>f34ef95</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/885">#885</a> from cuviper/indexmap-std</li>
<li><a href="27939bb1f9"><code>27939bb</code></a> Explicitly enable indexmap/std</li>
<li><a href="c0f93432cc"><code>c0f9343</code></a> Ignore trait_duplication_in_bounds clippy false positives</li>
<li><a href="048a64caec"><code>048a64c</code></a> Resolve type_repetition_in_bounds clippy lint</li>
<li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.80...v1.0.81">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_json&package-manager=cargo&previous-version=1.0.80&new-version=1.0.81)](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 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>
<!---
Thank you for contributing to Boa! Please fill out the template below, and remove or add any
information as you feel neccesary.
--->
This Pull Request implements ResolveLocale abstract method. It is required for further InitializeDateTimeFormat development.
It changes the following:
- Adds several helpers to operate with locale extensions
- Adds DefaultLocale placeholder
- Implements BestAvailableLocale and locale matchers
- Implements UnicodeExtensionsComponents
- Introduces testing
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.14 to 3.1.15.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.15</h2>
<h2>[3.1.15] - 2022-05-02</h2>
<h3>Fixes</h3>
<ul>
<li><em>(error)</em> Render actual usage for unrecognized subcommands</li>
<li><em>(multicall)</em> Improve bad command error</li>
<li><em>(multicall)</em> Always require a multicall command</li>
<li><em>(multicall)</em> Disallow arguments on multicall parent command</li>
<li><em>(multicall)</em> More consistent with rest of clap errors</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.15] - 2022-05-02</h2>
<h3>Fixes</h3>
<ul>
<li><em>(error)</em> Render actual usage for unrecognized subcommands</li>
<li><em>(multicall)</em> Improve bad command error</li>
<li><em>(multicall)</em> Always require a multicall command</li>
<li><em>(multicall)</em> Disallow arguments on multicall parent command</li>
<li><em>(multicall)</em> More consistent with rest of clap errors</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0240ec5493"><code>0240ec5</code></a> chore: Release</li>
<li><a href="5543315d3b"><code>5543315</code></a> docs: Update chaneglog</li>
<li><a href="d33812f8a7"><code>d33812f</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3677">#3677</a> from epage/multicall</li>
<li><a href="af3b789e4c"><code>af3b789</code></a> fix(multicall): Consistently skip multicall bin in help</li>
<li><a href="8cd59fa4e5"><code>8cd59fa</code></a> fix(multicall): More consistent whitespace in errors</li>
<li><a href="f9fdb99ee8"><code>f9fdb99</code></a> fix(multicall): Disallow args on multicall binary</li>
<li><a href="ce727f1951"><code>ce727f1</code></a> fix(error): Render actual usage for unrecognized subcommands</li>
<li><a href="5cd1a4070b"><code>5cd1a40</code></a> fix(multicall): Show subcommands are required</li>
<li><a href="414ae57a2a"><code>414ae57</code></a> fix(multicall): Improve bad multicall binary error</li>
<li><a href="86b0ea6ad4"><code>86b0ea6</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3675">#3675</a> from epage/repl</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.14...v3.1.15">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.14&new-version=3.1.15)](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 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>
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.136 to 1.0.137.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p>
<blockquote>
<h2>v1.0.137</h2>
<ul>
<li>Update documentation links to some data formats whose repos have moved (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2201">#2201</a>, thanks <a href="https://github.com/atouchet"><code>@atouchet</code></a>)</li>
<li>Fix declared <code>rust-version</code> of serde and serde_test (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2168">#2168</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="17c3c0cf86"><code>17c3c0c</code></a> Release 1.0.137</li>
<li><a href="210e6c354e"><code>210e6c3</code></a> Clean up clippy allows which are superseded by msrv in clippy.toml</li>
<li><a href="41823a96df"><code>41823a9</code></a> Ignore more type_repetition_in_bounds</li>
<li><a href="7ca13ff240"><code>7ca13ff</code></a> Ignore type_repetition_in_bounds lint that is incompatible with msrv</li>
<li><a href="52391fd868"><code>52391fd</code></a> Inform clippy of supported compiler version in clippy.toml</li>
<li><a href="9b2d8dfc6b"><code>9b2d8df</code></a> Add a miri test job in CI</li>
<li><a href="07ba7ea8dd"><code>07ba7ea</code></a> Update workflows to actions/checkout@v3</li>
<li><a href="9f29f6bb4a"><code>9f29f6b</code></a> Disable expandtest on miri</li>
<li><a href="f6c104fd1d"><code>f6c104f</code></a> Ignore unused ignore attribute warning in some configurations</li>
<li><a href="8a3a6fb101"><code>8a3a6fb</code></a> Disable ui test on miri</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/serde/compare/v1.0.136...v1.0.137">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde&package-manager=cargo&previous-version=1.0.136&new-version=1.0.137)](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 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>
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.79 to 1.0.80.
<details>
<summary>Commits</summary>
<ul>
<li><a href="585e4c5dc7"><code>585e4c5</code></a> Release 1.0.80</li>
<li><a href="52a9c050f5"><code>52a9c05</code></a> Pull miri from miri branch of dtolnay/rust-toolchain</li>
<li><a href="aff685b8c9"><code>aff685b</code></a> Drop unneeded quoting from env variable in workflows yaml</li>
<li><a href="6995bbf784"><code>6995bbf</code></a> Update workflows to actions/checkout@v3</li>
<li><a href="829175e606"><code>829175e</code></a> Fix dev dependencies on serde's derive feature</li>
<li><a href="2733e635b3"><code>2733e63</code></a> Rewrap readme to 80 columns</li>
<li><a href="c5475a32db"><code>c5475a3</code></a> Apply readme changes from PR 864 to crate-level rustdoc</li>
<li><a href="56cf16f900"><code>56cf16f</code></a> Merge pull request 864 from novedevo/patch-1</li>
<li><a href="16b68b06d6"><code>16b68b0</code></a> Tweak grammar to improve readability</li>
<li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.79...v1.0.80">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_json&package-manager=cargo&previous-version=1.0.79&new-version=1.0.80)](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 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.12 to 3.1.14.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.14</h2>
<h2>[3.1.14] - 2022-05-01</h2>
<h3>Fixes</h3>
<ul>
<li>Panic when calling <code>Command::build</code> with a required positional argument nested several layers in subcommands</li>
</ul>
<h2>v3.1.13</h2>
<h2>[3.1.13] - 2022-04-30</h2>
<h3>Fixes</h3>
<ul>
<li>Help subcommand and <code>Command::write_help</code> now report required arguments in usage in more circumstances</li>
<li>Unknown subcommand for help subcommand flag now reports an error with more context</li>
<li>More details reported when using <code>debug</code> feature</li>
<li>Allow disabling <code>color</code> feature with <code>debug</code> feature enabled</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.14] - 2022-05-01</h2>
<h3>Fixes</h3>
<ul>
<li>Panic when calling <code>Command::build</code> with a required positional argument nested several layers in subcommands</li>
</ul>
<h2>[3.1.13] - 2022-04-30</h2>
<h3>Fixes</h3>
<ul>
<li>Help subcommand and <code>Command::write_help</code> now report required arguments in usage in more circumstances</li>
<li>Unknown subcommand for help subcommand flag now reports an error with more context</li>
<li>More details reported when using <code>debug</code> feature</li>
<li>Allow disabling <code>color</code> feature with <code>debug</code> feature enabled</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="5e02ac1c19"><code>5e02ac1</code></a> chore: Release</li>
<li><a href="f7b00adacf"><code>f7b00ad</code></a> docs: Update chaneglog</li>
<li><a href="b37c0a1f0f"><code>b37c0a1</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3670">#3670</a> from epage/panic</li>
<li><a href="0ecb6f4869"><code>0ecb6f4</code></a> fix(builder): Fully recurse when building</li>
<li><a href="c6849e2ebd"><code>c6849e2</code></a> fix(debug): Moe detail</li>
<li><a href="3ca1b77094"><code>3ca1b77</code></a> chore: Fix manifest</li>
<li><a href="b01256be36"><code>b01256b</code></a> chore: Release</li>
<li><a href="0c5400dadb"><code>0c5400d</code></a> chore: Release</li>
<li><a href="09d21f4005"><code>09d21f4</code></a> docs: Update changelog</li>
<li><a href="bd653b90d9"><code>bd653b9</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3667">#3667</a> from epage/exe</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.12...v3.1.14">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.12&new-version=3.1.14)](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 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.11 to 3.1.12.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.12</h2>
<h2>[3.1.12] - 2022-04-22</h2>
<h3>Fixes</h3>
<ul>
<li>Regression in 3.1.11 where the (output) streams were crossed</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.12] - 2022-04-22</h2>
<h3>Fixes</h3>
<ul>
<li>Regression in 3.1.11 where the (output) streams were crossed</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="d805c6031d"><code>d805c60</code></a> chore: Release</li>
<li><a href="d09aec2c14"><code>d09aec2</code></a> docs: Update changelog</li>
<li><a href="61514bf6d1"><code>61514bf</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3646">#3646</a> from arlosi/fix-stdout</li>
<li><a href="854017b478"><code>854017b</code></a> fix: Mixup between stderr and stdout introduced in v3.1.11</li>
<li>See full diff in <a href="https://github.com/clap-rs/clap/compare/v3.1.11...v3.1.12">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.11&new-version=3.1.12)](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 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.10 to 3.1.11.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.11</h2>
<h2>[3.1.11] - 2022-04-22</h2>
<h3>Fixes</h3>
<ul>
<li>Implied conflicts override <code>Arg::required</code>, making the behavior consistent with how we calculate conflicts for error reporting</li>
<li>Members of a mutually exclusive <code>ArgGroup</code> override <code>Arg::required</code>, making the behavior consistent with how we calculate conflicts for error reporting</li>
<li><code>Arg::overrides_with</code> always override <code>Arg::required</code>, not just when the parser processes an override</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.11] - 2022-04-22</h2>
<h3>Fixes</h3>
<ul>
<li>Implied conflicts override <code>Arg::required</code>, making the behavior consistent with how we calculate conflicts for error reporting</li>
<li>Members of a mutually exclusive <code>ArgGroup</code> override <code>Arg::required</code>, making the behavior consistent with how we calculate conflicts for error reporting</li>
<li><code>Arg::overrides_with</code> always override <code>Arg::required</code>, not just when the parser processes an override</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a46ee83224"><code>a46ee83</code></a> chore: Release</li>
<li><a href="62e9d2dfe1"><code>62e9d2d</code></a> docs: Update changelog</li>
<li><a href="8505c47e2e"><code>8505c47</code></a> refactor(validator): Decouple parser (<a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3645">#3645</a>)</li>
<li><a href="9d523012fe"><code>9d52301</code></a> refactor(validator): Decouple parser</li>
<li><a href="6229e78bc6"><code>6229e78</code></a> refactor(parser): Parser is solely responsible for populating ArgMatches</li>
<li><a href="02ffd59830"><code>02ffd59</code></a> refactor(help): Move help writing down a layer</li>
<li><a href="ebeade91bf"><code>ebeade9</code></a> refactor(help): Consolidate help errors</li>
<li><a href="6a9a5d05b0"><code>6a9a5d0</code></a> refactor(help): Make bool's meaning clearer</li>
<li><a href="639f9e8849"><code>639f9e8</code></a> refactor(parser): Pull out long-help determination</li>
<li><a href="a484f622de"><code>a484f62</code></a> fix(validate): Overrides always ignore required</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.10...v3.1.11">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.10&new-version=3.1.11)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot 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>
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.56 to 1.0.57.
<details>
<summary>Commits</summary>
<ul>
<li><a href="f64ca0a02d"><code>f64ca0a</code></a> Release 1.0.57</li>
<li><a href="4c198e3d9b"><code>4c198e3</code></a> Remove log4rs workaround from bail macro</li>
<li><a href="6833150a79"><code>6833150</code></a> Update ui test suite to nightly-2022-03-21</li>
<li><a href="1a763e45da"><code>1a763e4</code></a> Update ui test suite to nightly-2022-03-10</li>
<li>See full diff in <a href="https://github.com/dtolnay/anyhow/compare/1.0.56...1.0.57">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=anyhow&package-manager=cargo&previous-version=1.0.56&new-version=1.0.57)](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 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.9 to 3.1.10.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.10] - 2022-04-19</h2>
<h3>Featues</h3>
<ul>
<li>Expose <code>Command::build</code> for custom help generation or other command introspection needs</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0194568b03"><code>0194568</code></a> chore: Release</li>
<li><a href="62b1e4874a"><code>62b1e48</code></a> docs: Update changelog</li>
<li><a href="c818ef401d"><code>c818ef4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3642">#3642</a> from epage/build</li>
<li><a href="8f182067e3"><code>8f18206</code></a> feat(clap): Publicly expose <code>Command::build</code></li>
<li><a href="eddc04cbcc"><code>eddc04c</code></a> chore: Release</li>
<li><a href="84bcab77e5"><code>84bcab7</code></a> docs: Update changelog</li>
<li><a href="83f1b165ba"><code>83f1b16</code></a> perf(lex): Drop a dependency</li>
<li>See full diff in <a href="https://github.com/clap-rs/clap/compare/v3.1.9...v3.1.10">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.9&new-version=3.1.10)](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 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.8 to 3.1.9.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.9</h2>
<h2>[3.1.9] - 2022-04-15</h2>
<h3>Fixes</h3>
<ul>
<li>Pin the <code>clap_derive</code> version so a compatible version is always used with <code>clap</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.9] - 2022-04-15</h2>
<h3>Fixes</h3>
<ul>
<li>Pin the <code>clap_derive</code> version so a compatible version is always used with <code>clap</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="7598c000f9"><code>7598c00</code></a> chore: Release</li>
<li><a href="d05c5dac41"><code>d05c5da</code></a> docs: Update changelog</li>
<li><a href="4abf9d7f2e"><code>4abf9d7</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3636">#3636</a> from epage/derive</li>
<li><a href="027f2511c6"><code>027f251</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3634">#3634</a> from turrisxyz/naveen/feat/set-perms-actions</li>
<li><a href="ed57342bdd"><code>ed57342</code></a> fix(derive): Couple derive version to clap</li>
<li><a href="297b9cf594"><code>297b9cf</code></a> chore: Release</li>
<li><a href="b3cbfd0ae0"><code>b3cbfd0</code></a> docs(man): Update changelog</li>
<li><a href="7849c35a3e"><code>7849c35</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3635">#3635</a> from epage/port</li>
<li><a href="15d8b3b0cd"><code>15d8b3b</code></a> style: Make clippy happy</li>
<li><a href="2f0d91688a"><code>2f0d916</code></a> docs(lex): Fix links</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.8...v3.1.9">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.8&new-version=3.1.9)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot 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>
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.5.1 to 1.5.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rayon-rs/rayon/blob/master/RELEASES.md">rayon's changelog</a>.</em></p>
<blockquote>
<h1>Release rayon 1.5.2 / rayon-core 1.9.2 (2022-04-13)</h1>
<ul>
<li>The new <code>ParallelSlice::par_rchunks()</code> and <code>par_rchunks_exact()</code> iterate
slice chunks in reverse, aligned the against the end of the slice if the
length is not a perfect multiple of the chunk size. The new
<code>ParallelSliceMut::par_rchunks_mut()</code> and <code>par_rchunks_exact_mut()</code> are the
same for mutable slices.</li>
<li>The <code>ParallelIterator::try_*</code> methods now support <code>std::ops::ControlFlow</code> and
<code>std::task::Poll</code> items, mirroring the unstable <code>Try</code> implementations in the
standard library.</li>
<li>The <code>ParallelString</code> pattern-based methods now support <code>&[char]</code> patterns,
which match when any character in that slice is found in the string.</li>
<li>A soft limit is now enforced on the number of threads allowed in a single
thread pool, respecting internal bit limits that already existed. The current
maximum is publicly available from the new function <code>max_num_threads()</code>.</li>
<li>Fixed several Stacked Borrow and provenance issues found by <code>cargo miri</code>.</li>
</ul>
<h2>Contributors</h2>
<p>Thanks to all of the contributors for this release!</p>
<ul>
<li><a href="https://github.com/atouchet"><code>@atouchet</code></a></li>
<li><a href="https://github.com/bluss"><code>@bluss</code></a></li>
<li><a href="https://github.com/cuviper"><code>@cuviper</code></a></li>
<li><a href="https://github.com/fzyzcjy"><code>@fzyzcjy</code></a></li>
<li><a href="https://github.com/nyanzebra"><code>@nyanzebra</code></a></li>
<li><a href="https://github.com/paolobarbolini"><code>@paolobarbolini</code></a></li>
<li><a href="https://github.com/RReverser"><code>@RReverser</code></a></li>
<li><a href="https://github.com/saethlin"><code>@saethlin</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/rayon-rs/rayon/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rayon&package-manager=cargo&previous-version=1.5.1&new-version=1.5.2)](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 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>
This Pull Request supersedes #2018 and #2017.
It changes the following:
- Updates the wasm-bindgen dependency now that a new version without the clippy bug has been released
- Updates all dependencies to their latest versions
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.7 to 3.1.8.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.8</h2>
<h2>[3.1.8] - 2022-04-01</h2>
<h3>Fixes</h3>
<ul>
<li>Add <code>Debug</code> impls to more types</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.8] - 2022-04-01</h2>
<h3>Fixes</h3>
<ul>
<li>Add <code>Debug</code> impls to more types</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="08f74046dc"><code>08f7404</code></a> chore: Release</li>
<li><a href="6aa40ad2cb"><code>6aa40ad</code></a> docs: Update changelog</li>
<li><a href="732830a98c"><code>732830a</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3598">#3598</a> from dragonrider7225/bring-back-debug-impls</li>
<li><a href="17fed36da3"><code>17fed36</code></a> fix: Bring forward Debug impls from v2</li>
<li>See full diff in <a href="https://github.com/clap-rs/clap/compare/v3.1.7...v3.1.8">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.7&new-version=3.1.8)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot 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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.6 to 3.1.7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.7</h2>
<h2>[3.1.7] - 2022-03-31</h2>
<h3>Fixes</h3>
<ul>
<li><code>*(derive)* Abort, rather than ignore, when deriving </code>ArgEnum` with non-unit unskipped variants</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.7] - 2022-03-31</h2>
<h3>Fixes</h3>
<ul>
<li><code>*(derive)* Abort, rather than ignore, when deriving </code>ArgEnum` with non-unit unskipped variants</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="c75d2642ef"><code>c75d264</code></a> chore: Release</li>
<li><a href="b774370565"><code>b774370</code></a> docs: Update changelog</li>
<li><a href="71ef8878c5"><code>71ef887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3591">#3591</a> from Shir0kamii/fix-ArgEnum-non-unit</li>
<li><a href="fb4755d1c3"><code>fb4755d</code></a> feat(derive): Don't abort when non-unit variant is skipped</li>
<li><a href="ee3d12ec56"><code>ee3d12e</code></a> fix(derive): Abort on non-unit variant</li>
<li><a href="06f855f2ab"><code>06f855f</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3582">#3582</a> from ducaale/fix-docs</li>
<li><a href="d55e46f65f"><code>d55e46f</code></a> docs(mangen): Fix docs for Man::section()</li>
<li><a href="731d18f300"><code>731d18f</code></a> docs(examples): Fix help output</li>
<li><a href="6835dfa978"><code>6835dfa</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3577">#3577</a> from samueltardieu/fix-arg-help-doc</li>
<li><a href="ef3c2c73d5"><code>ef3c2c7</code></a> docs: arg! macro uses double quotes for help string</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.6...v3.1.7">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=3.1.6&new-version=3.1.7)](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 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>
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.8.0 to 1.8.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/bluss/indexmap/blob/master/RELEASES.md">indexmap's changelog</a>.</em></p>
<blockquote>
<ul>
<li>
<p>1.8.1</p>
<ul>
<li>The new <code>IndexSet::replace_full</code> will return the index of the item along
with the replaced value, if any, by <a href="https://github.com/zakcutner"><code>@zakcutner</code></a> in PR <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/222">222</a>.</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="275379c489"><code>275379c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/222">#222</a> from zakcutner/replace-full</li>
<li><a href="12162abeb0"><code>12162ab</code></a> Release 1.8.1</li>
<li><a href="feb816c4b8"><code>feb816c</code></a> Add a <code>replace_full</code> method on <code>IndexSet</code></li>
<li><a href="d6a9dd6c91"><code>d6a9dd6</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/218">#218</a> from erickt/miri</li>
<li><a href="4dd6619b4c"><code>4dd6619</code></a> Add miri builder</li>
<li><a href="10ee11e56c"><code>10ee11e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/216">#216</a> from cuviper/dev-dependencies</li>
<li><a href="98de9abe37"><code>98de9ab</code></a> Update dev-dependencies</li>
<li>See full diff in <a href="https://github.com/bluss/indexmap/compare/1.8.0...1.8.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=indexmap&package-manager=cargo&previous-version=1.8.0&new-version=1.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot 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>
This removes the only use of the `git2` and `hex` dependencies by reading the test262 submodule commit id directly from the `.git` directory.
Because `git2` depends on a lot of other crates, this removes a bunch of dependencies.
Trying to fix the issue in #1982, I noticed that we didn't have a proper error handling for the boa tester.
This adds the `anyhow` dependency to the tester, which makes it much easier to handle errors and bubble them up with attached context. Thanks to this I was able to easily find out the issue, and I think it could be useful to have it. It gives errors such as this one:
```
Error: could not read the suite test
caused by: error reading sub-suite ./test262/test/built-ins
caused by: error reading sub-suite ./test262/test/built-ins/ShadowRealm
caused by: error reading sub-suite ./test262/test/built-ins/ShadowRealm/WrappedFunction
caused by: error reading test ./test262/test/built-ins/ShadowRealm/WrappedFunction/throws-typeerror-on-revoked-proxy.js
caused by: while scanning a block scalar, found a tab character where an indentation space is expected at line 4 column 3
caused by: while scanning a block scalar, found a tab character where an indentation space is expected at line 4 column 3
```
Bumps [dyn-clone](https://github.com/dtolnay/dyn-clone) from 1.0.4 to 1.0.5.
<details>
<summary>Commits</summary>
<ul>
<li><a href="1500eb86a6"><code>1500eb8</code></a> Release 1.0.5</li>
<li><a href="91b11c3e66"><code>91b11c3</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/dyn-clone/issues/14">#14</a> from dtolnay/compiletest</li>
<li><a href="6872508710"><code>6872508</code></a> Add ui test for missing DynClone supertrait</li>
<li><a href="358e75127e"><code>358e751</code></a> Detect warnings in CI</li>
<li><a href="61ddd087b6"><code>61ddd08</code></a> Track raw pointers in miri CI run</li>
<li><a href="c5d644a3fa"><code>c5d644a</code></a> Add a miri test job in CI</li>
<li><a href="6c2e4585f2"><code>6c2e458</code></a> Declare minimum Rust version in Cargo metadata</li>
<li><a href="943c9296d4"><code>943c929</code></a> Resolve semicolon_if_nothing_returned pedantic clippy lint</li>
<li><a href="07b1c418d7"><code>07b1c41</code></a> Run clippy on test suite too</li>
<li><a href="15c588114a"><code>15c5881</code></a> Skip clippy job on pull requests</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/dyn-clone/compare/1.0.4...1.0.5">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=dyn-clone&package-manager=cargo&previous-version=1.0.4&new-version=1.0.5)](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 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>
Bumps [regex](https://github.com/rust-lang/regex) from 1.5.4 to 1.5.5.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p>
<blockquote>
<h1>1.5.5 (2022-03-08)</h1>
<p>This releases fixes a security bug in the regex compiler. This bug permits a
vector for a denial-of-service attack in cases where the regex being compiled
is untrusted. There are no known problems where the regex is itself trusted,
including in cases of untrusted haystacks.</p>
<ul>
<li><a href="https://github.com/rust-lang/regex/security/advisories/GHSA-m5pq-gvj9-9vr8">SECURITY #GHSA-m5pq-gvj9-9vr8</a>:
Fixes a bug in the regex compiler where empty sub-expressions subverted the
existing mitigations in place to enforce a size limit on compiled regexes.
The Rust Security Response WG published an advisory about this:
<a href="https://groups.google.com/g/rustlang-security-announcements/c/NcNNL1Jq7Yw">https://groups.google.com/g/rustlang-security-announcements/c/NcNNL1Jq7Yw</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="d130381b15"><code>d130381</code></a> 1.5.5</li>
<li><a href="ae70b41d4f"><code>ae70b41</code></a> security: fix denial-of-service bug in compiler</li>
<li><a href="b92ffd5471"><code>b92ffd5</code></a> cargo: use SPDX license format</li>
<li><a href="f6e52dafde"><code>f6e52da</code></a> syntax: fix 'unused' warnings</li>
<li><a href="5197f21287"><code>5197f21</code></a> fuzz: do not use inherits in Cargo.toml</li>
<li><a href="3662851482"><code>3662851</code></a> doc: fix typo</li>
<li><a href="63ee6699a2"><code>63ee669</code></a> syntax/doc: fix 'their' typo</li>
<li><a href="d6bc7a4c3b"><code>d6bc7a4</code></a> readme: remove broken badge</li>
<li><a href="bd7466034f"><code>bd74660</code></a> fuzz: try to fix build issue</li>
<li><a href="bd0a14231b"><code>bd0a142</code></a> readme: fix badges</li>
<li>Additional commits viewable in <a href="https://github.com/rust-lang/regex/compare/1.5.4...1.5.5">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=cargo&previous-version=1.5.4&new-version=1.5.5)](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 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>
Added boa examples as per issue #446
Overtaken https://github.com/boa-dev/boa/pull/634
Somehow screwed that branch up by rebasing it and losing access
pings @elasmojs
This Pull Request fixes/closes #446 .
Co-authored-by: Jason Williams <jase.williams@gmail.com>
Co-authored-by: Iban Eguia (Razican) <razican@protonmail.ch>
Co-authored-by: jasonwilliams <jase.williams@gmail.com>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
Building up to #186, this PR extracts an `Intrinsics` struct from `Context`, facilitating a lot the extraction of a `Realm` struct.
Also, it adapts the `BuiltIn` trait to be useful for builtins that don't expose a global property on initialization (`Generator`, `TypedArray`, etc.)
It changes the following:
- Creates an `Intrinsics` struct and refactors `Context` to transfer its intrinsic related fields to `Intrinsics`.
- Renames some methods and parameters to better describe their functionality.
- Makes `BuiltIn::init` return `Option<JsValue>` to skip global property initialization if the builtin initialization returns `None`
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.9.0 to 1.10.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/matklad/once_cell/blob/master/CHANGELOG.md">once_cell's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>1.11</h2>
<ul>
<li>Add <code>OnceCell::with_value</code> to create initialized <code>OnceCell</code> at compile time.</li>
<li>Improve <code>Clone</code> implementation for <code>OnceCell</code>.</li>
</ul>
<h2>1.10</h2>
<ul>
<li>upgrade <code>parking_lot</code> to <code>0.12.0</code> (note that this bumps MSRV with <code>parking_lot</code> feature enabled to <code>1.49.0</code>).</li>
</ul>
<h2>1.9</h2>
<ul>
<li>Added an <code>atomic-polyfill</code> optional dependency to compile <code>race</code> on platforms without atomics</li>
</ul>
<h2>1.8.0</h2>
<ul>
<li>Add <code>try_insert</code> API -- a version of <code>set</code> that returns a reference.</li>
</ul>
<h2>1.7.2</h2>
<ul>
<li>Improve code size when using parking_lot feature.</li>
</ul>
<h2>1.7.1</h2>
<ul>
<li>Fix <code>race::OnceBox<T></code> to also impl <code>Default</code> even if <code>T</code> doesn't impl <code>Default</code>.</li>
</ul>
<h2>1.7.0</h2>
<ul>
<li>Hide the <code>race</code> module behind (default) <code>race</code> feature.
Turns out that adding <code>race</code> by default was a breaking change on some platforms without atomics.
In this release, we make the module opt-out.
Technically, this is a breaking change for those who use <code>race</code> with <code>no_default_features</code>.
Given that the <code>race</code> module itself only several days old, the breakage is deemed acceptable.</li>
</ul>
<h2>1.6.0</h2>
<ul>
<li>Add <code>Lazy::into_value</code></li>
<li>Stabilize <code>once_cell::race</code> module for "first one wins" no_std-compatible initialization flavor.</li>
<li>Migrate from deprecated <code>compare_and_swap</code> to <code>compare_exchange</code>.</li>
</ul>
<h2>1.5.2</h2>
<ul>
<li><code>OnceBox</code> API uses <code>Box<T></code>.
This a breaking change to unstable API.</li>
</ul>
<h2>1.5.1</h2>
<ul>
<li>MSRV is increased to <code>1.36.0</code>.</li>
<li>document <code>once_cell::race</code> module.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="c3a3ede16d"><code>c3a3ede</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/174">#174</a></li>
<li><a href="c3f11bb8bc"><code>c3f11bb</code></a> Bump version and add a changelog entry for parking_lot upgrade.</li>
<li><a href="8737ec3713"><code>8737ec3</code></a> Upgrade parking_lot.</li>
<li><a href="64ef4a0f32"><code>64ef4a0</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/172">#172</a></li>
<li><a href="99cc25cb93"><code>99cc25c</code></a> Switch badge to GitHub Actions and remove outdated file references</li>
<li><a href="68b2d76703"><code>68b2d76</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/169">#169</a></li>
<li><a href="abd4c788df"><code>abd4c78</code></a> Fix typo</li>
<li><a href="dd8ff8aeff"><code>dd8ff8a</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/168">#168</a></li>
<li><a href="7a5fca7b54"><code>7a5fca7</code></a> doc: fix a typo</li>
<li>See full diff in <a href="https://github.com/matklad/once_cell/compare/v1.9.0...v1.10.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=once_cell&package-manager=cargo&previous-version=1.9.0&new-version=1.10.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot 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>
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.14.0 to 0.14.1.
<details>
<summary>Commits</summary>
<ul>
<li><a href="d7757f170d"><code>d7757f1</code></a> Bump versions</li>
<li><a href="a56acdc68a"><code>a56acdc</code></a> Fix dangling pointer in format_email.</li>
<li><a href="f6e90a79f6"><code>f6e90a7</code></a> Add support for zlib-ng</li>
<li><a href="c2a2613373"><code>c2a2613</code></a> Use cc 1.0.43 or later (<a href="https://github-redirect.dependabot.com/rust-lang/git2-rs/issues/608">#608</a>)</li>
<li><a href="97a855443f"><code>97a8554</code></a> Make the calls to <code>crate::init()</code> consistent (<a href="https://github-redirect.dependabot.com/rust-lang/git2-rs/issues/604">#604</a>)</li>
<li><a href="a9d86f4702"><code>a9d86f4</code></a> Add bindings for <code>git_index_version()</code> and <code>git_index_set_version()</code> (<a href="https://github-redirect.dependabot.com/rust-lang/git2-rs/issues/597">#597</a>)</li>
<li><a href="892dc1a9a1"><code>892dc1a</code></a> Bump versions</li>
<li><a href="e245130e5a"><code>e245130</code></a> Re-update libgit2 to master branch</li>
<li><a href="c19cc75de9"><code>c19cc75</code></a> Depend on latest libgit2-sys</li>
<li><a href="f89075b297"><code>f89075b</code></a> Bump versions</li>
<li>Additional commits viewable in <a href="https://github.com/rust-lang/git2-rs/compare/git2-curl-0.14.0...git2-curl-0.14.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=git2&package-manager=cargo&previous-version=0.14.0&new-version=0.14.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot 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>
This Pull Request fixes/closes #1670.
It changes the following:
- Removes the "js" feature by default from getrandom for wasm (still there for boa_wasm)
- Updates dependencies
Note that this change was introduced in #1521, after #1475. We must make sure that the issue doesn't come back.
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.78 to 1.0.79.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p>
<blockquote>
<h2>v1.0.79</h2>
<ul>
<li>Allow <code>RawValue</code> deserialization to propagate <code>\u</code> escapes for unmatched surrogates, which can later by deserialized to Vec<u8> (<a href="https://github-redirect.dependabot.com/serde-rs/json/issues/830">#830</a>, thanks <a href="https://github.com/lucacasonato"><code>@lucacasonato</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="7025523603"><code>7025523</code></a> Release 1.0.79</li>
<li><a href="7e56a406e5"><code>7e56a40</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/830">#830</a> from lucacasonato/support_lone_surrogates_in_raw_value</li>
<li><a href="977975ee65"><code>977975e</code></a> Ignore buggy ptr_arg clippy lint</li>
<li><a href="aa78d6ca4e"><code>aa78d6c</code></a> Resolve needless_borrow clippy lint</li>
<li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.78...v1.0.79">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_json&package-manager=cargo&previous-version=1.0.78&new-version=1.0.79)](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 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>
This PR boxes the `Try` and `TaggedTemplate` nodes reducing the size of the `Node` structure from 88 to 56 bytes. This should improve performance in most cases, by adding another indirection with code with `try` and templates.
This commit selects the production build (instead of development) for the WebAssembly compilation with Webpack, used in our playground. This might make things a bit faster and smaller.
I also took the opportunity to update all the dependencies and the Test262 suite, but unfortunately this doesn't solve #1824.
This PR adds some Clippy lints. Mainly, it adds the list of pedantic lints excluding some lints that were causing too many warnings. I also denied some useful restriction and pedantic lints, to make sure we use `Self` all the possible times (for better maintainability), and that we pass elements by reference where possible, for example, or that the documentation is properly written.
This might even have some small performance gains.
I also added a perfect hash function for the CLI keywords, which should be more efficient than a `HashSet`. This is something we could use elsewhere too.
The main idea behind this is to upgrade the Unicode version from 13 to 14. I also upgraded the rest of the dependencies, so this closes#1802, #1800 and #1799.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.134 to 1.0.135.
<details>
<summary>Commits</summary>
<ul>
<li><a href="8932c852a5"><code>8932c85</code></a> Release 1.0.135</li>
<li><a href="9f3dd3c7c4"><code>9f3dd3c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2163">#2163</a> from serde-rs/discord</li>
<li><a href="dd9b415ff9"><code>dd9b415</code></a> Add discord invite links</li>
<li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.134...v1.0.135">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde&package-manager=cargo&previous-version=1.0.134&new-version=1.0.135)](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 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>
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.76 to 1.0.78.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p>
<blockquote>
<h2>v1.0.78</h2>
<ul>
<li>Support deserializing as <code>&RawValue</code> in map key position, which would previously fail with <em>"invalid type: newtype struct"</em> (<a href="https://github-redirect.dependabot.com/serde-rs/json/issues/851">#851</a>)</li>
</ul>
<h2>v1.0.77</h2>
<ul>
<li>Include discord invite links in the published readme</li>
<li>Improve compile error on compiling with neither <code>std</code> nor <code>alloc</code> feature enabled</li>
<li>Include integration tests in published package (<a href="https://github-redirect.dependabot.com/serde-rs/json/issues/578">#578</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="98cafacefe"><code>98cafac</code></a> Release 1.0.78</li>
<li><a href="2d81cbd113"><code>2d81cbd</code></a> Move raw_value test imports to block of imports</li>
<li><a href="cbb0342ba0"><code>cbb0342</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/851">#851</a> from serde-rs/rawkey</li>
<li><a href="e5cdfcc7ee"><code>e5cdfcc</code></a> Support deserializing map key as &RawValue</li>
<li><a href="6a3fb68979"><code>6a3fb68</code></a> Add test of deserializing a &RawValue in map key position</li>
<li><a href="d8512af496"><code>d8512af</code></a> Release 1.0.77</li>
<li><a href="5fe9bdd356"><code>5fe9bdd</code></a> Improve error on compiling with neither std nor alloc</li>
<li><a href="4c15649318"><code>4c15649</code></a> Include integration tests in published package</li>
<li><a href="71257c5667"><code>71257c5</code></a> Add discord invite links</li>
<li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.76...v1.0.78">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_json&package-manager=cargo&previous-version=1.0.76&new-version=1.0.78)](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 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>
This builds on top of #1758 to try to bring #1763 to life.
Something that should probably be done here would be to convert `JsString` to a `Sym` internally. Then, further optimizations could be done adding common strings to a custom interner type (those that we know statically).
This is definitely work in progress, but I would like to have feedback on the API, and feel free to contribute.
Co-authored-by: raskad <32105367+raskad@users.noreply.github.com>
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?