From 31751f8295d317c1d8ea80a78c21f9ccedef6a01 Mon Sep 17 00:00:00 2001 From: dullbananas Date: Tue, 6 Jun 2023 16:15:59 +0000 Subject: [PATCH] Use Command::args with arrays --- rust | 1 + src/bindgen.rs | 9 +++------ src/build/mod.rs | 9 ++++----- src/build/wasm_target.rs | 2 +- src/child.rs | 2 +- src/generate.rs | 4 +--- src/install/mod.rs | 9 +++------ src/npm.rs | 4 ++-- src/test/mod.rs | 5 ++--- 9 files changed, 18 insertions(+), 27 deletions(-) create mode 160000 rust diff --git a/rust b/rust new file mode 160000 index 00000000..ca6b0087 --- /dev/null +++ b/rust @@ -0,0 +1 @@ +Subproject commit ca6b008756b2743b07c9aa77b88f3918547747b4 diff --git a/src/bindgen.rs b/src/bindgen.rs index 58fab360..84241bb2 100644 --- a/src/bindgen.rs +++ b/src/bindgen.rs @@ -57,10 +57,7 @@ pub fn wasm_bindgen_build( .binary(&Tool::WasmBindgen.to_string())?; let mut cmd = Command::new(&bindgen_path); - cmd.arg(&wasm_path) - .arg("--out-dir") - .arg(out_dir) - .arg(dts_arg); + cmd.arg(&wasm_path).args(["--out-dir", out_dir, dts_arg]); if weak_refs { cmd.arg("--weak-refs"); @@ -72,13 +69,13 @@ pub fn wasm_bindgen_build( let target_arg = build_target_arg(target, &bindgen_path)?; if supports_dash_dash_target(&bindgen_path)? { - cmd.arg("--target").arg(target_arg); + cmd.args(["--target", &target_arg]); } else { cmd.arg(target_arg); } if let Some(value) = out_name { - cmd.arg("--out-name").arg(value); + cmd.args(["--out-name", &value]); } let profile = data.configured_profile(profile); diff --git a/src/build/mod.rs b/src/build/mod.rs index 691ec490..e7651119 100644 --- a/src/build/mod.rs +++ b/src/build/mod.rs @@ -82,7 +82,8 @@ pub fn cargo_build_wasm( PBAR.info(&msg); let mut cmd = Command::new("cargo"); - cmd.current_dir(path).arg("build").arg("--lib"); + cmd.current_dir(path) + .args(["build", "--lib", "--target", "wasm32-unknown-unknown"]); if PBAR.quiet() { cmd.arg("--quiet"); @@ -106,7 +107,6 @@ pub fn cargo_build_wasm( } } - cmd.arg("--target").arg("wasm32-unknown-unknown"); cmd.args(extra_options); child::run(cmd, "cargo build").context("Compiling your crate to WebAssembly failed")?; Ok(()) @@ -128,7 +128,8 @@ pub fn cargo_build_wasm( pub fn cargo_build_wasm_tests(path: &Path, debug: bool, extra_options: &[String]) -> Result<()> { let mut cmd = Command::new("cargo"); - cmd.current_dir(path).arg("build").arg("--tests"); + cmd.current_dir(path) + .args(["build", "--tests", "--target", "wasm32-unknown-unknown"]); if PBAR.quiet() { cmd.arg("--quiet"); @@ -138,8 +139,6 @@ pub fn cargo_build_wasm_tests(path: &Path, debug: bool, extra_options: &[String] cmd.arg("--release"); } - cmd.arg("--target").arg("wasm32-unknown-unknown"); - cmd.args(extra_options); child::run(cmd, "cargo build").context("Compilation of your program failed")?; diff --git a/src/build/wasm_target.rs b/src/build/wasm_target.rs index 8631086f..2ffb227b 100644 --- a/src/build/wasm_target.rs +++ b/src/build/wasm_target.rs @@ -134,7 +134,7 @@ fn check_wasm32_target() -> Result { /// Add wasm32-unknown-unknown using `rustup`. fn rustup_add_wasm_target() -> Result<()> { let mut cmd = Command::new("rustup"); - cmd.arg("target").arg("add").arg("wasm32-unknown-unknown"); + cmd.args(["target", "add", "wasm32-unknown-unknown"]); child::run(cmd, "rustup").context("Adding the wasm32-unknown-unknown target with rustup")?; Ok(()) diff --git a/src/child.rs b/src/child.rs index 52249ac3..e5888d2a 100644 --- a/src/child.rs +++ b/src/child.rs @@ -17,7 +17,7 @@ pub fn new_command(program: &str) -> Command { if cfg!(windows) { let mut cmd = Command::new("cmd"); - cmd.arg("/c").arg(program); + cmd.args(["/c", program]); cmd } else { Command::new(program) diff --git a/src/generate.rs b/src/generate.rs index 660f123b..7f39da40 100644 --- a/src/generate.rs +++ b/src/generate.rs @@ -12,9 +12,7 @@ pub fn generate(template: &str, name: &str, install_status: &install::Status) -> let bin_path = install::get_tool_path(install_status, Tool::CargoGenerate)? .binary(&Tool::CargoGenerate.to_string())?; let mut cmd = Command::new(&bin_path); - cmd.arg("generate"); - cmd.arg("--git").arg(&template); - cmd.arg("--name").arg(&name); + cmd.args(["generate", "--git", template, "--name", name]); println!( "{} Generating a new rustwasm project with name '{}'...", diff --git a/src/install/mod.rs b/src/install/mod.rs index 747a1691..440d945c 100644 --- a/src/install/mod.rs +++ b/src/install/mod.rs @@ -253,14 +253,11 @@ pub fn cargo_install( }; let mut cmd = Command::new("cargo"); - cmd.arg("install") - .arg("--force") - .arg(crate_name) - .arg("--root") - .arg(&tmp); + cmd.args(["install", "--force", &crate_name, "--root"]); + cmd.arg(&tmp); if version != "latest" { - cmd.arg("--version").arg(version); + cmd.args(["--version", version]); } let context = format!("Installing {} with cargo", tool); diff --git a/src/npm.rs b/src/npm.rs index 9cdadaa6..996b5240 100644 --- a/src/npm.rs +++ b/src/npm.rs @@ -20,11 +20,11 @@ pub fn npm_pack(path: &str) -> Result<()> { pub fn npm_publish(path: &str, access: Option, tag: Option) -> Result<()> { let mut cmd = child::new_command("npm"); match access { - Some(a) => cmd.current_dir(path).arg("publish").arg(&a.to_string()), + Some(a) => cmd.current_dir(path).args(["publish", &a.to_string()]), None => cmd.current_dir(path).arg("publish"), }; if let Some(tag) = tag { - cmd.arg("--tag").arg(tag); + cmd.args(["--tag", &tag]); }; child::run(cmd, "npm publish").context("Publishing to npm failed")?; diff --git a/src/test/mod.rs b/src/test/mod.rs index 1fbe920d..8be326a0 100644 --- a/src/test/mod.rs +++ b/src/test/mod.rs @@ -25,7 +25,8 @@ where let mut cmd = Command::new("cargo"); cmd.envs(envs); - cmd.current_dir(path).arg("test"); + cmd.current_dir(path) + .args(["test", "--target", "wasm32-unknown-unknown"]); if PBAR.quiet() { cmd.arg("--quiet"); @@ -35,8 +36,6 @@ where cmd.arg("--release"); } - cmd.arg("--target").arg("wasm32-unknown-unknown"); - cmd.args(extra_options); child::run(cmd, "cargo test").context("Running Wasm tests with wasm-bindgen-test failed")?;