Releases
22.3.0
Compare
Sorry, something went wrong.
No results found
22.3.0 (2025-12-17)
🚀 Features
angular: support angular v21 (#33378 )
angular: add migration to set isolateModules: true to jest tsconfig files (#33889 )
angular: add migration to replace jest-preset-angular/setup-jest imports (#33899 )
core: add NX_DEFAULT_OUTPUT_STYLE env var (#33493 , #27490 )
core: add CnwError class for typed error handling in create-nx-workspace (#33839 )
core: add hints and status messages to the tui (#33838 )
js: add option for using tsgo compiler when inferring build and typecheck tasks (#33821 , #32591 )
js: improve SWC compilation error logging (#33297 )
misc: support prettier v3 (#33898 , #30801 )
nx-plugin: allow customizing the location of the companion E2E project (#32073 , #32069 )
rspack: add support for cssFilename config #32498 (#32506 , #32498 )
testing: add option to playwright preset to open html report (#31282 )
webpack: add support for merging externals to NxAppWebpackPlugin (#33833 )
🩹 Fixes
angular: process only the in progress entry points in ng-packagr-lite's write bundles transform function (#33784 , #3172 , #33560 )
angular: collect known tsconfig files from non-buildable angular libraries in migration (#33834 , #33705 )
angular: improve error message when using esbuild-based build targets and generating cypress ct (#33846 , #33329 )
angular: install compatible vitest version for angular projects (#33858 , #33770 )
angular: ensure jest and jest-preset-angular are updated correctly for angular v21 (#33896 )
bundling: correct project path for createTmpTsConfig (#31314 , #31522 )
core: optimize pnpm lockfile parsing with pre-built indexes (#33750 , #32669 , #32254 , #33751 )
core: share visited Set across affected graph traversal (#33756 , #32265 )
core: set max listeners for process in task orchestrator (#33596 , #32439 )
core: exit with error when generator prompts fail (#33691 )
core: fix record stat on initial CNW call (#33783 )
core: ensure terminalOutput is always a string in task results (#33782 , #32675 )
core: improve node creation for pnpm parser (#33788 )
core: add pnpm/yarn support for CNW templates (#33827 )
core: swc register base url missing when using tsgo (#33332 )
core: pass more error detail for CNW (#33844 )
core: create all tables upfront when creating the database (#33843 )
core: improve performance of buildExplicitPackageJsonDependencies (#33791 )
core: do not invoke prettier with --write and --list-different when unsupported (#33857 , #33658 , #31951 )
core: preserve command output in TUI summary for non-cached tasks (#33673 )
core: update CNW messaging and remove cancel event from SIGINT (#33872 )
core: restore linkTaskDetails param for backwards compatibility (#33874 , #33843 )
core: include PNPM patches in externalDependencies hash computations (#33551 )
core: add back ability to create cache_outputs table without a foreign key (#33880 )
core: display task output in TUI when native command runner is disabled (#33881 , #32803 )
core: prevent pinning the same task in multiple panes in the tui (#33863 )
core: reduce error rate with dir validation and add more debugging data (#33887 )
core: improve database initialization error handling (#33820 )
core: invalidate sync generator cache on file changes and use up-to-date project graph (#33780 )
core: convert * to workspace:* for pnpm/yarn/bun in CNW (#33893 )
expo: set projectRoot to workspaceRoot for Expo SDK 54+ compatibility (#33836 , #33597 )
graph: serve full project graph when navigating from PDV (#33897 )
js: use Set for O(1) package.json root lookup (#33757 , #32265 )
js: recognize NodeNext as ESM (#31508 )
js: display pnpm publish errors without requiring --verbose (#33837 )
js: make CopyAssetsHandler per-file logs opt-in via verbose mode (#33835 , #33521 )
js: prevent crash when terminating task using the @nx/js:swc executor (#33845 , #31938 )
js: handle workspace packages when nx.name differs from package.json.name (#33583 , #33582 )
js: resolve nx binary from workspace root in node executor (#33842 , #33776 )
js: detect changes to pnpm.overrides and overrides in package.json (#31914 )
js: check package.json for name when project.json exists but has no name (#31887 )
js: adjusted stdout and stderr handling to support the latest @swc/cli version (#32685 )
js: allow copying generated Prisma client (asset) from 'node_modules' (#33822 )
misc: send connectUrl in completion metadata (#33878 )
misc: use string type for fetchDepth in azure-pipelines.yml (#33727 )
module-federation: normalize workspace protocol versions in requiredVersion (#33733 , #31397 , #33734 )
module-federation: check port availability before starting remote proxies (#33871 , #33470 )
nest: ensure library is generated with correct outputPath for TS Soln #32060 (#33864 , #32060 )
nextjs: accept fileName option to generate page (#30013 )
node: sourceMaps option to sourceMap in webpack config (#33333 )
node: use @swc/helpers instead of tslib when compiler is swc (#33885 , #31202 )
react: update template comment to be valid css (#33169 , #20192639 )
release: {releaseGroupName} not interpolated in changelog tag/releaseTagPattern (#33779 )
repo: fix dotnet installation on Windows (#33786 )
repo: restore mise tools in e2e-matrix workflow (#33785 , #33772 )
repo: install nightly Rust for WASM build in publish workflow (#33792 , #33772 )
repo: use RUSTUP_TOOLCHAIN env var for WASM builds (#33794 )
repo: revert to older nightly Rust for WASM builds (#33797 )
repo: install correct Rust target for x86_64 macOS build (#33853 )
rspack: enable build mode for TypeScript checker in TS solution setups (#33447 )
storybook: conditionally include node imports only for non-angular frameworks (#33728 )
storybook: use helper to find correct version when pnpm catalogs are used (#33900 , #29772 )
testing: update jest ci target to forward top level args (#31379 )
vite: update worker configuration in generator to follow Vite's … (#30465 )
web: update e2e test regex for SWC decorator metadata (#33892 )
webpack: show webpack chunks when verbose (#30960 )
webpack: interpolate process.env more verbosely to reduce bundle size with DefinePlugin (#30826 )
❤️ Thank You
You can’t perform that action at this time.