diff --git a/build.rs b/build.rs index 84032c1..efb11ad 100644 --- a/build.rs +++ b/build.rs @@ -8,7 +8,7 @@ fn main() -> Result<(), Box> { let target = std::env::var("TARGET")?; let output = std::env::var("OUT_DIR")?; - ::std::fs::write(format!("{}/target", output), target.as_bytes())?; + ::std::fs::write(format!("{output}/target"), target.as_bytes())?; println!("cargo:rerun-if-env-changed=DOCS_RS"); if std::env::var_os("DOCS_RS").as_deref() == Some(std::ffi::OsStr::new("1")) { diff --git a/src/build.rs b/src/build.rs index 6df0e62..4d8c95d 100644 --- a/src/build.rs +++ b/src/build.rs @@ -1,6 +1,6 @@ use crate::cmd::{Command, MountKind, Runnable, SandboxBuilder}; use crate::prepare::Prepare; -use crate::{Crate, Toolchain, Workspace}; +use crate::{Crate, PrepareError, Toolchain, Workspace}; use std::path::PathBuf; use std::vec::Vec; @@ -194,7 +194,13 @@ impl BuildDirectory { } let mut prepare = Prepare::new(&self.workspace, toolchain, krate, &source_dir, patches); - prepare.prepare()?; + prepare.prepare().map_err(|err| { + if err.downcast_ref::().is_none() { + err.context(PrepareError::Uncategorized) + } else { + err + } + })?; std::fs::create_dir_all(self.target_dir())?; let res = f(&Build { diff --git a/src/cmd/mod.rs b/src/cmd/mod.rs index 922592a..5077033 100644 --- a/src/cmd/mod.rs +++ b/src/cmd/mod.rs @@ -501,14 +501,14 @@ impl<'w, 'pl> Command<'w, 'pl> { cmd.env(k, v); } - let cmdstr = format!("{:?}", cmd); + let cmdstr = format!("{cmd:?}"); if let Some(ref cd) = self.cd { cmd.current_dir(cd); } if self.log_command { - info!("running `{}`", cmdstr); + info!("running `{cmdstr}`"); } let out = RUNTIME @@ -521,7 +521,7 @@ impl<'w, 'pl> Command<'w, 'pl> { self.log_output, )) .map_err(|e| { - error!("error running command: {}", e); + error!("error running command: {e}"); e })?; diff --git a/src/cmd/sandbox.rs b/src/cmd/sandbox.rs index e553ead..3a3954b 100644 --- a/src/cmd/sandbox.rs +++ b/src/cmd/sandbox.rs @@ -29,7 +29,7 @@ impl SandboxImage { /// error will be returned instead. pub fn remote(name: &str) -> Result { let mut image = SandboxImage { name: name.into() }; - info!("pulling image {} from Docker Hub", name); + info!("pulling image {name} from Docker Hub"); Command::new_workspaceless("docker") .args(&["pull", name]) .run() @@ -219,7 +219,7 @@ impl SandboxBuilder { } pub(super) fn user(mut self, user: u32, group: u32) -> Self { - self.user = Some(format!("{}:{}", user, group)); + self.user = Some(format!("{user}:{group}")); self } @@ -242,7 +242,7 @@ impl SandboxBuilder { for (var, value) in &self.env { args.push("-e".into()); - args.push(format! {"{}={}", var, value}) + args.push(format! {"{var}={value}"}) } if let Some(workdir) = self.workdir { @@ -308,10 +308,10 @@ impl SandboxBuilder { scopeguard::defer! {{ if let Err(err) = container.delete() { error!("failed to delete container {}", container.id); - error!("caused by: {}", err); + error!("caused by: {err}"); let mut err: &dyn Error = &err; while let Some(cause) = err.source() { - error!("caused by: {}", cause); + error!("caused by: {cause}"); err = cause; } } diff --git a/src/crates/registry.rs b/src/crates/registry.rs index 26344fb..fd89993 100644 --- a/src/crates/registry.rs +++ b/src/crates/registry.rs @@ -122,7 +122,7 @@ impl RegistryCrate { git2::build::RepoBuilder::new() .fetch_options(fo) .clone(url, &index_path) - .with_context(|| format!("unable to update_index at {}", url))?; + .with_context(|| format!("unable to update_index at {url}"))?; info!("cloned registry index"); } let config = std::fs::read_to_string(index_path.join("config.json"))?; diff --git a/src/inside_docker.rs b/src/inside_docker.rs index af3c513..ec3cb4c 100644 --- a/src/inside_docker.rs +++ b/src/inside_docker.rs @@ -62,7 +62,7 @@ pub(crate) fn probe_container_id(workspace: &Workspace) -> anyhow::Result