Updated release workflow and semantic-release config to include the beta
branch and pattern-matched branches for release automation. The beta
branch is now marked as a prerelease.
Bumps the development-dependencies group with 2 updates in the /
directory: [ava](https://github.com/avajs/ava) and
[esbuild](https://github.com/evanw/esbuild).
Updates `ava` from 6.3.0 to 6.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/avajs/ava/releases">ava's
releases</a>.</em></p>
<blockquote>
<h2>v6.4.0</h2>
<h2>What's Changed</h2>
<ul>
<li>AVA is now tested with Node.js 24 (but no longer v23) <a
href="https://redirect.github.com/avajs/ava/pull/3379">avajs/ava#3379</a></li>
<li>We're now publishing to npm with <a
href="https://www.npmjs.com/package/ava#provenance">provenance
attestations</a> <a
href="https://redirect.github.com/avajs/ava/pull/3385">avajs/ava#3385</a></li>
</ul>
<h3>Interactive watch mode filters</h3>
<p><a href="https://github.com/mmulet"><code>@mmulet</code></a> did
fantastic work to spearhead interactive watch mode filters. You can now
filter test files by glob patterns, and tests by matching their titles.
It's just like you already could from the CLI itself, but now without
exiting AVA 🚀 <a
href="https://redirect.github.com/avajs/ava/pull/3372">avajs/ava#3372</a></p>
<p>As part of this work we've removed the "sticky"
<code>.only()</code> behavior <a
href="https://redirect.github.com/avajs/ava/pull/3381">avajs/ava#3381</a></p>
<h3>Examples</h3>
<p>We've been remiss in merging <a
href="https://redirect.github.com/avajs/ava/pull/3335">avajs/ava#3335</a>
which updates the examples to use AVA 6. It's done now, examples are up
to date and it's all due to <a
href="https://github.com/tommy-mitchell"><code>@tommy-mitchell</code></a>
👏</p>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mmulet"><code>@mmulet</code></a> made
their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3372">avajs/ava#3372</a></li>
<li><a href="https://github.com/kebbell"><code>@kebbell</code></a> made
their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3348">avajs/ava#3348</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.3.0...v6.4.0">https://github.com/avajs/ava/compare/v6.3.0...v6.4.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="372c241efb"><code>372c241</code></a>
6.4.0</li>
<li><a
href="05ead2812d"><code>05ead28</code></a>
Update release process & maintaining notes</li>
<li><a
href="859f3ff2eb"><code>859f3ff</code></a>
Update examples to use AVA 6</li>
<li><a
href="eb2b48d398"><code>eb2b48d</code></a>
Update XO & other dependencies</li>
<li><a
href="50e02d5cd6"><code>50e02d5</code></a>
Remove compiler option override needed for TypeScript 4.x</li>
<li><a
href="57a3bbe8d4"><code>57a3bbe</code></a>
Implement file globbing and test matching within watch mode</li>
<li><a
href="29cb29accb"><code>29cb29a</code></a>
Remove special .only() behavior in watch mode</li>
<li><a
href="36934b2371"><code>36934b2</code></a>
Fix error handling in watcher tests</li>
<li><a
href="31a1262e6c"><code>31a1262</code></a>
Test with Node.js 24, remove v23 test runs</li>
<li><a
href="a6f42ea472"><code>a6f42ea</code></a>
Upgrade <code>@ava/test</code> to 6.3.0</li>
<li>See full diff in <a
href="https://github.com/avajs/ava/compare/v6.3.0...v6.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.25.5 to 0.25.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.25.6</h2>
<ul>
<li>
<p>Fix a memory leak when <code>cancel()</code> is used on a build
context (<a
href="https://redirect.github.com/evanw/esbuild/issues/4231">#4231</a>)</p>
<p>Calling <code>rebuild()</code> followed by <code>cancel()</code> in
rapid succession could previously leak memory. The bundler uses a
producer/consumer model internally, and the resource leak was caused by
the consumer being termianted while there were still remaining
unreceived results from a producer. To avoid the leak, the consumer now
waits for all producers to finish before terminating.</p>
</li>
<li>
<p>Support empty <code>:is()</code> and <code>:where()</code> syntax in
CSS (<a
href="https://redirect.github.com/evanw/esbuild/issues/4232">#4232</a>)</p>
<p>Previously using these selectors with esbuild would generate a
warning. That warning has been removed in this release for these
cases.</p>
</li>
<li>
<p>Improve tree-shaking of <code>try</code> statements in dead code (<a
href="https://redirect.github.com/evanw/esbuild/issues/4224">#4224</a>)</p>
<p>With this release, esbuild will now remove certain <code>try</code>
statements if esbuild considers them to be within dead code (i.e. code
that is known to not ever be evaluated). For example:</p>
<pre lang="js"><code>// Original code
return 'foo'
try { return 'bar' } catch {}
<p>// Old output (with --minify)
return"foo";try{return"bar"}catch{}</p>
<p>// New output (with --minify)
return"foo";
</code></pre></p>
</li>
<li>
<p>Consider negated bigints to have no side effects</p>
<p>While esbuild currently considers <code>1</code>, <code>-1</code>,
and <code>1n</code> to all have no side effects, it didn't previously
consider <code>-1n</code> to have no side effects. This is because
esbuild does constant folding with numbers but not bigints. However, it
meant that unused negative bigint constants were not tree-shaken. With
this release, esbuild will now consider these expressions to also be
side-effect free:</p>
<pre lang="js"><code>// Original code
let a = 1, b = -1, c = 1n, d = -1n
<p>// Old output (with --bundle --minify)
(()=>{var n=-1n;})();</p>
<p>// New output (with --bundle --minify)
(()=>{})();
</code></pre></p>
</li>
<li>
<p>Support a configurable delay in watch mode before rebuilding (<a
href="https://redirect.github.com/evanw/esbuild/issues/3476">#3476</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4178">#4178</a>)</p>
<p>The <code>watch()</code> API now takes a <code>delay</code> option
that lets you add a delay (in milliseconds) before rebuilding when a
change is detected in watch mode. If you use a tool that regenerates
multiple source files very slowly, this should make it more likely that
esbuild's watch mode won't generate a broken intermediate build before
the successful final build. This option is also available via the CLI
using the <code>--watch-delay=</code> flag.</p>
<p>This should also help avoid confusion about the <code>watch()</code>
API's options argument. It was previously empty to allow for future API
expansion, which caused some people to think that the documentation was
missing. It's no longer empty now that the <code>watch()</code> API has
an option.</p>
</li>
<li>
<p>Allow mixed array for <code>entryPoints</code> API option (<a
href="https://redirect.github.com/evanw/esbuild/issues/4223">#4223</a>)</p>
<p>The TypeScript type definitions now allow you to pass a mixed array
of both string literals and object literals to the
<code>entryPoints</code> API option, such as <code>['foo.js', { out:
'lib', in: 'bar.js' }]</code>. This was always possible to do in
JavaScript but the TypeScript type definitions were previously too
restrictive.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.25.6</h2>
<ul>
<li>
<p>Fix a memory leak when <code>cancel()</code> is used on a build
context (<a
href="https://redirect.github.com/evanw/esbuild/issues/4231">#4231</a>)</p>
<p>Calling <code>rebuild()</code> followed by <code>cancel()</code> in
rapid succession could previously leak memory. The bundler uses a
producer/consumer model internally, and the resource leak was caused by
the consumer being termianted while there were still remaining
unreceived results from a producer. To avoid the leak, the consumer now
waits for all producers to finish before terminating.</p>
</li>
<li>
<p>Support empty <code>:is()</code> and <code>:where()</code> syntax in
CSS (<a
href="https://redirect.github.com/evanw/esbuild/issues/4232">#4232</a>)</p>
<p>Previously using these selectors with esbuild would generate a
warning. That warning has been removed in this release for these
cases.</p>
</li>
<li>
<p>Improve tree-shaking of <code>try</code> statements in dead code (<a
href="https://redirect.github.com/evanw/esbuild/issues/4224">#4224</a>)</p>
<p>With this release, esbuild will now remove certain <code>try</code>
statements if esbuild considers them to be within dead code (i.e. code
that is known to not ever be evaluated). For example:</p>
<pre lang="js"><code>// Original code
return 'foo'
try { return 'bar' } catch {}
<p>// Old output (with --minify)
return"foo";try{return"bar"}catch{}</p>
<p>// New output (with --minify)
return"foo";
</code></pre></p>
</li>
<li>
<p>Consider negated bigints to have no side effects</p>
<p>While esbuild currently considers <code>1</code>, <code>-1</code>,
and <code>1n</code> to all have no side effects, it didn't previously
consider <code>-1n</code> to have no side effects. This is because
esbuild does constant folding with numbers but not bigints. However, it
meant that unused negative bigint constants were not tree-shaken. With
this release, esbuild will now consider these expressions to also be
side-effect free:</p>
<pre lang="js"><code>// Original code
let a = 1, b = -1, c = 1n, d = -1n
<p>// Old output (with --bundle --minify)
(()=>{var n=-1n;})();</p>
<p>// New output (with --bundle --minify)
(()=>{})();
</code></pre></p>
</li>
<li>
<p>Support a configurable delay in watch mode before rebuilding (<a
href="https://redirect.github.com/evanw/esbuild/issues/3476">#3476</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4178">#4178</a>)</p>
<p>The <code>watch()</code> API now takes a <code>delay</code> option
that lets you add a delay (in milliseconds) before rebuilding when a
change is detected in watch mode. If you use a tool that regenerates
multiple source files very slowly, this should make it more likely that
esbuild's watch mode won't generate a broken intermediate build before
the successful final build. This option is also available via the CLI
using the <code>--watch-delay=</code> flag.</p>
<p>This should also help avoid confusion about the <code>watch()</code>
API's options argument. It was previously empty to allow for future API
expansion, which caused some people to think that the documentation was
missing. It's no longer empty now that the <code>watch()</code> API has
an option.</p>
</li>
<li>
<p>Allow mixed array for <code>entryPoints</code> API option (<a
href="https://redirect.github.com/evanw/esbuild/issues/4223">#4223</a>)</p>
<p>The TypeScript type definitions now allow you to pass a mixed array
of both string literals and object literals to the
<code>entryPoints</code> API option, such as <code>['foo.js', { out:
'lib', in: 'bar.js' }]</code>. This was always possible to do in
JavaScript but the TypeScript type definitions were previously too
restrictive.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d38c1f0bc5"><code>d38c1f0</code></a>
publish 0.25.6 to npm</li>
<li><a
href="11e547e2c7"><code>11e547e</code></a>
missing <code>)</code> in release notes</li>
<li><a
href="cc8ac0a5f4"><code>cc8ac0a</code></a>
fix trailing comment whitespace</li>
<li><a
href="1e3fb57adc"><code>1e3fb57</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4178">#4178</a>:
add the <code>--watch-delay=</code> option</li>
<li><a
href="c1f5f18e83"><code>c1f5f18</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4209">#4209</a>:
disable binary executable optimization on WASM platform (<a
href="https://redirect.github.com/evanw/esbuild/issues/4210">#4210</a>)</li>
<li><a
href="3ed5ecce84"><code>3ed5ecc</code></a>
fix incorrect locations in <code>CHANGELOG.md</code></li>
<li><a
href="248089c1a8"><code>248089c</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4224">#4224</a>:
allow <code>try</code> statements to become dead</li>
<li><a
href="42f159cb52"><code>42f159c</code></a>
openharmony: keep makefile targets sorted</li>
<li><a
href="63256e12be"><code>63256e1</code></a>
chore: fix some comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4211">#4211</a>)</li>
<li><a
href="d803f72e64"><code>d803f72</code></a>
add support for openharmony-arm64 platform (<a
href="https://redirect.github.com/evanw/esbuild/issues/4212">#4212</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.25.5...v0.25.6">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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the development-dependencies group with 3 updates in the /
directory: [ava](https://github.com/avajs/ava),
[dotenv](https://github.com/motdotla/dotenv) and
[esbuild](https://github.com/evanw/esbuild).
Updates `ava` from 6.2.0 to 6.3.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/avajs/ava/releases">ava's
releases</a>.</em></p>
<blockquote>
<h2>v6.3.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Update dependencies, addressing <code>npm audit</code> warnings by
<a
href="https://github.com/novemberborn"><code>@novemberborn</code></a>
in <a
href="https://redirect.github.com/avajs/ava/pull/3377">avajs/ava#3377</a></li>
<li>Do not count writes to stdout/stderr as non-idling activity for
timeouts by <a
href="https://github.com/mdouglass"><code>@mdouglass</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3374">avajs/ava#3374</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mdouglass"><code>@mdouglass</code></a>
made their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3374">avajs/ava#3374</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.2.0...v6.3.0">https://github.com/avajs/ava/compare/v6.2.0...v6.3.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ca4240db7f"><code>ca4240d</code></a>
6.3.0</li>
<li><a
href="f243cab3b3"><code>f243cab</code></a>
Do not count writes to stdout/stderr as non-idling activity for
timeouts</li>
<li><a
href="4abb780b5b"><code>4abb780</code></a>
Update dependencies</li>
<li>See full diff in <a
href="https://github.com/avajs/ava/compare/v6.2.0...v6.3.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `dotenv` from 16.4.7 to 16.5.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md">dotenv's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.7...v16.5.0">16.5.0</a>
(2025-04-07)</h2>
<h3>Added</h3>
<ul>
<li>🎉 Added new sponsor <a
href="https://graphite.dev/?utm_source=github&utm_medium=repo&utm_campaign=dotenv">Graphite</a>
- <em>the AI developer productivity platform helping teams on GitHub
ship higher quality software, faster</em>.</li>
</ul>
<blockquote>
<p>[!TIP]
<strong><a href="https://github.com/sponsors/motdotla">Become a
sponsor</a></strong></p>
<p>The dotenvx README is viewed thousands of times DAILY on GitHub and
NPM.
Sponsoring dotenv is a great way to get in front of developers and give
back to the developer community at the same time.</p>
</blockquote>
<h3>Changed</h3>
<ul>
<li>Remove <code>_log</code> method. Use <code>_debug</code> <a
href="https://redirect.github.com/motdotla/dotenv/pull/862">#862</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d39cc9a94e"><code>d39cc9a</code></a>
16.5.0</li>
<li><a
href="2f4e407c73"><code>2f4e407</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/863">#863</a>
from Fdawgs/patch-1</li>
<li><a
href="a1eef11a70"><code>a1eef11</code></a>
chore(package): add homepage url</li>
<li><a
href="fb7e407892"><code>fb7e407</code></a>
README update</li>
<li><a
href="bf9113fad6"><code>bf9113f</code></a>
README update</li>
<li><a
href="9326f05f95"><code>9326f05</code></a>
changelog 🪵</li>
<li><a
href="2e8da3018a"><code>2e8da30</code></a>
changelog 🪵</li>
<li><a
href="3257b3adaf"><code>3257b3a</code></a>
changelog 🪵</li>
<li><a
href="c0ca62c841"><code>c0ca62c</code></a>
changelog 🪵</li>
<li><a
href="797c5e9d6e"><code>797c5e9</code></a>
changelog 🪵</li>
<li>Additional commits viewable in <a
href="https://github.com/motdotla/dotenv/compare/v16.4.7...v16.5.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.25.2 to 0.25.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.25.3</h2>
<ul>
<li>
<p>Fix lowered <code>async</code> arrow functions before
<code>super()</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4141">#4141</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4142">#4142</a>)</p>
<p>This change makes it possible to call an <code>async</code> arrow
function in a constructor before calling <code>super()</code> when
targeting environments without <code>async</code> support, as long as
the function body doesn't reference <code>this</code>. Here's an example
(notice the change from <code>this</code> to <code>null</code>):</p>
<pre lang="js"><code>// Original code
class Foo extends Object {
constructor() {
(async () => await foo())()
super()
}
}
<p>// Old output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(this, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}</p>
<p>// New output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(null, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}<br />
</code></pre></p>
<p>Some background: Arrow functions with the <code>async</code> keyword
are transformed into generator functions for older language targets such
as <code>--target=es2016</code>. Since arrow functions capture
<code>this</code>, the generated code forwards <code>this</code> into
the body of the generator function. However, JavaScript class syntax
forbids using <code>this</code> in a constructor before calling
<code>super()</code>, and this forwarding was problematic since
previously happened even when the function body doesn't use
<code>this</code>. Starting with this release, esbuild will now only
forward <code>this</code> if it's used within the function body.</p>
<p>This fix was contributed by <a
href="https://github.com/magic-akari"><code>@magic-akari</code></a>.</p>
</li>
<li>
<p>Fix memory leak with <code>--watch=true</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4131">#4131</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4132">#4132</a>)</p>
<p>This release fixes a memory leak with esbuild when
<code>--watch=true</code> is used instead of <code>--watch</code>.
Previously using <code>--watch=true</code> caused esbuild to continue to
use more and more memory for every rebuild, but
<code>--watch=true</code> should now behave like <code>--watch</code>
and not leak memory.</p>
<p>This bug happened because esbuild disables the garbage collector when
it's not run as a long-lived process for extra speed, but esbuild's
checks for which arguments cause esbuild to be a long-lived process
weren't updated for the new <code>--watch=true</code> style of boolean
command-line flags. This has been an issue since this boolean flag
syntax was added in version 0.14.24 in 2022. These checks are
unfortunately separate from the regular argument parser because of how
esbuild's internals are organized (the command-line interface is exposed
as a separate <a
href="https://pkg.go.dev/github.com/evanw/esbuild/pkg/cli">Go API</a> so
you can build your own custom esbuild CLI).</p>
<p>This fix was contributed by <a
href="https://github.com/mxschmitt"><code>@mxschmitt</code></a>.</p>
</li>
<li>
<p>More concise output for repeated legal comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4139">#4139</a>)</p>
<p>Some libraries have many files and also use the same legal comment
text in all files. Previously esbuild would copy each legal comment to
the output file. Starting with this release, legal comments duplicated
across separate files will now be grouped in the output file by unique
comment content.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.25.3</h2>
<ul>
<li>
<p>Fix lowered <code>async</code> arrow functions before
<code>super()</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4141">#4141</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4142">#4142</a>)</p>
<p>This change makes it possible to call an <code>async</code> arrow
function in a constructor before calling <code>super()</code> when
targeting environments without <code>async</code> support, as long as
the function body doesn't reference <code>this</code>. Here's an example
(notice the change from <code>this</code> to <code>null</code>):</p>
<pre lang="js"><code>// Original code
class Foo extends Object {
constructor() {
(async () => await foo())()
super()
}
}
<p>// Old output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(this, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}</p>
<p>// New output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(null, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}<br />
</code></pre></p>
<p>Some background: Arrow functions with the <code>async</code> keyword
are transformed into generator functions for older language targets such
as <code>--target=es2016</code>. Since arrow functions capture
<code>this</code>, the generated code forwards <code>this</code> into
the body of the generator function. However, JavaScript class syntax
forbids using <code>this</code> in a constructor before calling
<code>super()</code>, and this forwarding was problematic since
previously happened even when the function body doesn't use
<code>this</code>. Starting with this release, esbuild will now only
forward <code>this</code> if it's used within the function body.</p>
<p>This fix was contributed by <a
href="https://github.com/magic-akari"><code>@magic-akari</code></a>.</p>
</li>
<li>
<p>Fix memory leak with <code>--watch=true</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4131">#4131</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4132">#4132</a>)</p>
<p>This release fixes a memory leak with esbuild when
<code>--watch=true</code> is used instead of <code>--watch</code>.
Previously using <code>--watch=true</code> caused esbuild to continue to
use more and more memory for every rebuild, but
<code>--watch=true</code> should now behave like <code>--watch</code>
and not leak memory.</p>
<p>This bug happened because esbuild disables the garbage collector when
it's not run as a long-lived process for extra speed, but esbuild's
checks for which arguments cause esbuild to be a long-lived process
weren't updated for the new <code>--watch=true</code> style of boolean
command-line flags. This has been an issue since this boolean flag
syntax was added in version 0.14.24 in 2022. These checks are
unfortunately separate from the regular argument parser because of how
esbuild's internals are organized (the command-line interface is exposed
as a separate <a
href="https://pkg.go.dev/github.com/evanw/esbuild/pkg/cli">Go API</a> so
you can build your own custom esbuild CLI).</p>
<p>This fix was contributed by <a
href="https://github.com/mxschmitt"><code>@mxschmitt</code></a>.</p>
</li>
<li>
<p>More concise output for repeated legal comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4139">#4139</a>)</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="677910b073"><code>677910b</code></a>
publish 0.25.3 to npm</li>
<li><a
href="a41040efdb"><code>a41040e</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4110">#4110</a>:
support custom non-IP <code>host</code> values</li>
<li><a
href="dfe0e1c632"><code>dfe0e1c</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4114">#4114</a>:
add a limit to css nesting expansion</li>
<li><a
href="a54916b92c"><code>a54916b</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4139">#4139</a>:
deduplicate repeated legal comments</li>
<li><a
href="dc60e6025d"><code>dc60e60</code></a>
run <code>make update-compat-table</code></li>
<li><a
href="d917038c97"><code>d917038</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4144">#4144</a>:
node path resolution edge case</li>
<li><a
href="7ed168403b"><code>7ed1684</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4141">#4141</a>:
Avoid redundant <code>this</code> access during async function lowering
(<a
href="https://redirect.github.com/evanw/esbuild/issues/4142">#4142</a>)</li>
<li><a
href="edc3a23438"><code>edc3a23</code></a>
docs(dev): update alias command for <code>make test-go</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4113">#4113</a>)</li>
<li><a
href="1ee8b6717e"><code>1ee8b67</code></a>
workaround <code>process.exit()</code> not exiting in node</li>
<li><a
href="5c56e0737c"><code>5c56e07</code></a>
changelog note with credit for the fix</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.25.2...v0.25.3">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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@octokit/openapi](https://github.com/octokit/openapi) from 18.2.0
to 19.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/openapi/releases"><code>@octokit/openapi</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v19.0.0</h2>
<h1><a
href="https://github.com/octokit/openapi/compare/v18.2.0...v19.0.0">19.0.0</a>
(2025-04-09)</h1>
<h3>Features</h3>
<ul>
<li>new <code>/orgs/{org}/campaigns</code>,
<code>/orgs/{org}/campaigns/{campaign_number}</code> endpoints, remove
Copilot usage endpoints, description updates, remove GHES 3.12 (<a
href="https://redirect.github.com/octokit/openapi/issues/491">#491</a>)
(<a
href="709a8f01d5">709a8f0</a>)</li>
</ul>
<h3>BREAKING CHANGES</h3>
<ul>
<li>Drop GHES 3.12</li>
<li>Remove Copilot usage endpoints</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="709a8f01d5"><code>709a8f0</code></a>
feat: new <code>/orgs/{org}/campaigns</code>,
<code>/orgs/{org}/campaigns/{campaign_number}</code> ...</li>
<li><a
href="329c7ebe37"><code>329c7eb</code></a>
ci(action): update actions/create-github-app-token action to v2 (<a
href="https://redirect.github.com/octokit/openapi/issues/490">#490</a>)</li>
<li><a
href="e2e9e6ede2"><code>e2e9e6e</code></a>
ci: replace <code>OCTOKITBOT_PROJECT_ACTION_TOKEN</code> and
<code>OCTOKITBOT_PAT</code> with a tok...</li>
<li><a
href="d59338c42c"><code>d59338c</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/openapi/issues/488">#488</a>)</li>
<li>See full diff in <a
href="https://github.com/octokit/openapi/compare/v18.2.0...v19.0.0">compare
view</a></li>
</ul>
</details>
<br />
[](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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This pull request updates the release configuration to include
package-lock.json. This should ensure the action version is update in
package-lock.json when the release workflow runs.
- Load `app-permissions` from schema exported by `@octokit/openapi`
- Update documentation in README.md
- Implement the `permissions_*` inputs in the action code
---------
Co-authored-by: Parker Brown <17183625+parkerbxyz@users.noreply.github.com>
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.24.2 to 0.25.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.25.0</h2>
<p><strong>This release deliberately contains backwards-incompatible
changes.</strong> To avoid automatically picking up releases like this,
you should either be pinning the exact version of <code>esbuild</code>
in your <code>package.json</code> file (recommended) or be using a
version range syntax that only accepts patch upgrades such as
<code>^0.24.0</code> or <code>~0.24.0</code>. See npm's documentation
about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Restrict access to esbuild's development server (<a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99">GHSA-67mh-4wv8-2f99</a>)</p>
<p>This change addresses esbuild's first security vulnerability report.
Previously esbuild set the <code>Access-Control-Allow-Origin</code>
header to <code>*</code> to allow esbuild's development server to be
flexible in how it's used for development. However, this allows the
websites you visit to make HTTP requests to esbuild's local development
server, which gives read-only access to your source code if the website
were to fetch your source code's specific URL. You can read more
information in <a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99">the
report</a>.</p>
<p>Starting with this release, <a
href="https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS">CORS</a>
will now be disabled, and requests will now be denied if the host does
not match the one provided to <code>--serve=</code>. The default host is
<code>0.0.0.0</code>, which refers to all of the IP addresses that
represent the local machine (e.g. both <code>127.0.0.1</code> and
<code>192.168.0.1</code>). If you want to customize anything about
esbuild's development server, you can <a
href="https://esbuild.github.io/api/#serve-proxy">put a proxy in front
of esbuild</a> and modify the incoming and/or outgoing requests.</p>
<p>In addition, the <code>serve()</code> API call has been changed to
return an array of <code>hosts</code> instead of a single
<code>host</code> string. This makes it possible to determine all of the
hosts that esbuild's development server will accept.</p>
<p>Thanks to <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a> for
reporting this issue.</p>
</li>
<li>
<p>Delete output files when a build fails in watch mode (<a
href="https://redirect.github.com/evanw/esbuild/issues/3643">#3643</a>)</p>
<p>It has been requested for esbuild to delete files when a build fails
in watch mode. Previously esbuild left the old files in place, which
could cause people to not immediately realize that the most recent build
failed. With this release, esbuild will now delete all output files if a
rebuild fails. Fixing the build error and triggering another rebuild
will restore all output files again.</p>
</li>
<li>
<p>Fix correctness issues with the CSS nesting transform (<a
href="https://redirect.github.com/evanw/esbuild/issues/3620">#3620</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3877">#3877</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3933">#3933</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3997">#3997</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4005">#4005</a>,
<a href="https://redirect.github.com/evanw/esbuild/pull/4037">#4037</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4038">#4038</a>)</p>
<p>This release fixes the following problems:</p>
<ul>
<li>
<p>Naive expansion of CSS nesting can result in an exponential blow-up
of generated CSS if each nesting level has multiple selectors.
Previously esbuild sometimes collapsed individual nesting levels using
<code>:is()</code> to limit expansion. However, this collapsing wasn't
correct in some cases, so it has been removed to fix correctness
issues.</p>
<pre lang="css"><code>/* Original code */
.parent {
> .a,
> .b1 > .b2 {
color: red;
}
}
<p>/* Old output (with --supported:nesting=false) */<br />
.parent > :is(.a, .b1 > .b2) {<br />
color: red;<br />
}</p>
<p>/* New output (with --supported:nesting=false) */<br />
.parent > .a,<br />
.parent > .b1 > .b2 {<br />
color: red;<br />
}<br />
</code></pre></p>
<p>Thanks to <a
href="https://github.com/tim-we"><code>@tim-we</code></a> for working
on a fix.</p>
</li>
<li>
<p>The <code>&</code> CSS nesting selector can be repeated multiple
times to increase CSS specificity. Previously esbuild ignored this
possibility and incorrectly considered <code>&&</code> to have
the same specificity as <code>&</code>. With this release, this
should now work correctly:</p>
<pre lang="css"><code>/* Original code (color should be red) */
</code></pre>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog: 2024</h1>
<p>This changelog documents all esbuild versions published in the year
2024 (versions 0.19.12 through 0.24.2).</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e9174d671b"><code>e9174d6</code></a>
publish 0.25.0 to npm</li>
<li><a
href="c27dbebb9e"><code>c27dbeb</code></a>
fix <code>hosts</code> in <code>plugin-tests.js</code></li>
<li><a
href="6794f602a4"><code>6794f60</code></a>
fix <code>hosts</code> in <code>node-unref-tests.js</code></li>
<li><a
href="de85afd65e"><code>de85afd</code></a>
Merge commit from fork</li>
<li><a
href="da1de1bf77"><code>da1de1b</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4065">#4065</a>:
bitwise operators can return bigints</li>
<li><a
href="f4e9d19fb2"><code>f4e9d19</code></a>
switch case liveness: <code>default</code> is always last</li>
<li><a
href="7aa47c3e77"><code>7aa47c3</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4028">#4028</a>:
minify live/dead <code>switch</code> cases better</li>
<li><a
href="22ecd30619"><code>22ecd30</code></a>
minify: more constant folding for strict equality</li>
<li><a
href="4cdf03c036"><code>4cdf03c</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4053">#4053</a>:
reordering of <code>.tsx</code> in <code>node_modules</code></li>
<li><a
href="dc719775b7"><code>dc71977</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3692">#3692</a>:
<code>0</code> now picks a random ephemeral port</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.24.2...v0.25.0">compare
view</a></li>
</ul>
</details>
<br />
[](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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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/actions/create-github-app-token/network/alerts).
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the production-dependencies group with 1 update:
[@octokit/request](https://github.com/octokit/request.js).
Updates `@octokit/request` from 9.1.3 to 9.1.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/request.js/releases"><code>@octokit/request</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v9.1.4</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v9.1.3...v9.1.4">9.1.4</a>
(2024-12-29)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> bump <code>@octokit/types</code> to fix deno
compat (<a
href="https://redirect.github.com/octokit/request.js/issues/730">#730</a>)
(<a
href="324ffef20c">324ffef</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="324ffef20c"><code>324ffef</code></a>
fix(deps): bump <code>@octokit/types</code> to fix deno compat (<a
href="https://redirect.github.com/octokit/request.js/issues/730">#730</a>)</li>
<li><a
href="70bf3e2c0e"><code>70bf3e2</code></a>
chore(deps): update dependency prettier to v3.4.2 (<a
href="https://redirect.github.com/octokit/request.js/issues/729">#729</a>)</li>
<li><a
href="ce1ad0ac35"><code>ce1ad0a</code></a>
chore(deps): update dependency prettier to v3.4.1 (<a
href="https://redirect.github.com/octokit/request.js/issues/727">#727</a>)</li>
<li><a
href="b92657632a"><code>b926576</code></a>
chore(deps): update dependency prettier to v3.4.0 (<a
href="https://redirect.github.com/octokit/request.js/issues/726">#726</a>)</li>
<li><a
href="2baa69ba6d"><code>2baa69b</code></a>
chore(deps): update dependency fetch-mock to v12 (<a
href="https://redirect.github.com/octokit/request.js/issues/723">#723</a>)</li>
<li><a
href="1ffa99bc99"><code>1ffa99b</code></a>
chore(deps): update dependency <code>@types/node</code> to v22 (<a
href="https://redirect.github.com/octokit/request.js/issues/724">#724</a>)</li>
<li><a
href="c9269b065a"><code>c9269b0</code></a>
ci run build (<a
href="https://redirect.github.com/octokit/request.js/issues/722">#722</a>)</li>
<li><a
href="439dc38a32"><code>439dc38</code></a>
chore(deps): update dependency <code>@octokit/tsconfig</code> to v4 (<a
href="https://redirect.github.com/octokit/request.js/issues/721">#721</a>)</li>
<li><a
href="bbc206c7dc"><code>bbc206c</code></a>
build(deps): bump rollup from 4.21.3 to 4.22.4 (<a
href="https://redirect.github.com/octokit/request.js/issues/720">#720</a>)</li>
<li><a
href="a2787540e1"><code>a278754</code></a>
chore(deps): update dependency esbuild to ^0.24.0 (<a
href="https://redirect.github.com/octokit/request.js/issues/719">#719</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/octokit/request.js/compare/v9.1.3...v9.1.4">compare
view</a></li>
</ul>
</details>
<br />
[](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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Bumps [@sinonjs/fake-timers](https://github.com/sinonjs/fake-timers)
from 13.0.2 to 14.0.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sinonjs/fake-timers/blob/main/CHANGELOG.md"><code>@sinonjs/fake-timers</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>14.0.0 / 2024-12-09</h1>
<ul>
<li>breaking: Drop Node 16, use Node 22 LTS and update tests to handle
the new Navigation API (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/519">#519</a>)</li>
<li>fix: Resilient to prototype pollution of Intl (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/517">#517</a>)</li>
<li>fix: return fake version for <code>performance.timeOrigin</code> (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/515">#515</a>)</li>
</ul>
<h1>13.0.5 / 2024-10-28</h1>
<ul>
<li>Ensure checks based Object.keys length pass for fake Dates (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/513">#513</a>)</li>
</ul>
<h1>13.0.4 / 2024-10-22</h1>
<ul>
<li>Fix constructor-based checks for fake Date no longer pass after
installing (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/512">#512</a>)
(patches the patch)</li>
</ul>
<h1>13.0.3 / 2024-10-17</h1>
<ul>
<li>Ensure checks based on the constructor property passes for fake
Dates (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/511">#511</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="48f089fdc8"><code>48f089f</code></a>
14.0.0</li>
<li><a
href="12b7b21ee1"><code>12b7b21</code></a>
Updated release files for 14.0.0</li>
<li><a
href="4516b5abfb"><code>4516b5a</code></a>
Use Node 22 LTS and update tests to handle the new Navigation API (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/519">#519</a>)</li>
<li><a
href="656733c091"><code>656733c</code></a>
fix: Resilient to prototype pollution of Intl (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/517">#517</a>)</li>
<li><a
href="ff8d907199"><code>ff8d907</code></a>
fix: return fake version for <code>performance.timeOrigin</code> (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/515">#515</a>)</li>
<li><a
href="7861c930e8"><code>7861c93</code></a>
13.0.5</li>
<li><a
href="edbb45f2b1"><code>edbb45f</code></a>
Updated release files for 13.0.5</li>
<li><a
href="754d7856ec"><code>754d785</code></a>
Ensure checks based Object.keys length pass for fake Dates (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/513">#513</a>)</li>
<li><a
href="77a516cd61"><code>77a516c</code></a>
13.0.4</li>
<li><a
href="711b98e926"><code>711b98e</code></a>
Updated release files for 13.0.4</li>
<li>Additional commits viewable in <a
href="https://github.com/sinonjs/fake-timers/compare/v13.0.2...v14.0.0">compare
view</a></li>
</ul>
</details>
<br />
[](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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Bumps the development-dependencies group with 2 updates:
[esbuild](https://github.com/evanw/esbuild) and
[yaml](https://github.com/eemeli/yaml).
Updates `esbuild` from 0.24.0 to 0.24.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.24.2</h2>
<ul>
<li>
<p>Fix regression with <code>--define</code> and
<code>import.meta</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4010">#4010</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4012">#4012</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4013">#4013</a>)</p>
<p>The previous change in version 0.24.1 to use a more expression-like
parser for <code>define</code> values to allow quoted property names
introduced a regression that removed the ability to use
<code>--define:import.meta=...</code>. Even though <code>import</code>
is normally a keyword that can't be used as an identifier, ES modules
special-case the <code>import.meta</code> expression to behave like an
identifier anyway. This change fixes the regression.</p>
<p>This fix was contributed by <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a>.</p>
</li>
</ul>
<h2>v0.24.1</h2>
<ul>
<li>
<p>Allow <code>es2024</code> as a target in <code>tsconfig.json</code>
(<a
href="https://redirect.github.com/evanw/esbuild/issues/4004">#4004</a>)</p>
<p>TypeScript recently <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/#support-for---target-es2024-and---lib-es2024">added
<code>es2024</code></a> as a compilation target, so esbuild now supports
this in the <code>target</code> field of <code>tsconfig.json</code>
files, such as in the following configuration file:</p>
<pre lang="json"><code>{
"compilerOptions": {
"target": "ES2024"
}
}
</code></pre>
<p>As a reminder, the only thing that esbuild uses this field for is
determining whether or not to use legacy TypeScript behavior for class
fields. You can read more in <a
href="https://esbuild.github.io/content-types/#tsconfig-json">the
documentation</a>.</p>
<p>This fix was contributed by <a
href="https://github.com/billyjanitsch"><code>@billyjanitsch</code></a>.</p>
</li>
<li>
<p>Allow automatic semicolon insertion after
<code>get</code>/<code>set</code></p>
<p>This change fixes a grammar bug in the parser that incorrectly
treated the following code as a syntax error:</p>
<pre lang="ts"><code>class Foo {
get
*x() {}
set
*y() {}
}
</code></pre>
<p>The above code will be considered valid starting with this release.
This change to esbuild follows a <a
href="https://redirect.github.com/microsoft/TypeScript/pull/60225">similar
change to TypeScript</a> which will allow this syntax starting with
TypeScript 5.7.</p>
</li>
<li>
<p>Allow quoted property names in <code>--define</code> and
<code>--pure</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4008">#4008</a>)</p>
<p>The <code>define</code> and <code>pure</code> API options now accept
identifier expressions containing quoted property names. Previously all
identifiers in the identifier expression had to be bare identifiers.
This change now makes <code>--define</code> and <code>--pure</code>
consistent with <code>--global-name</code>, which already supported
quoted property names. For example, the following is now possible:</p>
<pre lang="js"><code>// The following code now transforms to
"return true;\n"
console.log(esbuild.transformSync(
`return process.env['SOME-TEST-VAR']`,
{ define: { 'process.env["SOME-TEST-VAR"]': 'true' } },
))
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.24.2</h2>
<ul>
<li>
<p>Fix regression with <code>--define</code> and
<code>import.meta</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4010">#4010</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4012">#4012</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4013">#4013</a>)</p>
<p>The previous change in version 0.24.1 to use a more expression-like
parser for <code>define</code> values to allow quoted property names
introduced a regression that removed the ability to use
<code>--define:import.meta=...</code>. Even though <code>import</code>
is normally a keyword that can't be used as an identifier, ES modules
special-case the <code>import.meta</code> expression to behave like an
identifier anyway. This change fixes the regression.</p>
<p>This fix was contributed by <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a>.</p>
</li>
</ul>
<h2>0.24.1</h2>
<ul>
<li>
<p>Allow <code>es2024</code> as a target in <code>tsconfig.json</code>
(<a
href="https://redirect.github.com/evanw/esbuild/issues/4004">#4004</a>)</p>
<p>TypeScript recently <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/#support-for---target-es2024-and---lib-es2024">added
<code>es2024</code></a> as a compilation target, so esbuild now supports
this in the <code>target</code> field of <code>tsconfig.json</code>
files, such as in the following configuration file:</p>
<pre lang="json"><code>{
"compilerOptions": {
"target": "ES2024"
}
}
</code></pre>
<p>As a reminder, the only thing that esbuild uses this field for is
determining whether or not to use legacy TypeScript behavior for class
fields. You can read more in <a
href="https://esbuild.github.io/content-types/#tsconfig-json">the
documentation</a>.</p>
<p>This fix was contributed by <a
href="https://github.com/billyjanitsch"><code>@billyjanitsch</code></a>.</p>
</li>
<li>
<p>Allow automatic semicolon insertion after
<code>get</code>/<code>set</code></p>
<p>This change fixes a grammar bug in the parser that incorrectly
treated the following code as a syntax error:</p>
<pre lang="ts"><code>class Foo {
get
*x() {}
set
*y() {}
}
</code></pre>
<p>The above code will be considered valid starting with this release.
This change to esbuild follows a <a
href="https://redirect.github.com/microsoft/TypeScript/pull/60225">similar
change to TypeScript</a> which will allow this syntax starting with
TypeScript 5.7.</p>
</li>
<li>
<p>Allow quoted property names in <code>--define</code> and
<code>--pure</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4008">#4008</a>)</p>
<p>The <code>define</code> and <code>pure</code> API options now accept
identifier expressions containing quoted property names. Previously all
identifiers in the identifier expression had to be bare identifiers.
This change now makes <code>--define</code> and <code>--pure</code>
consistent with <code>--global-name</code>, which already supported
quoted property names. For example, the following is now possible:</p>
<pre lang="js"><code>// The following code now transforms to
"return true;\n"
console.log(esbuild.transformSync(
`return process.env['SOME-TEST-VAR']`,
{ define: { 'process.env["SOME-TEST-VAR"]': 'true' } },
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="745abd9f0c"><code>745abd9</code></a>
publish 0.24.2 to npm</li>
<li><a
href="79fd0b0ccc"><code>79fd0b0</code></a>
skip nulls in source map finalization (<a
href="https://redirect.github.com/evanw/esbuild/issues/4011">#4011</a>)</li>
<li><a
href="4b9322f723"><code>4b9322f</code></a>
source map: avoid null entry for 0-length parts</li>
<li><a
href="199a0d38e4"><code>199a0d3</code></a>
close <a
href="https://redirect.github.com/evanw/esbuild/issues/4013">#4013</a>:
credit to <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a> for
the fix</li>
<li><a
href="947f99fb08"><code>947f99f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4010">#4010</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4012">#4012</a>:
<code>import.meta</code> regression</li>
<li><a
href="de9598f42d"><code>de9598f</code></a>
publish 0.24.1 to npm</li>
<li><a
href="15d56ca7d2"><code>15d56ca</code></a>
emit null source mappings for empty chunk content</li>
<li><a
href="8d98f6f6e6"><code>8d98f6f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3985">#3985</a>:
<code>entryPoint</code> metadata for <code>copy</code> loader</li>
<li><a
href="0db1b828bf"><code>0db1b82</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3998">#3998</a>:
avoid <code>outbase</code> in identifier names</li>
<li><a
href="723647263f"><code>7236472</code></a>
close <a
href="https://redirect.github.com/evanw/esbuild/issues/3974">#3974</a>:
add support for netbsd on arm64</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.24.0...v0.24.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `yaml` from 2.6.1 to 2.7.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eemeli/yaml/releases">yaml's
releases</a>.</em></p>
<blockquote>
<h2>v2.7.0</h2>
<p>The library is now available on JSR as <a
href="https://jsr.io/@eemeli/yaml"><code>@eemeli/yaml</code></a> and on
deno.land/x as <a href="https://deno.land/x/yaml">yaml</a>. In addition
to Node.js and browsers, it should work in Deno, Bun, and Cloudflare
Workers.</p>
<ul>
<li>Use .ts extension in all relative imports (<a
href="https://redirect.github.com/eemeli/yaml/issues/591">#591</a>)</li>
<li>Ignore newline after block seq indicator as space before value (<a
href="https://redirect.github.com/eemeli/yaml/issues/590">#590</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8f512b526a"><code>8f512b5</code></a>
2.7.0</li>
<li><a
href="8a7569afff"><code>8a7569a</code></a>
ci: Add jsr.jsonc & jsr-publish workflow</li>
<li><a
href="8ef085fa87"><code>8ef085f</code></a>
docs: Fix API docs links</li>
<li><a
href="374c19cfdc"><code>374c19c</code></a>
style: Really use explicit imports for process.env and Buffer</li>
<li><a
href="1ab037d646"><code>1ab037d</code></a>
style: Include explicit type declarations on all public APIs</li>
<li><a
href="4354c4233d"><code>4354c42</code></a>
style: Use explicit imports for process.env and Buffer</li>
<li><a
href="2c55723ab9"><code>2c55723</code></a>
Merge pull request <a
href="https://redirect.github.com/eemeli/yaml/issues/591">#591</a> from
eemeli/import-ts</li>
<li><a
href="ab240c17d3"><code>ab240c1</code></a>
fix: Drop .ts extension from import & export paths in .d.ts
files</li>
<li><a
href="c4c49f9e95"><code>c4c49f9</code></a>
fix: Use separate rather than inline type keyword for TS
compatibility</li>
<li><a
href="3bec004db4"><code>3bec004</code></a>
ci: Add deno smoke test</li>
<li>Additional commits viewable in <a
href="https://github.com/eemeli/yaml/compare/v2.6.1...v2.7.0">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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Bumps the development-dependencies group with 3 updates:
[@sinonjs/fake-timers](https://github.com/sinonjs/fake-timers),
[esbuild](https://github.com/evanw/esbuild) and
[execa](https://github.com/sindresorhus/execa).
Updates `@sinonjs/fake-timers` from 13.0.1 to 13.0.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sinonjs/fake-timers/blob/main/CHANGELOG.md"><code>@sinonjs/fake-timers</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>13.0.2 / 2024-09-13</h1>
<ul>
<li>fix <a
href="https://redirect.github.com/sinonjs/fake-timers/issues/504">#504</a>:
make instances of original Date pass as instances of the fake Date (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/505">#505</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="78024200ae"><code>7802420</code></a>
13.0.2</li>
<li><a
href="b98dc757d9"><code>b98dc75</code></a>
Updated release files for 13.0.2</li>
<li><a
href="ae0a2665c6"><code>ae0a266</code></a>
fix <a
href="https://redirect.github.com/sinonjs/fake-timers/issues/504">#504</a>:
make instances of original Date pass as instances of the fake Date
...</li>
<li>See full diff in <a
href="https://github.com/sinonjs/fake-timers/compare/v13.0.1...v13.0.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.23.1 to 0.24.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.24.0</h2>
<p><strong><em>This release deliberately contains backwards-incompatible
changes.</em></strong> To avoid automatically picking up releases like
this, you should either be pinning the exact version of
<code>esbuild</code> in your <code>package.json</code> file
(recommended) or be using a version range syntax that only accepts patch
upgrades such as <code>^0.23.0</code> or <code>~0.23.0</code>. See npm's
documentation about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Drop support for older platforms (<a
href="https://redirect.github.com/evanw/esbuild/pull/3902">#3902</a>)</p>
<p>This release drops support for the following operating system:</p>
<ul>
<li>macOS 10.15 Catalina</li>
</ul>
<p>This is because the Go programming language dropped support for this
operating system version in Go 1.23, and this release updates esbuild
from Go 1.22 to Go 1.23. Go 1.23 now requires macOS 11 Big Sur or
later.</p>
<p>Note that this only affects the binary esbuild executables that are
published to the esbuild npm package. It's still possible to compile
esbuild's source code for these older operating systems. If you need to,
you can compile esbuild for yourself using an older version of the Go
compiler (before Go version 1.23). That might look something like
this:</p>
<pre><code>git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild --version
</code></pre>
</li>
<li>
<p>Fix class field decorators in TypeScript if
<code>useDefineForClassFields</code> is <code>false</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a>)</p>
<p>Setting the <code>useDefineForClassFields</code> flag to
<code>false</code> in <code>tsconfig.json</code> means class fields use
the legacy TypeScript behavior instead of the standard JavaScript
behavior. Specifically they use assign semantics instead of define
semantics (e.g. setters are triggered) and fields without an initializer
are not initialized at all. However, when this legacy behavior is
combined with standard JavaScript decorators, TypeScript switches to
always initializing all fields, even those without initializers.
Previously esbuild incorrectly continued to omit field initializers for
this edge case. These field initializers in this case should now be
emitted starting with this release.</p>
</li>
<li>
<p>Avoid incorrect cycle warning with <code>tsconfig.json</code>
multiple inheritance (<a
href="https://redirect.github.com/evanw/esbuild/issues/3898">#3898</a>)</p>
<p>TypeScript 5.0 introduced multiple inheritance for
<code>tsconfig.json</code> files where <code>extends</code> can be an
array of file paths. Previously esbuild would incorrectly treat files
encountered more than once when processing separate subtrees of the
multiple inheritance hierarchy as an inheritance cycle. With this
release, <code>tsconfig.json</code> files containing this edge case
should work correctly without generating a warning.</p>
</li>
<li>
<p>Handle Yarn Plug'n'Play stack overflow with
<code>tsconfig.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>)</p>
<p>Previously a <code>tsconfig.json</code> file that
<code>extends</code> another file in a package with an
<code>exports</code> map could cause a stack overflow when Yarn's
Plug'n'Play resolution was active. This edge case should work now
starting with this release.</p>
</li>
<li>
<p>Work around more issues with Deno 1.31+ (<a
href="https://redirect.github.com/evanw/esbuild/pull/3917">#3917</a>)</p>
<p>This version of Deno broke the <code>stdin</code> and
<code>stdout</code> properties on command objects for inherited streams,
which matters when you run esbuild's Deno module as the entry point
(i.e. when <code>import.meta.main</code> is <code>true</code>).
Previously esbuild would crash in Deno 1.31+ if you ran esbuild like
that. This should be fixed starting with this release.</p>
<p>This fix was contributed by <a
href="https://github.com/Joshix-1"><code>@Joshix-1</code></a>.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.24.0</h2>
<p><strong><em>This release deliberately contains backwards-incompatible
changes.</em></strong> To avoid automatically picking up releases like
this, you should either be pinning the exact version of
<code>esbuild</code> in your <code>package.json</code> file
(recommended) or be using a version range syntax that only accepts patch
upgrades such as <code>^0.23.0</code> or <code>~0.23.0</code>. See npm's
documentation about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Drop support for older platforms (<a
href="https://redirect.github.com/evanw/esbuild/pull/3902">#3902</a>)</p>
<p>This release drops support for the following operating system:</p>
<ul>
<li>macOS 10.15 Catalina</li>
</ul>
<p>This is because the Go programming language dropped support for this
operating system version in Go 1.23, and this release updates esbuild
from Go 1.22 to Go 1.23. Go 1.23 now requires macOS 11 Big Sur or
later.</p>
<p>Note that this only affects the binary esbuild executables that are
published to the esbuild npm package. It's still possible to compile
esbuild's source code for these older operating systems. If you need to,
you can compile esbuild for yourself using an older version of the Go
compiler (before Go version 1.23). That might look something like
this:</p>
<pre><code>git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild --version
</code></pre>
</li>
<li>
<p>Fix class field decorators in TypeScript if
<code>useDefineForClassFields</code> is <code>false</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a>)</p>
<p>Setting the <code>useDefineForClassFields</code> flag to
<code>false</code> in <code>tsconfig.json</code> means class fields use
the legacy TypeScript behavior instead of the standard JavaScript
behavior. Specifically they use assign semantics instead of define
semantics (e.g. setters are triggered) and fields without an initializer
are not initialized at all. However, when this legacy behavior is
combined with standard JavaScript decorators, TypeScript switches to
always initializing all fields, even those without initializers.
Previously esbuild incorrectly continued to omit field initializers for
this edge case. These field initializers in this case should now be
emitted starting with this release.</p>
</li>
<li>
<p>Avoid incorrect cycle warning with <code>tsconfig.json</code>
multiple inheritance (<a
href="https://redirect.github.com/evanw/esbuild/issues/3898">#3898</a>)</p>
<p>TypeScript 5.0 introduced multiple inheritance for
<code>tsconfig.json</code> files where <code>extends</code> can be an
array of file paths. Previously esbuild would incorrectly treat files
encountered more than once when processing separate subtrees of the
multiple inheritance hierarchy as an inheritance cycle. With this
release, <code>tsconfig.json</code> files containing this edge case
should work correctly without generating a warning.</p>
</li>
<li>
<p>Handle Yarn Plug'n'Play stack overflow with
<code>tsconfig.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>)</p>
<p>Previously a <code>tsconfig.json</code> file that
<code>extends</code> another file in a package with an
<code>exports</code> map could cause a stack overflow when Yarn's
Plug'n'Play resolution was active. This edge case should work now
starting with this release.</p>
</li>
<li>
<p>Work around more issues with Deno 1.31+ (<a
href="https://redirect.github.com/evanw/esbuild/pull/3917">#3917</a>)</p>
<p>This version of Deno broke the <code>stdin</code> and
<code>stdout</code> properties on command objects for inherited streams,
which matters when you run esbuild's Deno module as the entry point
(i.e. when <code>import.meta.main</code> is <code>true</code>).
Previously esbuild would crash in Deno 1.31+ if you ran esbuild like
that. This should be fixed starting with this release.</p>
<p>This fix was contributed by <a
href="https://github.com/Joshix-1"><code>@Joshix-1</code></a>.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d34e79e2a9"><code>d34e79e</code></a>
publish 0.24.0 to npm</li>
<li><a
href="045a87f164"><code>045a87f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3887">#3887</a>:
omit dead export warning for <code>default</code></li>
<li><a
href="6e049b81d2"><code>6e049b8</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a>:
useDefineForClassFields and decorators</li>
<li><a
href="9c26f987dd"><code>9c26f98</code></a>
lower decorators for useDefineForClassFields <a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a></li>
<li><a
href="46fdb686e2"><code>46fdb68</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3898">#3898</a>:
incorrect cyclic tsconfig.json warning</li>
<li><a
href="b50044303b"><code>b500443</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3917">#3917</a>:
running esbuild cli with deno</li>
<li><a
href="b125e62c70"><code>b125e62</code></a>
run <code>make update-compat-table</code></li>
<li><a
href="112b9aa32e"><code>112b9aa</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>:
stack overflow with yarn + tsconfig</li>
<li><a
href="ed5a555488"><code>ed5a555</code></a>
wasm: catch and rethrow stack overflows (<a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>)</li>
<li><a
href="11d3196156"><code>11d3196</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3902">#3902</a>:
update go 1.22.5 => 1.23.1</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.23.1...v0.24.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `execa` from 9.3.1 to 9.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/execa/releases">execa's
releases</a>.</em></p>
<blockquote>
<h2>v9.4.0</h2>
<h2>Features</h2>
<ul>
<li>We've created a separate package called <a
href="https://github.com/sindresorhus/nano-spawn">nano-spawn</a>. It is
similar to Execa but with fewer features, for a much smaller package
size. <a
href="https://github.com/sindresorhus/execa/blob/main/docs/small.md">More
info.</a></li>
</ul>
<h2>Bug fixes</h2>
<ul>
<li>Both <a
href="https://github.com/sindresorhus/execa/blob/main/docs/node.md"><code>execaNode()</code></a>
and the <a
href="https://github.com/sindresorhus/execa/blob/main/docs/environment.md#local-binaries"><code>preferLocal</code></a>
option modify the <code>PATH</code> environment variable. This release
includes some minor improvements to ensure that environment variable
remains small (<a
href="https://redirect.github.com/sindresorhus/npm-run-path/pull/20">sindresorhus/npm-run-path#20</a>).
It also handles a few related edge cases better (<a
href="https://redirect.github.com/sindresorhus/npm-run-path/pull/21">sindresorhus/npm-run-path#21</a>).</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>Small documentation typo fix, thanks <a
href="https://github.com/rrthomas"><code>@rrthomas</code></a>! (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1153">#1153</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1b9b9bbf17"><code>1b9b9bb</code></a>
9.4.0</li>
<li><a
href="ba483e74ad"><code>ba483e7</code></a>
Upgrade <code>npm-run-path</code> (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1156">#1156</a>)</li>
<li><a
href="eb3cfbac90"><code>eb3cfba</code></a>
Add documentation about nano-spawn (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1157">#1157</a>)</li>
<li><a
href="3fc804916d"><code>3fc8049</code></a>
Fix a typo (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1153">#1153</a>)</li>
<li><a
href="c4cb62a463"><code>c4cb62a</code></a>
Improve documentation for <code>windowsVerbatimArguments</code> (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1149">#1149</a>)</li>
<li>See full diff in <a
href="https://github.com/sindresorhus/execa/compare/v9.3.1...v9.4.0">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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>