chore: upgrade Nx to 22.7.9 - #36717
Draft
Paul Mardling (PaulGMardling) wants to merge 1 commit into
Draft
Conversation
Align Nx and required SWC peers, preserve emitted source-map paths and workspace-root project discovery, and migrate the RIT release configuration. Keep the upgrade scoped to tooling; full v9 validation remains blocked by the published de-indent plugin. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Previous Behavior
The workspace uses Nx 21.6.10, with an older devkit dependency in the private workspace plugin. The installed SWC compiler/helpers do not meet Nx 22's peer requirements. The custom build executor passes an output directory where newer SWC expects the emitted filename, and project inference relies on the process working directory for filesystem access. RIT retains the legacy Nx release-version configuration shape.
New Behavior
A clean, 13-file Nx 21 → 22.7.9 upgrade, started directly from
masterata5b8341b24ed78137d2eeb4e7514b01071c6d471, without merging or cherry-picking the earlier upgrade branch. No Nx 23 packages or migration preparation.@nx/devkit/minimatch,@nx/jest/minimatch, andnx/minimatchmajor-9 overrides; Nx 22.7.9 requires 10.2.5. Preserve all unrelated security overrides, Yarn 4.18.0, and the seven-day quarantine.context.workspaceRoot, keeping generated Nx keys/options/cwd workspace-relative. Add seven cwd/config-discovery regressions and update test contexts to the V2 API.22-0-0-release-version-config-changes(22.0.0-beta.1) to RIT: promote version resolvers, usemanifestRootsToUpdate, and preserve prior behavior withpreserveLocalDependencyProtocols: false. Publishing target options are unchanged.Official Nx 22 migration metadata and implementations were audited. No blanket codemods, Jest CJS conversions, diagnostic workflows, or unrelated cleanup were applied. Existing
migrations.jsonremains historical Nx 21 metadata, not a claim that Nx 22 migrations were all executed.nx.jsonis unchanged. The changed workspace package manifests are private, so no Beachball change file is needed.Focused validation
@nx/js:swcwith CLI 0.7.7; in-process nested graph discovery; inferred release configuration; andyarn install --immutablepassed.lib/swc.ts; that code is exercised by the build regression tests.react-jsx-runtime:buildcompleted six prerequisites but did not finish with the published de-indent plugin; its owned process tree was stopped. This is not a full-CI-green result.Diff at creation: +1,035 / −660 lines; excluding generated
yarn.lock, +258 / −69.Related Issue(s)
Related: #36435 — fresh, narrowly scoped replacement implementation. The earlier PR is left unchanged.