Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.24 to 0.8.25.
<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.25</h2>
<ul>
<li>Add to <em>"encoding"</em> category on crates.io (<a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/246">#246</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="c8bfe34ba2"><code>c8bfe34</code></a> Release 0.8.25</li>
<li><a href="474fdf7c54"><code>474fdf7</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/246">#246</a> from dtolnay/categories</li>
<li><a href="7cf1df13bd"><code>7cf1df1</code></a> Add to "encoding" category on crates.io</li>
<li><a href="7fcb809449"><code>7fcb809</code></a> Bump oldest rustc tested to 1.56.1</li>
<li><a href="25f5f4e535"><code>25f5f4e</code></a> Use upstreamed docs.rs icon in docs.rs badge</li>
<li><a href="1f278b54ab"><code>1f278b5</code></a> Check for outdated deps in fuzz target</li>
<li><a href="48c41243ab"><code>48c4124</code></a> Check all crates in workspace for outdated deps</li>
<li><a href="8063ff2370"><code>8063ff2</code></a> Ignore derive_partial_eq_without_eq clippy lint</li>
<li><a href="3ca37a9d98"><code>3ca37a9</code></a> Update fuzz manifest to match cargo fuzz's new template</li>
<li><a href="970759cc5d"><code>970759c</code></a> Run miri in stricter miri-strict-provenance mode</li>
<li>See full diff in <a href="https://github.com/dtolnay/serde-yaml/compare/0.8.24...0.8.25">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.24&new-version=0.8.25)](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>
Previously we parsed arrow functions without the relevant cover grammar `CoverParenthesizedExpressionAndArrowParameterList`. This leads to either arrow functions or parenthesized expressions not being parsed correctly. Implementing this is a bit tricky, as the cover grammar is being parsed in `PrimaryExpression` while arrow functions are parsed in `AssignmentExpression`. This means that we have to return the covered parameter list that was parsed via `CoverParenthesizedExpressionAndArrowParameterList` in `PrimaryExpression` to `AssignmentExpression`. Fortunately this works pretty good and now the full arrow function test suite, with the exception of a few tests that require other features, passes.
This Pull Request changes the following:
- Implement `CoverParenthesizedExpressionAndArrowParameterList` parsing.
- Implement `CoverInitializedName` parsing in object literals.
- Fix a bug where an environment would be wrongly removed from the environment stack when an expression in default function parameters throws.
- Add more valid cases where on object literal can be converted to an object declaration pattern.
- Implement `Expression` parsing manually to avoid some cases where the parser would prematurely throw an error.
- Implement parsing of arrow functions via `CoverParenthesizedExpressionAndArrowParameterList`.
- Remove unneeded `AllowIn` flag on array and object declaration pattern parsers.
- Fix an of-by-one bug in the trace output.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.138 to 1.0.139.
<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.139</h2>
<ul>
<li>Add <code>new</code> constructor function for all <code>IntoDeserializer</code> impls (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2246">#2246</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="44b9496c91"><code>44b9496</code></a> Release 1.0.139</li>
<li><a href="7e1486d0da"><code>7e1486d</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2246">#2246</a> from dtolnay/valuedenew</li>
<li><a href="8170ffef2e"><code>8170ffe</code></a> Add constructor function for all IntoDeserializer impls</li>
<li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.138...v1.0.139">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.138&new-version=1.0.139)](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 adds the `ArrayBuffer` rust wrapper. It also provides a capability to construct a `JsArrayBuffer` from a user defined blob of data ( `Vec<u8>` ) and it is not cloned, it is directly used as the internal buffer.
This allows us to replace the inifficent `Vec<u8>` to `JsArray` then to `TypedArray` (in typed arrays `from_iter`), with a `JsArrayBuffer` created from user data to `TypedArray`. With this `Vec<u8>` to `JsTypedArray` should be fully fixed as discussed in #2058.
This PR adds a safe wrapper around JavaScript `JsSet` from `builtins::set`, and is being tracked at #2098.
Implements following methods
- [x] `Set.prototype.size`
- [x] `Set.prototype.add(value)`
- [x] `Set.prototype.clear()`
- [x] `Set.prototype.delete(value)`
- [x] `Set.prototype.has(value)`
- [x] `Set.prototype.forEach(callbackFn[, thisArg])`
Implement wrapper for `builtins::set_iterator`, to be used by following.
- [x] `Set.prototype.values()`
- [x] `Set.prototype.keys()`
- [x] `Set.prototype.entries()`
*Note: Are there any other functions that should be added?
Also adds `set_create()` and made `get_size()` public in `builtins::set`.
Bumps [unicode-normalization](https://github.com/unicode-rs/unicode-normalization) from 0.1.20 to 0.1.21.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-rs/unicode-normalization/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=unicode-normalization&package-manager=cargo&previous-version=0.1.20&new-version=0.1.21)](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 implements an optimization done by V8 and spidermonkey. Which stores indexed properties in two class storage methods dense and sparse. The dense method stores the property in a contiguous array ( `Vec<T>` ) where the index is the property key. This storage method is the default. While on the other hand we have sparse storage method which stores them in a hash map with key `u32` (like we currently do). This storage method is a backup and is slower to access because we have to do a hash map lookup, instead of an array access.
In the dense array we can store only data descriptors that have a value field and are `writable`, `configurable` and `enumerable` (which by default array elements are). Since all the fields of the property descriptor are the same except value field, we can omit them an just store the `JsValue`s in `Vec<JsValue>` this decreases the memory consumption and because it is smaller we are less likely to have cache misses.
There are cases where we have to convert from dense to sparse (the slow case):
- If we insert index elements in a non-incremental way, like `array[1000] = 1000` (inserting an element to an index that is already occupied only replaces it does not make it sparse)
- If we delete from the middle of the array (making a hole), like `delete array[10]` (only converts if there is actualy an element there, so calling delete on a non-existent index property will do nothing)
Once it becomes sparse is *stays* sparse there is no way to convert it again. (the computation needed to check whether it can be converted outweighs the benefits of this optimization)
I did some local benchmarks and on array creation/pop and push there is ~45% speed up and the impact _should_ be bigger the more elements we have. For example the code below on `main` takes `~21.5s` while with this optimization is `~3.5s` (both on release build).
```js
let array = [];
for (let i = 0; i < 50000; ++i) {
array[i] = i;
}
```
In addition I also made `Array::create_array_from_list` do a direct setting of the properties (small deviation from spec but it should have the same behaviour), with this #2058 should be fixed, conversion from `Vec` to `JsArray`, not `JsTypedArray` for that I will work on next :)
<!---
Thank you for contributing to Boa! Please fill out the template below, and remove or add any
information as you feel neccessary.
--->
This Pull Request related to JsMap for #2098.
Any feedback on implementing JsMapIterator would be welcome. I wasn't entirely sure if it was the right approach, but as I worked on the example file, it felt like something at least similar would be needed to use Map's .entries(), .keys(), and .values() methods.
It changes the following:
- Implements JsMap Wrapper
- Implements JsMapIterator Wrapper
- Creates JsMap example in boa_examples
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.12.0 to 1.13.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>
<h2>1.13.0</h2>
<ul>
<li>Add <code>Lazy::get</code>, similar to <code>OnceCell::get</code>.</li>
</ul>
<h2>1.12.1</h2>
<ul>
<li>Remove incorrect <code>debug_assert</code>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="eda22cec55"><code>eda22ce</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/183">#183</a></li>
<li><a href="2b0e3e5d83"><code>2b0e3e5</code></a> Publish 1.13.0</li>
<li><a href="61e27f9ff5"><code>61e27f9</code></a> Add a <code>Lazy::get</code> function, similar to <code>OnceCell::get</code></li>
<li><a href="2be67cc0e3"><code>2be67cc</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/187">#187</a></li>
<li><a href="c2ce5bd9a4"><code>c2ce5bd</code></a> remove incorrect debug assert</li>
<li><a href="2cdfc1e0a9"><code>2cdfc1e</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/184">#184</a></li>
<li><a href="b7839edeb6"><code>b7839ed</code></a> reduce iteration counts for Miri</li>
<li><a href="c1a3827bd5"><code>c1a3827</code></a> Miri has gained some more features</li>
<li><a href="485aaa83f3"><code>485aaa8</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/180">#180</a></li>
<li><a href="a36132d451"><code>a36132d</code></a> Fix comment of not new but get_mut</li>
<li>Additional commits viewable in <a href="https://github.com/matklad/once_cell/compare/v1.12.0...v1.13.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.12.0&new-version=1.13.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>
This storage method should be more cache friendly since we store in contiguous memory, besides that it should make #2157 a bit easier. Will work on that next after this gets merged :)
It changes the following:
- Remove the unneeded `prev` field in `CallFrame`
- Preallocate some space for future calls (16 slots)
This Pull Request changes the following:
- Implement `AsyncFunction` builtin object.
- Add `Async` as a function object data type.
- Implement `async function` and `await` compilation and execution.
- Parse `await` in more positions.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.137 to 1.0.138.
<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.138</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="4b622f6bbf"><code>4b622f6</code></a> Release 1.0.138</li>
<li><a href="0ee71c70af"><code>0ee71c7</code></a> Ignore explicit_auto_deref clippy lint</li>
<li><a href="6c098e497e"><code>6c098e4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2240">#2240</a> from Kixunil/patch-1</li>
<li><a href="41ffa6df7e"><code>41ffa6d</code></a> Call <code>reserve()</code> in <code>DeserializeSeed</code> example</li>
<li><a href="845b900fd5"><code>845b900</code></a> Exclude deliberately pinned prettyplease crate from cargo outdated</li>
<li><a href="7891ae7184"><code>7891ae7</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2228">#2228</a> from serde-rs/expandtest</li>
<li><a href="bac90d19b9"><code>bac90d1</code></a> Update macrotest to 1.0.9 and enable in CI</li>
<li><a href="227bf3023a"><code>227bf30</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2229">#2229</a> from dtolnay/expandlinguist</li>
<li><a href="f4535f68c1"><code>f4535f6</code></a> Mark expandtest outputs as generated code</li>
<li><a href="c6c35b5a31"><code>c6c35b5</code></a> Ignore buggy doc_link_with_quotes clippy lint</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/serde/compare/v1.0.137...v1.0.138">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.137&new-version=1.0.138)](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 [test262](https://github.com/tc39/test262) from `5e564b9` to `1b3bddb`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="1b3bddbeff"><code>1b3bddb</code></a> Fix spelling in test description</li>
<li><a href="704c9cea9c"><code>704c9ce</code></a> Temporal: Test validation of overflow option for conversion fast paths</li>
<li><a href="392f0049d7"><code>392f004</code></a> test invalid negative durations objects</li>
<li><a href="f6179a6eb6"><code>f6179a6</code></a> Temporal: Test observable calendar.mergeFields() calls with null-prototype ob...</li>
<li><a href="f314ecb9f4"><code>f314ecb</code></a> Temporal: Test observable calls on fields object from PrepareTemporalFields</li>
<li><a href="ca74e801b2"><code>ca74e80</code></a> Temporal: Test observable calendar.yearMonthFromFields() calls with null-prot...</li>
<li><a href="0c33b09337"><code>0c33b09</code></a> Temporal: Test observable calendar.dateUntil() calls with null-prototype options</li>
<li>See full diff in <a href="5e564b96e7...1b3bddbeff">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
This Pull Request changes the following:
- Fix `Promise.then` length to 2.
- Fix `all`, `allSettled` and `any` element lists to actually be shared between closures.
- Fix `allSettled` reject element function to call resolve instead of reject.
The remaining failing tests for `Promise` fail because of some errors in the arrow function parsing.
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.7 to 3.2.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.2.8</h2>
<h2>[3.2.8] - 2022-06-30</h2>
<h3>Features</h3>
<ul>
<li>Added <code>Command::mut_subcommand</code> to mirror <code>Command::mut_arg</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.2.8] - 2022-06-30</h2>
<h3>Features</h3>
<ul>
<li>Added <code>Command::mut_subcommand</code> to mirror <code>Command::mut_arg</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="6614ffa6c8"><code>6614ffa</code></a> chore: Release</li>
<li><a href="a67746ecbe"><code>a67746e</code></a> docs: Update changelog</li>
<li><a href="5ca73f3299"><code>5ca73f3</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3882">#3882</a> from emersonford/mut_subcommands</li>
<li><a href="619f209138"><code>619f209</code></a> feat: Add <code>mut_subcommand</code> method to Command</li>
<li>See full diff in <a href="https://github.com/clap-rs/clap/compare/v3.2.7...v3.2.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.2.7&new-version=3.2.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>
This Pull Request changes the following:
- Fix the `this` value that is passend to function calls to be `undefined` if the function is not a property reference
- Add special handling for setting the `this` value for function calls where the function is a private property reference or a super property reference
So, @raskad and myself had a short discussion about the state of #736, and we came to the conclusion that it would be a good time to implement our own string interner; partly because the `string-interner` crate is a bit unmaintained (as shown by https://github.com/Robbepop/string-interner/pull/42 and https://github.com/Robbepop/string-interner/pull/47), and partly because it would be hard to experiment with custom optimizations for UTF-16 strings. I still want to thank @Robbepop for the original implementation though, because some parts of this design have been shamelessly stolen from it 😅.
Having said that, this PR is a complete reimplementation of the interner, but with some modifications to (hopefully!) make it a bit easier to experiment with UTF-16 strings, apply optimizations, and whatnot :)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.81 to 1.0.82.
<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.82</h2>
<ul>
<li>Implement <code>From<Option<T>></code> for serde_json::Value where <code>T: Into<Value></code> (<a href="https://github-redirect.dependabot.com/serde-rs/json/issues/900">#900</a>, thanks <a href="https://github.com/kvnvelasco"><code>@kvnvelasco</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="f286714a4b"><code>f286714</code></a> Release 1.0.82</li>
<li><a href="df704c2468"><code>df704c2</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/900">#900</a> from kvnvelasco/implement_from_option_for_value</li>
<li><a href="b87778bf54"><code>b87778b</code></a> don't use experimental (in 1.36) Self:: access for enums</li>
<li><a href="1bf61e9c08"><code>1bf61e9</code></a> make Value be From<Option<!-- raw HTML omitted -->></li>
<li><a href="3d173405c2"><code>3d17340</code></a> Bump oldest rustc for preserve_order feature to 1.56.1</li>
<li><a href="dab5ed3ee9"><code>dab5ed3</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/895">#895</a> from dtolnay/ref</li>
<li><a href="05e03ee181"><code>05e03ee</code></a> Eliminate all use of ref keyword</li>
<li><a href="45f1c4a744"><code>45f1c4a</code></a> Resolve borrow_deref_ref clippy lint</li>
<li><a href="de5c34b704"><code>de5c34b</code></a> Resolve get_first clippy lint</li>
<li><a href="6b91c96f8d"><code>6b91c96</code></a> Check for outdated deps in fuzz target</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/json/compare/v1.0.81...v1.0.82">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.81&new-version=1.0.82)](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 changes the following:
- Implement `super` expression parsing / execution.
- Implement early errors for `super` expressions.
- Refactor / add internal slot representation for environment and function objects.
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.6 to 3.2.7.
<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.2.7] - 2022-06-28</h2>
<h3>Fixes</h3>
<ul>
<li>Global arguments should override env-sourced arguments</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="b4a1362486"><code>b4a1362</code></a> chore: Release</li>
<li><a href="3e80393e43"><code>3e80393</code></a> docs: Update changelog</li>
<li><a href="f406d99b95"><code>f406d99</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3879">#3879</a> from epage/env</li>
<li><a href="72d206e4d9"><code>72d206e</code></a> fix(parser): Ensure globals override env vars</li>
<li><a href="f082eb6d4a"><code>f082eb6</code></a> test(parser): Verify global/default interaction</li>
<li><a href="9962393c20"><code>9962393</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3877">#3877</a> from epage/assert</li>
<li><a href="3c4e684c8b"><code>3c4e684</code></a> test: Verify auto-traits for core types</li>
<li><a href="a05f4d34a3"><code>a05f4d3</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3870">#3870</a> from stepancheg/macro-refs</li>
<li><a href="5ba41d775c"><code>5ba41d7</code></a> docs(license): Update years/holders</li>
<li><a href="464ef3920b"><code>464ef39</code></a> refactor: Put once_cell reexport into __macro_refs</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.2.6...v3.2.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.2.6&new-version=3.2.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 [test262](https://github.com/tc39/test262) from `74656ae` to `5e564b9`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="5e564b96e7"><code>5e564b9</code></a> Temporal: Fix typo in description.</li>
<li><a href="079a7eac7a"><code>079a7ea</code></a> Temporal: Fix typo in ZonedDateTime/from/offset-wrong-type.js.</li>
<li><a href="8123e8fc34"><code>8123e8f</code></a> Temporal: Add missing Number checks in overflow-wrong-type.js.</li>
<li><a href="b458b9f0c2"><code>b458b9f</code></a> Update harness/testIntl.js</li>
<li><a href="2877facc4c"><code>2877fac</code></a> Update testIntl.js</li>
<li><a href="0efbba27ff"><code>0efbba2</code></a> Normative: Add new numbering system "tnsa"</li>
<li><a href="ee521159d5"><code>ee52115</code></a> Fix decorator tests</li>
<li><a href="babd46c40a"><code>babd46c</code></a> Add tests for Temporal.Instant strings at the edge of the range</li>
<li><a href="81836ba124"><code>81836ba</code></a> Temporal: Test PlainDate#{add,subtract} with custom calendar.</li>
<li><a href="79c4496559"><code>79c4496</code></a> Fixed spelling error identifer -> identifier.</li>
<li>Additional commits viewable in <a href="74656ae4ec...5e564b96e7">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Bumps [unicode-normalization](https://github.com/unicode-rs/unicode-normalization) from 0.1.19 to 0.1.20.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-rs/unicode-normalization/commits/v0.1.20">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=unicode-normalization&package-manager=cargo&previous-version=0.1.19&new-version=0.1.20)](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.9.0 to 1.9.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.9.1</p>
<ul>
<li>The MSRV now allows Rust 1.56.0 as well. However, currently <code>hashbrown</code>
0.12.1 requires 1.56.1, so users on 1.56.0 should downgrade that to 0.12.0
until there is a later published version relaxing its requirement.</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a638b9910b"><code>a638b99</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/233">#233</a> from cuviper/release-1.9.1</li>
<li><a href="3f6cdde72a"><code>3f6cdde</code></a> Release 1.9.1</li>
<li><a href="3f8381a4e8"><code>3f8381a</code></a> Run CI on 1.56.1 until next hashbrown release</li>
<li><a href="24a0c8fafd"><code>24a0c8f</code></a> Revert "Bump MSRV to 1.56.1, matching hashbrown as of 0.12.1"</li>
<li><a href="844750f009"><code>844750f</code></a> Fix the RELEASES.md link</li>
<li>See full diff in <a href="https://github.com/bluss/indexmap/compare/1.9.0...1.9.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.9.0&new-version=1.9.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>
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.5 to 3.2.6.
<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.2.6] - 2022-06-21</h2>
<h3>Fixes</h3>
<ul>
<li>Don't panic when parsing <code>--=</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="3823df9bbe"><code>3823df9</code></a> chore: Release</li>
<li><a href="8a659bc2b4"><code>8a659bc</code></a> docs: Update changelog</li>
<li><a href="ceb7ee4f54"><code>ceb7ee4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3860">#3860</a> from epage/panic</li>
<li><a href="01da890145"><code>01da890</code></a> fix(parser): Don't panic on <code>--=</code></li>
<li><a href="dabb5713d4"><code>dabb571</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3853">#3853</a> from dtolnay-contrib/valuevalidation</li>
<li><a href="690530a191"><code>690530a</code></a> Fix typo in ErrorKind::ValueValidation message</li>
<li><a href="ae78f88d48"><code>ae78f88</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3852">#3852</a> from epage/msrv</li>
<li><a href="82d70d82c4"><code>82d70d8</code></a> chore: Bump MSRV from 1.56.0 to 1.56.1</li>
<li><a href="8c28bec396"><code>8c28bec</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3851">#3851</a> from tshepang/trim-manifest</li>
<li><a href="806f634bfa"><code>806f634</code></a> chore: trim Cargo manifest fields whose values are defaults</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.2.5...v3.2.6">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.2.5&new-version=3.2.6)](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 [test262](https://github.com/tc39/test262) from `74de3d1` to `74656ae`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="74656ae4ec"><code>74656ae</code></a> reenable graaljs</li>
<li>See full diff in <a href="74de3d1d32...74656ae4ec">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Bumps [dyn-clone](https://github.com/dtolnay/dyn-clone) from 1.0.5 to 1.0.6.
<details>
<summary>Commits</summary>
<ul>
<li><a href="ee78719dc5"><code>ee78719</code></a> Release 1.0.6</li>
<li><a href="4f27457db2"><code>4f27457</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/dyn-clone/issues/18">#18</a> from dtolnay/lifetime</li>
<li><a href="22cdf84ebe"><code>22cdf84</code></a> Add test involving lifetime parameter</li>
<li><a href="609f5a02e9"><code>609f5a0</code></a> Use upstreamed docs.rs icon in docs.rs badge</li>
<li><a href="07525737da"><code>0752573</code></a> Run miri in stricter miri-strict-provenance mode</li>
<li><a href="6f311a6963"><code>6f311a6</code></a> Drop unneeded quoting from env variable in workflows yaml</li>
<li><a href="6865de45e8"><code>6865de4</code></a> Update workflows to actions/checkout@v3</li>
<li><a href="d0d5eb290e"><code>d0d5eb2</code></a> Pull miri from miri branch of dtolnay/rust-toolchain</li>
<li>See full diff in <a href="https://github.com/dtolnay/dyn-clone/compare/1.0.5...1.0.6">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.5&new-version=1.0.6)](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.57 to 1.0.58.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/anyhow/releases">anyhow's releases</a>.</em></p>
<blockquote>
<h2>1.0.58</h2>
<ul>
<li>Fix some broken links in documentation</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="8f950ac0d6"><code>8f950ac</code></a> Release 1.0.58</li>
<li><a href="bf23b3b685"><code>bf23b3b</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/anyhow/issues/242">#242</a> from MedzikUser/master</li>
<li><a href="d8c2388c65"><code>d8c2388</code></a> Use upstreamed docs.rs icon in docs.rs badge</li>
<li><a href="db82639510"><code>db82639</code></a> Fix broken doc links to anyhow macro</li>
<li><a href="462212b707"><code>462212b</code></a> Update docs.rs badge</li>
<li><a href="ff37db348d"><code>ff37db3</code></a> Check all crates in workspace for outdated deps</li>
<li><a href="302acadce0"><code>302acad</code></a> Match components in CI to rust-toolchain.toml file</li>
<li><a href="26023f77a8"><code>26023f7</code></a> Run miri in stricter miri-strict-provenance mode</li>
<li><a href="f45065787a"><code>f450657</code></a> Drop unneeded quoting from env variable in workflows yaml</li>
<li><a href="09e4db31da"><code>09e4db3</code></a> Update workflows to actions/checkout@v3</li>
<li>See full diff in <a href="https://github.com/dtolnay/anyhow/compare/1.0.57...1.0.58">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.57&new-version=1.0.58)](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 [sys-locale](https://github.com/1Password/sys-locale) from 0.2.0 to 0.2.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/1Password/sys-locale/releases">sys-locale's releases</a>.</em></p>
<blockquote>
<h2>v0.2.1</h2>
<p>See <a href="https://github.com/1Password/sys-locale/blob/main/CHANGELOG.md#020---2022-03-01">the changelog</a> for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/1Password/sys-locale/blob/main/CHANGELOG.md">sys-locale's changelog</a>.</em></p>
<blockquote>
<h2>[0.2.1] - 2022-06-16</h2>
<h3>New</h3>
<ul>
<li>The crate now supports being used via WASM in a WebWorker environment.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="1b0e559086"><code>1b0e559</code></a> Release version 0.2.1</li>
<li><a href="82697d3555"><code>82697d3</code></a> Convert line endings to LF and unify existing files</li>
<li><a href="ca587f1844"><code>ca587f1</code></a> Add support for workers in WASM</li>
<li>See full diff in <a href="https://github.com/1Password/sys-locale/compare/v0.2.0...v0.2.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sys-locale&package-manager=cargo&previous-version=0.2.0&new-version=0.2.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>
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.8.2 to 1.9.0.
<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.9.0</p>
<ul>
<li>
<p><strong>MSRV</strong>: Rust 1.56.1 or later is now required.</p>
</li>
<li>
<p>The <code>hashbrown</code> dependency has been updated to version 0.12.</p>
</li>
<li>
<p><code>IterMut</code> and <code>ValuesMut</code> now implement <code>Debug</code>.</p>
</li>
<li>
<p>The new <code>IndexMap::shrink_to</code> and <code>IndexSet::shrink_to</code> methods shrink
the capacity with a lower bound.</p>
</li>
<li>
<p>The new <code>IndexMap::move_index</code> and <code>IndexSet::move_index</code> methods change
the position of an item from one index to another, shifting the items
between to accommodate the move.</p>
</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="32222033fd"><code>3222203</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/231">#231</a> from cuviper/release-1.9.0</li>
<li><a href="9eda24a446"><code>9eda24a</code></a> Add a release note for move_index</li>
<li><a href="8d0216043d"><code>8d02160</code></a> Use <code>u8</code> test indices so quickcheck is less likely to go out of bounds.</li>
<li><a href="be700efe0b"><code>be700ef</code></a> Add move_index to change the position of an entry</li>
<li><a href="511280aa2e"><code>511280a</code></a> Add an MSRV note for retain_mut</li>
<li><a href="75de9993cd"><code>75de999</code></a> cargo fmt</li>
<li><a href="855b8eefcd"><code>855b8ee</code></a> Bump MSRV to 1.56.1, matching hashbrown as of 0.12.1</li>
<li><a href="971f8b92af"><code>971f8b9</code></a> Hide unnecessary iterator visibility</li>
<li><a href="20cf99ad66"><code>20cf99a</code></a> Documentation assertion in erase_index function</li>
<li><a href="3921adfa94"><code>3921adf</code></a> Fix clippy::needless_borrow</li>
<li>Additional commits viewable in <a href="https://github.com/bluss/indexmap/compare/1.8.2...1.9.0">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.2&new-version=1.9.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 [prettier](https://github.com/prettier/prettier) from 2.7.0 to 2.7.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/prettier/prettier/releases">prettier's releases</a>.</em></p>
<blockquote>
<h2>2.7.1</h2>
<p>🔗 <a href="https://github.com/prettier/prettier/blob/main/CHANGELOG.md#271">Changelog</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/prettier/prettier/blob/main/CHANGELOG.md">prettier's changelog</a>.</em></p>
<blockquote>
<h1>2.7.1</h1>
<p><a href="https://github.com/prettier/prettier/compare/2.7.0...2.7.1">diff</a></p>
<h4>Keep useful empty lines in description (<a href="https://github-redirect.dependabot.com/prettier/prettier/pull/13013">#13013</a> by <a href="https://github.com/chimurai"><code>@chimurai</code></a>)</h4>
<!-- raw HTML omitted -->
<pre lang="graphql"><code># Input
"""
First line
<p>Second Line
"""
type Person {
name: String
}
</code></pre></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="eeed611c72"><code>eeed611</code></a> Release 2.7.1</li>
<li><a href="794d9d1558"><code>794d9d1</code></a> bugfix(graphql): Keep useful empty lines in description (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/13013">#13013</a>)</li>
<li><a href="dd2af6f053"><code>dd2af6f</code></a> Fix <code>--skip-dependencies-install</code></li>
<li><a href="b21772baaa"><code>b21772b</code></a> Allow skip depencies install & set repo</li>
<li><a href="5530ad24b9"><code>5530ad2</code></a> Merge branch 'main' of github.com:prettier/prettier</li>
<li><a href="c7c99305e9"><code>c7c9930</code></a> Clean changelog</li>
<li><a href="448786fe35"><code>448786f</code></a> Revert changes in release script</li>
<li><a href="6b388faa50"><code>6b388fa</code></a> Add truncate</li>
<li><a href="109333ad99"><code>109333a</code></a> Git blame ignore 2.7.0</li>
<li><a href="59ec4f2ef4"><code>59ec4f2</code></a> Bump Prettier dependency to 2.7.0</li>
<li>Additional commits viewable in <a href="https://github.com/prettier/prettier/compare/2.7.0...2.7.1">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=prettier&package-manager=npm_and_yarn&previous-version=2.7.0&new-version=2.7.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 changes the trigger type for PR benchmarks back to the default (`opened`, `synchronize`, `reopened`). As part of #2114 I added the `labeled` trigger type. This causes the benchmarks to run when the `run-benchmark` label is present and another label is added.
For example in #2116 I added the `run-benchmark` label while creating the PR. The benchmarks then where triggered six times; one for the PR creation (`opened`) and five times for each label that I initially added to the PR.
The only drawback is that the benchmarks are not triggered, when we just add the label, but unfortunately I don't have a clever idea on how to achieve that right now. We will have to add the label and then trigger the run via a `synchronize` (push).
This changes our ci benchmarks to only run when the label `run-benchmark` is set on the PR.
The motivation is to reduce the time waiting on benchmarks to run while working on PRs. Also this saves some ci minutes which is always good.
When we spot changes that we suspect impact performance, we can add the `run-benchmark` label to the PR and the benchmarks will run.