Skip to content

build(deps): bump esbuild and electron-vite in /resources/electron - #200

Merged
simonhamp merged 3 commits into
mainfrom
dependabot/npm_and_yarn/resources/electron/multi-49d165c9fe
Nov 10, 2026
Merged

simonhamp merged 3 commits into
mainfrom
dependabot/npm_and_yarn/resources/electron/multi-49d165c9fe

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

Bumps esbuild to 0.28.2 and updates ancestor dependency electron-vite. These dependencies need to be updated together.

Updates esbuild from 0.27.7 to 0.28.2

Release notes

Sourced from esbuild's releases.

v0.28.2

  • Fix tree shaking bug due to TypeScript import alias (#4507)

    This release fixes a bug that could cause esbuild to incorrectly tree-shake imports that are used in a TypeScript type alias under certain circumstances. Affected code uses a TypeScript-specific import assignment and looks something like this:

    import Base from './dep.js';
    import Alias = Base.SomeType;
  • Fix CSS minification bug involving & (#4497)

    This release fixes a bug where esbuild's CSS minifier incorrectly removed a & when it was unsafe to do so. Here is an example:

    /* Original code */
    .a .b {
      & .b:not(& .c) {
        color: red;
      }
    }
    /* Old output (with --minify) */
    .a .b{.b:not(& .c){color:red}}
    /* New output (with --minify) */
    .a .b{& .b:not(& .c){color:red}}

    This should match <span class="a"><span class="b"><span class="b">yes</span></span></span> but not <span class="a"><span class="b">no</span></span>. The old output incorrectly matched both.

  • Avoid overwriting input files without --allow-overwrite (#4484)

    For example: esbuild input.js --outfile=input.js tells esbuild to overwrite input.js with the output of running esbuild on it. This was supposed to already be prevented by default, but it accidentally regressed in version 0.17.0 and apparently didn't have any test coverage. The error message was being printed but the input file was still being overwritten. Oops.

    This release puts the original behavior back. With this release, esbuild should now actually avoid overwriting input files unless --allow-overwrite is explicitly present. This is done by not writing out any files when a build error is encountered.

  • Fix incorrect code generated when using top-level await (#4498)

    Previously esbuild could generate code containing a syntax error in complex scenarios involving top-level await used in a dependency cycle. The problem was a missing async on one or more module wrapper closures. With this release, esbuild now uses a fixed-point iteration algorithm to correctly annotate all dependencies in the cycle as needing an async module wrapper.

  • Fix a minification bug with lowered logical assignment operators (#4508)

    This release fixes a bug that could cause esbuild to generate incorrect code for logical assignment operators when lowering them to an older target environment. Specifically the lowering process requires duplicating the left-hand side, but esbuild incorrectly failed to count the duplicate as a new usage when the left-hand side is an identifier. That then caused the minifier to believe that the left-hand side was only used once and could attempt to incorrectly inline an initializer into the first usage. This bug has now been fixed:

    // Original code
    function foo() {
      let x
      bar(x ||= {})

... (truncated)

Changelog

Sourced from esbuild's changelog.

0.28.2

  • Fix tree shaking bug due to TypeScript import alias (#4507)

    This release fixes a bug that could cause esbuild to incorrectly tree-shake imports that are used in a TypeScript type alias under certain circumstances. Affected code uses a TypeScript-specific import assignment and looks something like this:

    import Base from './dep.js';
    import Alias = Base.SomeType;
  • Fix CSS minification bug involving & (#4497)

    This release fixes a bug where esbuild's CSS minifier incorrectly removed a & when it was unsafe to do so. Here is an example:

    /* Original code */
    .a .b {
      & .b:not(& .c) {
        color: red;
      }
    }
    /* Old output (with --minify) */
    .a .b{.b:not(& .c){color:red}}
    /* New output (with --minify) */
    .a .b{& .b:not(& .c){color:red}}

    This should match <span class="a"><span class="b"><span class="b">yes</span></span></span> but not <span class="a"><span class="b">no</span></span>. The old output incorrectly matched both.

  • Avoid overwriting input files without --allow-overwrite (#4484)

    For example: esbuild input.js --outfile=input.js tells esbuild to overwrite input.js with the output of running esbuild on it. This was supposed to already be prevented by default, but it accidentally regressed in version 0.17.0 and apparently didn't have any test coverage. The error message was being printed but the input file was still being overwritten. Oops.

    This release puts the original behavior back. With this release, esbuild should now actually avoid overwriting input files unless --allow-overwrite is explicitly present. This is done by not writing out any files when a build error is encountered.

  • Fix incorrect code generated when using top-level await (#4498)

    Previously esbuild could generate code containing a syntax error in complex scenarios involving top-level await used in a dependency cycle. The problem was a missing async on one or more module wrapper closures. With this release, esbuild now uses a fixed-point iteration algorithm to correctly annotate all dependencies in the cycle as needing an async module wrapper.

  • Fix a minification bug with lowered logical assignment operators (#4508)

    This release fixes a bug that could cause esbuild to generate incorrect code for logical assignment operators when lowering them to an older target environment. Specifically the lowering process requires duplicating the left-hand side, but esbuild incorrectly failed to count the duplicate as a new usage when the left-hand side is an identifier. That then caused the minifier to believe that the left-hand side was only used once and could attempt to incorrectly inline an initializer into the first usage. This bug has now been fixed:

    // Original code
    function foo() {
      let x

... (truncated)

Commits
  • 609683d publish 0.28.2 to npm
  • 11b1fe4 add to release notes
  • ab50d91 css: fix green/blue channel swap in oklch gamut mapping (#4488)
  • 04627b6 fix #4498: async TLA checks need a worklist
  • 5c15177 disable gopls in the go folder
  • fc2ee9b css: adjust parser to allow --foo: {...}
  • 209db54 release notes for css nesting bugfix
  • c625d31 fix #4497: preserve nested ampersands during minification (#4500)
  • 34474e2 better isolation of current part in js parser
  • 07f6e8c fix #4507: import assignment tree-shaking bug
  • Additional commits viewable in compare view

Updates electron-vite from 4.0.1 to 6.0.0

Release notes

Sourced from electron-vite's releases.

v6.0.0

Please refer to CHANGELOG.md for details.

electron-vite 6.0 Is Out: Vite 8 Support and a Smoother Electron Development Experience

electron-vite 6.0 brings Vite 8 support alongside improvements to build efficiency, bytecode compilation, and development reliability.

Highlights

  • Vite 8 support: Integrates with Rolldown and supports both rollupOptions and rolldownOptions, while retaining compatibility with Vite 6 and 7.
  • Improved bytecode compilation: Uses a single compiler session to process all code, compiles through Electron processes. The chunkAlias option now supports regular expressions.
  • Less build overhead: Loads Babel only when needed.
  • A smoother development workflow: Improves Electron process shutdown and signal handling, with fixes for asset paths, caching, and multi-entry builds.

Upgrade

Once the stable release is available, upgrade with:

npm install -D electron-vite@6

Thank you to everyone who contributed code, reported issues, and shared feedback. Follow the project on GitHub and get ready for 6.0!

v6.0.0-beta.8

Please refer to CHANGELOG.md for details.

v6.0.0-beta.7

Please refer to CHANGELOG.md for details.

v6.0.0-beta.6

Please refer to CHANGELOG.md for details.

v6.0.0-beta.5

Please refer to CHANGELOG.md for details.

v6.0.0-beta.4

Please refer to CHANGELOG.md for details.

v6.0.0-beta.3

Please refer to CHANGELOG.md for details.

v6.0.0-beta.2

Please refer to CHANGELOG.md for details.

v6.0.0-beta.1

Please refer to CHANGELOG.md for details.

v6.0.0-beta.0

Please refer to CHANGELOG.md for details.

... (truncated)

Changelog

Sourced from electron-vite's changelog.

v6.0.0 (2026-10-15)

  • feat(bytecode): support RegExp for chunkAlias option (#885)
  • refactor: share and normalize build output resolution
  • refactor: inline bytecode build plugin name
  • refactor!: invoke the bytecode compiler only once to compile all code
  • refactor: use pipe stdio for spawn Electron bytecode compliler and append stderr error
  • refactor: use rolldown instead of esbuild to bundle config file
  • refactor: compile bytecode using the Electron main process or renderer process rather then via the ELECTRON_RUN_AS_NODE
  • refactor!: simplify resolve config and isolate user config for sub-builds
  • refactor: ?modulePath sub-build output strategy
  • perf(swcPlugin): skip redundant minification when using Oxc (#922)
  • perf: skip Babel loading in development and builds without bytecode
  • perf: short-circuit bytecode detection in builds
  • perf: setup rollupOption compatibility via config factory
  • perf: build compatibility target for Electron 42, 43, 44
  • fix(asset): use consistent file paths for asset cache lookups
  • fix(bytecode): unable to obtain the bytecode build session in Node.js 24 (#928)
  • fix(dev): exit non-zero when Electron is killed by a signal (#918)
  • fix(dev): forward termination signals to Electron child (#900)
  • fix(dev): improve Electron process signal handling
  • fix(bytecode): set the regular expression's lastIndex to 0 to perform a global match for chunkAlias option
  • fix(esmShim)!: use this.parse to find the last static import (#906)
  • fix(deps)!: downgraded @babel/* to v7 due to Node requirements
  • fix: remove useless preset config
  • fix(swcPlugin): also disable oxc on Vite 8 (#920)
  • fix: clone config without plugins #902
  • fix(deps)!: update magic-string to v1
  • fix(deps)!: update @babel/* to v8
  • fix!: compatible with rollupOptions and rolldownOptions
  • fix: chunk filename is wrong in ES mode
  • fix(asset): isolate asset caches per environment
  • fix: use the environment api in plugins
  • fix: skip TTY terminal manipulations in CI environments
  • fix(deps)!: update vite to v8 (#894)
  • fix: Typescript compiler option 'outDir' must be located inside Rollup 'dir' option
  • fix(isolateEntries): handle non-TTY stdout in build reporter (#887)
  • chore: simplify bytecode compiler initialization
  • chore: improve jsdoc for bytecode options (#898)
  • chore(deps): update all non-major dependencies
  • chore(deps): update lint-staged to v17
  • chore(deps): update cac to v7
  • chore(deps): update globals to v17
  • chore(deps): update eslint and @​eslint/js to v10
  • chore(deps): update all non-major dependencies

v6.0.0-beta.8 (2026-10-11)

See v6.0.0-beta.8 changelog

... (truncated)

Commits
  • 23d7bfc release: v6.0.0
  • 2ca5e40 release: v6.0.0-beta.8
  • bffc6c9 perf(swcPlugin): skip redundant minification when using Oxc (#922)
  • b0b33bd fix(asset): use consistent file paths for asset cache lookups
  • 3ec79bb perf: skip Babel loading in development and builds without bytecode
  • 19050aa refactor: share and normalize build output resolution
  • 0655933 refactor: inline bytecode build plugin name
  • 6fc103e perf: short-circuit bytecode detection in builds
  • 6b0f85a chore: simplify bytecode compiler initialization
  • fa199eb release: v6.0.0-beta.7
  • Additional commits viewable in compare view

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)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [esbuild](https://github.com/evanw/esbuild) to 0.28.2 and updates ancestor dependency [electron-vite](https://github.com/alex8088/electron-vite). These dependencies need to be updated together.


Updates `esbuild` from 0.27.7 to 0.28.2
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](evanw/esbuild@v0.27.7...v0.28.2)

Updates `electron-vite` from 4.0.1 to 6.0.0
- [Release notes](https://github.com/alex8088/electron-vite/releases)
- [Changelog](https://github.com/alex8088/electron-vite/blob/master/CHANGELOG.md)
- [Commits](alex8088/electron-vite@v4.0.1...v6.0.0)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.28.2
  dependency-type: indirect
- dependency-name: electron-vite
  dependency-version: 6.0.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Nov 9, 2026
@simonhamp
simonhamp merged commit 17c0416 into main Nov 10, 2026
39 checks passed
@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/resources/electron/multi-49d165c9fe branch November 10, 2026 18:38
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.

1 participant