It changes the following:
- Adjust the `context` methods `compile` and `execute` to avoid clones on `StatementList` and `CodeBlock`
Co-authored-by: raskad <32105367+raskad@users.noreply.github.com>
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
(Really small self-explanatory change - maybe the commit message could be better)
<!---
Thank you for contributing to Boa! Please fill out the template below, and remove or add any
information as you feel neccesary.
--->
It changes the following:
When calling `new Proxy(undefined, {})` the error message now refers to the target `undefined` instead of the handler `{}`
Bumps [structopt](https://github.com/TeXitoi/structopt) from 0.3.25 to 0.3.26.
<details>
<summary>Commits</summary>
<ul>
<li><a href="97e92a3755"><code>97e92a3</code></a> v0.3.26</li>
<li><a href="2bdd6b49ad"><code>2bdd6b4</code></a> Clarification on maintenance since clap v3 is out</li>
<li><a href="2736281a64"><code>2736281</code></a> Upgrade heck</li>
<li><a href="358cccf9af"><code>358cccf</code></a> [docs] Add output to all examples</li>
<li><a href="4c1a8fcb2f"><code>4c1a8fc</code></a> Link to the clap API in the documentation that says all clap methods can be used</li>
<li><a href="ffd4772156"><code>ffd4772</code></a> Typo</li>
<li>See full diff in <a href="https://github.com/TeXitoi/structopt/compare/v0.3.25...v0.3.26">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=structopt&package-manager=cargo&previous-version=0.3.25&new-version=0.3.26)](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.73 to 1.0.75.
<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.74</h2>
<ul>
<li>Allow creating RawValues from references to unsized values (<a href="https://github-redirect.dependabot.com/serde-rs/json/issues/841">#841</a>, thanks <a href="https://github.com/EFanZh"><code>@EFanZh</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a22b686f49"><code>a22b686</code></a> Release 1.0.75</li>
<li><a href="36c43bfed5"><code>36c43bf</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/848">#848</a> from serde-rs/num</li>
<li><a href="d541381455"><code>d541381</code></a> Deserialize small numbers as integers in arbitrary_precision</li>
<li><a href="0ca5a69d73"><code>0ca5a69</code></a> Add regression test for issue 845</li>
<li><a href="66919777d0"><code>6691977</code></a> Disable buggy iter_not_returning_iterator lint</li>
<li><a href="aebe84cb09"><code>aebe84c</code></a> Raise toolchain version for preserve_order to rust 1.46</li>
<li><a href="3f459308f5"><code>3f45930</code></a> Set miriflags once for whole miri job</li>
<li><a href="c79d9ad2e1"><code>c79d9ad</code></a> Run miri also with some features enabled</li>
<li><a href="58d40de6ed"><code>58d40de</code></a> Release 1.0.74</li>
<li><a href="ef7794f87f"><code>ef7794f</code></a> Detect warnings in CI</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/json/compare/v1.0.73...v1.0.75">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.73&new-version=1.0.75)](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 [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.6 to 1.14.7.
<details>
<summary>Commits</summary>
<ul>
<li><a href="2ede36d7c6"><code>2ede36d</code></a> Release version 1.14.7 of the npm package.</li>
<li><a href="8b347cbcef"><code>8b347cb</code></a> Drop Cookie header across domains.</li>
<li>See full diff in <a href="https://github.com/follow-redirects/follow-redirects/compare/v1.14.6...v1.14.7">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=follow-redirects&package-manager=npm_and_yarn&previous-version=1.14.6&new-version=1.14.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)
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 [webpack](https://github.com/webpack/webpack) from 5.65.0 to 5.66.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/webpack/webpack/releases">webpack's releases</a>.</em></p>
<blockquote>
<h2>v5.66.0</h2>
<h1>Features</h1>
<ul>
<li>add <code>output.library.type: "commonjs-static"</code> to emit a statically analyse-able commonjs module (for node.js esm interop support)</li>
<li>add <code>experiments.css</code> (very experimental)
<ul>
<li>see <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14893">webpack/webpack#14893</a></li>
</ul>
</li>
</ul>
<h1>Bugfixes</h1>
<ul>
<li>fix CORS headers for <code>experiments.lazyCompilation</code></li>
<li>fix <code>[absolute-resource-path]</code> for SourceMap module naming</li>
<li>avoid stack overflow when accessing many memory cached cache values in series</li>
</ul>
<h1>Performance</h1>
<ul>
<li>reduce default <code>watchOptions.aggregateTimeout</code> to 20ms</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0105bc1f00"><code>0105bc1</code></a> 5.66.0</li>
<li><a href="753fdea847"><code>753fdea</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/15047">#15047</a> from dtanders/Fix-MultiItemCache-Stack-Exhaustion</li>
<li><a href="149333f210"><code>149333f</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14998">#14998</a> from JakobJingleheimer/support-cjs-static-named-exp...</li>
<li><a href="016ec7bcdb"><code>016ec7b</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/15010">#15010</a> from webpack/test/large-cache-file</li>
<li><a href="83a0e611c4"><code>83a0e61</code></a> update cli snapshot</li>
<li><a href="2f2991a967"><code>2f2991a</code></a> Merge branch 'main' into support-cjs-static-named-exports</li>
<li><a href="102014bf54"><code>102014b</code></a> fix target expression</li>
<li><a href="5929bfcf35"><code>5929bfc</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/15041">#15041</a> from markjm/markjm/aggregate-timeout</li>
<li><a href="b54f2ac65c"><code>b54f2ac</code></a> use forEachBail from enhanced-resolve</li>
<li><a href="98887e42fc"><code>98887e4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14434">#14434</a> from buzuosheng/fix-chunkId</li>
<li>Additional commits viewable in <a href="https://github.com/webpack/webpack/compare/v5.65.0...v5.66.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=webpack&package-manager=npm_and_yarn&previous-version=5.65.0&new-version=5.66.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>
It changes the following:
- Add handling for proxy objects to the abstract `is_array` operation.
- Implement the abstract `is_array` operation for `JsValue` and `JsObject` to avoid clones.
- Fix some builtin function lengths.
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.7.0 to 1.8.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/bluss/indexmap/blob/master/RELEASES.rst">indexmap's changelog</a>.</em></p>
<blockquote>
<ul>
<li>
<p>1.8.0</p>
<ul>
<li>
<p>The new <code>IndexMap::into_keys</code> and <code>IndexMap::into_values</code> will consume
the map into keys or values, respectively, matching Rust 1.54's <code>HashMap</code>
methods, by <a href="https://github.com/taiki-e"><code>@taiki-e</code></a> in PR 195_.</p>
</li>
<li>
<p>More of the iterator types implement <code>Debug</code>, <code>ExactSizeIterator</code>, and
<code>FusedIterator</code>, by <a href="https://github.com/cuviper"><code>@cuviper</code></a> in PR 196_.</p>
</li>
<li>
<p><code>IndexMap</code> and <code>IndexSet</code> now implement rayon's <code>ParallelDrainRange</code>,
by <a href="https://github.com/cuviper"><code>@cuviper</code></a> in PR 197_.</p>
</li>
<li>
<p><code>IndexMap::with_hasher</code> and <code>IndexSet::with_hasher</code> are now <code>const</code>
functions, allowing static maps and sets, by <a href="https://github.com/mwillsey"><code>@mwillsey</code></a> in PR 203_.</p>
</li>
<li>
<p><code>IndexMap</code> and <code>IndexSet</code> now implement <code>From</code> for arrays, matching
Rust 1.56's implementation for <code>HashMap</code>, by <a href="https://github.com/rouge8"><code>@rouge8</code></a> in PR 205_.</p>
</li>
<li>
<p><code>IndexMap</code> and <code>IndexSet</code> now have methods <code>sort_unstable_keys</code>,
<code>sort_unstable_by</code>, <code>sorted_unstable_by</code>, and <code>par_*</code> equivalents,
which sort in-place without preserving the order of equal items, by
<a href="https://github.com/bhgomes"><code>@bhgomes</code></a> in PR 211_.</p>
</li>
</ul>
</li>
</ul>
<p>.. _195: <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/195">bluss/indexmap#195</a>
.. _196: <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/196">bluss/indexmap#196</a>
.. _197: <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/197">bluss/indexmap#197</a>
.. _203: <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/203">bluss/indexmap#203</a>
.. _205: <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/205">bluss/indexmap#205</a>
.. _211: <a href="https://github-redirect.dependabot.com/bluss/indexmap/pull/211">bluss/indexmap#211</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="916d1c96d2"><code>916d1c9</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/213">#213</a> from cuviper/release-1.7.1</li>
<li><a href="5386d2bf70"><code>5386d2b</code></a> Release 1.8.0 instead</li>
<li><a href="f090281240"><code>f090281</code></a> Release 1.7.1</li>
<li><a href="5a14f7bb8a"><code>5a14f7b</code></a> Move recent changes to RELEASES.rst</li>
<li><a href="13468f20f5"><code>13468f2</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/211">#211</a> from bhgomes/add-sort-unstable-methods</li>
<li><a href="8bb46ca2e4"><code>8bb46ca</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/205">#205</a> from rouge8/from-array</li>
<li><a href="6fca269adf"><code>6fca269</code></a> No extra space is used in unstable sorts</li>
<li><a href="5d2ce528b3"><code>5d2ce52</code></a> Require rustc 1.51+ for <code>IndexMap::from(array)</code> and <code>IndexSet::from(array)</code></li>
<li><a href="f0159f656d"><code>f0159f6</code></a> Add <code>IndexMap::from(array)</code> and <code>IndexSet::from(array)</code></li>
<li><a href="4d6dde35b5"><code>4d6dde3</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/bluss/indexmap/issues/197">#197</a> from cuviper/par_drain</li>
<li>Additional commits viewable in <a href="https://github.com/bluss/indexmap/compare/1.7.0...1.8.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.7.0&new-version=1.8.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 Pull Request fixes the bors hanging we've had recently
The vm action had been removed but bors was still waiting for it
It changes the following:
- Remove 'Tests on Linux with vm enabled' from the actions to be waited for
This Pull Request fixes some warnings and clips errors. It conflicts with the VM/non-VM PR, so should probably go in first, so that this branch gets properly updated and we get the list of real warnings/errors there.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.131 to 1.0.132.
<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.132</h2>
<ul>
<li>Enable Serialize and Deserialize impls for <code>std::sync::atomic::{AtomicI64, AtomicU64}</code> on riscv64 arch (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2141">#2141</a>, thanks <a href="https://github.com/Avimitin"><code>@Avimitin</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="77ae1c3bf7"><code>77ae1c3</code></a> Release 1.0.132</li>
<li><a href="b85e28166c"><code>b85e281</code></a> Update path to rustc target spec files</li>
<li><a href="0508cb50fc"><code>0508cb5</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2141">#2141</a> from Avimitin/risc-v</li>
<li><a href="84fdc7df69"><code>84fdc7d</code></a> Enable atomic64 on riscv64 arch</li>
<li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.131...v1.0.132">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.131&new-version=1.0.132)](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 [once_cell](https://github.com/matklad/once_cell) from 1.8.0 to 1.9.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/matklad/once_cell/blob/master/CHANGELOG.md">once_cell's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>1.9</h2>
<ul>
<li>Added an <code>atomic-polyfill</code> optional dependency to compile <code>race</code> on platforms without atomics</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="44852cc72d"><code>44852cc</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/165">#165</a></li>
<li><a href="12ccfec475"><code>12ccfec</code></a> Bump version and edit Changelog</li>
<li><a href="133096dbca"><code>133096d</code></a> Add an atomic-polyfill optional dependancy</li>
<li><a href="7b2943b382"><code>7b2943b</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/160">#160</a></li>
<li><a href="702ff21cd4"><code>702ff21</code></a> Remove an unwrap</li>
<li><a href="f92720a4ca"><code>f92720a</code></a> Merge <a href="https://github-redirect.dependabot.com/matklad/once_cell/issues/154">#154</a></li>
<li><a href="c559b03d45"><code>c559b03</code></a> Document the allowed violation of the "once" invariant for <code>&mut self</code> methods.</li>
<li>See full diff in <a href="https://github.com/matklad/once_cell/compare/v1.8.0...v1.9.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.8.0&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 [monaco-editor](https://github.com/microsoft/monaco-editor) from 0.31.0 to 0.31.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/microsoft/monaco-editor/blob/main/CHANGELOG.md">monaco-editor's changelog</a>.</em></p>
<blockquote>
<h2>[0.31.1] (14.12.2021)</h2>
<ul>
<li>Fixes <a href="https://github-redirect.dependabot.com/microsoft/monaco-editor/issues/2822">a problem with missing colors</a></li>
<li>Fixes <a href="https://github-redirect.dependabot.com/microsoft/vscode/issues/138887">a problem with scheduling background tokenization</a></li>
<li>Improves TypeScript's ESM worker.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/microsoft/monaco-editor/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=monaco-editor&package-manager=npm_and_yarn&previous-version=0.31.0&new-version=0.31.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_json](https://github.com/serde-rs/json) from 1.0.72 to 1.0.73.
<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.73</h2>
<ul>
<li>Update <code>itoa</code> dependency to 1.0</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="296f718e18"><code>296f718</code></a> Release 1.0.73</li>
<li><a href="48455de674"><code>48455de</code></a> Update to itoa 1.0</li>
<li><a href="b66b0eb322"><code>b66b0eb</code></a> Track raw pointers in miri CI run</li>
<li><a href="52eec5e2ee"><code>52eec5e</code></a> Add a miri test job in CI</li>
<li><a href="aaaf125f0b"><code>aaaf125</code></a> Disable TcpStream test on miri</li>
<li><a href="f0774c482a"><code>f0774c4</code></a> Raise required rustc from 1.31 to 1.36</li>
<li><a href="c3eddcdf40"><code>c3eddcd</code></a> Collect imports to top of test suite</li>
<li><a href="a28529ddc9"><code>a28529d</code></a> Skip ui test when running in miri</li>
<li><a href="7db1ea907d"><code>7db1ea9</code></a> Ignore needless_late_init Clippy lint</li>
<li><a href="fc0ca07b10"><code>fc0ca07</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/json/issues/831">#831</a> from serde-rs/from_u32</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/json/compare/v1.0.72...v1.0.73">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.72&new-version=1.0.73)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.21 to 0.8.23.
<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.23</h2>
<ul>
<li>Fix handling of YAML 1.1-style octals that begin with <code>+</code> or <code>-</code> sign (<a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/228">#228</a>)</li>
</ul>
<h2>0.8.22</h2>
<ul>
<li>Switch float serializer to use the same float formatting library as serde_json</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="44ba87954d"><code>44ba879</code></a> Release 0.8.23</li>
<li><a href="f850da3d4b"><code>f850da3</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/228">#228</a> from dtolnay/octal</li>
<li><a href="983b5b3f5f"><code>983b5b3</code></a> Suppress blocks_in_if_conditions clippy lint</li>
<li><a href="57f2e661b8"><code>57f2e66</code></a> Treat YAML 1.1 style octals with sign as string, not base 10 number</li>
<li><a href="f424a15c74"><code>f424a15</code></a> Add test of cases that are NOT supposed to be numbers</li>
<li><a href="75a43c4dbc"><code>75a43c4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/218">#218</a> from rukai/add_unit_struct_test</li>
<li><a href="1db8fdbb85"><code>1db8fdb</code></a> Release 0.8.22</li>
<li><a href="6b836037b5"><code>6b83603</code></a> Switch float serializer from dtoa to ryu</li>
<li><a href="7a02d73770"><code>7a02d73</code></a> Delete disabled borrowed string deserializer test</li>
<li><a href="eb31d62693"><code>eb31d62</code></a> Update from dtoa 0.4 to 1.0</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/serde-yaml/compare/0.8.21...0.8.23">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.21&new-version=0.8.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 PR fixes some vm implementation code. All our internal tests should now pass with the vm enabled.
There are only a few (~100) 262 tests left that currently break with the vm, that previously worked.
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.130 to 1.0.131.
<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.131</h2>
<ul>
<li>Avoid <code>unused_results</code> being triggered in generated code for adjacently tagged enum (<a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2116">#2116</a>, thanks <a href="https://github.com/tyranron"><code>@tyranron</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="ab1ca04b2e"><code>ab1ca04</code></a> Release 1.0.131</li>
<li><a href="fb2fe409c8"><code>fb2fe40</code></a> Touch up PR 2116</li>
<li><a href="549fac7235"><code>549fac7</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2116">#2116</a> from tyranron/fix-unused-results</li>
<li><a href="c375d8b19b"><code>c375d8b</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/serde-rs/serde/issues/2124">#2124</a> from dtolnay/cbor</li>
<li><a href="6cf507f808"><code>6cf507f</code></a> Change cbor link to new repo</li>
<li><a href="c3c1641c06"><code>c3c1641</code></a> Remove workaround for redundant_field_names Clippy bug</li>
<li><a href="1fcda0ebdb"><code>1fcda0e</code></a> Enable pedantic lints on test suite in CI</li>
<li><a href="8f16ac0a94"><code>8f16ac0</code></a> Move deny(clippy) to command line arguments in the CI job</li>
<li><a href="737f78c315"><code>737f78c</code></a> Ignore enum_variant_names Clippy lint in test suite</li>
<li><a href="4a97386cb9"><code>4a97386</code></a> Clippy if_then_panic lint has been renamed to manual_assert</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/serde/compare/v1.0.130...v1.0.131">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.130&new-version=1.0.131)](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 [webpack](https://github.com/webpack/webpack) from 5.64.4 to 5.65.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/webpack/webpack/releases">webpack's releases</a>.</em></p>
<blockquote>
<h2>v5.65.0</h2>
<h1>Features</h1>
<ul>
<li>static evaluation understands <code>undefined</code> now</li>
<li>reduce container entry code by a few chars</li>
<li>use template literals when available and they make sense</li>
</ul>
<h1>Bugfixes</h1>
<ul>
<li>handle <code>singleton</code> flag without <code>requiredVersion</code> in Module Federation</li>
<li>upgrade <code>watchpack</code> for context time info bugfix</li>
</ul>
<h1>Performance</h1>
<ul>
<li>improve RegExp in error message formating for non-quadratic performance</li>
</ul>
<h1>Developer Experience</h1>
<ul>
<li>automatically insert brackets when <code>output.globalObject</code> contains a non-trival expression</li>
<li>show error when using <code>script</code> type external with invalid syntax</li>
<li>expose types for <code>Resolver</code>, <code>StatsOptions</code> and <code>ResolvePluginInstance</code></li>
</ul>
<h1>Preparations for the future</h1>
<ul>
<li><code>hashDigestLength</code> will default to 16 in webpack 6 (<code>experiments.futureDefaults</code>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="323d65e2b1"><code>323d65e</code></a> 5.65.0</li>
<li><a href="f3423dfcf1"><code>f3423df</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14912">#14912</a> from webpack/deps/watchpack</li>
<li><a href="0abc39cefa"><code>0abc39c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14908">#14908</a> from webpack/dependabot/npm_and_yarn/prettier-2.5.1</li>
<li><a href="b09c45aa74"><code>b09c45a</code></a> upgrade watchpack for bugfix</li>
<li><a href="adeb73a2ad"><code>adeb73a</code></a> chore(deps-dev): bump prettier from 2.5.0 to 2.5.1</li>
<li><a href="0bc3a2ea02"><code>0bc3a2e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14884">#14884</a> from colacadstink/main</li>
<li><a href="bbe72b3eae"><code>bbe72b3</code></a> Added testing for new singleton logic (and caught a typo in the process!)</li>
<li><a href="dc70535ef8"><code>dc70535</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14855">#14855</a> from webpack/rebase/12875</li>
<li><a href="c9ffb83327"><code>c9ffb83</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14861">#14861</a> from webpack/fix-runtime-template</li>
<li><a href="4127edba92"><code>4127edb</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14886">#14886</a> from webpack/dependabot/npm_and_yarn/simple-git-2.48.0</li>
<li>Additional commits viewable in <a href="https://github.com/webpack/webpack/compare/v5.64.4...v5.65.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=webpack&package-manager=npm_and_yarn&previous-version=5.64.4&new-version=5.65.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>
Previously when we had the `context.throw_` methods (like `context.thtrow_type_error()`) they were limited as to where we could call them, e.i. a function that returned `JsResult<JsValue>`. So we had to call the `context.construct_` methods with an explicit `Err()` enum wrap to throw in functions that returned non-jsvalues (which happens a lot).
Now, with this PR the throw methods have a generic `JsResult<R>` return that can return in any `JsResult<T>` returning function. Which cleans the API and makes the user experience a bit better.
```rust
return Err(context.construct_type_error("..."));
// to
return context.throw_type_error("...");
```
* Begin adding CodeBlock docs
* Add docs for `CodeBlock` methods and fields
Also fix some typos.
* Add more CodeBlock docs
* Use suggestion from code review
This Pull Request uses the new fallible allocation API in Rust 1.57 to follow the JavaScript specification for data blocks: https://tc39.es/ecma262/#sec-createbytedatablock
It changes the following:
- Creating a new DataBlock for an ArrayBuffer will no longer fail with an arbitrary byte length, it will now actually call the allocator and try to reserve the needed space, and fail if it can't.
- Added sunny and rainy day unit tests that check if the API works as expected.
- Bumped the minimum Rust version to Rust 1.57 for the Boa crate.
- Removed the unused `DataBlock` implementation in IntegerIndexedObjects.
Bumps [webpack](https://github.com/webpack/webpack) from 5.64.2 to 5.64.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/webpack/webpack/releases">webpack's releases</a>.</em></p>
<blockquote>
<h2>v5.64.4</h2>
<h1>Bugfixes</h1>
<ul>
<li>fix tagged template literal evaluation</li>
<li>fix ModuleFederation with ESM</li>
<li>fix outputModule with intial splitChunks</li>
</ul>
<h1>Performance</h1>
<ul>
<li>upgrade watchpack for faster watcher updating</li>
<li>track file and directory timestamps separately in watchpack and webpack</li>
</ul>
<h1>Developer Experience</h1>
<ul>
<li>show origin of singleton shared module in mismatch warning</li>
</ul>
<h2>v5.64.3</h2>
<h1>Performance</h1>
<ul>
<li>allow to use pre-compiled schema when <code>Infinity</code> is used in configuration</li>
<li>allow to use pre-compiled schema for configuration arrays</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="d3cd4cb6e3"><code>d3cd4cb</code></a> 5.64.4</li>
<li><a href="4f9fafc73e"><code>4f9fafc</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14829">#14829</a> from webpack/bugfix/split-chunks-esm</li>
<li><a href="093eadfdb4"><code>093eadf</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14827">#14827</a> from webpack/bugfix/mf-module</li>
<li><a href="c69e37c39d"><code>c69e37c</code></a> fix outputModule with initial splitChunks</li>
<li><a href="041287ff58"><code>041287f</code></a> fix test problem</li>
<li><a href="c3691df740"><code>c3691df</code></a> fix CI problems</li>
<li><a href="d91248711b"><code>d912487</code></a> fix and test module federation with ESM</li>
<li><a href="ac9a2c87ed"><code>ac9a2c8</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14782">#14782</a> from tanhauhau/tanhauhau/show-which-container-loade...</li>
<li><a href="ce0f0b3a16"><code>ce0f0b3</code></a> update test case</li>
<li><a href="68c4a2a0a9"><code>68c4a2a</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/webpack/webpack/issues/14728">#14728</a> from markjm/markjm/context-timestamps</li>
<li>Additional commits viewable in <a href="https://github.com/webpack/webpack/compare/v5.64.2...v5.64.4">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=webpack&package-manager=npm_and_yarn&previous-version=5.64.2&new-version=5.64.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)
</details>