Auto merge of #9686 - hi-rustin:rustin-patch-error, r=alexcrichton

When a dependency does not have a version, git or path, fails directly

Make this warning be an error.

ref: https://github.com/rust-lang/cargo/issues/9682#issuecomment-879108193
This commit is contained in:
bors 2021-07-14 16:09:57 +00:00
commit 98d5d10268
2 changed files with 9 additions and 8 deletions

View File

@ -1707,14 +1707,11 @@ impl<P: ResolveToPath> DetailedTomlDependency<P> {
kind: Option<DepKind>,
) -> CargoResult<Dependency> {
if self.version.is_none() && self.path.is_none() && self.git.is_none() {
let msg = format!(
bail!(
"dependency ({}) specified without \
providing a local path, Git repository, or \
version to use. This will be considered an \
error in future versions",
providing a local path, Git repository, or version to use.",
name_in_toml
);
cx.warnings.push(msg);
}
if let Some(version) = &self.version {

View File

@ -796,10 +796,14 @@ fn empty_dependencies() {
Package::new("bar", "0.0.1").publish();
p.cargo("build")
.with_stderr_contains(
.with_status(101)
.with_stderr(
"\
warning: dependency (bar) specified without providing a local path, Git repository, or version \
to use. This will be considered an error in future versions
[ERROR] failed to parse manifest at `[..]`
Caused by:
dependency (bar) specified without providing a local path, Git repository, or version \
to use.
",
)
.run();