Skip to content

Upgrade: [dependabot] - bump esbuild from 0.27.3 to 0.27.4#2868

Merged
eps-autoapprove-dependabot[bot] merged 1 commit intomainfrom
dependabot/npm_and_yarn/esbuild-0.27.4
Mar 14, 2026
Merged

Upgrade: [dependabot] - bump esbuild from 0.27.3 to 0.27.4#2868
eps-autoapprove-dependabot[bot] merged 1 commit intomainfrom
dependabot/npm_and_yarn/esbuild-0.27.4

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Mar 13, 2026

Bumps esbuild from 0.27.3 to 0.27.4.

Release notes

Sourced from esbuild's releases.

v0.27.4

  • Fix a regression with CSS media queries (#4395, #4405, #4406)

    Version 0.25.11 of esbuild introduced support for parsing media queries. This unintentionally introduced a regression with printing media queries that use the <media-type> and <media-condition-without-or> grammar. Specifically, esbuild was failing to wrap an or clause with parentheses when inside <media-condition-without-or>. This release fixes the regression.

    Here is an example:

    /* Original code */
    @media only screen and ((min-width: 10px) or (min-height: 10px)) {
      a { color: red }
    }
    /* Old output (incorrect) */
    @​media only screen and (min-width: 10px) or (min-height: 10px) {
    a {
    color: red;
    }
    }
    /* New output (correct) */
    @​media only screen and ((min-width: 10px) or (min-height: 10px)) {
    a {
    color: red;
    }
    }

  • Fix an edge case with the inject feature (#4407)

    This release fixes an edge case where esbuild's inject feature could not be used with arbitrary module namespace names exported using an export {} from statement with bundling disabled and a target environment where arbitrary module namespace names is unsupported.

    With the fix, the following inject file:

    import jquery from 'jquery';
    export { jquery as 'window.jQuery' };

    Can now always be rewritten as this without esbuild sometimes incorrectly generating an error:

    export { default as 'window.jQuery' } from 'jquery';
  • Attempt to improve API handling of huge metafiles (#4329, #4415)

    This release contains a few changes that attempt to improve the behavior of esbuild's JavaScript API with huge metafiles (esbuild's name for the build metadata, formatted as a JSON object). The JavaScript API is designed to return the metafile JSON as a JavaScript object in memory, which makes it easy to access from within a JavaScript-based plugin. Multiple people have encountered issues where this API breaks down with a pathologically-large metafile.

    The primary issue is that V8 has an implementation-specific maximum string length, so using the JSON.parse API with large enough strings is impossible. This release will now attempt to use a fallback JavaScript-based JSON parser that operates directly on the UTF8-encoded JSON bytes instead of using JSON.parse when the JSON metafile is too big to fit in a JavaScript string. The new fallback path has not yet been heavily-tested. The metafile will also now be generated with whitespace removed if the bundle is significantly large, which will reduce the size of the metafile JSON slightly.

... (truncated)

Changelog

Sourced from esbuild's changelog.

0.27.4

  • Fix a regression with CSS media queries (#4395, #4405, #4406)

    Version 0.25.11 of esbuild introduced support for parsing media queries. This unintentionally introduced a regression with printing media queries that use the <media-type> and <media-condition-without-or> grammar. Specifically, esbuild was failing to wrap an or clause with parentheses when inside <media-condition-without-or>. This release fixes the regression.

    Here is an example:

    /* Original code */
    @media only screen and ((min-width: 10px) or (min-height: 10px)) {
      a { color: red }
    }
    /* Old output (incorrect) */
    @​media only screen and (min-width: 10px) or (min-height: 10px) {
    a {
    color: red;
    }
    }
    /* New output (correct) */
    @​media only screen and ((min-width: 10px) or (min-height: 10px)) {
    a {
    color: red;
    }
    }

  • Fix an edge case with the inject feature (#4407)

    This release fixes an edge case where esbuild's inject feature could not be used with arbitrary module namespace names exported using an export {} from statement with bundling disabled and a target environment where arbitrary module namespace names is unsupported.

    With the fix, the following inject file:

    import jquery from 'jquery';
    export { jquery as 'window.jQuery' };

    Can now always be rewritten as this without esbuild sometimes incorrectly generating an error:

    export { default as 'window.jQuery' } from 'jquery';
  • Attempt to improve API handling of huge metafiles (#4329, #4415)

    This release contains a few changes that attempt to improve the behavior of esbuild's JavaScript API with huge metafiles (esbuild's name for the build metadata, formatted as a JSON object). The JavaScript API is designed to return the metafile JSON as a JavaScript object in memory, which makes it easy to access from within a JavaScript-based plugin. Multiple people have encountered issues where this API breaks down with a pathologically-large metafile.

... (truncated)

Commits

Dependabot compatibility score

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 commands and options

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 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)

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Mar 13, 2026
@github-actions
Copy link
Copy Markdown
Contributor

This PR is raised by Dependabot to update a dependency.

Bumps [esbuild](https://github.com/evanw/esbuild) from 0.27.3 to 0.27.4.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](evanw/esbuild@v0.27.3...v0.27.4)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.27.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/esbuild-0.27.4 branch from 7cd0200 to 2786f87 Compare March 14, 2026 11:55
@sonarqubecloud
Copy link
Copy Markdown

Copy link
Copy Markdown

@eps-autoapprove-dependabot eps-autoapprove-dependabot Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm approving this pull request because it includes a patch or minor update

@eps-autoapprove-dependabot eps-autoapprove-dependabot Bot enabled auto-merge (squash) March 14, 2026 12:02
@eps-autoapprove-dependabot eps-autoapprove-dependabot Bot merged commit 03430ed into main Mar 14, 2026
18 checks passed
@dependabot dependabot Bot deleted the dependabot/npm_and_yarn/esbuild-0.27.4 branch March 14, 2026 12:20
tstephen-nhs pushed a commit that referenced this pull request Mar 18, 2026
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.27.3 to 0.27.4.
<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.27.4</h2>
<ul>
<li>
<p>Fix a regression with CSS media queries (<a
href="https://redirect.github.com/evanw/esbuild/issues/4395">#4395</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4405">#4405</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4406">#4406</a>)</p>
<p>Version 0.25.11 of esbuild introduced support for parsing media
queries. This unintentionally introduced a regression with printing
media queries that use the <code>&lt;media-type&gt; and
&lt;media-condition-without-or&gt;</code> grammar. Specifically, esbuild
was failing to wrap an <code>or</code> clause with parentheses when
inside <code>&lt;media-condition-without-or&gt;</code>. This release
fixes the regression.</p>
<p>Here is an example:</p>
<pre lang="css"><code>/* Original code */
@media only screen and ((min-width: 10px) or (min-height: 10px)) {
  a { color: red }
}
<p>/* Old output (incorrect) */<br />
<a href="https://github.com/media"><code>@​media</code></a> only screen
and (min-width: 10px) or (min-height: 10px) {<br />
a {<br />
color: red;<br />
}<br />
}</p>
<p>/* New output (correct) */<br />
<a href="https://github.com/media"><code>@​media</code></a> only screen
and ((min-width: 10px) or (min-height: 10px)) {<br />
a {<br />
color: red;<br />
}<br />
}<br />
</code></pre></p>
</li>
<li>
<p>Fix an edge case with the <code>inject</code> feature (<a
href="https://redirect.github.com/evanw/esbuild/issues/4407">#4407</a>)</p>
<p>This release fixes an edge case where esbuild's <code>inject</code>
feature could not be used with arbitrary module namespace names exported
using an <code>export {} from</code> statement with bundling disabled
and a target environment where arbitrary module namespace names is
unsupported.</p>
<p>With the fix, the following <code>inject</code> file:</p>
<pre lang="js"><code>import jquery from 'jquery';
export { jquery as 'window.jQuery' };
</code></pre>
<p>Can now always be rewritten as this without esbuild sometimes
incorrectly generating an error:</p>
<pre lang="js"><code>export { default as 'window.jQuery' } from
'jquery';
</code></pre>
</li>
<li>
<p>Attempt to improve API handling of huge metafiles (<a
href="https://redirect.github.com/evanw/esbuild/issues/4329">#4329</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4415">#4415</a>)</p>
<p>This release contains a few changes that attempt to improve the
behavior of esbuild's JavaScript API with huge metafiles (esbuild's name
for the build metadata, formatted as a JSON object). The JavaScript API
is designed to return the metafile JSON as a JavaScript object in
memory, which makes it easy to access from within a JavaScript-based
plugin. Multiple people have encountered issues where this API breaks
down with a pathologically-large metafile.</p>
<p>The primary issue is that V8 has an implementation-specific maximum
string length, so using the <code>JSON.parse</code> API with large
enough strings is impossible. This release will now attempt to use a
fallback JavaScript-based JSON parser that operates directly on the
UTF8-encoded JSON bytes instead of using <code>JSON.parse</code> when
the JSON metafile is too big to fit in a JavaScript string. The new
fallback path has not yet been heavily-tested. The metafile will also
now be generated with whitespace removed if the bundle is significantly
large, which will reduce the size of the metafile JSON slightly.</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.27.4</h2>
<ul>
<li>
<p>Fix a regression with CSS media queries (<a
href="https://redirect.github.com/evanw/esbuild/issues/4395">#4395</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4405">#4405</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4406">#4406</a>)</p>
<p>Version 0.25.11 of esbuild introduced support for parsing media
queries. This unintentionally introduced a regression with printing
media queries that use the <code>&lt;media-type&gt; and
&lt;media-condition-without-or&gt;</code> grammar. Specifically, esbuild
was failing to wrap an <code>or</code> clause with parentheses when
inside <code>&lt;media-condition-without-or&gt;</code>. This release
fixes the regression.</p>
<p>Here is an example:</p>
<pre lang="css"><code>/* Original code */
@media only screen and ((min-width: 10px) or (min-height: 10px)) {
  a { color: red }
}
<p>/* Old output (incorrect) */<br />
<a href="https://github.com/media"><code>@​media</code></a> only screen
and (min-width: 10px) or (min-height: 10px) {<br />
a {<br />
color: red;<br />
}<br />
}</p>
<p>/* New output (correct) */<br />
<a href="https://github.com/media"><code>@​media</code></a> only screen
and ((min-width: 10px) or (min-height: 10px)) {<br />
a {<br />
color: red;<br />
}<br />
}<br />
</code></pre></p>
</li>
<li>
<p>Fix an edge case with the <code>inject</code> feature (<a
href="https://redirect.github.com/evanw/esbuild/issues/4407">#4407</a>)</p>
<p>This release fixes an edge case where esbuild's <code>inject</code>
feature could not be used with arbitrary module namespace names exported
using an <code>export {} from</code> statement with bundling disabled
and a target environment where arbitrary module namespace names is
unsupported.</p>
<p>With the fix, the following <code>inject</code> file:</p>
<pre lang="js"><code>import jquery from 'jquery';
export { jquery as 'window.jQuery' };
</code></pre>
<p>Can now always be rewritten as this without esbuild sometimes
incorrectly generating an error:</p>
<pre lang="js"><code>export { default as 'window.jQuery' } from
'jquery';
</code></pre>
</li>
<li>
<p>Attempt to improve API handling of huge metafiles (<a
href="https://redirect.github.com/evanw/esbuild/issues/4329">#4329</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4415">#4415</a>)</p>
<p>This release contains a few changes that attempt to improve the
behavior of esbuild's JavaScript API with huge metafiles (esbuild's name
for the build metadata, formatted as a JSON object). The JavaScript API
is designed to return the metafile JSON as a JavaScript object in
memory, which makes it easy to access from within a JavaScript-based
plugin. Multiple people have encountered issues where this API breaks
down with a pathologically-large metafile.</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/f9c9012cdb05135873722184b01f078ea7de8d98"><code>f9c9012</code></a>
publish 0.27.4 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/207dbc761ea95a81a8b32cc7f9fae46361faaed7"><code>207dbc7</code></a>
js api: fall back to js-based metafile json parser</li>
<li><a
href="https://github.com/evanw/esbuild/commit/1ca56dc65155b0d887904c683cd43f7618ae621e"><code>1ca56dc</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4329">#4329</a>:
auto-minify metafile for large bundles</li>
<li><a
href="https://github.com/evanw/esbuild/commit/e3823aa485d3cd3f6c11718e4c124b54ebc425e5"><code>e3823aa</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4415">#4415</a>:
add uint cast to stdio int parser</li>
<li><a
href="https://github.com/evanw/esbuild/commit/d50e88c00aaa424712eddda2f28aae299db4e0de"><code>d50e88c</code></a>
chore: correct copy&amp;paste panic message (<a
href="https://redirect.github.com/evanw/esbuild/issues/4399">#4399</a>)</li>
<li><a
href="https://github.com/evanw/esbuild/commit/8b829b1bdfeb2b11aa16a643b5bfee108066cab0"><code>8b829b1</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4407">#4407</a>:
incorrect error for inject edge case</li>
<li><a
href="https://github.com/evanw/esbuild/commit/4384badefe3a07b80b3f3eba832c17d0c806dd4c"><code>4384bad</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4395">#4395</a>
close <a
href="https://redirect.github.com/evanw/esbuild/issues/4405">#4405</a>
close <a
href="https://redirect.github.com/evanw/esbuild/issues/4406">#4406</a>:
parens for <code>or</code></li>
<li>See full diff in <a
href="https://github.com/evanw/esbuild/compare/v0.27.3...v0.27.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=esbuild&package-manager=npm_and_yarn&previous-version=0.27.3&new-version=0.27.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot 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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants