Skip to content

Conversation

JamesHenry
Copy link
Collaborator

@JamesHenry JamesHenry commented Apr 23, 2025

This PR updates nx release to use the revamped versioning implementation by default. It also updates and adds relevant documentation, and provides an automated migration for the new configuration structure.

For anyone exclusively versioning TS/JS packages, there should be no real difference to your experience (although a number of bugs have been fixed and new features around updating multiple package.json files at once are now available to you with this change).

For the lifecycle of Nx v21, release.version.useLegacyVersioning will remain as a option that can be set to true to revert to the old behavior and configuration structure.

NOTE: This should only be a temporary solution, for example if one of the plugins you use does provide a VersionActions based versioning implementation yet. The option and legacy implementation will be removed entirely in Nx v22 (in ~6 months).

BREAKING CHANGE:

⚠️ For any early adopters of VersionActions in Nx 20.8 when it was opt-in, there are breaking changes to the abstract class here as well.

manifestRootsToUpdate has gone from string[] to manifestsToUpdate: { manifestPath: string; preserveLocalDependencyProtocols: boolean; }[] to support controlling the local dependency updates per manifest in order to support advanced source vs dist scenarios, and correspondingly isLocalDependencyProtocol has been removed from the abstract class and the method will no longer be called from the core logic. It should be thought of as an implementation detail of updateProjectDependencies instead.

Copy link

vercel bot commented Apr 23, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

1 Skipped Deployment
Name Status Preview Updated (UTC)
nx-dev ⬜️ Ignored (Inspect) Visit Preview Apr 24, 2025 6:15am
Copy link
Contributor

nx-cloud bot commented Apr 23, 2025

View your CI Pipeline Execution ↗ for commit 629f8ac.

Command Status Duration Result
nx affected --targets=lint,test,build,e2e,e2e-ci ✅ Succeeded 6m 30s View ↗
nx run-many -t check-imports check-commit check... ✅ Succeeded 23s View ↗
nx-cloud record -- nx-cloud conformance:check ✅ Succeeded 3s View ↗
nx-cloud record -- nx format:check ✅ Succeeded 5s View ↗
nx-cloud record -- nx sync:check ✅ Succeeded 1s View ↗
nx documentation ✅ Succeeded <1s View ↗

☁️ Nx Cloud last updated this comment at 2025-04-24 09:40:47 UTC

@FrozenPandaz FrozenPandaz merged commit ee097a8 into master Apr 25, 2025
6 checks passed
@FrozenPandaz FrozenPandaz deleted the nx-release-updates branch April 25, 2025 02:09
Copy link
Contributor

github-actions bot commented May 1, 2025

This pull request has already been merged/closed. If you experience issues related to these changes, please open a new issue referencing this pull request.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 1, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

2 participants