-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add cargo update --breaking
#13979
Merged
Merged
Add cargo update --breaking
#13979
Conversation
This file contains 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
rustbot
added
A-cli
Area: Command-line interface, option parsing, etc.
A-manifest
Area: Cargo.toml issues
A-testing-cargo-itself
Area: cargo's tests
Command-update
S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.
labels
May 29, 2024
r? epage |
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
epage
reviewed
May 29, 2024
When this is ready for review, what I expect to see for the commits
|
epage
reviewed
May 29, 2024
rustbot
added
the
A-infrastructure
Area: infrastructure around the cargo repo, ci, releases, etc.
label
May 30, 2024
☔ The latest upstream changes (presumably #13980) made this pull request unmergeable. Please resolve the merge conflicts. |
torhovland
changed the title
Add
Add Jun 3, 2024
cargo update --incompatible
cargo update --breaking
epage
reviewed
Jun 5, 2024
epage
reviewed
Jun 5, 2024
epage
reviewed
Jun 5, 2024
epage
reviewed
Jun 5, 2024
epage
reviewed
Jun 5, 2024
epage
reviewed
Jun 5, 2024
torhovland
force-pushed
the
issue-12425
branch
2 times, most recently
from
June 6, 2024 09:25
3a6142f
to
61202d5
Compare
Thanks for all of the work you put into this! @bors r+ |
bors
added
S-waiting-on-bors
Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
and removed
S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.
labels
Jun 7, 2024
11 tasks
☀️ Test successful - checks-actions |
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Jun 8, 2024
Update cargo 8 commits in 34a6a87d8a2330d8c9d578f927489689328a652d..b1feb75d062444e2cee8b3d2aaa95309d65e9ccd 2024-06-04 15:31:01 +0000 to 2024-06-07 20:16:17 +0000 - Keep lints updated (rust-lang/cargo#14030) - test(lints): Ensure unused optional dep fires for shadowed dep (rust-lang/cargo#14028) - Add `cargo update --breaking` (rust-lang/cargo#13979) - Add tooling to document lints (rust-lang/cargo#14025) - Rename --out-dir to --artifact-dir (rust-lang/cargo#13809) - fix(lints): Add unknown_lints to lints list (rust-lang/cargo#14024) - docs(contrib): Suggest atomic commits with separate test commits (rust-lang/cargo#14014) - test(semver): track the behavior of `--precise <prerelease>` (rust-lang/cargo#14013) r? ghost
epage
added a commit
to epage/cargo
that referenced
this pull request
Jun 11, 2024
This is a follow up to rust-lang#13979 to try to clarify things in prep for users testing this.
epage
added a commit
to epage/cargo
that referenced
this pull request
Jun 12, 2024
This is a follow up to rust-lang#13979 to try to clarify things in prep for users testing this.
bors
added a commit
that referenced
this pull request
Jun 12, 2024
docs: Iterate on --breaking docs This is a follow up to #13979 to try to clarify things in prep for users testing this.
flip1995
pushed a commit
to flip1995/rust-clippy
that referenced
this pull request
Jun 28, 2024
Update cargo 8 commits in 34a6a87d8a2330d8c9d578f927489689328a652d..b1feb75d062444e2cee8b3d2aaa95309d65e9ccd 2024-06-04 15:31:01 +0000 to 2024-06-07 20:16:17 +0000 - Keep lints updated (rust-lang/cargo#14030) - test(lints): Ensure unused optional dep fires for shadowed dep (rust-lang/cargo#14028) - Add `cargo update --breaking` (rust-lang/cargo#13979) - Add tooling to document lints (rust-lang/cargo#14025) - Rename --out-dir to --artifact-dir (rust-lang/cargo#13809) - fix(lints): Add unknown_lints to lints list (rust-lang/cargo#14024) - docs(contrib): Suggest atomic commits with separate test commits (rust-lang/cargo#14014) - test(semver): track the behavior of `--precise <prerelease>` (rust-lang/cargo#14013) r? ghost
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-cli
Area: Command-line interface, option parsing, etc.
A-dependency-resolution
Area: dependency resolution and the resolver
A-documenting-cargo-itself
Area: Cargo's documentation
A-infrastructure
Area: infrastructure around the cargo repo, ci, releases, etc.
A-manifest
Area: Cargo.toml issues
A-testing-cargo-itself
Area: cargo's tests
Command-add
Command-clean
Command-fetch
Command-fix
Command-install
Command-metadata
Command-new
Command-package
Command-remove
Command-tree
Command-update
Command-vendor
S-waiting-on-bors
Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
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.
Related to #12425.
There are two kinds of manifest mutations here. In
upgrade_manifests
we have to mutatecargo::core::manifest::Manifest
so thatresolve_ws
does what it needs to do, and outputs a correct lock file. Then, inwrite_manifest_upgrades
we mutatecargo::util::toml_mut::manifest::Manifest
, because that is how we can preserve the existing formatting in the manifest files on disk.Some of the code here is copied from
cargo-edit
.Comparison with
cargo upgrade
Running on the Cargo source itself gives the following:
In both cases we see an upgrade of
itertools
to^0.13.0
andpulldown-cmark
to^0.11.0
.The diff to the manifest (when it isn't a dry run) is as follows:
TODO
--incompatible
, we also need to letupdate_lockfile
useupgrades
in order to only update the incompatible dependencies.--package
, etc.cargo upgrade
.