21.5.1
📦 nxView on GitHub →
✨ 20 features🐛 39 fixes🔧 8 symbols
Summary
This release introduces support for Angular v20.2, enhances Rspack capabilities including webpack plugin conversion, and brings numerous stability fixes across core functionality, build systems (JS/TS, Vite 7), and the Nx Console UI.
✨ New Features
- Support for Angular v20.2 added.
- Angular RSPack now avoids reliance on postinstall >20.2.
- Added `incompatibleWith` field for `packageJsonUpdates` in core.
- Core now auto-retries lock files changed daemon messages.
- Added `NX_PROJECT_ROOT` environment variable to runtime cache inputs.
- Task graph now supports multiple targets.
- Unwrapped `RankDirPanel` from experimental status in graph visualization.
- Added `includeIgnoredAssetFiles` option and per-asset `includeIgnoredFiles` for JS/TS projects.
- Detect duplicate project references in `@nx/js:typescript-sync`.
- Module Federation dynamic federation aligned with latest from module federation and rspack.
- Nx now uses the platform certificate trust store.
- Nx Dev homepage links to UKG article.
- Nx Dev configures rewrite to astro-docs when `NEXT_PUBLIC_ASTRO_URL` is set.
- Nx Dev homepage updated with new feature illustrations and CTA.
- Nx Dev homepage subtagline updated.
- Rspack now supports converting webpack plugin configurations.
- Rspack now supports passing `templateParameters` to `HtmlRspackPlugin`.
- Added repository update system for automated Nx migrations.
- Vite 7 support added.
- Webpack migrated from deprecated `url.parse()` to WHATWG URL API.
🐛 Bug Fixes
- Angular migration now sets the `tsConfig` option when possible to aid migrations.
- Angular migration no longer updates project configuration if no changes were made.
- Angular RSPack no longer errors on server budget violation.
- Improved Cursor editor detection and extension installation.
- Ensured deterministic dummy task generation in task graphs.
- Handled unsupported platforms in Cursor IDE install command.
- Nx Console installation prompt now only appears in TTY environments.
- Enhanced validation for continuous task dependencies.
- Retrying current message when receiving `NX_VERSION_CHANGED` from daemon.
- Used black color for all foreground elements when in light theme.
- Failing fast when running commands in parallel.
- Handled case with no daemon when stopping.
- Created pnpm peer deps settings in the appropriate location when creating a workspace.
- Repaired nx mcp in pnpm/yarn.
- Allowed additional properties in `ProjectMetadata` type.
- Normalized root project root when merging project config results.
- Detect devcontainer environment and skip Nx Console installation prompt if it exists.
- Used more reasonable scroll speed on trackpads.
- Excluded non-cacheable tasks from flaky detection.
- Reduced CPU usage by adding 20ms interval to daemon process check.
- Restored peer dependency range to 2 majors in devkit.
- Included UPDATE changes in `findCreatedProjectFiles` for generator callbacks.
- Removed `nx` as a direct dependency in devkit.
- Expo output is now correctly placed within the project directory.
- Gradle migration now uses AST parsing to migrate updates to version catalogs.
- Gradle now allows the test target name to be configured from `nx.json`.
- Fixed miscellaneous issues in the graph visualization.
- Ensured `nxArgs.projects` can be an empty array in graph.
- Repaired project details navigation for new taskGraph and tasks with default configuration on UI.
- Repaired theme detection for nx console components.
- ESM loader now handles absolute paths on Windows.
- Improved `@nx/js/typescript` plugin check for buildable libraries.
- The `@nx/js/typescript` plugin no longer infers the project type.
- Used a unique typescript custom condition name for the workspace.
- Stored stale references correctly in `typescript-sync` generator.
- Updated `@types/node` to v20.19.9 to support fetch API.
- Respected string values in `alwaysAddToPackageJson` migration flag.
- Checked for `packages` existence to detect pnpm workspaces setup.
- Module Federation no longer relies on virtualRuntimeEntry.
🔧 Affected Symbols
RankDirPanelNX_PROJECT_ROOTpackageJsonUpdates@nx/js:typescript-syncHtmlRspackPluginProjectMetadata@nx/js/typescripturl.parse()