Releases: nrwl/nx
Releases · nrwl/nx
22.6.0-beta.10
22.6.0-beta.10 (2026-03-06)
🚀 Features
- core: add polygraph command to initiaze cross-repo sessions (#34722)
- core: add safe plugin cache write utilities with LRU eviction (#34503)
- js: support configurable typecheck config name (#34675)
- nx-dev: add YouTube channel callout to courses page (#34669)
🩹 Fixes
- angular: preserve skipLibCheck in tsconfig.json for standalone projects (#34695, #34164)
- core: enable output prefixing for direct nx:run-commands path (#34670)
- core: support tuple validation when schema
itemsis an array (JSON Schema draft 07) (#34636, #34631) - core: prevent TUI panic when Nx Console is connected (#34718)
- core: add .claude/worktrees to gitignore (#34693)
- core: surface clearer error when CNW hits SANDBOX_FAILED (#34724)
- core: allow nx cloud commands to run outside of a workspace (#34728)
- js: strip catalogs from pruned pnpm lockfile (#34697, #34337)
- js: normalize paths to posix format in typescript plugin (#34702, #31232)
- misc: exclude .netlify paths from Framer proxy edge function (#34703)
- misc: address security CVE cluster (copy-webpack-plugin, koa, minimatch) (#34708, #34632, #34621, #34701)
- vite: skip root-relative paths in nxViteTsPaths resolveId (#34694, #34300)
- vitest: handle zoneless Angular apps in vitest configuration generator (#34700, #33983)
❤️ Thank You
- AgentEnder @AgentEnder
- Claude Opus 4.6
- Copilot @Copilot
- Craigory Coppola @AgentEnder
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Juri Strumpflohner @juristr
- Leosvel Pérez Espinosa @leosvelperez
- Victor Savkin @vsavkin
22.6.0-beta.9
22.6.0-beta.9 (2026-03-04)
🚀 Features
- core: migrate napi-rs v2 to v3 (#34619)
- core: add Codex subagent support to configure-ai-agents (#34553)
🩹 Fixes
- core: resolve input files for targets with defaultConfiguration (#34638, #34594)
- core: interpolate {projectRoot} and {projectName} in {workspaceRoot} input patterns in native hasher (#34637, #43, #34225, #34595)
- core: skip writing deps cache if already up-to-date (#34582)
- core: resolve false positive loop detection when running with Bun (#34640, #0, #1, #2, #3, #4, #5, #6, #33997)
- core: stabilizes project references in dependsOn and inputs when later plugins rename a project (#34332)
- core: fall back to invoking PM in detection (#34691)
- core: restore CNW user flow to match v22.1.3 (#34671)
- testing: remove stale ci.yml from extras.test snapshot (#34690, #34332, #34616)
❤️ Thank You
- AgentEnder @AgentEnder
- Claude Opus 4.6
- Copilot @Copilot
- Craigory Coppola @AgentEnder
- FrozenPandaz @FrozenPandaz
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- MaxKless @MaxKless
22.5.4
22.5.4 (2026-03-04)
🚀 Features
- core: add .nx/polygraph to gitignore in migration and caia (#34659)
🩹 Fixes
- angular-rspack: use relative path for postcss-cli-resources output (#34681, #34092)
- core: support canonical SSH URLs when extracting GitHub user/repo slug during
nx release(#31684, #31682) - core: update sourceRespository description of nx import (#34606)
- core: update minimatch to 10.2.4 (#34660)
- core: skip writing deps cache if already up-to-date (#34582)
- core: resolve false positive loop detection when running with Bun (#34640, #0, #1, #2, #3, #4, #5, #6, #33997)
- core: fall back to invoking PM in detection (#34691)
- core: restore CNW user flow to match v22.1.3 (#34671)
- gradle: tee batch runner output to stderr for terminal display (#34630)
- maven: synchronize batch runner invoke() to prevent concurrent access (#34600)
- misc: boost CLI command reference search ranking (#34625)
- misc: fix broken nx.dev redirects and remove legacy redirect-rules files (#34673)
- misc: use pathToFileURL for cross-platform path handling in postcss-cli-resources (#34676, #33052)
- misc: exclude .netlify paths from Framer proxy edge function (1ce5e91f5e)
- repo: reset package.json files after local release (#34648)
- repo: remove redundant inputs override for build-base target (#34649)
- vitest: respect reporters from target options in vitest executor (#34663, #34495)
❤️ Thank You
- AgentEnder @AgentEnder
- Caleb Ukle
- Claude Opus 4.6
- Copilot @Copilot
- Craigory Coppola @AgentEnder
- FrozenPandaz @FrozenPandaz
- Jack Hsu @jaysoo
- James Henry @JamesHenry
- Jason Jean @FrozenPandaz
- Leosvel Pérez Espinosa @leosvelperez
- MaxKless @MaxKless
- Nelson Dominguez @ekkolon
22.6.0-beta.8
22.6.0-beta.8 (2026-03-03)
🚀 Features
- core: add .nx/polygraph to gitignore in migration and caia (#34659)
🩹 Fixes
- angular-rspack: use relative path for postcss-cli-resources output (#34681, #34092)
- core: update sourceRespository description of nx import (#34606)
- core: update minimatch to 10.2.4 (#34660)
- gradle: tee batch runner output to stderr for terminal display (#34630)
- misc: boost CLI command reference search ranking (#34625)
- misc: fix broken nx.dev redirects and remove legacy redirect-rules files (#34673)
- misc: use pathToFileURL for cross-platform path handling in postcss-cli-resources (#34676, #33052)
- repo: reset package.json files after local release (#34648)
- repo: remove redundant inputs override for build-base target (#34649)
- vitest: respect reporters from target options in vitest executor (#34663, #34495)
❤️ Thank You
- Caleb Ukle
- FrozenPandaz @FrozenPandaz
- Jack Hsu @jaysoo
- James Henry @JamesHenry
- Jason Jean @FrozenPandaz
- Leosvel Pérez Espinosa @leosvelperez
- MaxKless @MaxKless
22.6.0-beta.7
22.6.0-beta.7 (2026-02-27)
🚀 Features
🩹 Fixes
- core: support canonical SSH URLs when extracting GitHub user/repo slug during
nx release(#31684, #31682) - maven: synchronize batch runner invoke() to prevent concurrent access (#34600)
❤️ Thank You
- Claude Opus 4.6
- Leosvel Pérez Espinosa @leosvelperez
- MaxKless @MaxKless
- Nelson Dominguez @ekkolon
22.6.0-beta.6
22.6.0-beta.6 (2026-02-27)
🚀 Features
- angular: add support for Angular v21.2 (#34592)
🩹 Fixes
- core: preserve nxCloud=skip in non-interactive CNW mode (#34616, #34580)
- core: make watch command work with all and initialRun specified (#32282, #32281)
- linter: support eslint v10 (#34534, #34415)
- linter: allow for wildcards paths in enforce-module-boundaries rule (#34066, #32190)
- maven: fix set the pom file without changing base directory (#34182, #34181)
- testing: use surgical text replacement in Jest matcher alias migration (#34350, #32062)
❤️ Thank You
- Anurag Agarwal @altaiezior
- anurag.ag @anuragagarwal561994
- Eric Baer
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Jason Weinzierl
- Jesse Zomer
- Leosvel Pérez Espinosa @leosvelperez
- omasakun @omasakun
22.5.3
22.5.3 (2026-02-26)
🚀 Features
- core: add --json flag for better AX to nx list (#34551)
- core: add passthrough for nx-cloud apply-locally command (#34557)
- core: add explicit cloud opt-out to CNW (#34580)
🩹 Fixes
- angular: use SASS indented syntax in nx-welcome component when style is sass (#34510, #33489)
- angular-rspack: exclude .json files from JS/TS regex patterns (#34195)
- bundling: skip unnecessary type-check in TS Solution Setup when skipTypeCheck is true (#34493, #34492)
- bundling: add docs link to generatePackageJson error message (#34562, #30146)
- bundling: fix regression on process.env usage for webpack (#34583, #34279)
- core: preserve existing source properties in claude plugin config (#34499)
- core: retry entire SQLite transaction on DatabaseBusy (#34533)
- core: reject pending promises directly when plugin worker exits unexpectedly (#34588, #34564)
- core: use recursive FSEvents on macOS instead of non-recursive kqueue (#34523, #34329, #33781, #34522)
- core: remove unused getTerminalOutput from BatchProcess (#34604)
- core: handle FORCE_COLOR=0 with picocolors (#34520, #34305, #34387)
- core: use scoped cache key for unresolved npm imports in TargetProjectLocator (#34605)
- core: preserve nxCloud=skip in non-interactive CNW mode (#34616, #34580)
- core: make watch command work with all and initialRun specified (#32282, #32281)
- gradle: ensure that atomized task targets have dependsOn (#34611)
- gradle: use globs for dependent task output files (#34590)
- js: use per-invocation cache in TS plugin to fix NX_ISOLATE_PLUGINS=false (#34566)
- js: guard against undefined closest node in rehoistNodes (#34347, #34322)
- js: remove redundant vite.config.ts generation for vitest projects (#34603, #34399)
- linter: support eslint v10 (#34534, #34415)
- linter: allow for wildcards paths in enforce-module-boundaries rule (#34066, #32190)
- maven: fix set the pom file without changing base directory (#34182, #34181)
- misc: bump minimatch to 10.2.1 to address CVE-2026-26996 (#34509, #34507)
- misc: update maven & gradle icons to java duke icon (#34508)
- nx-dev: correct interpolate sub command for cli reference (#34585)
- nx-dev: move redirects from Next.js config to Netlify _redirects (#34612)
- release: allow null values in schema of dockerVersion (#34171)
- release: add null-safe fallback for version in createGitTagValues (#34598, #34382, #33890, #34391)
- repo: remove chalk from e2e tests (#34570)
- testing: use surgical text replacement in Jest matcher alias migration (#34350, #32062)
- vite: isPreview=true for Vite Preview server (#34597)
- webpack: ensure safe
process.envfallback replacement (#34464, #30826, #34460)
❤️ Thank You
- Amp
- Anurag Agarwal @altaiezior
- anurag.ag @anuragagarwal561994
- Caleb Ukle
- Charlie Croom
- Colum Ferry @Coly010
- Craigory Coppola @AgentEnder
- Eric Baer
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Jason Weinzierl
- Jesse Zomer
- Kai Gritun
- Leosvel Pérez Espinosa @leosvelperez
- Louie Weng @lourw
- Mathias Schopmans
- MaxKless @MaxKless
- Miguel @mpsanchis
- Miroslav Jonaš @meeroslav
- Nikola Kalinov @nkalinov
- omasakun @omasakun
- Samuel Briole
- Tomas Ptacek @faileon
22.6.0-beta.5
22.6.0-beta.5 (2026-02-26)
🚀 Features
- core: add explicit cloud opt-out to CNW (#34580)
🩹 Fixes
- core: remove unused getTerminalOutput from BatchProcess (#34604)
- core: handle FORCE_COLOR=0 with picocolors (#34520, #34305, #34387)
- core: use scoped cache key for unresolved npm imports in TargetProjectLocator (#34605)
- gradle: ensure that atomized task targets have dependsOn (#34611)
- gradle: use globs for dependent task output files (#34590)
- js: remove redundant vite.config.ts generation for vitest projects (#34603, #34399)
- nx-dev: move redirects from Next.js config to Netlify _redirects (#34612)
- vite: isPreview=true for Vite Preview server (#34597)
❤️ Thank You
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Leosvel Pérez Espinosa @leosvelperez
- Louie Weng @lourw
- Nikola Kalinov @nkalinov
22.6.0-beta.4
22.6.0-beta.4 (2026-02-25)
🩹 Fixes
- angular-rspack: exclude .json files from JS/TS regex patterns (#34195)
- bundling: fix regression on process.env usage for webpack (#34583, #34279)
- core: show the correct status for stopped continuous tasks (#34226)
- core: reject pending promises directly when plugin worker exits unexpectedly (#34588, #34564)
- core: use recursive FSEvents on macOS instead of non-recursive kqueue (#34523, #34329, #33781, #34522)
- js: guard against undefined closest node in rehoistNodes (#34347, #34322)
- nx-dev: correct interpolate sub command for cli reference (#34585)
- release: allow null values in schema of dockerVersion (#34171)
- release: add null-safe fallback for version in createGitTagValues (#34598, #34382, #33890, #34391)
- repo: remove chalk from e2e tests (#34570)
❤️ Thank You
- Amp
- Caleb Ukle
- Charlie Croom
- Colum Ferry @Coly010
- Craigory Coppola @AgentEnder
- Jack Hsu @jaysoo
- Kai Gritun
- Leosvel Pérez Espinosa @leosvelperez
- Miguel @mpsanchis
- Miroslav Jonaš @meeroslav
- Tomas Ptacek @faileon
22.6.0-beta.3
22.6.0-beta.3 (2026-02-24)
🚀 Features
- core: improve AX of configure-ai-agents with auto-detection (#34496)
- core: add AI agent mode to nx import (#34498)
- core: add preferBatch executor option (#34293)
- core: add --json flag for better AX to nx list (#34551)
- core: add passthrough for nx-cloud apply-locally command (#34557)
- core: add yarn berry catalog support (#34552)
🩹 Fixes
- angular: use SASS indented syntax in nx-welcome component when style is sass (#34510, #33489)
- bundling: skip unnecessary type-check in TS Solution Setup when skipTypeCheck is true (#34493, #34492)
- bundling: add docs link to generatePackageJson error message (#34562, #30146)
- core: preserve existing source properties in claude plugin config (#34499)
- core: retry entire SQLite transaction on DatabaseBusy (#34533)
- js: use per-invocation cache in TS plugin to fix NX_ISOLATE_PLUGINS=false (#34566)
- misc: bump minimatch to 10.2.1 to address CVE-2026-26996 (#34509, #34507)
- misc: update maven & gradle icons to java duke icon (#34508)
- webpack: ensure safe
process.envfallback replacement (#34464, #30826, #34460)
❤️ Thank You
- Claude Opus 4.6
- Colum Ferry
- Jack Hsu
- Jason Jean
- Leosvel Pérez Espinosa
- Loëck Vézien
- Mathias Schopmans
- MaxKless @MaxKless
- Samuel Briole