21.1.3 (2025-06-06)
🚀 Features
- nx-dev: AI landing page (#31310)
- nx-dev: update hero tagline (53ea3062e7)
- nx-dev: add rss and atom feeds (77dea60a49)
- repo: add golden list of projects to our Nightly CI (#31414)
🩹 Fixes
- angular: keep extra target metadata when needed in
convert-to-rspack
generator (#31309) - core: handle killing child processes of continuous tasks on Windows (#31296, #31235)
- core: generate workspace file readme typo (#31341, #31335)
- core: fix broken nx-cloud url shortening logic (#31283)
- core: infer codex environment and use default tasks runner (#31359)
- core: use next available port when the port for nx graph is in use (#31365, #30915)
- core: handle run-commands targets with no commands (#31364, #31345)
- core: implement missing --print flag for nx graph command (#31406, #30255)
- core: update getTouchedProjectsFromLockFile to handle deleted/moved projects correctly (#31361)
- core: ensure nx init implementation for angular correctly resolves
@angular/core
(#31430, #31291) - core: print installation logs when installing latest version during
nx migrate
and using--verbose
(#31432) - core: use
ts-node
option from tsconfig files when creating transpiler (#31469) - core: Update macos pipelines configuration (#31476)
- gradle: change run and bootRun to cacheable false (#31287)
- gradle: add migration script to check gradle plugin version (#31304)
- js: write typescript plugin cache files atomically (#31390, #30239, #31187)
- js: enable end-to-end tests for Vue application in dev mode (#31415)
- linter: speed up inferred plugin node processing (#31281)
- linter: handle
ng-package.json
file with nolib.entryFile
in@nx/enforce-module-boundaries
rule (#31360) - linter: fix line endings handling in '@nx/eslint:convert-to-flat-config' generator (#31043)
- module-federation: enhance remote entry handling with query parameters in paths (#30615, #30602)
- nextjs: add extension alias support for handling ESM libs (#31323, #30714)
- node: add project name sanitization for Docker commands. (#31461, #31421)
- nx-dev: only track analytics in prod envs (#31367)
- react: add missing dependency when generating a react lib that has testing (#31308)
- react: routing option to library generator (#31328, #30721)
- release: sort groups topologically bottom-up and fix typo to allow multi-level group dependencies (#31374)
- remix: update setup-tailwind generator to correct import statements (#30599, #30343)
- rspack: fix issue with optimization options in rspack config (#31337, #31268, #30292)
- rspack: ensure nest applications generated correctly #31204 (#31424, #31204)
- rspack: Add missing return for rspack composoable plugin (#31372)
- storybook: improve speed of storybook plugin (#31277, #22953, #31276)
- vite: bump @analogjs/vite-plugin-angular to 1.16.x (#31317)
- vite: add ajv dependency for non-pnpm package managers (#31413)
- vite: resolve project-specific tsconfig before workspace fallback (#31423, #28945)
- webpack: add support for retrieving all transitive non-buildable dependencies (#31343)
❤️ Thank You
- Brandon Roberts @brandonroberts
- Charlie Croom
- Colum Ferry @Coly010
- Emily Xiong @xiongemi
- Jack Hsu @jaysoo
- James Henry @JamesHenry
- Jason Jean @FrozenPandaz
- Johann Wagner @konqi
- Juri Strumpflohner @juristr
- laney
- Leosvel Pérez Espinosa @leosvelperez
- Miguel @mpsanchis
- Miroslav Jonaš @meeroslav
- Nadav Shatz
- Nicholas Cunningham @ndcunningham
- Terry @Teamop