22.3.0
📦 nxView on GitHub →
✨ 13 features🐛 42 fixes🔧 6 symbols
Summary
This release introduces significant updates for Angular (v21 support and Jest migrations) and enhances core performance, especially around package manager parsing (pnpm/yarn) and TUI usability. It also adds support for Prettier v3 and improves JS/SWC compilation logging.
Migration Steps
- Run migrations to set `isolateModules: true` in Jest tsconfig files (if using Angular).
- Run migrations to replace `jest-preset-angular/setup-jest` imports (if using Angular).
✨ New Features
- Support for Angular v21.
- Added migration to set `isolateModules: true` in Jest tsconfig files for Angular projects.
- Added migration to replace `jest-preset-angular/setup-jest` imports.
- Introduced `NX_DEFAULT_OUTPUT_STYLE` environment variable.
- Added `CnwError` class for typed error handling in `create-nx-workspace`.
- Added hints and status messages to the TUI (Terminal User Interface).
- Added option to use the tsgo compiler when inferring build and typecheck tasks for JS projects.
- Improved SWC compilation error logging.
- Support for Prettier v3.
- Allow customizing the location of the companion E2E project in nx-plugin.
- Added support for `cssFilename` configuration in rspack.
- Added option to the Playwright preset to open the HTML report.
- Added support for merging externals to `NxAppWebpackPlugin`.
🐛 Bug Fixes
- Fixed processing only in-progress entry points in `ng-packagr-lite`'s write bundles transform function.
- Improved collection of known tsconfig files from non-buildable Angular libraries during migration.
- Improved error message when using esbuild-based build targets and generating Cypress CT.
- Ensured compatible Vitest version is installed for Angular projects.
- Ensured Jest and `jest-preset-angular` are updated correctly for Angular v21.
- Corrected project path for `createTmpTsConfig`.
- Optimized pnpm lockfile parsing with pre-built indexes.
- Shared visited Set across affected graph traversal.
- Set max listeners for process in task orchestrator.
- Exited with error when generator prompts fail.
- Fixed record stat on initial CNW call.
- Ensured `terminalOutput` is always a string in task results.
- Improved node creation for pnpm parser.
- Added pnpm/yarn support for CNW templates.
- Fixed SWC register base URL missing when using tsgo.
- Passed more error detail for CNW.
- Created all tables upfront when creating the database.
- Improved performance of `buildExplicitPackageJsonDependencies`.
- Prevented invoking prettier with `--write` and `--list-different` when unsupported.
- Preserved command output in TUI summary for non-cached tasks.
- Updated CNW messaging and removed cancel event from SIGINT.
- Restored `linkTaskDetails` param for backwards compatibility.
- Included PNPM patches in externalDependencies hash computations.
- Added back ability to create `cache_outputs` table without a foreign key.
- Displayed task output in TUI when native command runner is disabled.
- Prevented pinning the same task in multiple panes in the TUI.
- Reduced error rate with dir validation and added more debugging data.
- Improved database initialization error handling.
- Invalidated sync generator cache on file changes and used up-to-date project graph.
- Converted * to `workspace:*` for pnpm/yarn/bun in CNW.
- Set `projectRoot` to `workspaceRoot` for Expo SDK 54+ compatibility.
- Served full project graph when navigating from PDV.
- Used Set for O(1) package.json root lookup.
- Recognized NodeNext as ESM.
- Displayed pnpm publish errors without requiring `--verbose`.
- Made `CopyAssetsHandler` per-file logs opt-in via verbose mode.
- Prevented crash when terminating task using the `@nx/js:swc` executor.
- Handled workspace packages when `nx.name` differs from `package.json.name`.
- Resolved nx binary from workspace root in node executor.
- Detected changes to `pnpm.overrides` and `overrides` in `package.json`.
- Checked `package.json` for name when `project.json` exists but has no name.
- Adjusted stdout and stderr handling to support the latest `@swc/cli` version.
🔧 Affected Symbols
ng-packagr-liteNxAppWebpackPlugincreate-nx-workspacejest-preset-angulartsgo@nx/js:swc