23.3.0-beta.1 (2026-09-17)
🚀 Features
- angular: support ngrx v22 (#36950)
- angular-rspack: scaffold and run SSR apps on the @angular/ssr application engine (#36298)
- core: emit a runbook and per-step instructions for orchestrated migrate runs (#36766)
- core: report the cache location alongside usage (#36959)
- core: share one workspace walk across processes through the files archive (#36980)
- core: hash a continuous dependency's inputs into the task it serves (#37017)
- core: guarantee terminal output files and add an agent-friendly summary output style (#36703)
- core: add includeIgnored filesets and let the workspace context own the daemon's watch (#37025)
- js: cache TypeScript reference expansion during createNodes (#37003, #37002)
- nx-cloud: add nx cloud demo link to cloud prompts (#36956)
- testing: support cypress v16 (#36953)
🩹 Fixes
- angular-rspack: keep incremental rebuild state warm when skipTypeChecking is enabled (#36972, #36970)
- core: carry pnpm's package-manager document into the pruned lockfile (#36947)
- core: keep agentic migrations within the Windows command line limit (#36578, #36551)
- core: give plugin workers a minute to receive the load message (#36977)
- core: detect changes in paths that git escapes (#36660, #35722)
- core: combine Windows watcher recursive root and rescan recovery (#36912)
- core: deduplicate external inputs before hash plan allocation (#36992)
- core: make nx planning and hashing faster (#36994)
- core: keep continuous dependencies reached through a project without the target (#37024)
- core: load the native binding from one path per vitest worker (#37039)
- core: bump smol-toml to 1.7.1 for GHSA-7w5x-hrqm-74c2 (#37059, #37011)
- core: make nx migrate resolve the requested nx version under npm 12 (#36901, #36762)
- core: send task workers a task graph without run results (#37015)
- core: carry task terminal outputs to plugins by path (#36787)
- core: accept pr and canary releases in the migrate provenance check (#36976)
- dotnet: declare evaluated inputs, invalidate on imports, and keep restore products out of cached outputs (#36958)
- dotnet: ship the ci-workflow templates and detect Microsoft.Testing.Platform projects (#36981)
- expo: gate the sdk 54 jest migration on the jest config instead of package.json (#36834, #35669)
- js: handle empty npm view output in release-publish executor (#36397, #36358)
- nextjs: bundle the server entry of Rollup-built libraries (#36778)
- react: make freshly generated react and rspack workspaces usable (#36964)
- release: redact the token in the GitHub and GitLab release error output (#36852)
- repo: provision JDK 17 for Gradle builds with mise (#36965)
- repo: guard JAVA17_HOME against an uninstalled JDK (#36969)
- repo: force-fetch the website branch in the docs sync skill (#36973)
- repo: pin npm 11 for nightly e2e tests (#37018)
- repo: bump next past the critical RCE advisories (#36983)
- vite: correct tsconfig paths fallback resolution (#36424, #36400)
- vitest: memoize ancestor tsconfig walks in createNodes (#37027)
- webpack: cap the generated webpack version below 5.111.0 (#37034)
❤️ Thank You
- Christina Huege @chrstnbrn
- christopher-buss @christopher-buss
- Craigory Coppola @AgentEnder
- Denis Frenademetz @skrtheboss
- FrozenPandaz @FrozenPandaz
- Gaurav Dubey @gaurav0107
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Jay Bell
- Juan Franco @jcaracciolo
- Juan Franco Caracciolo
- Jupiter Jayna @sdjayna
- Juri Strumpflohner @juristr
- Kyle Cannon @kylecannon
- Leosvel Pérez Espinosa @leosvelperez
- Stephen Jayna
- zlajson
- Zlatko Rekic