Correct formatting with cargo fmt

This commit is contained in:
Dirkjan Ochtman 2018-04-13 19:59:55 +02:00
parent 008c369084
commit 90954d700c
2 changed files with 25 additions and 14 deletions

View file

@ -213,7 +213,6 @@ pub fn resolve_with_previous<'a, 'cfg>(
registry.lock_patches();
}
for member in ws.members() {
registry.add_sources(&[member.package_id().source_id().clone()])?;
}
@ -223,12 +222,18 @@ pub fn resolve_with_previous<'a, 'cfg>(
let mut members = Vec::new();
match method {
Method::Everything => members.extend(ws.members()),
Method::Required { features, all_features, uses_default_features, .. } => {
Method::Required {
features,
all_features,
uses_default_features,
..
} => {
if specs.len() > 1 && !features.is_empty() {
bail!("cannot specify features for more than one package");
}
members.extend(
ws.members().filter(|m| specs.iter().any(|spec| spec.matches(m.package_id())))
ws.members()
.filter(|m| specs.iter().any(|spec| spec.matches(m.package_id()))),
);
// Edge case: running `cargo build -p foo`, where `foo` is not a member
// of current workspace. Add all packages from workspace to get `foo`
@ -293,7 +298,6 @@ pub fn resolve_with_previous<'a, 'cfg>(
}
};
let root_replace = ws.root_replace();
let replace = match previous {

View file

@ -1664,39 +1664,46 @@ fn combining_features_and_package() {
main = []
"#,
)
.file("foo/src/main.rs", r#"
.file(
"foo/src/main.rs",
r#"
#[cfg(feature = "main")]
fn main() {}
"#)
"#,
)
.build();
assert_that(
p.cargo("build -Z package-features --all --features main")
.masquerade_as_nightly_cargo(),
execs().with_status(101).with_stderr_contains("\
[ERROR] cannot specify features for more than one package"
execs().with_status(101).with_stderr_contains(
"\
[ERROR] cannot specify features for more than one package",
),
);
assert_that(
p.cargo("build -Z package-features --package dep --features main")
.masquerade_as_nightly_cargo(),
execs().with_status(101).with_stderr_contains("\
[ERROR] cannot specify features for packages outside of workspace"
execs().with_status(101).with_stderr_contains(
"\
[ERROR] cannot specify features for packages outside of workspace",
),
);
assert_that(
p.cargo("build -Z package-features --package dep --all-features")
.masquerade_as_nightly_cargo(),
execs().with_status(101).with_stderr_contains("\
[ERROR] cannot specify features for packages outside of workspace"
execs().with_status(101).with_stderr_contains(
"\
[ERROR] cannot specify features for packages outside of workspace",
),
);
assert_that(
p.cargo("build -Z package-features --package dep --no-default-features")
.masquerade_as_nightly_cargo(),
execs().with_status(101).with_stderr_contains("\
[ERROR] cannot specify features for packages outside of workspace"
execs().with_status(101).with_stderr_contains(
"\
[ERROR] cannot specify features for packages outside of workspace",
),
);