Download Latest Version 21.6.8 source code.tar.gz (388.7 MB)
Email in envelope

Get an email when there's a new version of Nx

Home / 22.0.0
Name Modified Size InfoDownloads / Week
Parent folder
22.0.0 source code.tar.gz 2025-10-22 387.7 MB
22.0.0 source code.zip 2025-10-22 392.5 MB
README.md 2025-10-22 18.3 kB
Totals: 3 Items   780.2 MB 0

22.0.0 (2025-10-22)

🚀 Features

  • ⚠️ bundling: change default useLegacyTypescriptPlugin to false for v22 (#32754)
  • bundling: add excludeFromExternal option to esbuild executor (#32980)
  • core: prompt for ai agent files on nx init (#32889)
  • ⚠️ core: remove NX_DISABLE_DB environment variable (#32887)
  • ⚠️ core: remove CreateNodes v1 types for Nx 22 (#32951)
  • core: add --check=all flag to configure-ai-agents (#32968)
  • core: expose registerProjectGraphRecomputationListener from daemon client (#33005)
  • core: add support for pnpm catalogs (#32978, #30035, #29772)
  • core: enhance spinner handling and add spinner to inferred conversion (#33031)
  • devkit: bump compatibility to Nx 21 - 23 (6b86c33c30)
  • dotnet: add initial draft of .NET plugin (#32869)
  • ⚠️ js: remove the experimental and deprecated inlining feature from the tsc and swc executors (#32783)
  • maven: introduce maven plugin (#32947)
  • ⚠️ misc: remove deprecated decorate-cli script and stop sorting tsconfig paths by default (#32781)
  • misc: remove migrations prior to v20 (#32904)
  • module-federation: support TS Soln and Package Manager workspaces paradigms (#33056)
  • nest: ensure dependencies are added to project's package.json [#32548] (#32986, #32548)
  • nx-cloud: update description on nx login and logout (#31344)
  • nx-dev: add v22 to version picker (#33110)
  • react: remove support for non-isolated webpack config in ponentTestingPreset (#32787)
  • react: keep deprecated @nx/react/bundle-rollup module since there is not a replacement when using @nx/rollup:rollup executor (#32821)
  • ⚠️ release: match nx affected behavior to determine relevant conventional commits (#32915)
  • ⚠️ release: remove deprecated legacy versioning (#32888)
  • ⚠️ release: switch defaults for fixed release group tag pattern, preserve matching dependency ranges and strictPreid (#32878)
  • ⚠️ release: set preserveMatchingDependencyRanges to true by default (#32983)
  • release: add releaseTagPatternPreferDockerVersion to specify version to use for git tag [#32900] (#32972, #32900)
  • ⚠️ release: release graph aware filtering, updateDependents can now be "always" (#32971)
  • ⚠️ release: set updateDependents to always by default (#33029)
  • ⚠️ release: refactor releaseTag* properties to a releaseTag object (#33020)
  • release: allow changelog.renderer to be set to an implementation directly (#33095)
  • release: new replaceExistingContents CLI and API option for changelog (#33096)
  • release: allow ignoring nx.json release config with ReleaseClient (#33099)
  • release: allow conventional commit style aliases in version plan release types (#33167)
  • ⚠️ rspack: remove application generator in favour of framework-specific options (#32755)
  • ⚠️ rspack: remove deprecated deleteOutputPath and sassImplementation options (#32756)
  • storybook: add watch-deps and build-deps targets (deb10f2818)
  • vite: add buildable libs support for vitest (#32973)
  • vue: migrate @vitejs/plugin-vue to 6.0.1 (#33097)
  • ⚠️ webpack: remove deprecated deleteOutputPath and sassImplementation options (#32828)

🩹 Fixes

  • angular: improve message for unsupported typescript project references (#33148)
  • angular: ensure ngpackagr tsconfig options set correctly based on version [#33081] (#33150, #33081)
  • angular-rspack: do not parse json with babel [#32690] (#32966, #32690)
  • angular-rspack: ensure root node_modules included when resolving packages (#33144, #33026)
  • angular-rspack: bubble errors correctly (#33183)
  • bundling: ensure tsconfig options are respected with rollup-typescript-plugin (#32816)
  • bundling: postcss-cli-resources should handle relative deploy url [#32714] (#32762, #32714)
  • ⚠️ core: remove deprecated simpleName option from library generators (#32716)
  • core: improve provenance error with custom registry information (#32903)
  • core: optimize task hashing with BFS and performance logging (#32911)
  • core: tweak configure-ai-agents prompt (#32914)
  • core: ensure nx is published with the correct dependency version for the native packages (#32928, #32898)
  • core: upgrade axios to 1.12.0 to address CVE-2025-58754 (#32712)
  • core: repair repo root on setupAiAgents in nx init (#32984)
  • core: remove requirement to be in a package manager workspace (#32992)
  • core: remove duplicated "Running" string from tui title (#32991)
  • core: display bottom corner indicator of tui in progress section correctly (#32985)
  • core: temporarily disable tui for run-one (#33048)
  • core: ensure --help works properly with infix notation (#32662)
  • core: improve db connection initialization and error messages (#33054, #28640, #30856, #32894)
  • core: prioritize in-progress tasks section visibility in tui (#33053)
  • core: enhance tui summary output to fix misc issues (#33057)
  • core: format catalog definition files when appropriate in nx migrate (#33105)
  • core: allow prerelease versions of nx to be used with devkit (#33123)
  • core: restore migrations used by nx repair (#33124)
  • core: avoid changing existing project name if a project.json file is added to a project (#33114)
  • core: do not remove wal files manually for existing databases (#33143)
  • core: do not print flaky tasks guidance when nx cloud is already enabled (#33149)
  • core: add wrappers for start and stop agent nx-cloud commands (#33140)
  • core: revert changes to the db connection initialization (#33156)
  • core: store reason when marking daemon as disabled (#33172)
  • dotnet: fixup various issues + missing functionality (#33132)
  • graph: prevent content from overflowing in the PDV component (#33120)
  • js: temporarily hash all external dependencies for tasks inferred by the @nx/js/typescript plugin (#32912)
  • js: ensure node execute completes before exit (#32629, #32385, #32356)
  • linter: install correct deps in eslint convert to flat config generator (#33078)
  • ⚠️ misc: don't set legacy-peer-deps by default (#33014, #22066, #29537)
  • module-federation: ensure angular rspack module federation supports live reload (#33137)
  • nextjs: remove whitespace for newly generated server component (1d687c4994)
  • nextjs: update entrypoints for buildable library with vite to include server entry [#31457] (#32977, #31457)
  • nx-cloud: update broken documentation links to AI features (0149fac877)
  • nx-dev: improve default zoom level of graph nodes in docs (#32910)
  • nx-dev: provide message to check previous docs w/ empty migrations (#32919)
  • nx-dev: watch for theme changes for project/task graph components (#32885)
  • nx-dev: update credit pricing link to new docs page (#32899)
  • nx-dev: update nextjs internal-link-checker to include astro urls (#33045)
  • nx-dev: respect NX_DEV_URL in sitemap checker (#33058)
  • nx-dev: handle null github data (#33061)
  • nx-dev: add docker to build-tools tech section (#33164)
  • react: dynamic module federation should not initialize remoteUrlDefinitions to empty object (#33059, #27927, #33055, #27793, #27842)
  • release: ensure schema for release.groups is correct (#33007)
  • release: skip filtered out groups when processing (#33044)
  • ⚠️ release: ensure multilines in breaking changes are rendered by changelog renderer (#33070, #33014)
  • release: replace local dependency protocols of unchanged dependencies [#30995] (#33151, #30995)
  • ⚠️ release: better respect version plan file contents for changelog entries (#33166)
  • release: breaking change contents extraction (#33184)
  • remix: @nx/remix/package.json export typo fixed [#32810] (#32940, #32810)
  • remix: ensure supported version of vite is used (#33089)
  • repo: fix pr releases to not depend on a broken range (#32993)
  • testing: show warning instead of error when no blob outputs found during merge (#33022)
  • vite: ensure tsconfig file is resolved from workspaceRoot [#31987] (#32990, #31987)
  • vite: enable build watch mode by default for preview (#31604, #31623)
  • vite: add logic to prevent overwriting generated package.json (#30705, #30312)

⚠️ Breaking Changes

  • release: config.conventionalCommitsConfig for DefaultChangelogRenderer is no longer nullable. (#33166)
  • misc: The --legacy-peer-deps behavior is no longer forced. (#33014, #22066, #29537)

If you need it, configure your package manager to enforce it. - release: This is a breaking change in the preferred configuration structure. Existing configurations will continue to work through the migration period, but users should update to the new nested format. (#33020) - release: Users who relied on the previous 'auto' behavior can (#33029)

explicitly set updateDependents: 'auto' in their nx.json: ``json { "release": { "version": { "updateDependents": "auto - **release:** The signature ofinit()onVersionActions` has (#32971)

changed, it no longer accepts a second argument. Validation of the manifest files, if any, now takes place via a separate method (validate()) call after construction of the new ReleaseGraph. For the most part, users do not need custom VersionActions so only a small percentage of consumers should be impacted. Fixes https://github.com/nrwl/nx/issues/31273 - ⚠️ core: remove CreateNodes v1 types for Nx 22 (#32951) - ⚠️ release: set preserveMatchingDependencyRanges to true by default (#32983) - ⚠️ release: switch defaults for fixed release group tag pattern, preserve matching dependency ranges and strictPreid (#32878) - ⚠️ release: remove deprecated legacy versioning (#32888) - release: More files are now being used to determine relevant (#32915)

commits, meaning there is higher chance for projects to receive version bumps - misc: The long-deprecated decorate-cli script has been (#32781)

removed. BREAKING CHANGE: The nx format command and generators no longer default to sorting TypeScript path mappings. To keep the previous behavior, pass the --sort-root-tsconfig-paths flag to the command or set NX_FORMAT_SORT_TSCONFIG_PATHS=true. - ⚠️ core: remove NX_DISABLE_DB environment variable (#32887) - js: The experimental inlining feature in the @nx/js:tsc (#32783)

and @nx/js:swc executors was removed. A migration will remove the related options (external and externalBuildTargets). Still, if you use or rely on the feature, you need to make your dependencies buildable or use a different build tool with bundling capabilities. - ⚠️ webpack: remove deprecated deleteOutputPath and sassImplementation options (#32828) - ⚠️ rspack: remove deprecated deleteOutputPath and sassImplementation options (#32756) - ⚠️ rspack: remove application generator in favour of framework-specific options (#32755) - ⚠️ bundling: change default useLegacyTypescriptPlugin to false for v22 (#32754) - core: simpleName option is no longer supported in library generators (#32716)

❤️ Thank You

  • Andrew Ovens @aovens-quantifi
  • Caleb Ukle
  • Claude
  • Colum Ferry @Coly010
  • Craigory Coppola @AgentEnder
  • David Scourfield @daiscog
  • FrozenPandaz @FrozenPandaz
  • Jack Hsu @jaysoo
  • James Henry @JamesHenry
  • Jason Jean @FrozenPandaz
  • Juri @juristr
  • Leosvel Pérez Espinosa @leosvelperez
  • Louie Weng @lourw
  • MaxKless @MaxKless
  • Mike Cebrian
  • Miroslav Jonaš @meeroslav
  • Mischa Fischer
  • Nikola Kalinov
  • Shai Reznik @shairez
  • Terry Mun-Andersen @terrymun
  • Vijay Ramakrishnan
  • Zoran Kokeza
Source: README.md, updated 2025-10-22