build: update all non-major dependencies (main) by angular-robot · Pull Request #69416 · angular/angular
This PR contains the following updates:
- If you want to rebase/retry this PR, check this box
Release Notes
algolia/algoliasearch-client-javascript (@algolia/client-common)
v5.55.0
- 52ebd28f58 feat(clients): release Agent Studio package updates (#6573) by @Fluf22
v5.54.1
- 3a0bad1d01 fix(javascript): use proper null check instead of truthiness for required params (#6498) by @Fluf22
v5.54.0
- e6753bc802 chore(deps): dependencies 2026-06-01 (#6476) by @algolia-bot
- 7f2ce8cd3a feat(clients): Agent Studio v1 (#6097) by @Fluf22
csstools/postcss-plugins (@csstools/css-color-parser)
v4.1.7
June 14, 2026
- Fix normalization of
hueto[0, 360]range whenhueis not finite
v4.1.6
June 14, 2026
- Fix normalization of
hueto[0, 360]range whenhueis a negative number
v4.1.5
June 14, 2026
- Fix handling of
huein interpolation when both parts have a missinghuecomponent
v4.1.4
June 13, 2026
- Fix
nonealpha inalpha()
v4.1.3
June 10, 2026
- Assign
rgbcolor notation tocontrast-color()(instead ofsrgb).
evanw/esbuild (esbuild)
v0.28.1
-
Disallow
\in local development server HTTP requests (GHSA-g7r4-m6w7-qqqr)This release fixes a security issue where HTTP requests to esbuild's local development server could traverse outside of the serve directory on Windows using a
\backslash character. It happened due to the use of Go'spath.Clean()function, which only handles Unix-style/characters. HTTP requests with paths containing\are no longer allowed.Thanks to @dellalibera for reporting this issue.
-
Add integrity checks to the Deno API (GHSA-gv7w-rqvm-qjhr)
The previous release of esbuild added integrity checks to esbuild's npm install script. This release also adds integrity checks to esbuild's Deno install script. Now esbuild's Deno API will also fail with an error if the downloaded esbuild binary contains something other than the expected content.
Note that esbuild's Deno API installs from
registry.npmjs.orgby default, but allows theNPM_CONFIG_REGISTRYenvironment variable to override this with a custom package registry. This change means that the esbuild executable served byNPM_CONFIG_REGISTRYmust now match the expected content.Thanks to @sondt99 for reporting this issue.
-
Avoid inlining
usingandawait usingdeclarations (#4482)Previously esbuild's minifier sometimes incorrectly inlined
usingandawait usingdeclarations into subsequent uses of that declaration, which then fails to dispose of the resource correctly. This bug happened because inlining was done forletandconstdeclarations by avoiding doing it forvardeclarations, which no longer worked when more declaration types were added. Here's an example:// Original code { using x = new Resource() x.activate() } // Old output (with --minify) new Resource().activate(); // New output (with --minify) {using e=new Resource;e.activate()}
-
Fix module evaluation when an error is thrown (#4461, #4467)
If an error is thrown during module evaluation, esbuild previously didn't preserve the state of the module for subsequent module references. This was observable if
import()orrequire()is used to import a module multiple times. The thrown error is supposed to be thrown by every call toimport()orrequire(), not just the first. With this release, esbuild will now throw the same error every time you callimport()orrequire()on a module that throws during its evaluation. -
Fix some edge cases around the
newoperator (#4477)Previously esbuild incorrectly printed certain edge cases involving complex expressions inside the target of a
newexpression (specifically an optional chain and/or a tagged template literal). The generated code for thenewtarget was not correctly wrapped with parentheses, and either contained a syntax error or had different semantics. These edge cases have been fixed so that they now correctly wrap thenewtarget in parentheses. Here is an example of some affected code:// Original code new (foo()`bar`)() new (foo()?.bar)() // Old output new foo()`bar`(); new (foo())?.bar(); // New output new (foo())`bar`(); new (foo()?.bar)();
-
Fix renaming of nested
vardeclarations (#4471)This release fixes a bug where
vardeclarations in nested scopes that are hoisted up to module scope were not correctly being renamed during bundling. That could previously lead to name collisions when minification was disabled, which could potentially cause a behavior change. The bug has been fixed so that these hoisted declarations are now considered to be module-level symbols during the name collision avoidance pass. -
Emit
varinstead ofconstfor certain TypeScript-only constructs for ES5 (#4448)While esbuild doesn't generally support converting
consttovarfor ES5 due to nested scoping rules (which is currently a build-time error), esbuild previously incorrectly converted TypeScript-onlyimportassignment constructs into aconstdeclaration even when targeting ES5. With this release, esbuild will now usevarfor this case instead:// Original code import x = require('y') // Old output (with --target=es5) const x = require("y"); // New output (with --target=es5) var x = require("y");
microsoft/playwright (playwright-core)
v1.61.0
🔑 WebAuthn passkeys
New Credentials virtual authenticator, available via browserContext.credentials, lets tests register passkeys and answer navigator.credentials.create() / navigator.credentials.get() ceremonies in the page — no real hardware key required, works in all browsers:
const context = await browser.newContext(); // Seed a passkey your backend provisioned for a test user. await context.credentials.create('example.com', { id: credentialId, userHandle, privateKey, publicKey, }); await context.credentials.install(); const page = await context.newPage(); await page.goto('https://example.com/login'); // The page's navigator.credentials.get() is answered with the seeded passkey.
You can also let the app register a passkey once in a setup test, read it back with credentials.get(), and seed it into later tests — see Credentials for details.
🗃️ Web Storage
New WebStorage API, available via page.localStorage and page.sessionStorage, reads and writes the page's storage for the current origin:
await page.localStorage.setItem('token', 'abc'); const token = await page.localStorage.getItem('token'); const items = await page.sessionStorage.items();
New APIs
Network
- apiResponse.securityDetails() and apiResponse.serverAddr() mirror the browser-side response.securityDetails() and response.serverAddr().
Browser and Screencast
- New option
artifactsDirin browserType.connectOverCDP() controls where artifacts such as traces and downloads are stored when attached to an existing browser. - New option
cursorin screencast.showActions() controls the cursor decoration rendered for pointer actions. - The
onFramecallback in screencast.start() now receives atimestampof when the frame was presented by the browser.
Test runner
- The testOptions.video option now supports the same set of modes as
trace: new'on-all-retries','retain-on-first-failure'and'retain-on-failure-and-retries'values. See the video modes table for which runs are recorded and kept in each mode. - Supported
expect.soft.poll(...). - New fullConfig.argv — a snapshot of
process.argvfrom the runner process, handy for reading custom arguments passed after the--separator. - New fullConfig.failOnFlakyTests mirrors the config option, so reporters can explain why a flaky run failed.
- testInfo.errors now lists each sub-error of an
AggregateErroras a separate entry. - New
-Gcommand line shorthand for--grep-invert.
🛠️ Other improvements
- Playwright now supports Ubuntu 26.04.
- HAR and trace recordings now include WebSocket requests.
Browser Versions
- Chromium 149.0.7827.55
- Mozilla Firefox 151.0
- WebKit 26.5
This version was also tested against the following stable channels:
- Google Chrome 149
- Microsoft Edge 149
rollup/rollup (rollup)
v4.62.0
2026-06-13
Features
- Ensure that shared dependencies between manual chunks and entry points receive a serparate chunk (#6374)
Pull Requests
- #6374: Extract the static dependencies imported by manual chunks into separate chunks (@TrickyPi, @lukastaegert)
- #6405: fix(deps): update minor/patch updates (@renovate[bot])
- #6406: chore(deps): pin dependency concurrently to v9 (@renovate[bot], @lukastaegert)
- #6407: chore(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #6409: chore(deps): update minor/patch updates to v6.2.0 (@renovate[bot])
- #6410: chore(deps): lock file maintenance minor/patch updates (@renovate[bot])
- #6412: fix(deps): update minor/patch updates (@renovate[bot])
- #6413: chore(deps): update dependency eslint-plugin-unicorn to v65 (@renovate[bot])
- #6414: chore(deps): lock file maintenance minor/patch updates (@renovate[bot], @lukastaegert)