mirror of
https://github.com/rust-lang/cargo
synced 2024-10-13 19:22:33 +00:00
fix(add): Clarify which version the features are added for
This gives a hint to users that we might not be showing the feature list for the latest version but the earliest version. Also when using a workspace dependency or re-using an existing dependency, this is a good reminder of what the version requirement is that was selected. However, when the user or add (the common case) selected a full precision requirement, this is redundant. I'm also mixed on whether the meta version should show up. Fixes #11073
This commit is contained in:
parent
391281b6d7
commit
73906aeaf8
|
@ -601,6 +601,7 @@ fn populate_dependency(mut dependency: Dependency, arg: &DepOp) -> Dependency {
|
|||
|
||||
pub struct DependencyEx {
|
||||
dep: Dependency,
|
||||
available_version: Option<semver::Version>,
|
||||
available_features: BTreeMap<String, Vec<String>>,
|
||||
}
|
||||
|
||||
|
@ -608,11 +609,13 @@ impl DependencyEx {
|
|||
fn new(dep: Dependency) -> Self {
|
||||
Self {
|
||||
dep,
|
||||
available_version: None,
|
||||
available_features: Default::default(),
|
||||
}
|
||||
}
|
||||
|
||||
fn apply_summary(&mut self, summary: &Summary) {
|
||||
self.available_version = Some(summary.version().clone());
|
||||
self.available_features = summary
|
||||
.features()
|
||||
.iter()
|
||||
|
@ -765,7 +768,15 @@ fn print_msg(shell: &mut Shell, dep: &DependencyEx, section: &[String]) -> Cargo
|
|||
deactivated.sort();
|
||||
if !activated.is_empty() || !deactivated.is_empty() {
|
||||
let prefix = format!("{:>13}", " ");
|
||||
shell.write_stderr(format_args!("{}Features:\n", prefix), &ColorSpec::new())?;
|
||||
let suffix = if let Some(version) = &dep.available_version {
|
||||
format!(" as of v{}", version)
|
||||
} else {
|
||||
"".to_owned()
|
||||
};
|
||||
shell.write_stderr(
|
||||
format_args!("{}Features{}:\n", prefix, suffix),
|
||||
&ColorSpec::new(),
|
||||
)?;
|
||||
for feat in activated {
|
||||
shell.write_stderr(&prefix, &ColorSpec::new())?;
|
||||
shell.write_stderr('+', &ColorSpec::new().set_bold(true).set_fg(Some(Green)))?;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
warning: translating `linked_hash_map` to `linked-hash-map`
|
||||
warning: translating `Inflector` to `inflector`
|
||||
Adding linked-hash-map v0.5.4 to dependencies.
|
||||
Features:
|
||||
Features as of v0.5.4:
|
||||
- clippy
|
||||
- heapsize
|
||||
- heapsize_impl
|
||||
|
@ -11,7 +11,7 @@ warning: translating `Inflector` to `inflector`
|
|||
- serde_impl
|
||||
- serde_test
|
||||
Adding inflector v0.11.4 to dependencies.
|
||||
Features:
|
||||
Features as of v0.11.4:
|
||||
+ heavyweight
|
||||
+ lazy_static
|
||||
+ regex
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Adding cargo-list-test-fixture-dependency (local) to build-dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
- one
|
||||
- two
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Adding foo (workspace) to dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ default-base
|
||||
+ default-merge-base
|
||||
+ default-test-base
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Adding cargo-list-test-fixture-dependency (local) to dev-dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
- one
|
||||
- two
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ eyes
|
||||
- ears
|
||||
- mouth
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
- ears
|
||||
- eyes
|
||||
- mouth
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ eyes
|
||||
+ nose
|
||||
- ears
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ eyes
|
||||
- ears
|
||||
- mouth
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ eyes
|
||||
+ nose
|
||||
- ears
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ noze
|
||||
- ears
|
||||
- eyes
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
- ears
|
||||
- eyes
|
||||
- mouth
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Adding your-face (local) to dependencies.
|
||||
Features:
|
||||
Features as of v0.1.3:
|
||||
+ mouth
|
||||
+ nose
|
||||
- eyes
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Adding your-face (local) to dependencies.
|
||||
Features:
|
||||
Features as of v0.1.3:
|
||||
- eyes
|
||||
- mouth
|
||||
- nose
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Adding foo (workspace) to dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ default-base
|
||||
+ default-merge-base
|
||||
+ default-test-base
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ eyes
|
||||
+ nose
|
||||
- ears
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
Adding foo (workspace) to dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ test
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding unrelateed-crate v99999.0.0 to dependencies.
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ ears
|
||||
+ eyes
|
||||
+ mouth
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Adding your-face (local) to dev-dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ mouth
|
||||
+ nose
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Adding your-face (local) to optional dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ mouth
|
||||
+ nose
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
- ears
|
||||
- eyes
|
||||
- mouth
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Adding your-face (local) to optional dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ mouth
|
||||
+ nose
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
+ eyes
|
||||
+ nose
|
||||
- ears
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Adding foo (local) to dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ default-base
|
||||
+ default-merge-base
|
||||
+ default-test-base
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Updating `dummy-registry` index
|
||||
Adding your-face v99999.0.0 to dependencies.
|
||||
Features:
|
||||
Features as of v99999.0.0+my-package:
|
||||
- ears
|
||||
- eyes
|
||||
- mouth
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Adding foo (workspace) to dependencies.
|
||||
Features:
|
||||
Features as of v0.0.0:
|
||||
+ default-base
|
||||
+ default-merge-base
|
||||
+ default-test-base
|
||||
|
|
Loading…
Reference in a new issue