[PR #160] [CLOSED] Bump esbuild from 0.18.18 to 0.18.20 #457

Closed
opened 2026-03-15 14:20:10 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/axllent/mailpit/pull/160
Author: @dependabot[bot]
Created: 9/1/2023
Status: Closed

Base: developHead: dependabot/npm_and_yarn/esbuild-0.18.20


📝 Commits (1)

  • f1faa9c Bump esbuild from 0.18.18 to 0.18.20

📊 Changes

2 files changed (+93 additions, -93 deletions)

View changed files

📝 package-lock.json (+92 -92)
📝 package.json (+1 -1)

📄 Description

Bumps esbuild from 0.18.18 to 0.18.20.

Release notes

Sourced from esbuild's releases.

v0.18.20

  • Support advanced CSS @import rules (#953, #3137)

    CSS @import statements have been extended to allow additional trailing tokens after the import path. These tokens sort of make the imported file behave as if it were wrapped in a @layer, @supports, and/or @media rule. Here are some examples:

    @import url(foo.css);
    @import url(foo.css) layer;
    @import url(foo.css) layer(bar);
    @import url(foo.css) layer(bar) supports(display: flex);
    @import url(foo.css) layer(bar) supports(display: flex) print;
    @import url(foo.css) layer(bar) print;
    @import url(foo.css) supports(display: flex);
    @import url(foo.css) supports(display: flex) print;
    @import url(foo.css) print;
    

    You can read more about this advanced syntax here. With this release, esbuild will now bundle @import rules with these trailing tokens and will wrap the imported files in the corresponding rules. Note that this now means a given imported file can potentially appear in multiple places in the bundle. However, esbuild will still only load it once (e.g. on-load plugins will only run once per file, not once per import).

v0.18.19

  • Implement composes from CSS modules (#20)

    This release implements the composes annotation from the CSS modules specification. It provides a way for class selectors to reference other class selectors (assuming you are using the local-css loader). And with the from syntax, this can even work with local names across CSS files. For example:

    // app.js
    import { submit } from './style.css'
    const div = document.createElement('div')
    div.className = submit
    document.body.appendChild(div)
    
    /* style.css */
    .button {
      composes: pulse from "anim.css";
      display: inline-block;
    }
    .submit {
      composes: button;
      font-weight: bold;
    }
    
    /* anim.css */
    @keyframes pulse {
      from, to { opacity: 1 }
      50% { opacity: 0.5 }
    }
    

... (truncated)

Changelog

Sourced from esbuild's changelog.

0.18.20

  • Support advanced CSS @import rules (#953, #3137)

    CSS @import statements have been extended to allow additional trailing tokens after the import path. These tokens sort of make the imported file behave as if it were wrapped in a @layer, @supports, and/or @media rule. Here are some examples:

    @import url(foo.css);
    @import url(foo.css) layer;
    @import url(foo.css) layer(bar);
    @import url(foo.css) layer(bar) supports(display: flex);
    @import url(foo.css) layer(bar) supports(display: flex) print;
    @import url(foo.css) layer(bar) print;
    @import url(foo.css) supports(display: flex);
    @import url(foo.css) supports(display: flex) print;
    @import url(foo.css) print;
    

    You can read more about this advanced syntax here. With this release, esbuild will now bundle @import rules with these trailing tokens and will wrap the imported files in the corresponding rules. Note that this now means a given imported file can potentially appear in multiple places in the bundle. However, esbuild will still only load it once (e.g. on-load plugins will only run once per file, not once per import).

0.18.19

  • Implement composes from CSS modules (#20)

    This release implements the composes annotation from the CSS modules specification. It provides a way for class selectors to reference other class selectors (assuming you are using the local-css loader). And with the from syntax, this can even work with local names across CSS files. For example:

    // app.js
    import { submit } from './style.css'
    const div = document.createElement('div')
    div.className = submit
    document.body.appendChild(div)
    
    /* style.css */
    .button {
      composes: pulse from "anim.css";
      display: inline-block;
    }
    .submit {
      composes: button;
      font-weight: bold;
    }
    
    /* anim.css */
    @keyframes pulse {
      from, to { opacity: 1 }
    

... (truncated)

Commits
  • 22f0818 publish 0.18.20 to npm
  • 89b98d9 css: test coverage for some external test cases
  • 4bb897f fix #953, fix #3137: advanced css @import syntax
  • 6892b1b css: change ast format for @import conditions
  • d770d53 remove unnecessary file slice.go
  • 0e5b5fb add test-e2e-yarn
  • e08ee89 publish 0.18.19 to npm
  • d2bc26c css: attempt to warn about undefined composes
  • a0910fd fix #20: implement composes from css modules
  • a470f0a css: a basic implementation of local composes
  • Additional commits viewable in compare view

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

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/axllent/mailpit/pull/160 **Author:** [@dependabot[bot]](https://github.com/apps/dependabot) **Created:** 9/1/2023 **Status:** ❌ Closed **Base:** `develop` ← **Head:** `dependabot/npm_and_yarn/esbuild-0.18.20` --- ### 📝 Commits (1) - [`f1faa9c`](https://github.com/axllent/mailpit/commit/f1faa9cb20c76810cb112d40af888d8ca9c44393) Bump esbuild from 0.18.18 to 0.18.20 ### 📊 Changes **2 files changed** (+93 additions, -93 deletions) <details> <summary>View changed files</summary> 📝 `package-lock.json` (+92 -92) 📝 `package.json` (+1 -1) </details> ### 📄 Description Bumps [esbuild](https://github.com/evanw/esbuild) from 0.18.18 to 0.18.20. <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.18.20</h2> <ul> <li> <p>Support advanced CSS <code>@import</code> rules (<a href="https://redirect.github.com/evanw/esbuild/issues/953">#953</a>, <a href="https://redirect.github.com/evanw/esbuild/issues/3137">#3137</a>)</p> <p>CSS <code>@import</code> statements have been extended to allow additional trailing tokens after the import path. These tokens sort of make the imported file behave as if it were wrapped in a <code>@layer</code>, <code>@supports</code>, and/or <code>@media</code> rule. Here are some examples:</p> <pre lang="css"><code>@import url(foo.css); @import url(foo.css) layer; @import url(foo.css) layer(bar); @import url(foo.css) layer(bar) supports(display: flex); @import url(foo.css) layer(bar) supports(display: flex) print; @import url(foo.css) layer(bar) print; @import url(foo.css) supports(display: flex); @import url(foo.css) supports(display: flex) print; @import url(foo.css) print; </code></pre> <p>You can read more about this advanced syntax <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@import">here</a>. With this release, esbuild will now bundle <code>@import</code> rules with these trailing tokens and will wrap the imported files in the corresponding rules. Note that this now means a given imported file can potentially appear in multiple places in the bundle. However, esbuild will still only load it once (e.g. on-load plugins will only run once per file, not once per import).</p> </li> </ul> <h2>v0.18.19</h2> <ul> <li> <p>Implement <code>composes</code> from CSS modules (<a href="https://redirect.github.com/evanw/esbuild/issues/20">#20</a>)</p> <p>This release implements the <code>composes</code> annotation from the <a href="https://github.com/css-modules/css-modules#composition">CSS modules specification</a>. It provides a way for class selectors to reference other class selectors (assuming you are using the <code>local-css</code> loader). And with the <code>from</code> syntax, this can even work with local names across CSS files. For example:</p> <pre lang="js"><code>// app.js import { submit } from './style.css' const div = document.createElement('div') div.className = submit document.body.appendChild(div) </code></pre> <pre lang="css"><code>/* style.css */ .button { composes: pulse from &quot;anim.css&quot;; display: inline-block; } .submit { composes: button; font-weight: bold; } </code></pre> <pre lang="css"><code>/* anim.css */ @keyframes pulse { from, to { opacity: 1 } 50% { opacity: 0.5 } } </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.18.20</h2> <ul> <li> <p>Support advanced CSS <code>@import</code> rules (<a href="https://redirect.github.com/evanw/esbuild/issues/953">#953</a>, <a href="https://redirect.github.com/evanw/esbuild/issues/3137">#3137</a>)</p> <p>CSS <code>@import</code> statements have been extended to allow additional trailing tokens after the import path. These tokens sort of make the imported file behave as if it were wrapped in a <code>@layer</code>, <code>@supports</code>, and/or <code>@media</code> rule. Here are some examples:</p> <pre lang="css"><code>@import url(foo.css); @import url(foo.css) layer; @import url(foo.css) layer(bar); @import url(foo.css) layer(bar) supports(display: flex); @import url(foo.css) layer(bar) supports(display: flex) print; @import url(foo.css) layer(bar) print; @import url(foo.css) supports(display: flex); @import url(foo.css) supports(display: flex) print; @import url(foo.css) print; </code></pre> <p>You can read more about this advanced syntax <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@import">here</a>. With this release, esbuild will now bundle <code>@import</code> rules with these trailing tokens and will wrap the imported files in the corresponding rules. Note that this now means a given imported file can potentially appear in multiple places in the bundle. However, esbuild will still only load it once (e.g. on-load plugins will only run once per file, not once per import).</p> </li> </ul> <h2>0.18.19</h2> <ul> <li> <p>Implement <code>composes</code> from CSS modules (<a href="https://redirect.github.com/evanw/esbuild/issues/20">#20</a>)</p> <p>This release implements the <code>composes</code> annotation from the <a href="https://github.com/css-modules/css-modules#composition">CSS modules specification</a>. It provides a way for class selectors to reference other class selectors (assuming you are using the <code>local-css</code> loader). And with the <code>from</code> syntax, this can even work with local names across CSS files. For example:</p> <pre lang="js"><code>// app.js import { submit } from './style.css' const div = document.createElement('div') div.className = submit document.body.appendChild(div) </code></pre> <pre lang="css"><code>/* style.css */ .button { composes: pulse from &quot;anim.css&quot;; display: inline-block; } .submit { composes: button; font-weight: bold; } </code></pre> <pre lang="css"><code>/* anim.css */ @keyframes pulse { from, to { opacity: 1 } </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/evanw/esbuild/commit/22f0818cf81024b63752d815c51fe737612b43ec"><code>22f0818</code></a> publish 0.18.20 to npm</li> <li><a href="https://github.com/evanw/esbuild/commit/89b98d923cf8c08ac30eb3e6b3e59eb5a4cab632"><code>89b98d9</code></a> css: test coverage for some external test cases</li> <li><a href="https://github.com/evanw/esbuild/commit/4bb897fb3be805cb186b75a15138e6bbfde2f18d"><code>4bb897f</code></a> fix <a href="https://redirect.github.com/evanw/esbuild/issues/953">#953</a>, fix <a href="https://redirect.github.com/evanw/esbuild/issues/3137">#3137</a>: advanced css <code>@import</code> syntax</li> <li><a href="https://github.com/evanw/esbuild/commit/6892b1bba780708f21f38452c94a53adceb3683a"><code>6892b1b</code></a> css: change ast format for <code>@import</code> conditions</li> <li><a href="https://github.com/evanw/esbuild/commit/d770d53f4b42472e7e0df14e281aa40cda30a62a"><code>d770d53</code></a> remove unnecessary file <code>slice.go</code></li> <li><a href="https://github.com/evanw/esbuild/commit/0e5b5fb295260c3169de2cb7c8c3ca8334a3c89e"><code>0e5b5fb</code></a> add <code>test-e2e-yarn</code></li> <li><a href="https://github.com/evanw/esbuild/commit/e08ee8990905f24b987a7ddffde89e20cbf3cf6a"><code>e08ee89</code></a> publish 0.18.19 to npm</li> <li><a href="https://github.com/evanw/esbuild/commit/d2bc26c40885130201256afe24393fd041e960a4"><code>d2bc26c</code></a> css: attempt to warn about undefined <code>composes</code></li> <li><a href="https://github.com/evanw/esbuild/commit/a0910fd20042209b3f3beef3b3b1ecba4ca7cfa3"><code>a0910fd</code></a> fix <a href="https://redirect.github.com/evanw/esbuild/issues/20">#20</a>: implement <code>composes</code> from css modules</li> <li><a href="https://github.com/evanw/esbuild/commit/a470f0a25de4e334370c4d3763e140f301a8343d"><code>a470f0a</code></a> css: a basic implementation of local <code>composes</code></li> <li>Additional commits viewable in <a href="https://github.com/evanw/esbuild/compare/v0.18.18...v0.18.20">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.18.18&new-version=0.18.20)](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> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-15 14:20:10 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/mailpit#457
No description provided.