-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Provide a way to describe why newer versions are not selected #7929
Copy link
Copy link
Open
Labels
A-dependency-resolutionArea: dependency resolution and the resolverArea: dependency resolution and the resolverC-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`S-needs-designStatus: Needs someone to work further on the design for the feature or fix. NOT YET accepted.Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted.
Metadata
Metadata
Assignees
Labels
A-dependency-resolutionArea: dependency resolution and the resolverArea: dependency resolution and the resolverC-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`S-needs-designStatus: Needs someone to work further on the design for the feature or fix. NOT YET accepted.Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Describe the problem you are trying to solve
Sometimes it can be confusing why newer versions of a package are not selected by the resolver. It would be nice to have some way for Cargo to tell you that there is a newer version available, but it is not able to select it due to some requirement.
There are different reasons this can happen. Some I can think of:
cargo updateshould print warnings for incompatible candidates #7167 for more details.linkscollision (I think?)This is in spirit with #6199 and #5284, but this is not for errors but for when otherwise compatible versions are skipped.
Describe the solution you'd like
I'm not sure of the best way to convey this information. Maybe
cargo update -vcould include a detailed message? Or maybe make it part of CARGO_LOG? Or something else?It could say something like:
Example
Some examples using Cargo's test notation: