about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPhilipp Hansch <dev@phansch.net>2018-12-04 07:24:11 +0100
committerGitHub <noreply@github.com>2018-12-04 07:24:11 +0100
commit8b2eb06df30edeec2046f919dd359b5b86077d6a (patch)
tree4b8d8252012979a16125f286909e5025eaaf2a8b
parentc00210d7ba3a5b08babe289de942b687d5ff6c8b (diff)
parent46ee676139006c74d7d7594a755d84290a5f1eee (diff)
downloadrust-8b2eb06df30edeec2046f919dd359b5b86077d6a.tar.gz
rust-8b2eb06df30edeec2046f919dd359b5b86077d6a.zip
Merge pull request #3488 from phansch/fix_cargo_lint_bug
Fix wildcard_dependencies false positive
-rw-r--r--clippy_lints/src/wildcard_dependencies.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/clippy_lints/src/wildcard_dependencies.rs b/clippy_lints/src/wildcard_dependencies.rs
index 59f3cc78afe..6de391d882f 100644
--- a/clippy_lints/src/wildcard_dependencies.rs
+++ b/clippy_lints/src/wildcard_dependencies.rs
@@ -13,6 +13,7 @@ use crate::syntax::{ast::*, source_map::DUMMY_SP};
 use crate::utils::span_lint;
 
 use cargo_metadata;
+use if_chain::if_chain;
 use semver;
 
 /// **What it does:** Checks for wildcard dependencies in the `Cargo.toml`.
@@ -54,8 +55,12 @@ impl EarlyLintPass for Pass {
 
         for dep in &metadata.packages[0].dependencies {
             // VersionReq::any() does not work
-            if let Ok(wildcard_ver) = semver::VersionReq::parse("*") {
-                if dep.req == wildcard_ver {
+            if_chain! {
+                if let Ok(wildcard_ver) = semver::VersionReq::parse("*");
+                if let Some(ref source) = dep.source;
+                if !source.starts_with("git");
+                if dep.req == wildcard_ver;
+                then {
                     span_lint(
                         cx,
                         WILDCARD_DEPENDENCIES,