23.1.2
📦 nxView on GitHub →
🐛 55 fixes🔧 27 symbols
Summary
This release focuses on numerous bug fixes across various Nx plugins and core functionalities, including improvements to build processes, dependency handling, and daemon communication. It also addresses security vulnerabilities and enhances developer experience with better error reporting and linting.
🐛 Bug Fixes
- Make webpack-related packages optional peer dependencies for Angular.
- Keep buildable libraries private in Angular.
- Prevent Angular-Rspack builds from crashing on non-array styleUrls.
- Rebuild Angular-Rspack components when their templates or styles change on Windows.
- Normalize resolved module paths in core.
- Prevent pruneProjectGraph from mutating the source project graph.
- Make preset empty work without github.com and improve template download errors.
- Drain to stdout before exiting `nx affected`.
- Update brace-expansion to 5.0.9 for CVE-2026-14257.
- Restrict daemon and plugin worker socket access to the owning user.
- Drain stdout before exiting nx run-many and nx run.
- Resolve main worktree root without a Windows verbatim prefix.
- Accept bun.lock lockfileVersion 2 and 3.
- Maintain cacheability when an executor target default applies.
- Prevent an unkillable nx process when a terminal closes.
- Honor the package manager's registry config in nx migrate.
- Resolve telemetry DNS in-process to avoid a getenv segfault.
- Skip target group members without a target.
- Port quoteShellArg helper for no-shell spawn fixes.
- Stop resending accumulated task hash results to the daemon when hashing tasks.
- Apply package.json updates unblocked by later package groups.
- Adapt held-updates spec to enquirer prompt shape.
- Create external nodes for out-of-workspace link dependencies.
- Point duplicate project names from worktrees at the fix.
- Exclude volatile shell and editor env vars from the daemon.
- Stop the daemon before nx add installs a package.
- Honor cascading ignore files in tree walks and generator formatting.
- Correct version floor validation for ranges and prereleases.
- Skip unchanged version action projects in Docker.
- Keep the expo dev server alive under jest.
- Derive metro projectRoot and node_modules from the app being bundled for Expo.
- Emit valid Groovy when applying the Gradle plugin to an existing allprojects block.
- Surface project graph timeout errors when the process ignores the kill signal in Gradle.
- Avoid duplicate node start without watch in JS.
- Resolve override selectors in affected detection for JS.
- Stop running maven and gradle graph analysis through a shell.
- Move plugin internal imports to devkit/internal.
- Use workspaceRoot in workspaceModule path.
- Bump css-loader so npm can resolve rspack core 2.
- Make generated code lint-clean under oxlint defaults.
- De-flake the nx watch e2e suite.
- Stop installing unused Next.js ESLint packages from the library generator.
- Describe the library generator and export its server entry for Next.js.
- Keep the kb index working for uncommitted articles in nx-dev.
- Update docs pricing link in nx-dev.
- Make module federation packages optional peer dependencies for React.
- Ignore deleted projects in historical affectedness for release.
- Support custom conventional commit types for release.
- Skip changelog resolution for unversioned projects in release.
- Preserve package.json formatting in release.
- Do not attribute commits with no author email to `@find` in release.
- Resolve out-of-set local dependency versions in release.
- Tell review-pr agents to compare base and HEAD with git.
- Reserve dev-server ports in the react-router e2e suite.
- Install typescript in npm e2e workspaces to keep tsquery off TypeScript 7.