This release deliberately contains backwards-incompatible changes. To avoid automatically picking up releases like this, you should either be pinning the exact version of esbuild in your package.json file (recommended) or be using a version range syntax that only accepts patch upgrades such as ^0.23.0 or ~0.23.0. See npm's documentation about semver for more information.
This release drops support for the following operating system:
macOS 10.15 Catalina
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.
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:
git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild --version
Fix class field decorators in TypeScript if useDefineForClassFields is false (#3913)
Setting the useDefineForClassFields flag to false in tsconfig.json 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.
Avoid incorrect cycle warning with tsconfig.json multiple inheritance (#3898)
TypeScript 5.0 introduced multiple inheritance for tsconfig.json files where extends 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, tsconfig.json files containing this edge case should work correctly without generating a warning.
Handle Yarn Plug'n'Play stack overflow with tsconfig.json (#3915)
Previously a tsconfig.json file that extends another file in a package with an exports 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.
This version of Deno broke the stdin and stdout properties on command objects for inherited streams, which matters when you run esbuild's Deno module as the entry point (i.e. when import.meta.main is true). Previously esbuild would crash in Deno 1.31+ if you ran esbuild like that. This should be fixed starting with this release.
This release deliberately contains backwards-incompatible changes. To avoid automatically picking up releases like this, you should either be pinning the exact version of esbuild in your package.json file (recommended) or be using a version range syntax that only accepts patch upgrades such as ^0.23.0 or ~0.23.0. See npm's documentation about semver for more information.
This release drops support for the following operating system:
macOS 10.15 Catalina
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.
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:
git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild --version
Fix class field decorators in TypeScript if useDefineForClassFields is false (#3913)
Setting the useDefineForClassFields flag to false in tsconfig.json 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.
Avoid incorrect cycle warning with tsconfig.json multiple inheritance (#3898)
TypeScript 5.0 introduced multiple inheritance for tsconfig.json files where extends 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, tsconfig.json files containing this edge case should work correctly without generating a warning.
Handle Yarn Plug'n'Play stack overflow with tsconfig.json (#3915)
Previously a tsconfig.json file that extends another file in a package with an exports 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.
This version of Deno broke the stdin and stdout properties on command objects for inherited streams, which matters when you run esbuild's Deno module as the entry point (i.e. when import.meta.main is true). Previously esbuild would crash in Deno 1.31+ if you ran esbuild like that. This should be fixed starting with this release.
Bumps the dev-dependencies group with 13 updates in the / directory:
19.4.1
19.5.0
19.4.1
19.5.0
19.4.1
19.5.0
9.9.1
9.11.1
22.5.2
22.7.4
3.6.0
4.0.1
0.23.1
0.24.0
9.9.1
9.11.1
9.1.5
9.1.6
6.5.1
6.7.0
5.5.4
5.6.2
8.4.0
8.7.0
18.3.5
18.3.10
Updates
@commitlint/cli
from 19.4.1 to 19.5.0Release notes
Sourced from
@commitlint/cli
's releases.Changelog
Sourced from
@commitlint/cli
's changelog.Commits
7e79af1
v19.5.0d7070d8
feat(cli): use special errorCode for missing rules/config #4142 (#4143)3c4b0fd
chore: replaceexeca
withtinyexec
and Node'schild_process.spawnSync
(...Updates
@commitlint/config-conventional
from 19.4.1 to 19.5.0Release notes
Sourced from
@commitlint/config-conventional
's releases.Changelog
Sourced from
@commitlint/config-conventional
's changelog.Commits
7e79af1
v19.5.0Updates
@commitlint/core
from 19.4.1 to 19.5.0Release notes
Sourced from
@commitlint/core
's releases.Changelog
Sourced from
@commitlint/core
's changelog.Commits
7e79af1
v19.5.0Updates
@eslint/js
from 9.9.1 to 9.11.1Release notes
Sourced from
@eslint/js
's releases.... (truncated)
Changelog
Sourced from
@eslint/js
's changelog.... (truncated)
Commits
36d8095
chore: package.json update for@eslint/js
releasea10f90a
chore: package.json update for@eslint/js
release1ebdde1
chore: package.json update for@eslint/js
releaseUpdates
@types/node
from 22.5.2 to 22.7.4Commits
Updates
chokidar
from 3.6.0 to 4.0.1Release notes
Sourced from chokidar's releases.
Commits
8c3479f
Release 4.0.1.812cf64
README8f9f136
Remove changelog md66a96ff
Update license yearbf65c94
improve internal types a little bit (#1363)4242091
Merge pull request #1360 from paulmillr/fseventsless95aa953
fix: always return promise in close() (#1359)bad7dce
fix: remove fsevents from docs and JSDoc9b15d99
Merge pull request #1356 from talentlessguy/remove-type-fromjsdocf4d8ad0
fix: remove jsdoc types and improve internal typesUpdates
esbuild
from 0.23.1 to 0.24.0Release notes
Sourced from esbuild's releases.
Changelog
Sourced from esbuild's changelog.
Commits
d34e79e
publish 0.24.0 to npm045a87f
fix #3887: omit dead export warning fordefault
6e049b8
fix #3913: useDefineForClassFields and decorators9c26f98
lower decorators for useDefineForClassFields #391346fdb68
fix #3898: incorrect cyclic tsconfig.json warningb500443
fix #3917: running esbuild cli with denob125e62
runmake update-compat-table
112b9aa
fix #3915: stack overflow with yarn + tsconfiged5a555
wasm: catch and rethrow stack overflows (#3915)11d3196
fix #3902: update go 1.22.5 => 1.23.1Updates
eslint
from 9.9.1 to 9.11.1Release notes
Sourced from eslint's releases.
... (truncated)
Changelog
Sourced from eslint's changelog.