-
Notifications
You must be signed in to change notification settings - Fork 5
Commit b173a07
authored
build(deps): bump esbuild from 0.25.4 to 0.25.6 (#354)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.25.4 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="https://github.com/evanw/esbuild/commit/d38c1f0bc580b4a8a93f23559d0cd9085d7ba31f"><code>d38c1f0</code></a>
publish 0.25.6 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/11e547e2c7b4238a626c1fd10759e058c8477daa"><code>11e547e</code></a>
missing <code>)</code> in release notes</li>
<li><a
href="https://github.com/evanw/esbuild/commit/cc8ac0a5f49589d9a0698728106ffa43d51aa1b3"><code>cc8ac0a</code></a>
fix trailing comment whitespace</li>
<li><a
href="https://github.com/evanw/esbuild/commit/1e3fb57adcbd51b35712ea53e215f5368a8cd708"><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="https://github.com/evanw/esbuild/commit/c1f5f18e8308be3eaf064c0d059bfee00cc628e7"><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="https://github.com/evanw/esbuild/commit/3ed5ecce847ace6f016290d10fbae9359b0351d3"><code>3ed5ecc</code></a>
fix incorrect locations in <code>CHANGELOG.md</code></li>
<li><a
href="https://github.com/evanw/esbuild/commit/248089c1a8398a219720e8ef5601d2b7001c64d4"><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="https://github.com/evanw/esbuild/commit/42f159cb52e1d7de826b5b52f307c45b587a5646"><code>42f159c</code></a>
openharmony: keep makefile targets sorted</li>
<li><a
href="https://github.com/evanw/esbuild/commit/63256e12bedc47a7bd13d315e5c0712908f31a14"><code>63256e1</code></a>
chore: fix some comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4211">#4211</a>)</li>
<li><a
href="https://github.com/evanw/esbuild/commit/d803f72e64c900e6b007501c81b987832ffc3c81"><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.4...v0.25.6">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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>1 parent 6a34e1e commit b173a07Copy full SHA for b173a07
File tree
Expand file treeCollapse file tree
2 files changed
+122
-105
lines changedOpen diff view settings
Filter options
Expand file treeCollapse file tree
2 files changed
+122
-105
lines changedOpen diff view settings
0 commit comments