Bump esbuild and @angular-devkit/build-angular in /AngularCliCodeFlowPkce
Bumps esbuild to 0.25.1 and updates ancestor dependency @angular-devkit/build-angular. These dependencies need to be updated together.
Updates esbuild from 0.15.13 to 0.25.1
Release notes
Sourced from esbuild's releases.
v0.25.1
Fix incorrect paths in inline source maps (#4070, #4075, #4105)
This fixes a regression from version 0.25.0 where esbuild didn't correctly resolve relative paths contained within source maps in inline
sourceMappingURLdata URLs. The paths were incorrectly being passed through as-is instead of being resolved relative to the source file containing thesourceMappingURLcomment, which was due to the data URL not being a file URL. This regression has been fixed, and this case now has test coverage.Fix invalid generated source maps (#4080, #4082, #4104, #4107)
This release fixes a regression from version 0.24.1 that could cause esbuild to generate invalid source maps. Specifically under certain conditions, esbuild could generate a mapping with an out-of-bounds source index. It was introduced by code that attempted to improve esbuild's handling of "null" entries in source maps (i.e. mappings with a generated position but no original position). This regression has been fixed.
This fix was contributed by
@jridgewell.Fix a regression with non-file source map paths (#4078)
The format of paths in source maps that aren't in the
filenamespace was unintentionally changed in version 0.25.0. Path namespaces is an esbuild-specific concept that is optionally available for plugins to use to distinguish paths fromfilepaths and from paths meant for other plugins. Previously the namespace was prepended to the path joined with a:character, but version 0.25.0 unintentionally failed to prepend the namespace. The previous behavior has been restored.Fix a crash with
switchoptimization (#4088)The new code in the previous release to optimize dead code in switch statements accidentally introduced a crash in the edge case where one or more switch case values include a function expression. This is because esbuild now visits the case values first to determine whether any cases are dead code, and then visits the case bodies once the dead code status is known. That triggered some internal asserts that guard against traversing the AST in an unexpected order. This crash has been fixed by changing esbuild to expect the new traversal ordering. Here's an example of affected code:
switch (x) { case '': return y.map(z => z.value) case y.map(z => z.key).join(','): return [] }Update Go from 1.23.5 to 1.23.7 (#4076, #4077)
This should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain reports from vulnerability scanners that detect which version of the Go compiler esbuild uses.
This PR was contributed by
@MikeWillCook.v0.25.0
This release deliberately contains backwards-incompatible changes. To avoid automatically picking up releases like this, you should either be pinning the exact version of
esbuildin yourpackage.jsonfile (recommended) or be using a version range syntax that only accepts patch upgrades such as^0.24.0or~0.24.0. See npm's documentation about semver for more information.
Restrict access to esbuild's development server (GHSA-67mh-4wv8-2f99)
This change addresses esbuild's first security vulnerability report. Previously esbuild set the
Access-Control-Allow-Originheader to*to allow esbuild's development server to be flexible in how it's used for development. However, this allows the websites you visit to make HTTP requests to esbuild's local development server, which gives read-only access to your source code if the website were to fetch your source code's specific URL. You can read more information in the report.Starting with this release, CORS will now be disabled, and requests will now be denied if the host does not match the one provided to
--serve=. The default host is0.0.0.0, which refers to all of the IP addresses that represent the local machine (e.g. both127.0.0.1and192.168.0.1). If you want to customize anything about esbuild's development server, you can put a proxy in front of esbuild and modify the incoming and/or outgoing requests.In addition, the
serve()API call has been changed to return an array ofhostsinstead of a singlehoststring. This makes it possible to determine all of the hosts that esbuild's development server will accept.Thanks to
@sapphi-redfor reporting this issue.Delete output files when a build fails in watch mode (#3643)
It has been requested for esbuild to delete files when a build fails in watch mode. Previously esbuild left the old files in place, which could cause people to not immediately realize that the most recent build failed. With this release, esbuild will now delete all output files if a rebuild fails. Fixing the build error and triggering another rebuild will restore all output files again.
... (truncated)
Changelog
Sourced from esbuild's changelog.
Changelog: 2022
This changelog documents all esbuild versions published in the year 2022 (versions 0.14.11 through 0.16.12).
0.16.12
Loader defaults to
jsfor extensionless files (#2776)Certain packages contain files without an extension. For example, the
yargspackage contains the fileyargs/yargswhich has no extension. Node, Webpack, and Parcel can all understand code that importsyargs/yargsbecause they assume that the file is JavaScript. However, esbuild was previously unable to understand this code because it relies on the file extension to tell it how to interpret the file. With this release, esbuild will now assume files without an extension are JavaScript files. This can be customized by setting the loader for""(the empty string, representing files without an extension) to another loader. For example, if you want files without an extension to be treated as CSS instead, you can do that like this:
CLI:
esbuild --bundle --loader:=cssJS:
esbuild.build({ bundle: true, loader: { '': 'css' }, })Go:
api.Build(api.BuildOptions{ Bundle: true, Loader: map[string]api.Loader{"": api.LoaderCSS}, })In addition, the
"type"field inpackage.jsonfiles now only applies to files with an explicit.js,.jsx,.ts, or.tsxextension. Previously it was incorrectly applied by esbuild to all files that had an extension other than.mjs,.mts,.cjs, or.ctsincluding extensionless files. So for example an extensionless file in a"type": "module"package is now treated as CommonJS instead of ESM.0.16.11
Avoid a syntax error in the presence of direct
eval(#2761)The behavior of nested
functiondeclarations in JavaScript depends on whether the code is run in strict mode or not. It would be problematic if esbuild preserved nestedfunctiondeclarations in its output because then the behavior would depend on whether the output was run in strict mode or not instead of respecting the strict mode behavior of the original source code. To avoid this, esbuild transforms nestedfunctiondeclarations to preserve the intended behavior of the original source code regardless of whether the output is run in strict mode or not:// Original code if (true) { function foo() {} console.log(!!foo) foo = null console.log(!!foo) }
... (truncated)
Commits
6bfc1c1publish 0.25.1 to npmf9b3952fix #4078: prepend namespaces to source map pathsccf3dd7add "contributed by" in changelog48cd7a9Update Go from 1.23.5 to 1.23.7 (#4077)1f04fa4fix absolute windows paths in source maps9ca03f6also add test case from #40752f244c0add test case from #41041dde994fix incorrect test names9f008c5fix #4070:filenamespace forsourceMappingURLcbd5eb8release notes and tests for #4082- Additional commits viewable in compare view
Updates @angular-devkit/build-angular from 15.0.5 to 19.2.4
Release notes
Sourced from @angular-devkit/build-angular's releases.
v19.2.4
19.2.4 (2025-03-19)
@schematics/angular
Commit Description replace @angular/platform-browser-dynamicwith@angular/platform-browser
@angular/build
Commit Description ensure errors for missing component resources ensure relative karma stack traces for test failures v19.2.3
19.2.3 (2025-03-13)
@angular/build
Commit Description update babel packages v19.2.2
19.2.2 (2025-03-12)
@angular/cli
Commit Description record analytics for nested schematics
@angular/build
Commit Description exclude all entrypoints of a library from prebundling handle postcss compilation errors gracefully provide extract-i18ndoes not respectremove duplicate prebundling warning
@angular/ssr
Commit Description prevent stream draining if writedoes not return a booleanv19.2.1
19.2.1 (2025-03-05)
@schematics/angular
Commit Description prevent accidental deletion of main.tsduring application builder migrationprevent error when tsconfig file is missing in application builder migration
@angular-devkit/architect| Commit | Description |
... (truncated)
Changelog
Sourced from @angular-devkit/build-angular's changelog.
19.2.4 (2025-03-19)
@schematics/angular
Commit Type Description 0a4e96bda fix replace @angular/platform-browser-dynamicwith@angular/platform-browser
@angular/build
Commit Type Description b0b643e46 fix ensure errors for missing component resources 2cd763e89 fix ensure relative karma stack traces for test failures 17.3.13 (2025-03-13)
@angular-devkit/build-angular
Commit Type Description 22901df02 fix update babel packages 19.2.3 (2025-03-13)
@angular/build
Commit Type Description 5a739820b fix update babel packages 18.2.15 (2025-03-13)
@angular-devkit/build-angular
Commit Type Description 255c8a50d fix update babel packages
... (truncated)
Commits
148023arelease: cut the v19.2.4 releaseb0b643efix(@angular/build): ensure errors for missing component resources0a4e96bfix(@schematics/angular): replace@angular/platform-browser-dynamicwith `@...2cd763efix(@angular/build): ensure relative karma stack traces for test failures74d54a9build: improve debugging mode of e2e test runner43706b3docs: correct bazel e2e commands7b637fcrefactor(@angular/build): define an internal ngHmrMode value40b228ddocs(@angular-devkit/build-angular): updateforceEsbuildoption descriptione4d1c2arelease: cut the v19.2.3 release5a73982fix(@angular/build): update babel packages- 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 rebasewill rebase this PR -
@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it -
@dependabot mergewill merge this PR after your CI passes on it -
@dependabot squash and mergewill squash and merge this PR after your CI passes on it -
@dependabot cancel mergewill cancel a previously requested merge and block automerging -
@dependabot reopenwill reopen this PR if it is closed -
@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency -
@dependabot ignore this major versionwill 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 versionwill 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 dependencywill 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.