Allow using the node: import prefix with es* targets (#3821)
The node: prefix on imports is an alternate way to import built-in node modules. For example, import fs from "fs" can also be written import fs from "node:fs". This only works with certain newer versions of node, so esbuild removes it when you target older versions of node such as with --target=node14 so that your code still works. With the way esbuild's platform-specific feature compatibility table works, this was added by saying that only newer versions of node support this feature. However, that means that a target such as --target=node18,es2022 removes the node: prefix because none of the es* targets are known to support this feature. This release adds the support for the node: flag to esbuild's internal compatibility table for es* to allow you to use compound targets like this:
// Original code
import fs from 'node:fs'
fs.open
// Old output (with --bundle --format=esm --platform=node --target=node18,es2022)
import fs from "fs";
fs.open;
// New output (with --bundle --format=esm --platform=node --target=node18,es2022)
import fs from "node:fs";
fs.open;
Fix a panic when using the CLI with invalid build flags if --analyze is present (#3834)
Previously esbuild's CLI could crash if it was invoked with flags that aren't valid for a "build" API call and the --analyze flag is present. This was caused by esbuild's internals attempting to add a Go plugin (which is how --analyze is implemented) to a null build object. The panic has been fixed in this release.
Fix incorrect location of certain error messages (#3845)
This release fixes a regression that caused certain errors relating to variable declarations to be reported at an incorrect location. The regression was introduced in version 0.18.7 of esbuild.
Print comments before case clauses in switch statements (#3838)
With this release, esbuild will attempt to print comments that come before case clauses in switch statements. This is similar to what esbuild already does for comments inside of certain types of expressions. Note that these types of comments are not printed if minification is enabled (specifically whitespace minification).
With this release, the build context's internal pluginData cache will now be cleared when starting a new build. This should fix a leak of memory from plugins that return pluginData objects from onResolve and/or onLoad callbacks.
Allow using the node: import prefix with es* targets (#3821)
The node: prefix on imports is an alternate way to import built-in node modules. For example, import fs from "fs" can also be written import fs from "node:fs". This only works with certain newer versions of node, so esbuild removes it when you target older versions of node such as with --target=node14 so that your code still works. With the way esbuild's platform-specific feature compatibility table works, this was added by saying that only newer versions of node support this feature. However, that means that a target such as --target=node18,es2022 removes the node: prefix because none of the es* targets are known to support this feature. This release adds the support for the node: flag to esbuild's internal compatibility table for es* to allow you to use compound targets like this:
// Original code
import fs from 'node:fs'
fs.open
// Old output (with --bundle --format=esm --platform=node --target=node18,es2022)
import fs from "fs";
fs.open;
// New output (with --bundle --format=esm --platform=node --target=node18,es2022)
import fs from "node:fs";
fs.open;
Fix a panic when using the CLI with invalid build flags if --analyze is present (#3834)
Previously esbuild's CLI could crash if it was invoked with flags that aren't valid for a "build" API call and the --analyze flag is present. This was caused by esbuild's internals attempting to add a Go plugin (which is how --analyze is implemented) to a null build object. The panic has been fixed in this release.
Fix incorrect location of certain error messages (#3845)
This release fixes a regression that caused certain errors relating to variable declarations to be reported at an incorrect location. The regression was introduced in version 0.18.7 of esbuild.
Print comments before case clauses in switch statements (#3838)
With this release, esbuild will attempt to print comments that come before case clauses in switch statements. This is similar to what esbuild already does for comments inside of certain types of expressions. Note that these types of comments are not printed if minification is enabled (specifically whitespace minification).
With this release, the build context's internal pluginData cache will now be cleared when starting a new build. This should fix a leak of memory from plugins that return pluginData objects from onResolve and/or onLoad callbacks.
This major release changes the prototype of a jsdom's EventTarget.prototype to point to the Object.prototype inside the jsdom, instead of pointing to the Node.js Object.prototype. Thus, the prototype chain of Window stays entirely within the jsdom, never crossing over into the Node.js realm.
This only occurs when runScripts is set to non-default values of "dangerously" or "outside-only", as with the default value, there is no separate Object.prototype inside the jsdom.
This will likely not impact many programs, but could cause some changes in instanceof behavior, and so out of an abundance of caution, we're releasing it as a new major version.
Version 24.1.3
Fixed calls to postMessage() that were done as a bare property (i.e., postMessage() instead of window.postMessage()).
Version 24.1.2
Fixed an issue with the in operator applied to EventTarget methods, e.g. 'addEventListener' in window, which only appeared in Node.js ≥22.5.0. (legendecas)
Fixed the events fired by blur(): it no longer fires focus and focusin on the Document, and blur and focusout no longer have their relatedTarget property set. (asamuzaK)
This major release changes the prototype of a jsdom's EventTarget.prototype to point to the Object.prototype inside the jsdom, instead of pointing to the Node.js Object.prototype. Thus, the prototype chain of Window stays entirely within the jsdom, never crossing over into the Node.js realm.
This only occurs when runScripts is set to non-default values of "dangerously" or "outside-only", as with the default value, there is no separate Object.prototype inside the jsdom.
This will likely not impact many programs, but could cause some changes in instanceof behavior, and so out of an abundance of caution, we're releasing it as a new major version.
24.1.3
Fixed calls to postMessage() that were done as a bare property (i.e., postMessage() instead of window.postMessage()).
24.1.2
Fixed an issue with the in operator applied to EventTarget methods, e.g. 'addEventListener' in window, which only appeared in Node.js ≥22.5.0. (legendecas)
Fixed the events fired by blur(): it no longer fires focus and focusin on the Document, and blur and focusout no longer have their relatedTarget property set. (asamuzaK)
Most Recent Ignore Conditions Applied to This Pull Request
| Dependency Name | Ignore Conditions |
| --- | --- |
| jsdom | [>= 22.1.a, < 22.2] |
| @playwright/test | [>= 1.40.a, < 1.41] |
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 ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the external-dependencies group with 9 updates in the / directory:
23.12.2
23.14.0
6.1.38
6.1.41
1.46.0
1.46.1
0.0.269
0.0.270
22.1.0
22.5.2
0.10.7
0.12.1
0.23.0
0.23.1
10.4.2
11.0.0
24.1.1
25.0.0
Updates
i18next
from 23.12.2 to 23.14.0Release notes
Sourced from i18next's releases.
Changelog
Sourced from i18next's changelog.
Commits
0083b3a
23.14.004e2fc9
If backend errors with retry flag, set internal state to 0, so reloadingResou...d7fcec6
23.13.0ffc0a52
build3756cf6
Cache output of getRule to optimize performance (#2226)202465a
23.12.766fad4c
revert last optimization to address #222735d9757
23.12.6eb04454
remove console.log statement #222721fdd90
23.12.5Updates
tldts
from 6.1.38 to 6.1.41Release notes
Sourced from tldts's releases.
Changelog
Sourced from tldts's changelog.
... (truncated)
Commits
16825d0
Bump version to: v6.1.41 [skip ci]c359f2b
Update CHANGELOG.md [skip ci]d5481e1
Update upstream public suffix list (#2135)56948c3
Bump@types/node
from 22.4.1 to 22.5.0 (#2136)18358fd
Bump axios from 1.6.7 to 1.7.4 (#2133)de211f5
Bump version to: v6.1.40 [skip ci]3e4ac40
Update CHANGELOG.md [skip ci]4916447
Update upstream public suffix list (#2127)a6d2b67
Bump mocha from 10.7.0 to 10.7.3 (#2128)1569867
Bump rollup from 4.20.0 to 4.21.0 (#2131)Updates
@playwright/test
from 1.46.0 to 1.46.1Release notes
Sourced from
@playwright/test
's releases.Commits
e1c861c
cherry-pick(#32021): test: fix failing client-certificate tests20b0788
chore: mark v1.46.1 (#32194)57c3240
cherry-pick(#32192): chore: generate self-signed certificates for socks proxy301f179
cherry-pick(#32189): fix(only-changed): show nice error message about shallow...b2d6a09
cherry-pick(#32164): docs: release video and trace viewer video (#32173)7cf7aec
cherry-pick(#32094): fix(test runner): run project dependencies of `--only-ch...d78ae01
cherry-pick(#32163): fix(client-certificates): stall on tls handshake errorsbd13da4
cherry-pick(#32155): fix(client-certificates): when server does tls renegotia...30684a7
cherry-pick(#32066): fix(types): revert type changes made to support TS 5.5 (...5e68061
cherry-pick(#32015): docs(release-notes): fix typo in .NET release notesUpdates
@types/chrome
from 0.0.269 to 0.0.270Commits
Updates
@types/node
from 22.1.0 to 22.5.2Commits
Updates
@types/webextension-polyfill
from 0.10.7 to 0.12.1Commits
Updates
esbuild
from 0.23.0 to 0.23.1Release notes
Sourced from esbuild's releases.
Changelog
Sourced from esbuild's changelog.
Commits
3327274
publish 0.23.1 to npm38e22ed
add a warning/debug log message for #3867a15bb51
fix #3825: memory leak ofpluginData
valuesf6e6481
fix #3838: print comments beforecase
clauses9c13ae1
fix #3853: update go 1.22.4 => 1.22.578f89e4
fix #3845: some incorrect error message locations892d2a7
fix #3834: cli sometimes panics with--analyze
360d472
fix a typo in the release notese3f4e2d
fix #3821: allownode:
prefix withes*
targetsUpdates
glob
from 10.4.2 to 11.0.0Changelog
Sourced from glob's changelog.
... (truncated)
Commits
561601d
11.0.057226aa
drop node before 207827516
10.4.4d06c8f8
restore support for node 14.latest and 16.latestc14b787
10.4.38a69def
node 14 no longer supportedUpdates
jsdom
from 24.1.1 to 25.0.0Release notes
Sourced from jsdom's releases.
Changelog
Sourced from jsdom's changelog.
Commits
c53efc8
Version 25.0.0784c8a5
Set EventTarget.prototype to the jsdom's Object.prototype0314f1e
Version 24.1.346d5d5c
Fix postMessage referenced as a bare propertya241df6
Version 24.1.2c3a9aed
Remove upstreamed WPTs07fab37
Refactor Window object setup code3383805
Fix events fired by blur()065abcb
Roll web platform tests439a43e
Setup Window prototype in vm contextMost Recent Ignore Conditions Applied to This Pull Request
| Dependency Name | Ignore Conditions | | --- | --- | | jsdom | [>= 22.1.a, < 22.2] | | @playwright/test | [>= 1.40.a, < 1.41] |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