This Pull Request fixes various bugs related to classes.
The biggest changes are:
- Changed private names to be unique across multiple classes.
- Changed private name resolution to work via a visitor after a class is parsed. The way class early errors are defined makes it impossible to perform private name resolution while parsing.
- Added function names to class methods.
- Added class name binding to method function environments.
- Separated opcodes for `static` and non-`static` class method definitions to make the above operations possible.
There are still some bugs and further issues with classes but this is already a lot.
As part of the new modules PR, I was working on implementing the [host hooks](https://tc39.es/ecma262/#sec-host-hooks-summary) for the module import hooks and custom job queues. However, the promises module needed a bit of a refactor in order to couple with the new API. So, I thought it was a good idea to separate the promises refactor into its own PR, since the other PR is already big as it is.
- Replaced some usages of `JobCallback` with a new `NativeJob` that isn't traced by the GC, since those closures are always rooted and executed by the `Context` globally. This will also allow hosts to pass their custom jobs to the job queue, and maybe could also accept futures in the Future (pun intended 😆).
- Refactored several functions to account for the `HostPromiseRejectionTracker` hook which needs the promise `JsObject`.
- Rewrote some patterns with newer Rust idioms.
Bumps [bzip2](https://github.com/alexcrichton/bzip2-rs) from 0.4.3 to 0.4.4.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/alexcrichton/bzip2-rs/commits/0.4.4">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=bzip2&package-manager=cargo&previous-version=0.4.3&new-version=0.4.4)](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)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/boa-dev/boa/network/alerts).
</details>
<!---
Thank you for contributing to Boa! Please fill out the template below, and remove or add any
information as you feel necessary.
--->
Hi all! 😄
This Pull Request addresses #2424. There are also a few changes made to the `ByteCompiler`, the majority of which are involving `JumpControlInfo`.
It changes the following:
- Adds `Break` Opcode
- Shifts `compile_stmt` into the `statement` module.
- Moves `JumpControlInfo` to it's own module.
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.0 to 1.7.1.
<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.7.1 (2023-01-09)</h1>
<p>This release was done principally to try and fix the doc.rs rendering for the
regex crate.</p>
<p>Performance improvements:</p>
<ul>
<li>[PERF <a href="https://github-redirect.dependabot.com/rust-lang/regex/issues/930">#930</a>](<a href="https://github-redirect.dependabot.com/rust-lang/regex/pull/930">rust-lang/regex#930</a>):
Optimize <code>replacen</code>. This also applies to <code>replace</code>, but not <code>replace_all</code>.</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>[BUG <a href="https://github-redirect.dependabot.com/rust-lang/regex/issues/945">#945</a>](<a href="https://github-redirect.dependabot.com/rust-lang/regex/issues/945">rust-lang/regex#945</a>):
Maybe fix rustdoc rendering by just bumping a new release?</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a9b2e02352"><code>a9b2e02</code></a> 1.7.1</li>
<li><a href="98c1b63ffe"><code>98c1b63</code></a> changelog: 1.7.1</li>
<li><a href="9330ea50f5"><code>9330ea5</code></a> ci: harden configuration</li>
<li><a href="ac2d0e1b33"><code>ac2d0e1</code></a> impl: optimize replacen loop</li>
<li>See full diff in <a href="https://github.com/rust-lang/regex/compare/1.7.0...1.7.1">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.7.0&new-version=1.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>
Bumps [test262](https://github.com/tc39/test262) from `f00d411` to `e1048d0`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="e1048d0aff"><code>e1048d0</code></a> Update Temporal test262 as per the normative changes</li>
<li><a href="09f863d8c3"><code>09f863d</code></a> Temporal operation NanosecondsToDays: Test infinite or arbitrary-length obser...</li>
<li><a href="6fcebf2f85"><code>6fcebf2</code></a> Improve NumberFormat and DateTimeFormat tests for OrdinaryHasInstance</li>
<li><a href="58b3321dba"><code>58b3321</code></a> remove invalid element decorator yield reference tests</li>
<li>See full diff in <a href="f00d4118db...e1048d0aff">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 [prettier](https://github.com/prettier/prettier) from 2.8.1 to 2.8.2.
<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.8.2</h2>
<p>🔗 <a href="https://github.com/prettier/prettier/blob/main/CHANGELOG.md#282">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.8.2</h1>
<p><a href="https://github.com/prettier/prettier/compare/2.8.1...2.8.2">diff</a></p>
<h4>Don't lowercase link references (<a href="https://github-redirect.dependabot.com/prettier/prettier/pull/13155">#13155</a> by <a href="https://github.com/DerekNonGeneric"><code>@DerekNonGeneric</code></a> & <a href="https://github.com/fisker"><code>@fisker</code></a>)</h4>
<!-- raw HTML omitted -->
<pre lang="markdown"><code><!-- Input -->
We now don't strictly follow the release notes format suggested by [Keep a Changelog].
<p><!-- Prettier 2.8.1 -->
We now don't strictly follow the release notes format suggested by <a href="https://example.com/">Keep a Changelog</a>.</p>
<p><!--
^^^^^^^^^^^^^^^^^^ lowercased
--></p>
<p><!-- Prettier 2.8.2 -->
<Same as input>
</code></pre></p>
<h4>Preserve self-closing tags (<a href="https://github-redirect.dependabot.com/prettier/prettier/pull/13691">#13691</a> by <a href="https://github.com/dcyriller"><code>@dcyriller</code></a>)</h4>
<!-- raw HTML omitted -->
<pre lang="hbs"><code>{{! Input }}
<div />
<div></div>
<custom-component />
<custom-component></custom-component>
<i />
<i></i>
<Component />
<Component></Component>
<p>{{! Prettier 2.8.1 }}
<div></div>
<div></div>
<custom-component></custom-component>
<custom-component></custom-component>
<i></i>
<i></i>
<Component />
<Component /></p>
<p>{{! Prettier 2.8.2 }}
</tr></table>
</code></pre></p>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="ac88438d65"><code>ac88438</code></a> Release 2.8.2</li>
<li><a href="aaf919014f"><code>aaf9190</code></a> Fix comments after directive (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/14081">#14081</a>)</li>
<li><a href="9e09a78cf5"><code>9e09a78</code></a> Stop inserting space in LESS property access (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/14103">#14103</a>)</li>
<li><a href="0c5d4f3458"><code>0c5d4f3</code></a> Fix removing commas from function arguments in maps (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/14089">#14089</a>)</li>
<li><a href="b77d912c0c"><code>b77d912</code></a> ember / glimmer: Preserve self-closing tags (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/13691">#13691</a>)</li>
<li><a href="cf36209a27"><code>cf36209</code></a> Handlebars: Add tests for <code>{{! prettier-ignore}}</code> (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/13693">#13693</a>)</li>
<li><a href="f8e1ad806c"><code>f8e1ad8</code></a> Add parens to head of <code>ExpressionStatement</code> instead of whole statement (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/14077">#14077</a>)</li>
<li><a href="8034bada96"><code>8034bad</code></a> Build(deps): Bump json5 from 2.2.0 to 2.2.3 in /scripts/release (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/14104">#14104</a>)</li>
<li><a href="31d40104f4"><code>31d4010</code></a> Build(deps): Bump json5 from 2.2.1 to 2.2.3 in /website (<a href="https://github-redirect.dependabot.com/prettier/prettier/issues/14101">#14101</a>)</li>
<li><a href="41cee0636e"><code>41cee06</code></a> Do not change case of property name if inside a variable declaration in LESS ...</li>
<li>Additional commits viewable in <a href="https://github.com/prettier/prettier/compare/2.8.1...2.8.2">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.8.1&new-version=2.8.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 PR is a complete redesign of our current native functions and closures API.
I was a bit dissatisfied with our previous design (even though I created it 😆), because it had a lot of superfluous traits, a forced usage of `Gc<GcCell<T>>` and an overly restrictive `NativeObject` bound. This redesign, on the other hand, simplifies a lot our public API, with a simple `NativeCallable` struct that has several constructors for each type of required native function.
This new design doesn't require wrapping every capture type with `Gc<GcCell<T>>`, relaxes the trait requirement to `Trace + 'static` for captures, can be reused in both `JsObject` functions and (soonish) host defined functions, and is (in my opinion) a bit cleaner than the previous iteration. It also offers an `unsafe` API as an escape hatch for users that want to pass non-Copy closures which don't capture traceable types.
Would ask for bikeshedding about the names though, because I don't know if `NativeCallable` is the most precise name for this. Same about the constructor names; I added the `from` prefix to all of them because it's the "standard" practice, but seeing the API doesn't have any other method aside from `call`, it may be better to just remove the prefix altogether.
Let me know what you think :)
This Pull Request changes the following:
- Pass a receiver value to the object `get` function in the `GetPropertyBy*` opcodes. The receiver value may be different from the object, because `ToObject` is not called on it.
This Pull Request changes the following:
- Add early errors for functions to make sure that 'eval' or 'arguments' cannot be used as binding identifiers in function parameters. When the function body contains a strict directive, this also has to be accounted for.
- Fix early errors for function identifiers to make sure they cannot be 'eval' or 'arguments' when a function body contains a strict directive.
<!---
Thank you for contributing to Boa! Please fill out the template below, and remove or add any
information as you feel necessary.
--->
This Pull Request fixes/closes #2512 .
Removes `Literal::Undefined` so that `undefined` is treated as an identifier name. Ran the parser's idempotency fuzzer and ensured the bug doesn't reproduce.
Postfix increment / decrement operators require that there is no line terminator between the LHS expression and the operator. This was previously ignored.
Bumps [arbitrary](https://github.com/rust-fuzz/arbitrary) from 1.2.0 to 1.2.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-fuzz/arbitrary/blob/main/CHANGELOG.md">arbitrary's changelog</a>.</em></p>
<blockquote>
<h2>1.2.2</h2>
<p>Released 2023-01-03.</p>
<h3>Fixed</h3>
<ul>
<li>Ensured that <code>arbitrary</code> and <code>derive_arbitrary</code> versions are synced up so that
they don't, e.g., emit generated code that depends on newer versions of
<code>arbitrary</code> than the one currently in
use. <a href="https://github-redirect.dependabot.com/rust-fuzz/arbitrary/issues/134">#134</a></li>
</ul>
<h2>1.2.1</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed an issue where <code>std::thread_local!</code> macro invocations in derive code
were not fully prefixed, causing confusing build errors in certain situations.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/rust-fuzz/arbitrary/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=arbitrary&package-manager=cargo&previous-version=1.2.0&new-version=1.2.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>
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/json5/json5/releases">json5's releases</a>.</em></p>
<blockquote>
<h2>v2.2.2</h2>
<ul>
<li>Fix: Properties with the name <code>__proto__</code> are added to objects and arrays.
(<a href="https://github-redirect.dependabot.com/json5/json5/issues/199">#199</a>) This also fixes a prototype pollution vulnerability reported by
Jonathan Gregson! (<a href="https://github-redirect.dependabot.com/json5/json5/issues/295">#295</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/json5/json5/blob/main/CHANGELOG.md">json5's changelog</a>.</em></p>
<blockquote>
<h3>v2.2.2 [<a href="https://github.com/json5/json5/tree/v2.2.2">code</a>, <a href="https://github.com/json5/json5/compare/v2.2.1...v2.2.2">diff</a>]</h3>
<ul>
<li>Fix: Properties with the name <code>__proto__</code> are added to objects and arrays.
(<a href="https://github-redirect.dependabot.com/json5/json5/issues/199">#199</a>) This also fixes a prototype pollution vulnerability reported by
Jonathan Gregson! (<a href="https://github-redirect.dependabot.com/json5/json5/issues/295">#295</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="14f8cb186e"><code>14f8cb1</code></a> 2.2.2</li>
<li><a href="10cc7ca916"><code>10cc7ca</code></a> docs: update CHANGELOG for v2.2.2</li>
<li><a href="7774c10979"><code>7774c10</code></a> fix: add <strong>proto</strong> to objects and arrays</li>
<li><a href="edde30abd8"><code>edde30a</code></a> Readme: slight tweak to intro</li>
<li><a href="97286f8bd5"><code>97286f8</code></a> Improve example in readme</li>
<li><a href="d720b4fe4a"><code>d720b4f</code></a> Improve readme (e.g. explain JSON5 better!) (<a href="https://github-redirect.dependabot.com/json5/json5/issues/291">#291</a>)</li>
<li><a href="910ce25914"><code>910ce25</code></a> docs: fix spelling of Aseem</li>
<li><a href="2aab4dd2a7"><code>2aab4dd</code></a> test: require tap as t in cli tests</li>
<li><a href="6d426865ce"><code>6d42686</code></a> test: remove mocha syntax from tests</li>
<li><a href="4798b9dbde"><code>4798b9d</code></a> docs: update installation and usage for modules</li>
<li>Additional commits viewable in <a href="https://github.com/json5/json5/compare/v2.2.1...v2.2.2">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=json5&package-manager=npm_and_yarn&previous-version=2.2.1&new-version=2.2.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)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/boa-dev/boa/network/alerts).
</details>
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.16.0 to 1.17.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.17.0</h2>
<ul>
<li>Add <code>race::OnceRef</code> for storing a <code>&'a T</code>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="85e372f818"><code>85e372f</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/213">#213</a></li>
<li><a href="fae9f73da6"><code>fae9f73</code></a> Add once_cell::race::OnceRef</li>
<li><a href="0d0dae1260"><code>0d0dae1</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/212">#212</a></li>
<li><a href="e94003a299"><code>e94003a</code></a> Removed Debug impls to de-clutter example</li>
<li><a href="3f750e1b6b"><code>3f750e1</code></a> Fixed <code>LateInit</code> example stack overflow</li>
<li><a href="ba8b9fe98b"><code>ba8b9fe</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/209">#209</a></li>
<li><a href="ea438d8e50"><code>ea438d8</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/210">#210</a></li>
<li><a href="f68835a884"><code>f68835a</code></a> fix miri tests</li>
<li><a href="6d46f401f7"><code>6d46f40</code></a> Add references to generic_once_cell</li>
<li><a href="47bf9ae994"><code>47bf9ae</code></a> Readme: Sync related crates to docs</li>
<li>See full diff in <a href="https://github.com/matklad/once_cell/compare/v1.16.0...v1.17.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.16.0&new-version=1.17.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>
<!---
Thank you for contributing to Boa! Please fill out the template below, and remove or add any
information as you feel necessary.
--->
This Pull Request fixes/closes #2416.
Previously, prefix increment and decrement operations on `this` caused a panic. This PR makes the parser issue a syntax error when the operand UnaryExpression is not simple (as mentioned in https://tc39.es/ecma262/#sec-update-expressions-static-semantics-early-errors).
boa_profiler was allocating new strings every time even when they are the same string, which leads to a crash when `start_event` is called too much. This change updates the profiler to use a hash map cache and avoid duplicate string allocations.
Just a general cleanup of the APIs of our `Context`.
- Reordered the `pub` and `pub(crate)/fn` methods to have a clear separation between our public and private APIs.
- Removed the call method and added it to `JsValue` instead, which semantically makes a bit more sense.
- Removed the `construct_object` method, and added an utility method `new` to `JsObject` instead.
- Rewrote some patterns I found while rewriting the calls of the removed function.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.151 to 1.0.152.
<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.152</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="ccf9c6fc07"><code>ccf9c6f</code></a> Release 1.0.152</li>
<li><a href="b25d0ea7f9"><code>b25d0ea</code></a> Link to Hjson data format</li>
<li><a href="4f4557fd05"><code>4f4557f</code></a> Link to bencode data format</li>
<li><a href="bf400d6799"><code>bf400d6</code></a> Link to serde_tokenstream data format</li>
<li><a href="4d2e36d19b"><code>4d2e36d</code></a> Wrap flexbuffers bullet point to 80 columns</li>
<li><a href="df6310e5f5"><code>df6310e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2347">#2347</a> from dtolnay/docsrs</li>
<li><a href="938ab5ddec"><code>938ab5d</code></a> Replace docs.serde.rs links with intra-rustdoc links</li>
<li><a href="ef5a0de384"><code>ef5a0de</code></a> Point documentation links to docs.rs instead of docs.serde.rs</li>
<li><a href="5d186c77a6"><code>5d186c7</code></a> Opt out -Zrustdoc-scrape-examples on docs.rs</li>
<li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.151...v1.0.152">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.151&new-version=1.0.152)](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>
`execute_instruction` is heavily used. After decoding an opcode, `match` is used to find a proper `execute` function for the opcode. But, the `match` may not be able to be optimized into a table jump by rust compiler, so it may use multiple branches to find the function. When I tested with a toy program, only `enum -> &'static str` case was optimized to use a table while `enum -> function call` uses multiple branches. ([gotbolt](https://rust.godbolt.org/z/1rzK5vj6f))
This change makes the opcode to use a table explicitly. It improves the benchmark score of Richards by 1-2% (22.8 -> 23.2).
This Pull Request fixes/closes #1180. (I'll open a tracking issue for the progress)
It changes the following:
- Redesigns the internal API of Intl to (hopefully!) make it easier to implement a service.
- Implements the `Intl.Locale` service.
- Implements the `Intl.Collator` service.
- Implements the `Intl.ListFormat` service.
On the subject of the failing tests. Some of them are caused by missing locale data in the `icu_testdata` crate; we would need to regenerate that with the missing locales, or vendor a custom default data.
On the other hand, there are some tests that are bugs from the ICU4X crate. The repo https://github.com/jedel1043/icu4x-test262 currently tracks the found bugs when running test262. I'll sync with the ICU4X team to try to fix those.
cc @sffc
Bumps [test262](https://github.com/tc39/test262) from `9f6da57` to `f00d411`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="f00d4118db"><code>f00d411</code></a> Temporal operation NanosecondsToDays: Test RangeErrors reachable in Duration ...</li>
<li><a href="920a567b72"><code>920a567</code></a> Improve is/toWellFormedString coverage.</li>
<li><a href="06b982d2f0"><code>06b982d</code></a> add missing feature to cleanupSome test</li>
<li>See full diff in <a href="9f6da57ee4...f00d4118db">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 [clap](https://github.com/clap-rs/clap) from 4.0.30 to 4.0.32.
<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>v4.0.32</h2>
<h2>[4.0.32] - 2022-12-22</h2>
<h3>Fixes</h3>
<ul>
<li><em>(parser)</em> When overriding <code>required(true)</code>, consider args that conflict with its group</li>
</ul>
<h2>v4.0.31</h2>
<h2>[4.0.31] - 2022-12-22</h2>
<h3>Performance</h3>
<ul>
<li>Speed up parsing when a lot of different flags are present (100 unique flags)</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>[4.0.32] - 2022-12-22</h2>
<h3>Fixes</h3>
<ul>
<li><em>(parser)</em> When overriding <code>required(true)</code>, consider args that conflict with its group</li>
</ul>
<h2>[4.0.31] - 2022-12-22</h2>
<h3>Performance</h3>
<ul>
<li>Speed up parsing when a lot of different flags are present (100 unique flags)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="ec4ccf005d"><code>ec4ccf0</code></a> chore: Release</li>
<li><a href="13fdb839b7"><code>13fdb83</code></a> docs: Update changelog</li>
<li><a href="b877345769"><code>b877345</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/4573">#4573</a> from epage/conflict</li>
<li><a href="85ecb3e895"><code>85ecb3e</code></a> fix(parser): Override required when parent group has conflict</li>
<li><a href="d145b8b166"><code>d145b8b</code></a> test(parser): Demonstrate required-overload bug</li>
<li><a href="0eccd556ac"><code>0eccd55</code></a> chore: Release</li>
<li><a href="1e37c25f5e"><code>1e37c25</code></a> docs: Update changelog</li>
<li><a href="dcd5fecab0"><code>dcd5fec</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/4572">#4572</a> from epage/group</li>
<li><a href="dde22e74ca"><code>dde22e7</code></a> style: Update for latest clippy</li>
<li><a href="dd8435d8f3"><code>dd8435d</code></a> perf(parser): Reduce duplicate lookups</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v4.0.30...v4.0.32">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=4.0.30&new-version=4.0.32)](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 4.0.29 to 4.0.30.
<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>v4.0.30</h2>
<h2>[4.0.30] - 2022-12-21</h2>
<h3>Fixes</h3>
<ul>
<li><em>(error)</em> Improve error for <code>args_conflicts_with_subcommand</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>[4.0.30] - 2022-12-21</h2>
<h3>Fixes</h3>
<ul>
<li><em>(error)</em> Improve error for <code>args_conflicts_with_subcommand</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="d2d022248b"><code>d2d0222</code></a> chore: Release</li>
<li><a href="56a0bb624f"><code>56a0bb6</code></a> docs: Update changelog</li>
<li><a href="b941a3eaef"><code>b941a3e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/4567">#4567</a> from epage/error</li>
<li><a href="453ac0bfb9"><code>453ac0b</code></a> fix(parser): Be less confusing with args/subcommand conflicts</li>
<li><a href="2a374db639"><code>2a374db</code></a> test(parser): Show bad behavior</li>
<li><a href="f632424e65"><code>f632424</code></a> test(parser): Consolidate args_conflicts_with tests</li>
<li><a href="a72f962d35"><code>a72f962</code></a> docs(builder): Escape non-tags</li>
<li><a href="ac48e2d5e4"><code>ac48e2d</code></a> docs: Make less brittle for rust versions</li>
<li><a href="a3381a2c05"><code>a3381a2</code></a> docs(readme): Fix build status badge (<a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/4559">#4559</a>)</li>
<li><a href="aa5420469e"><code>aa54204</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/4555">#4555</a> from epage/reset</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v4.0.29...v4.0.30">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=4.0.29&new-version=4.0.30)](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>
Per the [Standard Library development guide](https://std-dev-guide.rust-lang.org/code-considerations/performance/inline.html):
> You can add `#[inline]`:
>
> - To public, small, non-generic functions.
>
> You shouldn't need `#[inline]`:
> - On methods that have any generics in scope.
> - On methods on traits that don't have a default implementation.
>
> `#[inline]` can always be introduced later, so if you're in doubt they can just be removed.
This PR follows this guideline to reduce the number of `#[inline]` annotations in our code, removing the annotation in:
- Non-public functions
- Generic functions
- Medium and big functions.
Hopefully this shouldn't impact our perf at all, but let's wait to see the benchmark results.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.150 to 1.0.151.
<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.151</h2>
<ul>
<li>Update <code>serde::</code>{<code>ser</code>,<code>de</code>}<code>::StdError</code> to re-export <code>core::error::Error</code> when serde is built with <code>feature="std"</code> <strong>off</strong> and <code>feature="unstable"</code> <strong>on</strong> (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2344">#2344</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="44bf3633af"><code>44bf363</code></a> Release 1.0.151</li>
<li><a href="f261184416"><code>f261184</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2344">#2344</a> from dtolnay/coreerror</li>
<li><a href="df40f80fcf"><code>df40f80</code></a> Make StdError identical to core::error::Error on feature="unstable"</li>
<li><a href="e7060ba83d"><code>e7060ba</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2342">#2342</a> from atouchet/badges</li>
<li><a href="d98f0eea3d"><code>d98f0ee</code></a> Update build status badge</li>
<li><a href="4f157a8b81"><code>4f157a8</code></a> Prevent build.rs rerunning unnecessarily on all source changes</li>
<li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.150...v1.0.151">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.150&new-version=1.0.151)](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 [thiserror](https://github.com/dtolnay/thiserror) from 1.0.37 to 1.0.38.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/thiserror/releases">thiserror's releases</a>.</em></p>
<blockquote>
<h2>1.0.38</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="74bfe75eb2"><code>74bfe75</code></a> Release 1.0.38</li>
<li><a href="cfc7d8c959"><code>cfc7d8c</code></a> Update build status badge</li>
<li><a href="db78fa2cd8"><code>db78fa2</code></a> Update ui test suite to nightly-2022-12-15</li>
<li><a href="c25a710813"><code>c25a710</code></a> Time out workflows after 45 minutes</li>
<li><a href="464e2e798e"><code>464e2e7</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/thiserror/issues/200">#200</a> from dtolnay/displayattr</li>
<li><a href="4b06a3e263"><code>4b06a3e</code></a> Add test of Display impl nested inside display attribute</li>
<li><a href="29ee95ef47"><code>29ee95e</code></a> Ui test changes for trybuild 1.0.66</li>
<li>See full diff in <a href="https://github.com/dtolnay/thiserror/compare/1.0.37...1.0.38">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=thiserror&package-manager=cargo&previous-version=1.0.37&new-version=1.0.38)](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.89 to 1.0.91.
<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.91</h2>
<ul>
<li>Opt out of <code>-Zrustdoc-scrape-examples</code> on docs.rs for now</li>
</ul>
<h2>v1.0.90</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="26f147fde7"><code>26f147f</code></a> Release 1.0.91</li>
<li><a href="d9cdb98f2e"><code>d9cdb98</code></a> Opt out -Zrustdoc-scrape-examples on docs.rs</li>
<li><a href="331511d73d"><code>331511d</code></a> Release 1.0.90</li>
<li><a href="87538296f7"><code>8753829</code></a> Replace ancient CI service provider in readme</li>
<li><a href="0a43394ef6"><code>0a43394</code></a> Update build status badge</li>
<li><a href="8794844eee"><code>8794844</code></a> Prevent build.rs rerunning unnecessarily on all source changes</li>
<li><a href="0b548714d8"><code>0b54871</code></a> Time out workflows after 45 minutes</li>
<li><a href="ecad462c8e"><code>ecad462</code></a> Fix renamed let_underscore_drop lint</li>
<li><a href="9295c96c8e"><code>9295c96</code></a> Resolve needless_borrowed_reference clippy lints</li>
<li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.89...v1.0.91">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.89&new-version=1.0.91)](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 [proc-macro2](https://github.com/dtolnay/proc-macro2) from 1.0.47 to 1.0.49.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/proc-macro2/releases">proc-macro2's releases</a>.</em></p>
<blockquote>
<h2>1.0.48</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="293705d8df"><code>293705d</code></a> Release 1.0.49</li>
<li><a href="6b9ee3dbf6"><code>6b9ee3d</code></a> Opt out -Zrustdoc-scrape-examples on docs.rs</li>
<li><a href="a83ad604b1"><code>a83ad60</code></a> Release 1.0.48</li>
<li><a href="b4fa77fea7"><code>b4fa77f</code></a> Update build status badge</li>
<li><a href="975c3248db"><code>975c324</code></a> Time out workflows after 45 minutes</li>
<li><a href="f633e3106c"><code>f633e31</code></a> MIT copyright line</li>
<li>See full diff in <a href="https://github.com/dtolnay/proc-macro2/compare/1.0.47...1.0.49">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=proc-macro2&package-manager=cargo&previous-version=1.0.47&new-version=1.0.49)](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 [syn](https://github.com/dtolnay/syn) from 1.0.105 to 1.0.107.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/syn/releases">syn's releases</a>.</em></p>
<blockquote>
<h2>1.0.106</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/dtolnay/syn/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=syn&package-manager=cargo&previous-version=1.0.105&new-version=1.0.107)](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 `d8bc356` to `9f6da57`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="9f6da57ee4"><code>9f6da57</code></a> Support running Temporal staging tests in Node 19</li>
<li><a href="12ff866707"><code>12ff866</code></a> Replace "de"=>"de-AT" and "en"=>"en-US"</li>
<li><a href="f999dea7c0"><code>f999dea</code></a> Run prettier for easier review of later commits</li>
<li><a href="9821def022"><code>9821def</code></a> Add missing feature flag to isContructor helper file</li>
<li><a href="7c9a885b79"><code>7c9a885</code></a> Array.fromAsync: Boilerplate tests</li>
<li><a href="5093c3037d"><code>5093c30</code></a> Reject exceptional input to <code>isConstructor</code> (<a href="https://github-redirect.dependabot.com/tc39/test262/issues/3748">#3748</a>)</li>
<li><a href="dac6956348"><code>dac6956</code></a> sync with duration-format PR130 (<a href="https://github-redirect.dependabot.com/tc39/test262/issues/3752">#3752</a>)</li>
<li><a href="e6c6460a5b"><code>e6c6460</code></a> Update Intl.NumberFormat test with recent reorder of option evaluation</li>
<li>See full diff in <a href="d8bc356d01...9f6da57ee4">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 [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.9.14 to 0.9.16.
<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.9.15</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="e8fbca66b4"><code>e8fbca6</code></a> Release 0.9.16</li>
<li><a href="80ad63022b"><code>80ad630</code></a> Opt out -Zrustdoc-scrape-examples on docs.rs</li>
<li><a href="2d0b7bd7bd"><code>2d0b7bd</code></a> Release 0.9.15</li>
<li><a href="f542f4b541"><code>f542f4b</code></a> Remove major versions reminder</li>
<li><a href="f2deee6d32"><code>f2deee6</code></a> Update build status badge</li>
<li><a href="490b0c3134"><code>490b0c3</code></a> Time out workflows after 45 minutes</li>
<li><a href="dd8e5cc33b"><code>dd8e5cc</code></a> Fix renamed let_underscore_drop lint</li>
<li>See full diff in <a href="https://github.com/dtolnay/serde-yaml/compare/0.9.14...0.9.16">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.9.14&new-version=0.9.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 [dyn-clone](https://github.com/dtolnay/dyn-clone) from 1.0.9 to 1.0.10.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/dyn-clone/releases">dyn-clone's releases</a>.</em></p>
<blockquote>
<h2>1.0.10</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="bba3d29def"><code>bba3d29</code></a> Release 1.0.10</li>
<li><a href="dd33dfe106"><code>dd33dfe</code></a> Update build status badge</li>
<li><a href="8f11359eeb"><code>8f11359</code></a> Time out workflows after 45 minutes</li>
<li><a href="4fde3743b1"><code>4fde374</code></a> MIT copyright line</li>
<li><a href="9d4da26691"><code>9d4da26</code></a> Ui test changes for trybuild 1.0.66</li>
<li><a href="1caba5bc65"><code>1caba5b</code></a> Avoid cargo 1.43–1.45 in GitHub Actions</li>
<li><a href="fe54db8b3a"><code>fe54db8</code></a> Add a CI check build on lowest supported compiler</li>
<li><a href="8ff359df96"><code>8ff359d</code></a> Raise minimum tested toolchain to rust 1.56</li>
<li><a href="e7636b5cfc"><code>e7636b5</code></a> Remove default package.readme metadata from Cargo.toml</li>
<li><a href="44d1878326"><code>44d1878</code></a> GitHub Workflows security hardening</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/dyn-clone/compare/1.0.9...1.0.10">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.9&new-version=1.0.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 [quote](https://github.com/dtolnay/quote) from 1.0.21 to 1.0.23.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/quote/releases">quote's releases</a>.</em></p>
<blockquote>
<h2>1.0.22</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="550af67f9e"><code>550af67</code></a> Release 1.0.23</li>
<li><a href="b0337d0c55"><code>b0337d0</code></a> Opt out -Zrustdoc-scrape-examples on docs.rs</li>
<li><a href="2386c5a11e"><code>2386c5a</code></a> Release 1.0.22</li>
<li><a href="ead304a8b5"><code>ead304a</code></a> Update build status badge</li>
<li><a href="51d3bd2fa2"><code>51d3bd2</code></a> Update ui test suite to nightly-2022-12-15</li>
<li><a href="2922a8ec2f"><code>2922a8e</code></a> Time out workflows after 45 minutes</li>
<li><a href="6f42f3cac4"><code>6f42f3c</code></a> Fix renamed let_underscore_drop lint</li>
<li><a href="b2e30cc11d"><code>b2e30cc</code></a> MIT copyright line</li>
<li><a href="efc9b69178"><code>efc9b69</code></a> Ui test changes for trybuild 1.0.66</li>
<li><a href="1e2b19847e"><code>1e2b198</code></a> Raise minimum tested toolchain to rust 1.56</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/quote/compare/1.0.21...1.0.23">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=quote&package-manager=cargo&previous-version=1.0.21&new-version=1.0.23)](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 is currently unfinished but will fix/close #1808 after some review and more work
It changes the following:
- Divides byte compiler logic into separate files
I would like some review on the current code I have to know if the patterns I'm using are acceptable for the codebase, if everything looks good I will try to separate more code into different small modules to finish the work here.
Bumps [toml](https://github.com/toml-rs/toml) from 0.5.9 to 0.5.10.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/toml-rs/toml/commits/toml-v0.5.10">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=toml&package-manager=cargo&previous-version=0.5.9&new-version=0.5.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 [test262](https://github.com/tc39/test262) from `3d939ef` to `d8bc356`.
<details>
<summary>Commits</summary>
<ul>
<li><a href="d8bc356d01"><code>d8bc356</code></a> Fix Temporal test failures under Node 19</li>
<li><a href="8cd563f978"><code>8cd563f</code></a> Intl: Add substantive tests for Array.prototype.toLocaleString (<a href="https://github-redirect.dependabot.com/tc39/test262/issues/3741">#3741</a>)</li>
<li>See full diff in <a href="3d939ef566...d8bc356d01">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 [serde](https://github.com/serde-rs/serde) from 1.0.149 to 1.0.150.
<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.150</h2>
<ul>
<li>Relax some trait bounds from the <code>Serialize</code> impl of <code>HashMap</code> and <code>BTreeMap</code> (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2334">#2334</a>)</li>
<li>Enable <code>Serialize</code> and <code>Deserialize</code> impls of <code>std::sync::atomic</code> types on more platforms (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2337">#2337</a>, thanks <a href="https://github.com/badboy"><code>@badboy</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="d493649f52"><code>d493649</code></a> Release 1.0.150</li>
<li><a href="0e947e6c3b"><code>0e947e6</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2338">#2338</a> from serde-rs/atomic</li>
<li><a href="9249dab54c"><code>9249dab</code></a> Deduplicate atomic_impl macro calls</li>
<li><a href="7440e56c53"><code>7440e56</code></a> Deduplicate atomic_impl macro implementations</li>
<li><a href="0d79306285"><code>0d79306</code></a> Update atomic_impl macros to have same input syntax in all cfgs</li>
<li><a href="37faaf295e"><code>37faaf2</code></a> Mention target_has_atomic stabilization</li>
<li><a href="650358fa00"><code>650358f</code></a> Replace obsolete comment about target_has_atomic support</li>
<li><a href="6159ead404"><code>6159ead</code></a> Invert use_target_has_atomic cfg</li>
<li><a href="692ac99c69"><code>692ac99</code></a> Format PR 2337 with rustfmt</li>
<li><a href="86161ce15f"><code>86161ce</code></a> Adjust spacing in some macro matchers</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/serde/compare/v1.0.149...v1.0.150">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.149&new-version=1.0.150)](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.6.0 to 1.6.1.
<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.6.1 (2022-12-09)</h1>
<ul>
<li>Simplified <code>par_bridge</code> to only pull one item at a time from the iterator,
without batching. Threads that are waiting for iterator items will now block
appropriately rather than spinning CPU. (Thanks <a href="https://github.com/njaard"><code>@njaard</code></a>!)</li>
<li>Added protection against recursion in <code>par_bridge</code>, so iterators that also
invoke rayon will not cause mutex recursion deadlocks.</li>
</ul>
<h1>Release rayon-core 1.10.1 (2022-11-18)</h1>
<ul>
<li>Fixed a race condition with threads going to sleep while a broadcast starts.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="401678ee55"><code>401678e</code></a> Merge <a href="https://github-redirect.dependabot.com/rayon-rs/rayon/issues/709">#709</a></li>
<li><a href="33e9843413"><code>33e9843</code></a> Release rayon 1.2.1 / rayon-core 1.6.1</li>
<li><a href="dd874ac5d4"><code>dd874ac</code></a> Bump crate versions and dependencies</li>
<li><a href="0c6338d267"><code>0c6338d</code></a> Reduce Option complexity in demo cpu_time</li>
<li><a href="be99e500bf"><code>be99e50</code></a> cargo fmt</li>
<li><a href="9b4d9798de"><code>9b4d979</code></a> Avoid mem::uninitialized in the demo cpu_time</li>
<li><a href="5a466434ab"><code>5a46643</code></a> Avoid mem::uninitialized in par_sort_unstable</li>
<li><a href="73b1061a23"><code>73b1061</code></a> Merge <a href="https://github-redirect.dependabot.com/rayon-rs/rayon/issues/705">#705</a></li>
<li><a href="54c0b0dc0c"><code>54c0b0d</code></a> Make sure that compat-Cargo.lock is fresh</li>
<li><a href="4fd13b0334"><code>4fd13b0</code></a> Regenerate compat-Cargo.lock</li>
<li>Additional commits viewable in <a href="https://github.com/rayon-rs/rayon/compare/rayon-core-v1.6.0...rayon-core-v1.6.1">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.6.0&new-version=1.6.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 [serde](https://github.com/serde-rs/serde) from 1.0.148 to 1.0.149.
<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.149</h2>
<ul>
<li>Relax some trait bounds from the <code>Serialize</code> impl of <code>BinaryHeap</code>, <code>BTreeSet</code>, and <code>HashSet</code> (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2333">#2333</a>, thanks <a href="https://github.com/jonasbb"><code>@jonasbb</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0353354d61"><code>0353354</code></a> Release 1.0.149</li>
<li><a href="34ae0422f4"><code>34ae042</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2333">#2333</a> from jonasbb/remove-trait-bounds</li>
<li><a href="cc128feb4c"><code>cc128fe</code></a> Remove some Serialize trait bounds</li>
<li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.148...v1.0.149">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.148&new-version=1.0.149)](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>