Fix a regression in 0.19.0 regarding paths in tsconfig.json (#3354)
The fix in esbuild version 0.19.0 to process tsconfig.json aliases before the --packages=external setting unintentionally broke an edge case in esbuild's handling of certain tsconfig.json aliases where there are multiple files with the same name in different directories. This release adjusts esbuild's behavior for this edge case so that it passes while still processing aliases before --packages=external. Please read the linked issue for more details.
This release fixes a bug where esbuild's CSS minifier didn't insert a space between the font size and the font family in the font CSS shorthand property in the edge case where the original source code didn't already have a space and the leading string token was shortened to an identifier:
/* Original code */
.foo { font: 16px"Menlo"; }
/* Old output (with --minify) */
.foo{font:16pxMenlo}
/* New output (with --minify) */
.foo{font:16px Menlo}
Fix bundling CSS with asset names containing spaces (#3410)
Assets referenced via CSS url() tokens may cause esbuild to generate invalid output when bundling if the file name contains spaces (e.g. url(image 2.png)). With this release, esbuild will now quote all bundled asset references in url() tokens to avoid this problem. This only affects assets loaded using the file and copy loaders.
Fix invalid CSS url() tokens in @import rules (#3426)
In the future, CSS url() tokens may contain additional stuff after the URL. This is irrelevant today as no CSS specification does this. But esbuild previously had a bug where using these tokens in an @import rule resulted in malformed output. This bug has been fixed.
Fix browser + false + type: module in package.json (#3367)
The browser field in package.json allows you to map a file to false to have it be treated as an empty file when bundling for the browser. However, if package.json contains "type": "module" then all .js files will be considered ESM, not CommonJS. Importing a named import from an empty CommonJS file gives you undefined, but importing a named export from an empty ESM file is a build error. This release changes esbuild's interpretation of these files mapped to false in this situation from ESM to CommonJS to avoid generating build errors for named imports.
Fix a bug in top-level await error reporting (#3400)
Using require() on a file that contains top-level await is not allowed because require() must return synchronously and top-level await makes that impossible. You will get a build error if you try to bundle code that does this with esbuild. This release fixes a bug in esbuild's error reporting code for complex cases of this situation involving multiple levels of imports to get to the module containing the top-level await.
Update to Unicode 15.1.0
The character tables that determine which characters form valid JavaScript identifiers have been updated from Unicode version 15.0.0 to the newly-released Unicode version 15.1.0. I'm not putting an example in the release notes because all of the new characters will likely just show up as little squares since fonts haven't been updated yet. But you can read https://www.unicode.org/versions/Unicode15.1.0/#Summary for more information about the changes.
Fix printing of JavaScript decorators in tricky cases (#3396)
This release fixes some bugs where esbuild's pretty-printing of JavaScript decorators could incorrectly produced code with a syntax error. The problem happened because esbuild sometimes substitutes identifiers for other expressions in the pretty-printer itself, but the decision about whether to wrap the expression or not didn't account for this. Here are some examples:
// Original code
import { constant } from './constants.js'
Fix a regression in 0.19.0 regarding paths in tsconfig.json (#3354)
The fix in esbuild version 0.19.0 to process tsconfig.json aliases before the --packages=external setting unintentionally broke an edge case in esbuild's handling of certain tsconfig.json aliases where there are multiple files with the same name in different directories. This release adjusts esbuild's behavior for this edge case so that it passes while still processing aliases before --packages=external. Please read the linked issue for more details.
This release fixes a bug where esbuild's CSS minifier didn't insert a space between the font size and the font family in the font CSS shorthand property in the edge case where the original source code didn't already have a space and the leading string token was shortened to an identifier:
/* Original code */
.foo { font: 16px"Menlo"; }
/* Old output (with --minify) */
.foo{font:16pxMenlo}
/* New output (with --minify) */
.foo{font:16px Menlo}
Fix bundling CSS with asset names containing spaces (#3410)
Assets referenced via CSS url() tokens may cause esbuild to generate invalid output when bundling if the file name contains spaces (e.g. url(image 2.png)). With this release, esbuild will now quote all bundled asset references in url() tokens to avoid this problem. This only affects assets loaded using the file and copy loaders.
Fix invalid CSS url() tokens in @import rules (#3426)
In the future, CSS url() tokens may contain additional stuff after the URL. This is irrelevant today as no CSS specification does this. But esbuild previously had a bug where using these tokens in an @import rule resulted in malformed output. This bug has been fixed.
Fix browser + false + type: module in package.json (#3367)
The browser field in package.json allows you to map a file to false to have it be treated as an empty file when bundling for the browser. However, if package.json contains "type": "module" then all .js files will be considered ESM, not CommonJS. Importing a named import from an empty CommonJS file gives you undefined, but importing a named export from an empty ESM file is a build error. This release changes esbuild's interpretation of these files mapped to false in this situation from ESM to CommonJS to avoid generating build errors for named imports.
Fix a bug in top-level await error reporting (#3400)
Using require() on a file that contains top-level await is not allowed because require() must return synchronously and top-level await makes that impossible. You will get a build error if you try to bundle code that does this with esbuild. This release fixes a bug in esbuild's error reporting code for complex cases of this situation involving multiple levels of imports to get to the module containing the top-level await.
Update to Unicode 15.1.0
The character tables that determine which characters form valid JavaScript identifiers have been updated from Unicode version 15.0.0 to the newly-released Unicode version 15.1.0. I'm not putting an example in the release notes because all of the new characters will likely just show up as little squares since fonts haven't been updated yet. But you can read https://www.unicode.org/versions/Unicode15.1.0/#Summary for more information about the changes.
Fix printing of JavaScript decorators in tricky cases (#3396)
This release fixes some bugs where esbuild's pretty-printing of JavaScript decorators could incorrectly produced code with a syntax error. The problem happened because esbuild sometimes substitutes identifiers for other expressions in the pretty-printer itself, but the decision about whether to wrap the expression or not didn't account for this. Here are some examples:
Bumps the dependencies group with 21 updates:
1.3.92
1.3.94
25.0.5
25.0.7
4.3.6
4.3.9
3.1.7
3.1.8
2.0.1
2.0.2
10.0.2
10.0.3
18.15.0
20.8.7
1.0.2
1.0.3
5.62.0
6.8.0
5.62.0
6.8.0
0.18.20
0.19.5
8.50.0
8.52.0
8.10.0
9.0.0
35.0.0
39.1.1
2.28.1
2.29.0
15.7.0
16.2.0
2.8.8
3.0.3
15.0.1
16.1.1
3.29.4
4.1.4
15.2.0
17.0.0
5.1.6
5.2.2
Updates
@swc/core
from 1.3.92 to 1.3.94Changelog
Sourced from
@swc/core
's changelog.... (truncated)
Commits
ff39d64
chore: Publishv1.3.94
withswc_core
v0.86.12
(#8165)f5b10da
chore: Publish 1.3.94-nightly-20231021.1366d9eb
chore: Publish crates5be8e74
chore(es/module): Removeserde(deny_unknown_fields)
(#8163)6f9c642
chore: Publish crates826386f
fix(es/parser): Skipthis
parameters in setter (#8158)10e523d
chore: Publish 1.3.94-nightly-20231020.2b806f92
chore: Publish crates08cf1f7
fix(es/utils): Fix regression ofRefRewriter
(#8153)4012194
chore: Publish 1.3.94-nightly-20231020.1Updates
@rollup/plugin-commonjs
from 25.0.5 to 25.0.7Changelog
Sourced from
@rollup/plugin-commonjs
's changelog.Commits
ad406ba
chore(release): commonjs v25.0.78e2ed59
fix(commonjs,dynamic-import-vars,esm-shim,inject,replace,strip): bump magic-s...88687f0
chore(release): commonjs v25.0.6cb579c8
fix(commonjs): Keep the shebang at the top of the file content (#1610)Updates
@types/chai
from 4.3.6 to 4.3.9Commits
Updates
@types/debounce-promise
from 3.1.7 to 3.1.8Commits
Updates
@types/json-parse-safe
from 2.0.1 to 2.0.2Commits
Updates
@types/mocha
from 10.0.2 to 10.0.3Commits
Updates
@types/node
from 18.15.0 to 20.8.7Commits
Updates
@types/readline-transform
from 1.0.2 to 1.0.3Commits
Updates
@typescript-eslint/eslint-plugin
from 5.62.0 to 6.8.0Release notes
Sourced from
@typescript-eslint/eslint-plugin
's releases.... (truncated)
Changelog
Sourced from
@typescript-eslint/eslint-plugin
's changelog.... (truncated)
Commits
d475f88
chore: publish v6.8.03d58813
build: fix introduced post-merge build break with no-useless-empty-export3c6379b
feat(eslint-plugin): add new extended ruleprefer-destructuring
(#7117)afdae37
fix(eslint-plugin): [consistent-type-imports] import assertion checks added (...e5ea1d0
fix(eslint-plugin): [no-shadow] fix static class generics for class expressio...ac397f1
fix(eslint-plugin): [no-useless-empty-export] exempt .d.ts (#7718)f81a2da
fix(eslint-plugin): [no-unsafe-member-access] report on only the accessed pro...cff6e47
docs(eslint-plugin): deduplicate examples for no-explicit-any (#7715)afee34c
chore: use named import forutil
(#7669)a9c7928
docs(eslint-plugin): [explicit-function-return-type] fix typo in option name ...Updates
@typescript-eslint/parser
from 5.62.0 to 6.8.0Release notes
Sourced from
@typescript-eslint/parser
's releases.... (truncated)
Changelog
Sourced from
@typescript-eslint/parser
's changelog.... (truncated)
Commits
d475f88
chore: publish v6.8.036aecb6
chore: publish v6.7.5d948dc4
chore: publish v6.7.491a3e0c
chore: publish v6.7.3ddb8589
chore: publish v6.7.2aefb268
chore: publish v6.7.1ad46b12
chore(deps): update jest to v29.7.0 (#7651)79ffff0
chore: publish v6.7.0a3a3932
chore: publish v6.6.0337525b
chore(deps): update dependency jest to v29.6.4 (#7575)Updates
esbuild
from 0.18.20 to 0.19.5Release notes
Sourced from esbuild's releases.
... (truncated)
Changelog
Sourced from esbuild's changelog.
... (truncated)
Commits
a7fcc43
publish 0.19.5 to npm5870809
fix #3367: ignore ESM flag for disabled modulesd5f397f
fix #3354:tsconfig.json
regression withpaths
72b1e8b
resolver: moveIsExternal
intoPathPair
b0eddea
fix #3400: bug in top-level await error reporting47fc80b
fix #3426: improve invalidurl()
token parsingd6973b9
css: fix url token backtracking with leading space30a43ec
fix #3410: quote asset references in url tokensa579bd8
fix #3452: insert space infont
when minifyingcd91337
update go 1.20.7 => 1.20.10Updates
eslint
from 8.50.0 to 8.52.0Release notes
Sourced from eslint's releases.
... (truncated)
Changelog
Sourced from eslint's changelog.
Commits
331cf62
8.52.0Looks like these dependencies are updatable in another way, so this is no longer needed.