From bbc7bd79393de9f284fa4f50905936dc8cb2aaa0 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sat, 30 Sep 2023 20:28:37 +0200 Subject: Fix clippy warnings --- crates/driver/src/args.rs | 4 ++-- crates/driver/src/context.rs | 2 +- crates/driver/src/recipe.rs | 2 +- crates/driver/src/resolve.rs | 3 +-- crates/driver/src/template.rs | 2 +- crates/runner/src/jobserver.rs | 2 +- crates/runner/src/ns.rs | 4 ++-- crates/runner/src/paths.rs | 2 +- crates/runner/src/tar.rs | 2 +- crates/runner/src/task.rs | 10 +++++----- crates/runner/src/util/clone.rs | 2 ++ 11 files changed, 18 insertions(+), 17 deletions(-) diff --git a/crates/driver/src/args.rs b/crates/driver/src/args.rs index 510a156..805646a 100644 --- a/crates/driver/src/args.rs +++ b/crates/driver/src/args.rs @@ -100,7 +100,7 @@ impl<'a> IntoIterator for &'a TaskArgs { } } -#[allow(clippy::derive_hash_xor_eq)] +#[allow(clippy::derived_hash_with_manual_eq)] impl hash::Hash for TaskArgs { fn hash(&self, _state: &mut H) { // Don't do anything: Properly hashing the task args is likely to cost @@ -116,7 +116,7 @@ pub fn arg>(key: &str, value: A) -> (String, Arg) { #[derive(Clone, Debug, Deserialize, Default, PartialEq, Eq)] pub struct ArgMapping(pub HashMap); -#[allow(clippy::derive_hash_xor_eq)] +#[allow(clippy::derived_hash_with_manual_eq)] impl hash::Hash for ArgMapping { fn hash(&self, _state: &mut H) {} } diff --git a/crates/driver/src/context.rs b/crates/driver/src/context.rs index 70c4556..9674e5f 100644 --- a/crates/driver/src/context.rs +++ b/crates/driver/src/context.rs @@ -354,7 +354,7 @@ impl Context { }) } - pub fn parse<'ctx>(&'ctx self, s: &str) -> error::Result<(TaskRef, TaskFlags)> { + pub fn parse(&self, s: &str) -> error::Result<(TaskRef, TaskFlags)> { let (parsed, flags) = parse::parse_task_with_flags(s).context("Invalid task syntax")?; let recipe = parsed.recipe.to_string(); diff --git a/crates/driver/src/recipe.rs b/crates/driver/src/recipe.rs index c6a06f1..474096b 100644 --- a/crates/driver/src/recipe.rs +++ b/crates/driver/src/recipe.rs @@ -68,7 +68,7 @@ pub fn read_recipes>(path: P) -> Result v, _ => continue, }; - let (basename, version) = match stem.split_once("@") { + let (basename, version) = match stem.split_once('@') { Some((basename, version)) => (basename, Some(version)), None => (stem, None), }; diff --git a/crates/driver/src/resolve.rs b/crates/driver/src/resolve.rs index 35915c0..d03f26d 100644 --- a/crates/driver/src/resolve.rs +++ b/crates/driver/src/resolve.rs @@ -190,8 +190,7 @@ pub fn get_dependent_outputs<'ctx>( .into_iter() .chain( ctx.get_host_depends(task_ref) - .map_err(|err| vec![err.into()])? - .into_iter(), + .map_err(|err| vec![err.into()])?, ) .collect(); runtime_depends(ctx, deps) diff --git a/crates/driver/src/template.rs b/crates/driver/src/template.rs index b663e7d..7bb089c 100644 --- a/crates/driver/src/template.rs +++ b/crates/driver/src/template.rs @@ -6,7 +6,7 @@ use common::error::*; use crate::args::TaskArgs; fn escape(s: &str) -> String { - format!("'{}'", s.replace("'", "'\\''")) + format!("'{}'", s.replace('\'', "'\\''")) } #[derive(Debug)] diff --git a/crates/runner/src/jobserver.rs b/crates/runner/src/jobserver.rs index d4c670c..a44ba6c 100644 --- a/crates/runner/src/jobserver.rs +++ b/crates/runner/src/jobserver.rs @@ -21,7 +21,7 @@ impl Jobserver { let (r, w) = unistd::pipe2(OFlag::O_CLOEXEC | OFlag::O_NONBLOCK).context("pipe()")?; for _ in 0..tokens { - if let Err(_) = unistd::write(w, b"+") { + if unistd::write(w, b"+").is_err() { break; } } diff --git a/crates/runner/src/ns.rs b/crates/runner/src/ns.rs index 3a8b51f..4a8e3e7 100644 --- a/crates/runner/src/ns.rs +++ b/crates/runner/src/ns.rs @@ -17,12 +17,12 @@ pub fn setup_userns(inner_uid: Uid, inner_gid: Gid, outer_uid: Uid, outer_gid: G std::fs::write("/proc/self/setgroups", "deny").expect("Failed to write /proc/self/setgroups"); std::fs::write( "/proc/self/uid_map", - &format!("{} {} 1", inner_uid, outer_uid), + format!("{} {} 1", inner_uid, outer_uid), ) .expect("Failed to write /proc/self/uid_map"); std::fs::write( "/proc/self/gid_map", - &format!("{} {} 1", inner_gid, outer_gid), + format!("{} {} 1", inner_gid, outer_gid), ) .expect("Failed to write /proc/self/gid_map"); } diff --git a/crates/runner/src/paths.rs b/crates/runner/src/paths.rs index 7af1e3a..4b3a126 100644 --- a/crates/runner/src/paths.rs +++ b/crates/runner/src/paths.rs @@ -102,7 +102,7 @@ pub fn depend_dir(hash: &ArchiveHash) -> String { } pub fn depend_lock_filename(hash: &ArchiveHash) -> String { - join(&[DEPENDS_TMP_DIR, &format!("{}.lock", hash.to_string())]) + join(&[DEPENDS_TMP_DIR, &format!("{}.lock", hash)]) } pub fn archive_tmp_filename(hash: &InputHash) -> String { diff --git a/crates/runner/src/tar.rs b/crates/runner/src/tar.rs index 10cac92..1a66408 100644 --- a/crates/runner/src/tar.rs +++ b/crates/runner/src/tar.rs @@ -60,7 +60,7 @@ pub fn pack>( ns::pivot_root(&rootfs); let err = Command::new("tar") - .args(&[ + .args([ "-c", "--sort=name", "--numeric-owner", diff --git a/crates/runner/src/task.rs b/crates/runner/src/task.rs index 19a7484..b716b82 100644 --- a/crates/runner/src/task.rs +++ b/crates/runner/src/task.rs @@ -76,7 +76,7 @@ fn input_hash(task: &Task) -> InputHash { fn init_task(input_hash: &InputHash, task: &Task) -> Result { // Remove metadata first to ensure task invalidation - fs::ensure_removed(&paths::task_cache_filename(input_hash))?; + fs::ensure_removed(paths::task_cache_filename(input_hash))?; let task_state_dir = paths::task_state_dir(input_hash); @@ -250,11 +250,11 @@ fn init_task_rootfs(input_hash: &InputHash, task: &Task) -> Result Result<()> { let task_tmp_dir = paths::task_tmp_dir(input_hash); - fs::ensure_removed(&task_tmp_dir).context("Failed to remove task tmp dir")?; + fs::ensure_removed(task_tmp_dir).context("Failed to remove task tmp dir")?; let task_state_dir = paths::task_state_dir(input_hash); let task_work_dir = paths::join(&[&task_state_dir, paths::TASK_STATE_WORK_SUBDIR]); - fs::ensure_removed(&task_work_dir).context("Failed to remove overlayfs workdir")?; + fs::ensure_removed(task_work_dir).context("Failed to remove overlayfs workdir")?; Ok(()) } @@ -445,7 +445,7 @@ fn run_task(input_hash: &InputHash, task: &Task, jobserver: &mut Jobserver) -> R .context("Failed to unset O_CLOEXEC on jobserver pipe")?; let err = Command::new("sh") - .args(&["-ex", &paths::join(&[paths::TASK_TASKDIR, paths::TASK_RUN])]) + .args(["-ex", &paths::join(&[paths::TASK_TASKDIR, paths::TASK_RUN])]) .stdin(Stdio::null()) .stdout(log_stdout) .stderr(log_stderr) @@ -556,7 +556,7 @@ fn load_cached(input_hash: &InputHash) -> Result { } fn save_cached(input_hash: &InputHash, output: &TaskOutput) -> Result<()> { - fs::mkdir(&paths::task_state_dir(input_hash))?; + fs::mkdir(paths::task_state_dir(input_hash))?; let tmp_filename = paths::task_cache_tmp_filename(input_hash); let filename = paths::task_cache_filename(input_hash); diff --git a/crates/runner/src/util/clone.rs b/crates/runner/src/util/clone.rs index 0af9e4d..51a31c3 100644 --- a/crates/runner/src/util/clone.rs +++ b/crates/runner/src/util/clone.rs @@ -27,6 +27,8 @@ pub unsafe fn clone(flags: sched::CloneFlags) -> nix::Result let size = mem::size_of_val(&args) as libc::size_t; let pid = libc::syscall(libc::SYS_clone3, &mut args, size); + + #[allow(clippy::comparison_chain)] if pid < 0 { Err(errno::Errno::last()) } else if pid == 0 { -- cgit v1.2.3