-
Notifications
You must be signed in to change notification settings - Fork 2.9k
A way for users to bulk upgrade across incompatible versions #12425
Copy link
Copy link
Open
Labels
A-new-subcommandArea: new subcommandArea: new subcommandC-feature-requestCategory: proposal for a feature. Before PR, ping rust-lang/cargo if this is not `Feature accepted`Category: proposal for a feature. Before PR, ping rust-lang/cargo if this is not `Feature accepted`Command-updateS-needs-mentorStatus: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.Status: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.T-cargoTeam: CargoTeam: CargoZ-update-breakingNightly: update-breakingNightly: update-breakingdisposition-mergeFCP with intent to mergeFCP with intent to mergefinished-final-comment-periodFCP completeFCP complete
Metadata
Metadata
Assignees
Labels
A-new-subcommandArea: new subcommandArea: new subcommandC-feature-requestCategory: proposal for a feature. Before PR, ping rust-lang/cargo if this is not `Feature accepted`Category: proposal for a feature. Before PR, ping rust-lang/cargo if this is not `Feature accepted`Command-updateS-needs-mentorStatus: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.Status: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.T-cargoTeam: CargoTeam: CargoZ-update-breakingNightly: update-breakingNightly: update-breakingdisposition-mergeFCP with intent to mergeFCP with intent to mergefinished-final-comment-periodFCP completeFCP complete
Type
Fields
Give feedbackNo fields configured for issues without a type.
Problem
A lot of incompatible upgrades have a small enough of breakages that a "upgrade all of my incompatible version requirements" would make it easier to go through this process.
This is currently exposed in the
cargo upgradecommandProposed Solution
Tasks
cargo update --breaking#13979cargo update --breaking only-compatible renamed non-semver-operator transitive-dep--precise <breaking>-pmore convenient by being positional #12545Deferred
See #12425 (comment)
Previously, https://internals.rust-lang.org/t/feedback-on-cargo-upgrade-to-prepare-it-for-merging/17101/141
Unresolved questions
--breakingto focus on semver (as this is limited to^)--incompatibleapplies to all version req operators and doesn't have a good short flag (-iis generally assumed to be "interactive")--major-versionsthough we have the issue of "absolute major" (x.0.0) and "relative major (also0.x.0,0.0.x).--major--latestbecause of a "latest" tagNotes
Related
cargo-upgrade) #10498