# What changed in nx

> 639 changes in nx 21 to 23 from its official release notes, upgrade guides and advisories: 66 breaking, 22 deprecations, 12 security, 92 new APIs and options. Each one cited. Sources checked 2026-10-18. HTML: https://unstale.sh/npm/nx/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## nx 23

### Breaking changes

- Nx adds ultracache configuration for sandbox targets, replacing the sandbox target property. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx adds Angular v22 support; Angular v19 is no longer supported. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Angular esbuild option paths are now resolved relative to the workspace root. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- ESLint v8 is no longer supported; Nx requires ESLint v9 or later. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Support for filtered array-shape targetDefaults was reverted pending redesign and reapplication. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The rollup buildLibsFromSource default is aligned. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- CreateNodes V2 types are renamed to the canonical OG names. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- CreateNodes V2 types are renamed to the canonical original names. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The legacy 'self' and 'dependencies' magic strings are dropped from dependsOn. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The legacy 'self' and 'dependencies' magic strings are dropped from dependsOn. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated initTasksRunner API has been removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated initTasksRunner export is removed from nx; consumers should use runDiscreteTasks or runContinuousTasks instead. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated js option is removed from component generators. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated js option has been removed from component generators. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The legacy TypeScript plugin has been dropped. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The legacy TypeScript plugin is dropped. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated Angular move generator has been removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated Angular NgRx generator has been removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Node 20 is no longer supported. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated entry point has been removed; update imports to a supported entry point. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The entry point is removed; update imports to @nx/module-federation/angular. nx migrate handles this automatically. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The generator is removed. Use @nx/workspace:move or its mv alias instead. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The generator is removed. Use @nx/angular:ngrx-root-store for root state or @nx/angular:ngrx-feature-store for feature state. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- @nx/dotnet graduates from experimental status and drops the /plugin export. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The @nx/dotnet/plugin entry point is removed; use @nx/dotnet. The included migration updates nx.json automatically. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The skipSetupFile option of the @nx/jest:configuration generator is removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The setupFile option of the @nx/jest:jest executor is removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Interactive migration mode is disallowed for Nx v23 and later targets. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Renames --includeDependentProjects to --includeDependencies. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Deprecated flat releaseTag* properties are dropped and v23 defaults are updated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Deprecated releaseTag* flat properties are dropped and v23 defaults are updated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated Jest setupFile option has been removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The deprecated Jest skipSetupFile option has been removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The SVGR option has been removed; a withSvgr migration is provided. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The SVGR option is removed; a withSvgr migration is provided. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The setup-tailwind generators have been removed. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Vitest support is removed from @nx/vite in favor of @nx/vitest. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Vitest support is removed from @nx/vite in favor of @nx/vitest. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Deprecated webpack plugin re-exports have been dropped. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)

### Security

- Nx: Path traversal in nx migrate package-migrations extraction (22.7.10, 23.2.1) — [security advisory](https://github.com/advisories/GHSA-HRVQ-X7JP-36XV), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.10)
- Socket access is restricted to the owning user, improving isolation for daemon and plugin worker processes. (22.7.9, 23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.9), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Nx daemon and plugin worker sockets are accessible to other local users (22.7.9, 23.1.2) — [security advisory](https://github.com/advisories/GHSA-W3VV-58GJ-GW77)
- The import command no longer permits shell injection. (22.7.8, 23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.8)
- Nx: OS command injection via git revisions and remote refs (22.7.8, 23.1.1) — [security advisory](https://github.com/advisories/GHSA-W2VW-W76X-QR89)
- Nx: Zip-Slip in the self-hosted remote cache (22.7.7, 23.0.2, 23.1.0) — [security advisory](https://github.com/advisories/GHSA-VP3H-GHGH-JR7G), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.7)
- Prevents path traversal and zip-slip, and warns when TLS verification is disabled. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)

### Deprecations

- The standalone parameter of addProjectConfiguration is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The standalone parameter is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The Angular convert-to-with-mf generator is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Support for ESLint v8 is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Executors that have inferred-plugin replacements are deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Old module federation generators are deprecated, and new consumer/provider generators are added. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The Cypress executor is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The @nx/cypress:cypress executor is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The @nx/detox build and test executors are deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The @nx/detox build executor is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The @nx/detox test executor is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The nxCopyAssetsPlugin helper is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The nxCopyAssetsPlugin helper is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The nxViteTsPaths helper is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The nxViteTsPaths helper is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Angular SCAM generators are deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The webpack and rspack config compose helpers are deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The webpack/rspack config compose helpers are deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The Next.js withNx function is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The withNx function is deprecated. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)

### New APIs and options

- Nx adds an opt-in to select affected tasks instead of affected projects. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Use --explain to see why each task is affected. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Exports NodeExecutorOptions from @nx/js/executors for consumers that need the executor options type. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Set NX_CLOUD_USE_ULTRACACHE to turn on ultracache. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx adds a batched lint executor for oxlint. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Adds --port to @nx/web:app. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- The CSS module hash algorithm can now be overridden. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Migration generators can now skip their AI step. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx Cloud generates this file for agent distribution. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Run a single migration with the new --run-migration option. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- This command is added as an alias for nx-cloud start-nx-agents. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx Release now supports custom conventional commit types. (23.1.2, 23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Nx Release can select projects based on tags. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- The TUI adds vim-style pane search and a full-width status bar. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Generators consistently offer Vitest through the unitTestRunner option. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- The library generator exposes the compiler option. (23.1.3) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.3)
- The library generator exposes the inSourceTests option. (23.1.3) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.3)
- Selected projects can run without running their task dependencies. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Programmatic usage can now force changelog generation. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- TypeScript config path alias resolution now supports the ${configDir} token. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- The workspace generator can scaffold a workspace into the current directory. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- The @nx/esbuild/executors entry point is now exported. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Filtered targetDefaults can now use the nested-array shape. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Vite build and test targets gain configurable TypeScript path support. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Migration entries can now use a prompt field. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Adds the --mode flag to nx migrate. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Adds the --multi-major-mode flag to nx migrate. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Adds agentic mode for running migrations. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- A migrate configuration section is available in nx.json. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The string '...' is supported as a spread token when merging target configuration. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Adds a flag to skip the confirmation prompt for third-party presets. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)

### Performance

- Angular Rspack builds are faster and align their behavior with the esbuild application builder. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)

### Behavior and default changes

- A continuous dependency's inputs are included in the hash of the task it serves. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Next.js uses out/ as the default output directory when output is export. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Reads the pnpm 12 min-release-age policy instead of deferring to an install. (23.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- Nx asks for confirmation before creating migration commits on the default branch. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx derives a stable repo key from the normalized remote and relative path, making repository identification consistent across equivalent paths. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Generated React projects no longer pin eslint-plugin-react. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- The React 19 migration skips the React 19 update for workspaces using Remix v2. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Nx warns when the self-hosted remote cache disables TLS verification. (22.7.7, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.7)
- The terminal UI now supports mouse interaction. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Web executor, plugin, and generator commands run with the workspace package manager. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Clickable cloud prompt links now include UTM tracking. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- Rsbuild build outputs are inferred directly from distPath.root. (22.7.3, 23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- The default Jest module path scan excludes dist and out-tsc. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Native Node.js TypeScript stripping is enabled by default. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The --include option now supports any package that supports optional updates. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The Rollup buildLibsFromSource default is aligned with the updated bundling behavior. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Vitest watch is disabled by default for Angular. (22.7.2, 23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)

### Tooling

- Angular Rspack can scaffold and run SSR apps on the @angular/ssr application engine. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx reports the cache location alongside cache usage. (23.2.1, 23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- Nx supports Cypress 16. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx Angular supports ngrx v22, allowing Angular workspaces to use that version. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Orchestrated migrate runs emit a runbook and per-step instructions to guide the migration. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx guarantees terminal output files and adds an agent-friendly summary output style. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx supports Vitest 5. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Scans package projects for environment variables. (23.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- Keeps the cache in the workspace on CI. (23.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- The Nx daemon and plugin workers can run inside agent sandboxes. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx adds support for Angular v22.1. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx adds built-in support for Bun dependency catalogs. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx adds the @nx/oxlint plugin. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx adds built-in support for the oxfmt formatter alongside Prettier. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Generators for Node, Nest, and Express can generate Vitest setup. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx plugin generators add Vitest support for e2e tests. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx adds support for Expo SDK 56. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Nx adds an upgrade path from Next.js 14 to 15. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Nx shows a performance report at the end of every run, with recommendations. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Nx adds an upgrade path from React 18 to 19. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- Nx supports @rspack/core@2 and @rsbuild/core@2 with multi-version compliance. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- A migration renames createNodesV2 to createNodes. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- A JSON schema is added for migrations.json files. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Deep imports from @nx/devkit/src/... are migrated away from. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Nx adds support for pnpm 11.2.2. (22.7.3, 23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Shell tab-completion is available for bash, zsh, fish, and powershell. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Migrations are available to move Vite 7 projects to Vite 8. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The migration handles Vitest workspace configuration better. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- The v23 migration adds webpack tooling to devDependencies. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)

### Fixes and other changes

- Corrects declaration maps and exports for Angular buildable libraries. (23.2.1, 23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- Fixes resolution of the requested Nx version when running nx migrate under npm 12. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Nx supports pnpm 12 install configuration and shims. (23.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.3.0)
- Carries minimumReleaseAge into pruned pnpm deploy output. (23.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- Writes the normalized cache option in NxAppRspackPlugin. (23.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- Resolves tsconfig to an absolute path so ${configDir} paths type-check without baseUrl. (23.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.1)
- The none value now skips AI agent file generation. (23.1.1, 23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- The esbuild executor now supports TypeScript esbuildConfig files. (23.1.1, 23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Selected projects now run correctly when this option is used. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Nx now honors the pnpm minimumReleaseAge configuration with pnpm 11. (23.1.1, 23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Options from targetDefaults now apply to inferred targets that are not redeclared. (23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0)
- Vitest generation now creates a root vitest.config.ts instead of the deprecated vitest.workspace. (23.1.1, 23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- The Vitest test executor now honors watch configuration and keeps --ui open. (23.1.1, 23.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Daemon workspace roots are compared case-insensitively on Windows. (22.7.9, 23.1.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.9), [release notes](https://github.com/nrwl/nx/releases/tag/23.1.3)
- A built next.config can load without @nx/next installed. (23.1.3) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.3)
- The optional ng-packagr package is imported lazily. (23.1.3) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.3)
- TS config files are reloaded fresh instead of being served from stale cached modules. (23.1.3) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.3)
- JavaScript affected detection resolves override selectors. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The Gradle plugin emits valid Groovy when applied to an existing allprojects block. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Angular keeps buildable libraries private. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Nx accepts bun.lock files with lockfileVersion 2 and 3. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Angular Rspack rebuilds components when their templates or styles change on Windows. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Target cacheability is maintained when an executor target default applies. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The Expo dev server stays alive under Jest. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Devkit tree walks and generator formatting honor cascading ignore files. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Expo derives Metro's projectRoot and node_modules from the app being bundled. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- React makes module federation packages optional peer dependencies. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The generator no longer installs unused Next.js ESLint packages. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The Next.js library generator exports its server entry. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Nx stops the daemon before nx add installs a package. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The command drains stdout before exiting, preventing output from being lost. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Migration honors the package manager's registry configuration. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The command drains stdout before exiting, preventing output from being lost. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- The command drains stdout before exiting, preventing output from being lost. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Angular Rspack builds no longer crash when styleUrls is not an array. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Target group members without a target are skipped. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Nx no longer leaves an unkillable process when a terminal closes. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Nx Release skips changelog resolution for unversioned projects. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- Angular makes webpack-related packages optional peer dependencies, so projects that do not use them need not install them. (23.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.2)
- ensurePackage resolves packages against the workspace. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Webpack bundles subpaths of non-buildable libraries that use fallback-array exports. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Nx supports patched dependency hashes in pnpm 11 lockfiles. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Nx preserves comments in pnpm-workspace.yaml and reads package.json as JSONC. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- The Babel preset supports private methods and static blocks. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Flat ESLint configs use projectService for typed linting. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- The Module Federation dev-server plugin no longer caches static remote assets. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- The Vite executor no longer leaks watch: false into the dev-server configuration. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- The webpack executor propagates its watch option to the webpack configuration. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Workspace glob matching supports multiple brace groups. (23.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.1)
- Rspack uses contenthash for chunkFilename to prevent stale chunks. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- formatFiles works with Prettier v2 support restored. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Nx re-adds the isCacheableTask helper for determining whether a task is cacheable. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- create-nx-workspace now respects an explicit --nxCloud=skip setting for AI agents. (23.0.2, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Projects-filtered targetDefaults are skipped when resolved without a project. (23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0)
- The Vitest executor supports passing mode through and applies mode-based configuration consistently. (23.0.1, 23.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2), [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- Prevents doubled output paths in path mappings for buildable libraries. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Resolves catalog references in pruned package.json output. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Waits for the process tree to exit when stopping executor tasks. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Preserves the allowlist in pruned package.json output. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Avoids a crash when include=optional filters out the target package, and honors preapproved packages while emitting a valid temporary workspace. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Applies target defaults when project.json overrides an inferred run-commands target with different commands. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Scopes incremental type-check information per project. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- Vite detects the Vue 2 plugin for vue-tsc type checking. (23.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.2)
- AI-edited files are formatted after agentic migrations. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- Compilation failures are surfaced as build errors, and resources are released on teardown. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- Angular resolves esbuild option paths relative to the workspace root. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- nx migrate no longer writes minimumReleaseAgeExclude. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- nx migrate no longer crashes on dependency specifiers that are not semver. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- A breaking change changelog entry no longer swallows the trailing PR body. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- Nx avoids false-positive tsconfig path matches for sibling project roots. (23.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.1)
- nx mcp can now run outside an Nx workspace. (22.7.2, 23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- NX_PREFER_TS_NODE is respected over native TypeScript stripping. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Absolute Cypress screenshotsFolder paths are handled correctly. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)
- Absolute Cypress videosFolder paths are handled correctly. (23.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/23.0.0)

## nx 22

### Breaking changes

- TypeScript 7 is excluded from supported versions on the 22.7.x line. (22.7.8) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.8)
- Nx no longer infers projects: 'self' in dependsOn entries. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Generated tsconfig files no longer include baseUrl; path mappings use a ./ prefix instead. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- An nx property that defines an executor or command now overwrites an inferred script target. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- CRA migration logic has been removed from nx init. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- The Gradle executor now enforces that only one Gradle task is passed to it. (22.4.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.5)
- The React package removes its file-loader dependency. (22.4.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- The Gradle executor now always reruns tasks. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Nx now exits with an error when generator prompts fail. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Failures in continuous tasks are propagated to dependent tasks. (22.1.2, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- Nested graph construction invoked during createNodes now produces an error instead of occurring unexpectedly. (22.1.1, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- Vitest support is split into the @nx/vitest plugin, with separate plugin, generator, and executor entry points. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- This DefaultChangelogRenderer configuration is no longer nullable. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- CreateNodes v1 types are no longer available in Nx 22. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The deprecated option was removed from webpack and rspack. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Deprecated legacy versioning was removed. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The deprecated legacy versioning mode is no longer available. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The environment variable was removed. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Formatting no longer defaults to sorting TypeScript path mappings; pass this flag to retain the previous behavior. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Support for non-isolated webpack config was removed from the React testing preset. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Migrations prior to v20 were removed. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The generator was removed in favor of framework-specific options. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The deprecated option was removed from webpack and rspack. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The option is no longer supported in library generators. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Now defaults to always; users who relied on the previous auto behavior can explicitly set it to auto. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The default changed to false in v22. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)

### Security

- Nx warns before installing unknown npm packages as presets. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- `nx graph` dev server permissive CORS policy (22.7.2) — [security advisory](https://github.com/advisories/GHSA-G2R8-WVMJ-JF5W)
- Shell metacharacters in CLI arguments passed to tasks are now properly quoted. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- Command injection in getNpmPackageVersion is prevented. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- Module Federation updates its @module-federation packages to fix a Koa vulnerability. (22.0.3, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)

### Deprecations

- The setup-tailwind generators are deprecated. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- The releaseTag* properties were refactored into a nested releaseTag object; existing configurations continue to work through the migration period. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)

### New APIs and options

- The generate command can skip project graph creation. (22.6.5, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Adds a way to control concurrency for migrate fallback installations. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- Adds the NX_BAIL environment variable. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- typescript-sync now supports nx.sync.ignoredDependencies. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- A json input type is available for selectively hashing JSON fields. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- The TaskResult interface now includes startTime and endTime. (22.6.2, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Nx adds commands for debugging cache inputs and outputs. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- The Playwright executor adds a cacheDir option. (22.5.1, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Dependency filesets now support the ^{projectRoot} syntax. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- nx init adds an agentic mode. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- nx list adds a --json flag. (22.5.3, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- The top-level nx release command accepts --otp and detects EOTP errors. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Set NX_SKIP_FORMAT to skip Prettier formatting. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Executors can use the new preferBatch option. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Affected options now support --stdin. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- The JavaScript plugin supports configuring the typecheck config name. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Adds an explicit cloud opt-out to CNW and preserves nxCloud=skip in non-interactive mode. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- The TUI can display batch tasks. (22.4.2, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- Daemon logging settings can now be overridden. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- A command was added to download the cloud client. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- Nx can use Node's strip types feature instead of transpilation for TypeScript files when NX_PREFER_NODE_STRIP_TYPES is set. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- This environment variable opts into Node's strip types feature instead of transpilation for TypeScript files. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- Adds llms-full.txt and HTTP Link headers for LLM discovery on nx-dev. (22.4.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- A second prompt variant with a promotional message was added to CNW cloud prompts. (22.4.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- Rspack adds cache configuration. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- The release flow adds an option to opt out of the commit scope filter. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Nx supports hashes specific to the current working directory. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Nx adds an inline TUI view mode. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- A batch executor enables multi-task Maven execution. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Dependency checks add the peerDepsVersionStrategy option. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Rspack adds runtimeDependencies configuration. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Rspack adds typeCheckOptions configuration. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Adds a typed error class for error handling in create-nx-workspace. (22.2.2, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- The companion E2E project location can now be customized. (22.2.7, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.7)
- Rspack configuration now supports `cssFilename`. (22.2.1, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- The Next.js page generator accepts a `fileName` option. (22.2.6, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.6)
- Adds an environment variable for configuring the default output style. (22.2.1, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Adds support for merging externals in `NxAppWebpackPlugin`. (22.2.2, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- The Playwright preset adds an option to open the HTML report. (22.2.1, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Adds an option to use the tsgo compiler when inferring build and typecheck tasks. (22.2.2, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- The TUI now displays hints and status messages. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- Workspace creation supports templates. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Adds a utility for loading ESLint rules from a directory. (22.1.1, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- The migration to Next 16 is optional. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Adds an option to prefix all Gradle targets. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Gradle options now allow a custom installation path. (21.6.7, 22.0.2, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2), [release notes](https://github.com/nrwl/nx/releases/tag/21.6.7)
- Project and task configuration can now be specified from Gradle build files. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- Maven targets can now be configured with a prefix applied to all targets. (22.0.4, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- The changelog CLI and API add the resolveVersionPlans option. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- The Docker build target adds skipDefaultTag to control whether it uses the default tag. (22.0.4, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- The Docker version scheme now supports the {versionActionsVersion} placeholder. (22.0.2, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- The TUI supports OSC 9;4 progress indicators. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Added the --check=all flag. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Adds the excludeFromExternal option to the esbuild executor. (21.6.8, 22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.8), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- An initial draft of a .NET plugin was added. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Set this environment variable to true to keep sorting TypeScript path mappings by default. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Exposed from the daemon client. (21.6.5, 22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0), [release notes](https://github.com/nrwl/nx/releases/tag/21.6.5)
- Can now ignore the release configuration in nx.json. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Added an option to specify which version to use for a git tag. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Added as a changelog CLI and API option. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- The option can now be set to always, with release graph-aware filtering. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)

### Performance

- Reduced memory usage during task hashing on large workspaces. (22.7.12) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.12)
- Nx enables Node's native V8 compile cache support. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- withNx now uses the cached project graph. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- The command runs faster by avoiding heavy imports. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- Interpolates process.env more verbosely to reduce bundle size with DefinePlugin. (22.2.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Initial generation for JavaScript projects is more lightweight. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Optimizes batch task scheduling to prevent redundant traversals. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Improves TypeScript plugin performance. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Hash tasks in batches when no custom hashers are configured. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)

### Behavior and default changes

- All Gradle tasks now have transitive set to true. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- The command automatically opens the browser for the Nx Cloud setup URL. (22.6.2, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- The database is decoupled from the Nx version and shared across worktrees. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- Running nx init in an empty Git directory prompts for a setup mode. (22.6.5, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- The command now cleans up legacy .gemini/skills files. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Generated lockfiles now include npm overrides. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Extended tsconfig files are now inferred as task inputs for lint targets. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Increases the default project graph timeout for Gradle. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- The command A/B tests cloud prompt copy. (22.6.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.3)
- Plugin include/exclude patterns now support negation patterns. (22.5.1, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Cloud commands now do nothing rather than erroring when the workspace is not connected. (22.4.2, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- The command copies Nx skills, subagents, and plugins. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- Flaky tasks are detected only for cacheable tasks. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- JSON schema validation now allows null values. (22.4.2, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- pom.xml and ancestor pom files are included as inputs for all Maven targets. (22.4.5, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.5)
- Maven classes are loaded at runtime to support version-agnostic batch execution. (22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- Nx now handles more sophisticated Vite plugins. (22.4.3, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- Nx Cloud CNW completion messages now include decorative banners. (22.4.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.4)
- Module federation now uses localhost as its default host. (22.3.2, 22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- The command can infer the project from the current working directory. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Release version bumps now special-case 0.x versions. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Makes per-file logs opt-in through verbose mode. (22.2.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Tasks marked cacheable are no longer presumed to be long-running. (22.1.1, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- TS Solution workspaces set generatePackageJson to false. (22.1.2, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- The Gradle plugin is no longer added to the plugins block when version catalogs are used. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Corrects the nx-schema default for preserveMatchingDependencyRanges to the value intended for v22. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Docker release automatically selects the version scheme when only one is available. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Docker targets can infer additional arguments when interpolation is supported. (22.0.2, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- Atomized targets now inherit the parent environment. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- The command pulls the latest nx init before executing. (22.0.4, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- nxViteTsPaths now supports local path aliases. (22.0.2, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- Interactivity is disabled by default for run-one task outputs in the TUI. (22.0.3, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Maven targets now forward parameters through target dependencies. (22.0.3, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- The TUI is enabled by default on Windows, changing the default task-output interface. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- Gradle uses gitignore to determine dependent task output files. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Output streams without prefixes when showing the TUI. (22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- Can now be set directly to an implementation. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Nx no longer forces this behavior; configure the package manager to enforce it if needed. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Now prompts for AI agent files during initialization. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Now defaults to true. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Now allow conventional commit style aliases. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)

### Tooling

- Gradle streams batch task results to Nx as they finish. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Adds a .NET CI workflow generator. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- Nx adds support for Vite 8. (22.6.2, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Storybook and Playwright are now included as implicit dependencies. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Generated package.json files now include pnpm install configuration. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Nx adds support for Angular v21.2. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- The JavaScript plugin adds a deps-sync generator. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- The project graph now reports external Maven dependencies. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Nx adds passthrough support for the nx-cloud apply-locally command. (22.5.3, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Nx adds support for Yarn Berry catalogs. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Migrations and caia add .nx/polygraph to gitignore so it is ignored by Git. (22.5.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- The Vitest config file is now created. (22.4.3, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- The component stylesheet bundler now uses Tailwind and PostCSS configuration. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Nx adds support for Angular v21.1. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Nx supports bulk suppression for ESLint v9.24.0 and later. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- Cypress component testing is supported in zoneless Angular projects. (22.3.2, 22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Angular projects can use ngrx v21 with Nx. (22.3.2, 22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Nx supports Angular v21. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- An Angular migration sets `isolateModules: true` in Jest tsconfig files. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- An Angular migration replaces imports from `jest-preset-angular/setup-jest`. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- Nx supports Prettier v3. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- SWC compilation error logging is improved, making errors easier to diagnose. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- Generators use versions compatible with ESLint v9. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Vite config files are generated with the .mts extension to force ESM. (22.1.1, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- The report detects multiple Nx versions, helping developers identify version inconsistencies. (22.1.2, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- Adds a Vitest 4 migration for users of @nx/vite. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Adds a migration to add @nx/vitest. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- The base ESLint config ignores out-tsc directories. (22.1.3, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.3)
- The Storybook integration supports Storybook 10.1. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- The Maven plugin adds a generator for CI workflows. (22.0.3, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Nx adds support for Cypress v15. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- Nx adds support for Next.js 16. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- Nx adds support for Storybook 10. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- Maven plugin targets now support unbound goals. (22.0.1, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.1)
- Nx adds support for Vitest 4. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- The peer dependency range includes Vitest 4 to prevent conflicts. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- A Maven plugin was introduced. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Nx now supports pnpm catalogs. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Added watch-deps and build-deps targets. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)
- Buildable library support was added. (22.0.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.0)

### Fixes and other changes

- Oversized daemon responses now fall back to v8, and the wire protocol uses length prefixes. (22.7.12) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.12)
- Resolving configurations no longer mutates target options. (22.7.12) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.12)
- Maven and Gradle graph analysis no longer runs through a shell. (22.7.9) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.9)
- Migrations fetched via install now use the workspace package manager. (22.7.8) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.8)
- The Angular Rspack stylesheet bundler is disposed so one-shot builds exit. (22.7.8) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.8)
- Generated pnpm-workspace.yaml allows Nx build scripts and acknowledges the @swc/core build script. (22.7.8) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.8)
- Declares directory build props as inputs for analyzer dotnet tasks, the separate release build target, and analyzer tests dotnet targets. (22.7.7) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.7)
- Declares obj as a publish output to fix a sandbox violation in dotnet tasks. (22.7.7) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.7)
- Publishing falls back to npm publish when bun publish fails with an authentication error. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- The conversion output more faithfully reflects the original configuration. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Results from createNodes plugins preserve their input order. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Directory.*.* files are included in .NET inputs. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Dollar signs in file paths are no longer escaped on Windows. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Local plugin subpath imports resolve from source without requiring custom conditions. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- The runtime is added only on the vitest-analog path. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Undefined task parallelism is treated as parallel when scheduling. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Only workspace-package peer dependencies are rewritten to workspace:*. (22.7.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.3)
- Maven batch recording skips attached artifacts that fail to materialize. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Skipped batch tasks are supported end-to-end, and TUI double logs are fixed. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Testing handles absolute paths for Cypress screenshotsFolder and videosFolder. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Glob syntax is stripped from inferred outputs before resolving them as paths. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Maven 4 build state recording is serialized. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Internal re-exports are expanded for the cherry-picked v23 deep-import migration. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Corrects output paths for .NET Web SDK and centralized dist setups. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Pruned pnpm lockfiles include transitive workspace dependencies. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Angular Rspack keeps root-scoped assets out of per-locale i18n output. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- The run summary now shows the flaky-task count. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Rollup includes the tsconfig solution input. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Webpack includes the tsconfig solution input. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Task selection stays in the in-progress section. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Verbose logs go to stderr, and daemon logs are properly decorated. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- The Gradle integration supports Windows file paths. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- The migration preserves other properties. (22.7.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.2)
- Release handling now accepts short and full project names in commit scopes. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- Generated .detoxrc files now contain valid JSON for non-Expo apps. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- The handoff now uses require so global-to-local Nx execution works with Windows drive paths. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- Conversion now handles executor-based jest.config.ts files and preserves type-only imports. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- The scaffold now includes the tsconfig input. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- When pre-install fails with npm peer dependency errors, migrations now provide actionable feedback. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- Continuous children now stay alive when the nx:noop orchestrator completes. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- The command now surfaces stderr and forces devDependencies installation. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- Version lookups now resolve pnpm catalog: references. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- The linter now detects a root lint target added during the same generator run. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- Stories and specs are now excluded from Tailwind content scanning. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- Typecheck inputs now include extended tsconfigs from project references. (22.7.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.1)
- The Angular rspack module federation plugin enables ESM output. (22.6.2, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Variables in .env files can reference variables defined in other files. (22.6.5, 22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- The command accepts --target/-t and -p flags when using colon targets. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- Nx supports pnpm multi-document lockfiles. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- The executor now supports npm workspaces. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- React Router apps can use Vite 8. (22.7.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.7.0)
- Project graph recalculation no longer causes Gradle and Maven daemon accumulation. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- The batch executor no longer hangs when a worker exits prematurely. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Plugin loading failures now display the actual error message. (22.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.5)
- Validates the bundler option for Angular presets, helping catch invalid options when creating a workspace. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- Handles "." and absolute paths as workspace names when creating a workspace. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- The dependency-checks lint rule recognizes tsgo. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- Preserves sibling dependency inputs in native hashing, avoiding changes to the inputs used for hashing. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- Disables prompts during migrate when non-interactive mode is enabled. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- Handles non-interactive mode in create-nx-workspace and adds template shorthand names. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- Uses Vite 7 when React Router is used in framework mode. (22.6.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.4)
- The command handles non-interactive mode. (22.6.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.3)
- The command adds template shorthand names. (22.6.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.3)
- The TypeScript plugin adds the {projectRoot} prefix to its d.ts fileset. (22.6.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.3)
- Duplicate migration keys are updated. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- The rebuild chunks emitted summary is made accurate. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Declaration files in dependency projects are included as inputs. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Framework configs are prepended before baseConfig. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Prevent double installation in TypeScript solution workspaces. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Timeouts prevent the CLI from hanging during the GitHub push flow. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Test enums are ignored when atomizing. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Skips import-equals namespace aliases. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Resolves the published nx migrate package correctly. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- References are handled when projects are moved or removed. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- The parallel limit is respected for discrete task concurrency. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Runtime inputs are no longer cached at the task_hasher layer; filesets belong in the hash_plans layer. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Handles projects with colons in their names better. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- SWC input source map resolution is disabled. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- The TypeScript plugin passes configName to the typecheck command. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Resolves the addPlugin default in the init generator. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- Is skipped when the global bin hands off to the local bin. (22.6.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.2)
- For Nx plugins, the conversion now uses native nx.configs. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- The rule now detects require() calls. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- The migration now gracefully handles broken Jest configs. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- The preset now handles undefined options. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- The hook now fires on SIGINT for continuous tasks. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- Project-level ESLint configs are converted, and skipped configs are logged. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- The plugin now uses the root config to determine the ESLint class. (22.6.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.1)
- nx show target now displays the continuous property. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- The rule now allows wildcard paths. (22.5.3, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Nx supports ESLint v10. (22.5.3, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Nx cloud commands can run outside of a workspace. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Filtered releases include dependent projects in the release commit message when using --projects. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Filtered project lists no longer produce duplicate projects in the changelog. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- Vitest resolves reportsDirectory against the workspace root. (22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0)
- The Vitest executor now respects reporters set in target options. (22.5.4, 22.6.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.6.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- Resolves false positive loop detection when running with Bun. (22.5.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- Batch runner output is also sent to stderr so it displays in the terminal. (22.5.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- GitHub user/repo slug extraction now supports canonical SSH URLs. (22.5.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- Detection falls back to invoking the package manager when needed. (22.5.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- The angular-rspack output uses a relative path. (22.5.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.4)
- Ensures atomized task targets have dependsOn. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Gradle uses globs for dependent task output files. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- The release schema now allows null values for dockerVersion. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Fixes setting the pom file without changing the base directory. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Fixes process.env usage and ensures safe fallback replacement in webpack. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- The nx-welcome component uses SASS indented syntax when the selected style is sass. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- When skipTypeCheck is true in TS Solution Setup, Nx skips the unnecessary type-check. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- createGitTagValues now uses a null-safe fallback for version. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Sets isPreview=true for the Vite Preview server. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- The watch command works when both all and initialRun are specified. (22.5.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.3)
- Path resolution uses the workspace root when baseUrl is not set. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- Handles Ctrl+C gracefully and only pulls from latest when the local version is not latest. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- The daemon skips stale recomputations and prevents file changes from being lost. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- Ignore files are matched by path component according to gitignore behavior. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- Writes output after each task in batch mode so the correct files are cached. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- TUI logger initialization is gated behind the NX_TUI environment variable. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- New workspaces no longer generate nxCloudId. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- Resets the daemon client after project graph creation. (22.5.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.2)
- Cache restore now handles dangling symlinks. (22.5.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Running configure-ai-agents no longer overrides MCP arguments. (22.5.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- makeAcyclic no longer drops unrelated continuous dependencies. (22.5.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Maven locators are now correctly mapped to Nx project names. (22.5.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Pressing [1] or [2] removes a pinned pane when it matches the current task. (22.5.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Runtime cache keys are now deterministic. (22.5.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.1)
- Nx now shows help for run-one when project short names are used. (22.4.5, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.4.5)
- All task outputs are tracked regardless of path depth. (21.3.12, 22.5.0) — [release notes](https://github.com/nrwl/nx/releases/tag/21.3.12), [release notes](https://github.com/nrwl/nx/releases/tag/22.5.0)
- Batch output is no longer overridden for atomized targets. (22.4.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.5)
- Uses flags compatible with the Gradle tooling API. (22.4.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- Already-installed Nx packages are hidden from the suggestion list during import. (22.4.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- Improves plugin worker error messages and lifecycle timeouts. (22.4.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- Avoids throwing when worker.stdout is not an instance of a socket. (22.4.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.3)
- Resizing is handled better for inline_tui. (22.4.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- Nx falls back to node_modules when the temporary directory has noexec. (22.4.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.2)
- Cleans up the daemon workspace data directory when running nx reset with the noted option. (22.4.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.1)
- Avoids a hang in the TUI by moving it to a parking lot rwlock. (22.4.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.1)
- Cypress TypeScript configuration sets moduleResolution to node to prevent TS5095 errors. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- The migration command now supports updating the @angular/cli package. (22.3.2, 22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Target inference is skipped for root workspace configs that use projects. (22.4.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.4.0)
- getDependencies skips external dependencies that are not npm dependencies. (22.3.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Ensures the Jest v30 migration is run. (22.3.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- React module federation setup with webpack and TypeScript solutions is corrected. (22.3.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Flat config now honors setParserOptionsProject. (22.3.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Fixes Vitest test runner options for Angular in cnw. (22.3.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.2)
- Fixes the dependency graph for multi-targeting and transitive dependencies in .NET projects. (22.3.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.1)
- Nx no longer shows a TUI when running a single task. (22.3.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.1)
- create-nx-workspace templates support pnpm and yarn. (22.2.2, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Nx exits with an error when generator prompts fail. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- Restores the `linkTaskDetails` parameter for backwards compatibility. (22.2.5, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.5)
- NodeNext is now recognized as ESM. (22.2.2, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Prevents a crash when terminating a task that uses the SWC executor. (22.2.4, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- PNPM patches are now included in externalDependencies hash computations. (22.2.6, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.6)
- Changes to `pnpm.overrides` and `overrides` in package.json are now detected. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- Generated Prisma clients can now be copied as assets from node_modules. (22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0)
- Expo SDK 54+ compatibility sets `projectRoot` to `workspaceRoot`. (22.2.3, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.3)
- Interpolates `{releaseGroupName}` in changelog tag and releaseTagPattern. (22.2.4, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- The Node webpack configuration maps the `sourceMaps` option to `sourceMap`. (22.2.4, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- The Node plugin uses `@swc/helpers` instead of tslib when the compiler is SWC. (22.2.7, 22.3.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.3.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.7)
- Task output is displayed in the TUI when the native command runner is disabled. (22.2.7) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.7)
- The TUI prevents pinning the same task in multiple panes. (22.2.7) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.7)
- Changes to overrides in package.json are now detected. (22.2.6) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.6)
- Changes to pnpm.overrides are now detected. (22.2.6) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.6)
- When project.json exists but has no name, Nx now checks package.json for the project name. (22.2.6) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.6)
- Stdout and stderr handling was adjusted to support the latest @swc/cli version. (22.2.6) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.6)
- The connectUrl value is included in completion metadata. (22.2.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.5)
- All tables are created upfront when the database is created. (22.2.5) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.5)
- Migration now collects known tsconfig files from non-buildable Angular libraries. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- The error message is improved when generating Cypress component tests with esbuild-based build targets. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- The node executor resolves the Nx binary from the workspace root. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- Generated Nest libraries now use the correct outputPath for TypeScript solution setups. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- Nx no longer invokes Prettier with both flags when that combination is unsupported. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- Port availability is checked before remote proxies start. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- The TUI summary now preserves command output for tasks that are not cached. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- Workspace packages are handled when nx.name differs from package.json.name. (22.2.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.4)
- Passes more error detail for CNW. (22.2.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.3)
- Fixes the missing SWC register base URL when using tsgo. (22.2.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.3)
- Updates the jest ci target to forward top-level arguments. (22.2.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Displays pnpm publish errors without requiring verbose mode. (22.2.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Enables build mode for the TypeScript checker in TS solution setups. (22.2.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.2)
- Corrects the project path used when creating a temporary TypeScript configuration. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Processes only in-progress entry points, avoiding processing unrelated entry points during the write bundles transform. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Normalizes workspace protocol versions in requiredVersion for module federation. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Task results now always provide terminalOutput as a string. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Updates the worker configuration generated by the Vite generator to follow Vite's configuration. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Webpack chunks are shown when verbose output is enabled. (22.2.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.1)
- Nx kills the child process tree for different running tasks. (21.6.10, 22.1.3, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.3), [release notes](https://github.com/nrwl/nx/releases/tag/21.6.10)
- Workspace module copying now includes transitive workspace dependencies. (22.1.2, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- The daemon command exits when it reaches the end. (22.1.1, 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- The Expo integration supports Expo 54. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- The linter now handles various flat config override structures. (20.8.3 … 22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.11), [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1), [release notes](https://github.com/nrwl/nx/releases/tag/20.8.3)
- The Nuxt integration supports Nuxt 4. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- The prompt no longer blocks non-interactive commands. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- Project names are sanitized to produce valid Git tag names. (22.2.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.2.0)
- The Cypress commands template no longer includes a declare global wrapper. (22.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- Nest sets moduleResolution to node to prevent a TS5095 error. (22.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- The upper bound on migration requirements is removed. (22.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- Task graph client errors are surfaced through an error toast. (22.1.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.2)
- The graph exclude flag now uses findMatchingProjects to align with other exclude flags. (22.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- The generator excludes Tailwind from CSS modules syntax. (22.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- STORYBOOK_PROJECT_ROOT is removed when running automigrate to prevent hanging. (21.6.10, 22.1.1) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.10), [release notes](https://github.com/nrwl/nx/releases/tag/22.1.1)
- Jest 30 and later use .cts config files to fix __dirname issues. (22.0.3, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- The default input is now correctly treated as the default. (22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0)
- Arguments containing spaces are no longer split when executing through the nx wrapper. (22.0.3, 22.1.0) — [release notes](https://github.com/nrwl/nx/releases/tag/22.1.0), [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Renders commit titles that include breaking changes. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Handles ERR_USE_AFTER_CLOSE gracefully during workspace creation. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Fixes a lockfile cache regression involving keyMap state. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Skips Maven plugin computation on Vercel and Netlify. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Captures stderr to provide better error messages. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Handles ERR_USE_AFTER_CLOSE gracefully during nx init. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Prevents the process from hanging between command completion and process exit. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- Includes require paths when resolving specified plugins. (22.0.4) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.4)
- The eslint-config-next version is made to match Next.js 14 and 15 versions. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Local workspace dependencies are correctly identified on Windows. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Maven dependencies are resolved from project roots. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Nx also looks in the .nx installation when reading nx.json extends. (22.0.3) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.3)
- Handles null exit codes from crashed child processes. (21.6.7, 22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2), [release notes](https://github.com/nrwl/nx/releases/tag/21.6.7)
- Docker plugin interpolation now guards against a null commitSha. (22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- Handles a Dockerfile located at the project root when determining the tag. (22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- Execution continues when the cloud client is unavailable. (21.6.7, 22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2), [release notes](https://github.com/nrwl/nx/releases/tag/21.6.7)
- Importing @nx/webpack no longer errors when TypeScript is not installed. (22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2)
- Invalid workspaceRoot placement now produces a clearer error instead of an error message containing [object Object]. (21.6.7, 22.0.2) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.2), [release notes](https://github.com/nrwl/nx/releases/tag/21.6.7)
- Adds the error reason to output. (22.0.1) — [release notes](https://github.com/nrwl/nx/releases/tag/22.0.1)

## nx 21

### Breaking changes

- The TUI is temporarily disabled for run-one. (21.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.5)

### Fixes and other changes

- The linter now handles variable references in replaceOverride. (20.8.4, 21.6.11) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.11), [release notes](https://github.com/nrwl/nx/releases/tag/20.8.4)
- Ensures node execute completes before exit. (21.6.9) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.9)
- Prevents a crash caused by an undefined importer while parsing a pnpm lockfile. (21.6.7) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.7)
- Nx no longer prints flaky tasks guidance when Nx Cloud is already enabled. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Angular Rspack module federation now supports live reload. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Sets ng-packagr tsconfig options correctly based on the version in use. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Restores migrations used by nx repair. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Vite logic prevents overwriting a generated package.json. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Adding a project.json file to a project no longer changes its existing project name. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Includes the root node_modules directory when resolving packages in Angular Rspack. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- Improves the message shown for unsupported TypeScript project references. (21.6.6) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.6)
- The --help flag now works properly with infix notation. (21.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.5)
- Dynamic module federation no longer initializes remoteUrlDefinitions to an empty object. (21.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.5)
- The bottom corner indicator is now displayed correctly in the TUI progress section. (21.6.5) — [release notes](https://github.com/nrwl/nx/releases/tag/21.6.5)
