Releases: nrwl/nx
Releases · nrwl/nx
22.2.0-beta.3
22.2.0-beta.3 (2025-12-03)
🚀 Features
- core: add template support to create-nx-workspace (#33468)
- docker: auto-select version scheme when only one is available (#33671)
- expo: support Expo 54 (#33612)
- vitest: update @analogjs/vitest-angular to 2.1.2 #33602 (#33681, #33602)
- vitest: make initial generation for JS projects more lightweight (#33670)
🩹 Fixes
- angular-rspack: use CJS when serving applications for HMR #33106 (#33693, #33106)
- angular-rspack: ensure rebuild logs are only printed once (#33694)
- bundling: set buildLibsFromSource in normalize options for Rollup (#33679)
- core: stop adding outdated vscode/cursor rule files to gitignore (#33680)
- core: sanitize project names for valid git tag names in nx release (#33692, #33262)
- docker: fix releasing non docker projects (#33667)
- maven: remove incorrect threadSafe to parallelism mapping (#33678)
- react: update @emotion/styled to latest version #31252 (#33690, #31252)
- release: interpolate releaseGroupName in getLatestGitTagForPattern (#33674)
- repo: enable wayland-data-control feature for arboard (#33675)
❤️ Thank You
- Claude
- Colum Ferry @Coly010
- Coly010 @Coly010
- Jack Hsu @jaysoo
- James Henry @JamesHenry
- Jason Jean @FrozenPandaz
- Jonathan Gelin @jogelin
- MaxKless @MaxKless
22.2.0-beta.2
22.2.0-beta.2 (2025-12-01)
🚀 Features
- vite: add migration to add @nx/vitest (#33669)
🩹 Fixes
- core: include create-nx-workspace in migration package group (#33643, #33585)
- core: suppress git stderr output in parseGitOutput (#33645, #33330)
- core: prevent Nx Console prompt from blocking non-interactive commands (#33646, #33552)
- core: ensure perf logs are flushed before exit in graph command (#33621)
- core: nx-schema default value for preserveMatchingDependencyRanges should have changed in v22 (#33587)
- linter: update generators to use ESLint v9 compatible versions (#33633)
- nuxt: do not import base eslint config for root project (#33642)
- nuxt: update preset test for v4 app directory structure (#33648)
- testing: remove --no-experimental-strip-types flag from @nx/jest/plugin + migrate to jest.config.cts if needed (#33657)
- vite: vitest executor to return the async iterable #33588 (#33668, #33588)
❤️ Thank You
- Claude
- Colum Ferry @Coly010
- Jack Hsu @jaysoo
- James Henry @JamesHenry
- Jason Jean @FrozenPandaz
22.2.0-beta.1
22.2.0-beta.1 (2025-11-27)
🚀 Features
- nuxt: support nuxt v4 (#33611)
- storybook: support storybook 10.1 (#33637)
- vite: add vitest 4 migration for users using @nx/vite (#33630)
🩹 Fixes
- bundling: replace rollup-plugin-copy with nx copy assets plugin (#33601, #32398)
- core: kill child process tree in different running tasks (#33636, #32438, #33460)
- linter: base eslint config should ignore out-tsc directories (#33639)
- nextjs: make migration to next 16 optional (#33627)
- storybook: remove upper bound of migration requires (#33613)
❤️ Thank You
- Colum Ferry @Coly010
- Coly010 @Coly010
- Jack Hsu @jaysoo
- jaysoo @jaysoo
- Leosvel Pérez Espinosa @leosvelperez
22.1.3
22.1.3 (2025-11-27)
🚀 Features
- nextjs: add migration to add AI instructions for upgrading to Next 16 (#33608)
🩹 Fixes
- bundling: replace rollup-plugin-copy with nx copy assets plugin (#33601, #32398)
- core: kill child process tree in different running tasks (#33636, #32438, #33460)
- linter: base eslint config should ignore out-tsc directories (#33639)
- nextjs: make migration to next 16 optional (#33627)
❤️ Thank You
- Colum Ferry @Coly010
- Coly010 @Coly010
- Jack Hsu @jaysoo
- jaysoo @jaysoo
- Leosvel Pérez Espinosa @leosvelperez
21.6.10
21.6.10 (2025-11-27)
🩹 Fixes
- bundling: replace rollup-plugin-copy with nx copy assets plugin (#33601, #32398)
- core: kill child process tree in different running tasks (#33636, #32438, #33460)
- storybook: remove STORYBOOK_PROJECT_ROOT when running automigrate to prevent hanging (#33567, #32492)
❤️ Thank You
- Jack Hsu @jaysoo
- jaysoo @jaysoo
- Leosvel Pérez Espinosa @leosvelperez
22.2.0-beta.0
22.2.0-beta.0 (2025-11-25)
🚀 Features
- core: add multiple Nx version detection to nx report (#33599)
- linter: add util to load eslint rules from a directory (#33543)
- nextjs: add migration to add AI instructions for upgrading to Next 16 (#33608)
- nx-cloud: prepend nx version to stats metadata (#33568)
🩹 Fixes
- core: don't presume a task is long running if its marked cacheable (#33545, #32610)
- core: daemon command should exit at end (#33547)
- core: provide error when nested graph construction would occur invoked during createNodes (#33541, #29618)
- core: filter out automated release commits in getCommitsRelevantToProjects (#33482)
- core: make daemon socket path unique per process to prevent race condition (#33580, #33491)
- core: use nx-mcp for older nx versions instead of nx mcp (#33553)
- core: propagate continuous task failures to dependent tasks (#33492)
- graph: align exclude flag with others by using findMatchingProjects (#33550)
- graph: surface task graph client error via error toast (#33600)
- js: ensure copy-workspace-modules copies transitive workspace dependencies (#33570)
- linter: handle various flat config override structures (#33548, #31796)
- nest: set moduleResolution to node to prevent TS5095 error (#33607, #33589)
- node: set generatePackageJson:false for TS Solution workspaces (#33606)
- react: exclude tailwind from CSS modules syntax in component generator (#33574)
- release: ensure emoji is not repeated in breaking changes summary (#33605)
- storybook: remove STORYBOOK_PROJECT_ROOT when running automigrate to prevent hanging (#33567, #32492)
- testing: remove declare global wrapper from cypress commands.ts template (#33573, #32930)
- vite: generate .mts config files to force ESM (#33518)
❤️ Thank You
- AgentEnder @AgentEnder
- Chau Tran @nartc
- Claude
- Colum Ferry @Coly010
- Coly010 @Coly010
- Craigory Coppola @AgentEnder
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Kasper Christensen @fALKENdk
- Laney Pouzet
- Leosvel Pérez Espinosa @leosvelperez
- MaxKless @MaxKless
22.1.2
22.1.2 (2025-11-25)
🚀 Features
- core: add multiple Nx version detection to nx report (#33599)
🩹 Fixes
- core: filter out automated release commits in getCommitsRelevantToProjects (#33482)
- core: make daemon socket path unique per process to prevent race condition (#33580, #33491)
- core: use nx-mcp for older nx versions instead of nx mcp (#33553)
- core: propagate continuous task failures to dependent tasks (#33492)
- graph: surface task graph client error via error toast (#33600)
- js: ensure copy-workspace-modules copies transitive workspace dependencies (#33570)
- nest: set moduleResolution to node to prevent TS5095 error (#33607, #33589)
- node: set generatePackageJson:false for TS Solution workspaces (#33606)
- release: ensure emoji is not repeated in breaking changes summary (#33605)
- storybook: remove upper bound of migration requires (#33613)
- testing: remove declare global wrapper from cypress commands.ts template (#33573, #32930)
❤️ Thank You
- Chau Tran @nartc
- Colum Ferry @Coly010
- Coly010 @Coly010
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Kasper Christensen @fALKENdk
- Laney Pouzet
- Leosvel Pérez Espinosa @leosvelperez
- MaxKless @MaxKless
22.1.1
22.1.1 (2025-11-21)
🚀 Features
- linter: add util to load eslint rules from a directory (#33543)
- nx-cloud: prepend nx version to stats metadata (#33568)
🩹 Fixes
- core: don't presume a task is long running if its marked cacheable (#33545, #32610)
- core: daemon command should exit at end (#33547)
- core: provide error when nested graph construction would occur invoked during createNodes (#33541, #29618)
- graph: align exclude flag with others by using findMatchingProjects (#33550)
- linter: handle various flat config override structures (#33548, #31796)
- react: exclude tailwind from CSS modules syntax in component generator (#33574)
- storybook: remove STORYBOOK_PROJECT_ROOT when running automigrate to prevent hanging (#33567, #32492)
- vite: generate .mts config files to force ESM (#33518)
❤️ Thank You
- AgentEnder @AgentEnder
- Claude
- Craigory Coppola @AgentEnder
- Jack Hsu @jaysoo
- Jason Jean @FrozenPandaz
- Leosvel Pérez Espinosa @leosvelperez
- MaxKless @MaxKless