From d3324bc9e75b895e35a94d60204e66962b755f11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20Thei=C3=9Fen?= Date: Tue, 20 Jul 2021 10:37:23 +0200 Subject: [PATCH 1/2] Check all the code with clippy --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 760ef974..aa2b90ab 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -77,7 +77,7 @@ clippy: stage: check <<: *docker-env script: - - cargo clippy --verbose -- -D warnings; + - cargo clippy --verbose --all-targets --all-features -- -D warnings; #### stage: test (all features) -- GitLab From e4593108778504ce0c29767a8086c504915f14f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20Thei=C3=9Fen?= Date: Tue, 20 Jul 2021 14:11:59 +0200 Subject: [PATCH 2/2] Fix clippy warnings --- src/cmd/build.rs | 9 +++------ src/cmd/deploy.rs | 2 +- src/cmd/instantiate.rs | 4 ++-- src/cmd/metadata.rs | 19 +++++++------------ src/workspace/manifest.rs | 8 +++----- 5 files changed, 16 insertions(+), 26 deletions(-) diff --git a/src/cmd/build.rs b/src/cmd/build.rs index 416eaa28..2d1b0216 100644 --- a/src/cmd/build.rs +++ b/src/cmd/build.rs @@ -643,10 +643,7 @@ mod tests_ci_only { /// Modifies the `Cargo.toml` under the supplied `cargo_toml_path` by /// setting `optimization-passes` in `[package.metadata.contract]` to `passes`. - fn write_optimization_passes_into_manifest( - cargo_toml_path: &PathBuf, - passes: OptimizationPasses, - ) { + fn write_optimization_passes_into_manifest(cargo_toml_path: &Path, passes: OptimizationPasses) { let manifest_path = ManifestPath::new(cargo_toml_path).expect("manifest path creation failed"); let mut manifest = Manifest::new(manifest_path.clone()).expect("manifest creation failed"); @@ -760,7 +757,7 @@ mod tests_ci_only { with_new_contract_project(|manifest_path| { // given write_optimization_passes_into_manifest( - &manifest_path.clone().into(), + manifest_path.as_ref(), OptimizationPasses::Three, ); let cmd = BuildCommand { @@ -798,7 +795,7 @@ mod tests_ci_only { with_new_contract_project(|manifest_path| { // given write_optimization_passes_into_manifest( - &manifest_path.clone().into(), + manifest_path.as_ref(), OptimizationPasses::Three, ); let cmd = BuildCommand { diff --git a/src/cmd/deploy.rs b/src/cmd/deploy.rs index 839fac2b..2c58f754 100644 --- a/src/cmd/deploy.rs +++ b/src/cmd/deploy.rs @@ -66,7 +66,7 @@ pub(crate) fn execute_deploy( let events = cli.put_code_and_watch(&signer, &code).await?; let code_stored = events .code_stored()? - .ok_or(anyhow::anyhow!("Failed to find CodeStored event"))?; + .context("Failed to find CodeStored event")?; Ok(code_stored.code_hash) }) diff --git a/src/cmd/instantiate.rs b/src/cmd/instantiate.rs index 786bb1d3..f451dab1 100644 --- a/src/cmd/instantiate.rs +++ b/src/cmd/instantiate.rs @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with cargo-contract. If not, see . -use anyhow::Result; +use anyhow::{Context, Result}; use subxt::{balances::Balances, contracts::*, system::System, ClientBuilder, DefaultNodeRuntime}; use crate::{ExtrinsicOpts, HexData}; @@ -43,7 +43,7 @@ pub(crate) fn execute_instantiate( .await?; let instantiated = events .instantiated()? - .ok_or(anyhow::anyhow!("Failed to find Instantiated event"))?; + .context("Failed to find Instantiated event")?; Ok(instantiated.contract) }) diff --git a/src/cmd/metadata.rs b/src/cmd/metadata.rs index 8cd8184e..6dbe5b4b 100644 --- a/src/cmd/metadata.rs +++ b/src/cmd/metadata.rs @@ -228,6 +228,7 @@ mod tests { cmd, crate_metadata::CrateMetadata, util::tests::with_new_contract_project, BuildArtifacts, ManifestPath, OptimizationPasses, UnstableFlags, Verbosity, }; + use anyhow::Context; use contract_metadata::*; use serde_json::{Map, Value}; use std::{fmt::Write, fs}; @@ -249,9 +250,9 @@ mod tests { fn package_mut(&mut self) -> anyhow::Result<&mut value::Table> { self.toml .get_mut("package") - .ok_or(anyhow::anyhow!("package section not found"))? + .context("package section not found")? .as_table_mut() - .ok_or(anyhow::anyhow!("package section should be a table")) + .context("package section should be a table") } /// Add a key/value to the `[package.metadata.contract.user]` section @@ -264,19 +265,15 @@ mod tests { .entry("metadata") .or_insert(value::Value::Table(Default::default())) .as_table_mut() - .ok_or(anyhow::anyhow!("metadata section should be a table"))? + .context("metadata section should be a table")? .entry("contract") .or_insert(value::Value::Table(Default::default())) .as_table_mut() - .ok_or(anyhow::anyhow!( - "metadata.contract section should be a table" - ))? + .context("metadata.contract section should be a table")? .entry("user") .or_insert(value::Value::Table(Default::default())) .as_table_mut() - .ok_or(anyhow::anyhow!( - "metadata.contract.user section should be a table" - ))? + .context("metadata.contract.user section should be a table")? .insert(key.into(), value); Ok(()) } @@ -393,9 +390,7 @@ mod tests { .insert("some-user-provided-field".into(), "and-its-value".into()); expected_user_metadata.insert( "more-user-provided-fields".into(), - serde_json::Value::Array( - vec!["and".into(), "their".into(), "values".into()].into(), - ), + serde_json::Value::Array(vec!["and".into(), "their".into(), "values".into()]), ); assert_eq!(build_byte_str(&expected_hash.0[..]), hash.as_str().unwrap()); diff --git a/src/workspace/manifest.rs b/src/workspace/manifest.rs index 7db38880..fba2d0b0 100644 --- a/src/workspace/manifest.rs +++ b/src/workspace/manifest.rs @@ -188,17 +188,15 @@ impl Manifest { .entry("package") .or_insert(value::Value::Table(Default::default())) .as_table_mut() - .ok_or(anyhow::anyhow!("package section should be a table"))? + .context("package section should be a table")? .entry("metadata") .or_insert(value::Value::Table(Default::default())) .as_table_mut() - .ok_or(anyhow::anyhow!("metadata section should be a table"))? + .context("metadata section should be a table")? .entry("contract") .or_insert(value::Value::Table(Default::default())) .as_table_mut() - .ok_or(anyhow::anyhow!( - "metadata.contract section should be a table" - ))? + .context("metadata.contract section should be a table")? .insert( "optimization-passes".to_string(), value::Value::String(passes.to_string()), -- GitLab