diff --git a/src/dependencies.rs b/src/dependencies.rs index 53485cf..e2253dd 100644 --- a/src/dependencies.rs +++ b/src/dependencies.rs @@ -135,8 +135,8 @@ pub(crate) struct Dependency { pub path: Option, #[serde(default, skip_serializing_if = "is_false")] pub optional: bool, - #[serde(rename = "default-features", default = "get_true")] - pub default_features: bool, + #[serde(rename = "default-features", skip_serializing_if = "Option::is_none")] + pub default_features: Option, #[serde(default, skip_serializing_if = "Vec::is_empty")] pub features: Vec, #[serde(skip_serializing_if = "Option::is_none")] @@ -187,10 +187,6 @@ pub(crate) struct Patch { pub rest: Map, } -fn get_true() -> bool { - true -} - fn is_false(boolean: &bool) -> bool { !*boolean } @@ -269,7 +265,7 @@ impl<'de> Deserialize<'de> for Dependency { version: Some(s.to_owned()), path: None, optional: false, - default_features: true, + default_features: Some(true), features: Vec::new(), git: None, branch: None, diff --git a/src/run.rs b/src/run.rs index b00dd33..ff62e2c 100644 --- a/src/run.rs +++ b/src/run.rs @@ -237,7 +237,7 @@ impl Runner { version: None, path: Some(source_dir.clone()), optional: false, - default_features: false, + default_features: Some(false), features: Vec::new(), git: None, branch: None,