Address review comments

This commit is contained in:
Oliver Schneider 2018-07-05 19:30:06 +02:00
parent f1e3a5a24b
commit f352e98ddc
2 changed files with 6 additions and 12 deletions

View File

@ -115,6 +115,7 @@
#![deny(warnings)]
#![feature(core_intrinsics)]
#![feature(drain_filter)]
#[macro_use]
extern crate build_helper;

View File

@ -186,27 +186,20 @@ impl Step for ToolBuild {
than in a previous build:\n");
println!("the following dependencies are duplicated although they \
have the same features enabled:");
for (id, cur, prev) in &duplicates {
for (id, cur, prev) in duplicates.drain_filter(|(_, cur, prev)| cur.2 == prev.2) {
println!(" {}", id);
if cur.2 == prev.2 {
// same features
println!(" `{}` ({:?})\n `{}` ({:?})", cur.0, cur.1, prev.0, prev.1);
}
// same features
println!(" `{}` ({:?})\n `{}` ({:?})", cur.0, cur.1, prev.0, prev.1);
}
println!("the following dependencies have different features:");
for (id, cur, prev) in duplicates {
println!(" {}", id);
if cur.2 == prev.2 {
continue;
}
let cur_features: HashSet<_> = cur.2.into_iter().collect();
let prev_features: HashSet<_> = prev.2.into_iter().collect();
let cur_extra: Vec<_> = cur_features.difference(&prev_features).collect();
let prev_extra: Vec<_> = prev_features.difference(&cur_features).collect();
println!(" `{}` additionally enabled features {:?} at {:?}",
cur.0, cur_extra, cur.1);
cur.0, &cur_features - &prev_features, cur.1);
println!(" `{}` additionally enabled features {:?} at {:?}",
prev.0, prev_extra, prev.1);
prev.0, &prev_features - &cur_features, prev.1);
}
println!("");
panic!("tools should not compile multiple copies of the same crate");