Skip to content

Releases: nrwl/nx

22.2.0-beta.1

27 Nov 18:58
5071217

Choose a tag to compare

22.2.0-beta.1 Pre-release
Pre-release

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

22.1.3

27 Nov 19:00
4e35839

Choose a tag to compare

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

21.6.10

27 Nov 19:07
7fc161e

Choose a tag to compare

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

22.2.0-beta.0

25 Nov 14:51
7e00ec4

Choose a tag to compare

22.2.0-beta.0 Pre-release
Pre-release

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

22.1.2

25 Nov 23:47
8bb0e4e

Choose a tag to compare

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

22.1.1

21 Nov 23:22
626fb08

Choose a tag to compare

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

20.8.3

21 Nov 14:22

Choose a tag to compare

20.8.3 (2025-11-21)

🩹 Fixes

  • linter: handle various flat config override structures (#33548)

❤️ Thank You

22.1.0

19 Nov 21:04
3401c7e

Choose a tag to compare

22.1.0 (2025-11-19)

🚀 Features

  • core: update rust (#33220)
  • core: enable tui by default on windows (#33314)
  • core: batch hash tasks without custom hashers (#33327)
  • core: add OSC 9;4 progress indicator support to TUI (#33325)
  • core: collect resource usage (#32946)
  • core: disable interactivity by default for run-one task outputs in tui (#33358)
  • core: track system metrics and link plugins to workers when possible (#33411)
  • core: pull nx init from latest before executing (#33446)
  • core: export TypeScript schema definitions via wildcard patterns (#33454, #33336)
  • core: make console daemon check backgroundable and pulling from latest (#33491)
  • core: apply parent env to atomized target (#33013)
  • docker: support inferring additional args for targets with interpolation support (#32892)
  • docker: add skipDefaultTag option to build target (#33477, #33506)
  • gradle: add custom installation path to options (#33187)
  • gradle: use gitignore to determine dependant task output files (#33402)
  • gradle: allow specifying project and task configuration from gradle build files (#33264)
  • maven: upgrade to version 0.0.8 with automated migration (#33315)
  • maven: add ci-workflow generator (#33346)
  • maven: bump version from 0.0.8 to 0.0.9 (#33405)
  • maven: add option to prefix all maven targets (#33420)
  • misc: remove CI investigation recommendations from agent rules (#33309)
  • nextjs: add support for next 16 (#33296, #33207)
  • nx-dev: add downloadable resources page and React book blog post (160b4cce34)
  • release: support {versionActionsVersion} in docker version scheme (#33178)
  • release: add resolveVersionPlans option to changelog CLI and API (#33435)
  • storybook: add support for storybook 10 (#33277, #33141)
  • storybook: generate ai instructions for converting from CJS to ESM after migration (#33395)
  • testing: support cypress v15 (#33393, #33304)
  • vite: add atomizer support for vitest (#33265)
  • vite: add vitest 4 to peerDep range to prevent conflicts (#33394)
  • vitest: split vitest into @nx/vitest plugin (#33311)
  • vitest: split entrypoint into plugin, generators, executors (#33426)
  • vitest: support vitest 4 (#33424)

🩹 Fixes

  • core: adding output error reason (#33159)
  • core: continue execution when cloud client is unavailable (#33214)
  • core: prevent error message containing [object Object] for invalid {workspaceRoot} placement (#33203)
  • core: fix swapped arguments when resolving catalog references from the filesystem (#33237)
  • core: should find dockerfiles to suggest installing docker plugin (#33234)
  • core: stream without prefixes showing tui (#33194, #32535)
  • core: ensure daemon writes project graph cache to disk consistently (#33217)
  • core: add accept header to http remote cache get (#33093, #33092)
  • core: prevent undefined importer crash in pnpm lockfile parsing (#33223)
  • core: split lockfile cache and other performance improvements (#33256)
  • core: turn v8 serializer off by default but fallback to it if json serialization fails (#33274, #4, #2, #3)
  • core: make sure that gemini contextFileName is string before trying to resolve (#33280)
  • core: also look in .nx installation when reading nx.json extends (#33306)
  • core: handle various directories when importing prettier (#33383)
  • core: prevent args from being split by spaces when executing through nx wrapper (#33362)
  • core: correctly identify local workspace dependencies on windows (#33408)
  • core: clean up dead processes from metrics (#33437)
  • core: resolve lockfile cache regression with keyMap state (#33448, #33256)
  • core: remove system metrics collection and reporting (#33456)
  • core: optimize batch task scheduling to prevent redundant traversals (#33455, #33366)
  • core: capture stderr in nx add command for better error messages (#33462)
  • core: include require paths when resolving specified plugins (#33495)
  • core: prevent hanging between command end and process exit (#33500)
  • core: resolve all lock ordering deadlocks in metrics collector (#33513)
  • core: avoid leaking memory due by creating an unref'd interval for each daemon connection (#33532, #29836)
  • core: default input should indeed be default (#33533)
  • docker: handle undefined options when creating graph (#33235)
  • docker: handle dockerfile at project root tag (#33236)
  • docker: guard commitSha null in plugin interpolation (#33275)
  • gradle: bump gradle migration version (#33479)
  • graph: add nx:build-native dependency to typecheck target (#33428)
  • js: update vitest generator import in library generator (#33430)
  • js: improve typescript plugin performance (#33425, #33076)
  • js: remove redundant typescript project references (#33438)
  • js: skip TS project references migration for non-TS-solution workspaces (#33467)
  • js: sync external references to project's tsconfig.json file if it includes any files (#33524)
  • maven: add support for unbound goals in plugin targets (#33191)
  • maven: use File.isAbsolute for cross-platform path detection (#33195)
  • maven: resolve maven dependencies from project roots (#33313)
  • maven: set migration version to 22.1.0-beta.4 (#33345)
  • maven: forward parameters through target dependencies (#33365)
  • maven: skip maven plugin computation on vercel/netlify (#33486)
  • misc: add explanatory footer to ai agents prompts (#33182)
  • misc: handle null exit codes from crashed child processes (#33163, #29204)
  • misc: handle ERR_USE_AFTER_CLOSE gracefully in nx init and create-nx-workspace (#33469)
  • module-federation: update @module-federation packages to fix Koa vulnerability (#33285, #33380)
  • nextjs: ensure eslint-config-next matches Next.js 14 and 15 versions ([#30259](https://github.com/nrwl/nx/pu...
Read more

21.6.9

18 Nov 17:59
7f8df2f

Choose a tag to compare

21.6.9 (2025-11-18)

🩹 Fixes

❤️ Thank You

22.1.0-rc.5

17 Nov 22:08
41dec8e

Choose a tag to compare

22.1.0-rc.5 Pre-release
Pre-release

22.1.0-rc.5 (2025-11-17)

🚀 Features

  • core: apply parent env to atomized target (#33013)
  • gradle: allow specifying project and task configuration from gradle build files (#33264)

🩹 Fixes

  • core: resolve all lock ordering deadlocks in metrics collector (#33513)
  • storybook: normalize version range before comparison (#33515, #33514)

❤️ Thank You