From 7c9f4ba92ab90a664563ee099c9231b42f432ebe Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 21 Aug 2023 08:11:38 +0200 Subject: [PATCH] Fix some clippy warnings --- src/uu/cat/src/cat.rs | 6 +++--- src/uu/chmod/src/chmod.rs | 16 ++++++++-------- src/uu/dircolors/src/dircolors.rs | 4 +--- src/uu/id/src/id.rs | 2 +- src/uu/install/src/install.rs | 2 +- src/uu/mknod/src/mknod.rs | 10 ++++------ src/uu/mv/src/mv.rs | 2 +- src/uu/od/src/prn_char.rs | 2 +- src/uu/sort/src/check.rs | 4 ++-- src/uu/sort/src/merge.rs | 2 +- src/uu/stdbuf/src/stdbuf.rs | 2 +- src/uu/sum/src/sum.rs | 4 ++-- src/uu/sync/src/sync.rs | 2 +- src/uu/tail/src/chunks.rs | 2 +- src/uu/wc/src/wc.rs | 2 +- src/uucore/src/lib/features/fs.rs | 6 +++--- tests/by-util/test_cp.rs | 8 ++++---- tests/by-util/test_factor.rs | 3 +-- tests/by-util/test_link.rs | 2 +- tests/by-util/test_mv.rs | 2 +- tests/by-util/test_rm.rs | 2 +- tests/by-util/test_shuf.rs | 4 ++-- tests/common/util.rs | 16 ++++++++-------- 23 files changed, 50 insertions(+), 55 deletions(-) diff --git a/src/uu/cat/src/cat.rs b/src/uu/cat/src/cat.rs index 2c4117a32..2b5917f35 100644 --- a/src/uu/cat/src/cat.rs +++ b/src/uu/cat/src/cat.rs @@ -192,7 +192,7 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { NumberingMode::None }; - let show_nonprint = vec![ + let show_nonprint = [ options::SHOW_ALL.to_owned(), options::SHOW_NONPRINTING_ENDS.to_owned(), options::SHOW_NONPRINTING_TABS.to_owned(), @@ -201,7 +201,7 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { .iter() .any(|v| matches.get_flag(v)); - let show_ends = vec![ + let show_ends = [ options::SHOW_ENDS.to_owned(), options::SHOW_ALL.to_owned(), options::SHOW_NONPRINTING_ENDS.to_owned(), @@ -209,7 +209,7 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { .iter() .any(|v| matches.get_flag(v)); - let show_tabs = vec![ + let show_tabs = [ options::SHOW_ALL.to_owned(), options::SHOW_TABS.to_owned(), options::SHOW_NONPRINTING_TABS.to_owned(), diff --git a/src/uu/chmod/src/chmod.rs b/src/uu/chmod/src/chmod.rs index a79886037..a8e3aa6c6 100644 --- a/src/uu/chmod/src/chmod.rs +++ b/src/uu/chmod/src/chmod.rs @@ -438,25 +438,25 @@ mod tests { fn test_extract_negative_modes() { // "chmod -w -r file" becomes "chmod -w,-r file". clap does not accept "-w,-r" as MODE. // Therefore, "w" is added as pseudo mode to pass clap. - let (c, a) = extract_negative_modes(vec!["-w", "-r", "file"].iter().map(OsString::from)); + let (c, a) = extract_negative_modes(["-w", "-r", "file"].iter().map(OsString::from)); assert_eq!(c, Some("-w,-r".to_string())); - assert_eq!(a, vec!["w", "file"]); + assert_eq!(a, ["w", "file"]); // "chmod -w file -r" becomes "chmod -w,-r file". clap does not accept "-w,-r" as MODE. // Therefore, "w" is added as pseudo mode to pass clap. - let (c, a) = extract_negative_modes(vec!["-w", "file", "-r"].iter().map(OsString::from)); + let (c, a) = extract_negative_modes(["-w", "file", "-r"].iter().map(OsString::from)); assert_eq!(c, Some("-w,-r".to_string())); - assert_eq!(a, vec!["w", "file"]); + assert_eq!(a, ["w", "file"]); // "chmod -w -- -r file" becomes "chmod -w -r file", where "-r" is interpreted as file. // Again, "w" is needed as pseudo mode. - let (c, a) = extract_negative_modes(vec!["-w", "--", "-r", "f"].iter().map(OsString::from)); + let (c, a) = extract_negative_modes(["-w", "--", "-r", "f"].iter().map(OsString::from)); assert_eq!(c, Some("-w".to_string())); - assert_eq!(a, vec!["w", "--", "-r", "f"]); + assert_eq!(a, ["w", "--", "-r", "f"]); // "chmod -- -r file" becomes "chmod -r file". - let (c, a) = extract_negative_modes(vec!["--", "-r", "file"].iter().map(OsString::from)); + let (c, a) = extract_negative_modes(["--", "-r", "file"].iter().map(OsString::from)); assert_eq!(c, None); - assert_eq!(a, vec!["--", "-r", "file"]); + assert_eq!(a, ["--", "-r", "file"]); } } diff --git a/src/uu/dircolors/src/dircolors.rs b/src/uu/dircolors/src/dircolors.rs index 19c3f7e31..5207858c2 100644 --- a/src/uu/dircolors/src/dircolors.rs +++ b/src/uu/dircolors/src/dircolors.rs @@ -168,9 +168,7 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { println!("{s}"); Ok(()) } - Err(s) => { - return Err(USimpleError::new(1, s)); - } + Err(s) => Err(USimpleError::new(1, s)), } } diff --git a/src/uu/id/src/id.rs b/src/uu/id/src/id.rs index 9f4849f90..10e1e8f03 100644 --- a/src/uu/id/src/id.rs +++ b/src/uu/id/src/id.rs @@ -550,7 +550,7 @@ fn auditid() { println!("asid={}", auditinfo.ai_asid); } -fn id_print(state: &mut State, groups: &[u32]) { +fn id_print(state: &State, groups: &[u32]) { let uid = state.ids.as_ref().unwrap().uid; let gid = state.ids.as_ref().unwrap().gid; let euid = state.ids.as_ref().unwrap().euid; diff --git a/src/uu/install/src/install.rs b/src/uu/install/src/install.rs index e0307fe34..8aca020af 100644 --- a/src/uu/install/src/install.rs +++ b/src/uu/install/src/install.rs @@ -619,7 +619,7 @@ fn copy_files_into_dir(files: &[PathBuf], target_dir: &Path, b: &Behavior) -> UR if !target_dir.is_dir() { return Err(InstallError::TargetDirIsntDir(target_dir.to_path_buf()).into()); } - for sourcepath in files.iter() { + for sourcepath in files { if let Err(err) = sourcepath .metadata() .map_err_context(|| format!("cannot stat {}", sourcepath.quote())) diff --git a/src/uu/mknod/src/mknod.rs b/src/uu/mknod/src/mknod.rs index ad7618cc8..788309073 100644 --- a/src/uu/mknod/src/mknod.rs +++ b/src/uu/mknod/src/mknod.rs @@ -101,12 +101,10 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { matches.get_one::("major"), matches.get_one::("minor"), ) { - (_, None) | (None, _) => { - return Err(UUsageError::new( - 1, - "Special files require major and minor device numbers.", - )); - } + (_, None) | (None, _) => Err(UUsageError::new( + 1, + "Special files require major and minor device numbers.", + )), (Some(&major), Some(&minor)) => { let dev = makedev(major, minor); let exit_code = match file_type { diff --git a/src/uu/mv/src/mv.rs b/src/uu/mv/src/mv.rs index 03d3881b1..518850578 100644 --- a/src/uu/mv/src/mv.rs +++ b/src/uu/mv/src/mv.rs @@ -364,7 +364,7 @@ fn move_files_into_dir(files: &[PathBuf], target_dir: &Path, b: &Behavior) -> UR None }; - for sourcepath in files.iter() { + for sourcepath in files { if let Some(ref pb) = count_progress { pb.set_message(sourcepath.to_string_lossy().to_string()); } diff --git a/src/uu/od/src/prn_char.rs b/src/uu/od/src/prn_char.rs index 7ae6f084c..3d7682073 100644 --- a/src/uu/od/src/prn_char.rs +++ b/src/uu/od/src/prn_char.rs @@ -82,7 +82,7 @@ pub fn format_ascii_dump(bytes: &[u8]) -> String { let mut result = String::new(); result.push('>'); - for c in bytes.iter() { + for c in bytes { if *c >= 0x20 && *c <= 0x7e { result.push_str(C_CHARS[*c as usize]); } else { diff --git a/src/uu/sort/src/check.rs b/src/uu/sort/src/check.rs index 700e3681c..cc687aafc 100644 --- a/src/uu/sort/src/check.rs +++ b/src/uu/sort/src/check.rs @@ -54,7 +54,7 @@ pub fn check(path: &OsStr, settings: &GlobalSettings) -> UResult<()> { let mut prev_chunk: Option = None; let mut line_idx = 0; - for chunk in loaded_receiver.iter() { + for chunk in loaded_receiver { line_idx += 1; if let Some(prev_chunk) = prev_chunk.take() { // Check if the first element of the new chunk is greater than the last @@ -107,7 +107,7 @@ fn reader( settings: &GlobalSettings, ) -> UResult<()> { let mut carry_over = vec![]; - for recycled_chunk in receiver.iter() { + for recycled_chunk in receiver { let should_continue = chunks::read( sender, recycled_chunk, diff --git a/src/uu/sort/src/merge.rs b/src/uu/sort/src/merge.rs index 1a987fb4e..6f7f8d3b2 100644 --- a/src/uu/sort/src/merge.rs +++ b/src/uu/sort/src/merge.rs @@ -211,7 +211,7 @@ fn reader( settings: &GlobalSettings, separator: u8, ) -> UResult<()> { - for (file_idx, recycled_chunk) in recycled_receiver.iter() { + for (file_idx, recycled_chunk) in recycled_receiver { if let Some(ReaderFile { file, sender, diff --git a/src/uu/stdbuf/src/stdbuf.rs b/src/uu/stdbuf/src/stdbuf.rs index e02dd28bc..fc51ee6f7 100644 --- a/src/uu/stdbuf/src/stdbuf.rs +++ b/src/uu/stdbuf/src/stdbuf.rs @@ -130,7 +130,7 @@ fn set_command_env(command: &mut process::Command, buffer_name: &str, buffer_typ } } -fn get_preload_env(tmp_dir: &mut TempDir) -> io::Result<(String, PathBuf)> { +fn get_preload_env(tmp_dir: &TempDir) -> io::Result<(String, PathBuf)> { let (preload, extension) = preload_strings(); let inject_path = tmp_dir.path().join("libstdbuf").with_extension(extension); diff --git a/src/uu/sum/src/sum.rs b/src/uu/sum/src/sum.rs index e9b5a8e07..6a17a630d 100644 --- a/src/uu/sum/src/sum.rs +++ b/src/uu/sum/src/sum.rs @@ -33,7 +33,7 @@ fn bsd_sum(mut reader: Box) -> (usize, u16) { match reader.read(&mut buf) { Ok(n) if n != 0 => { bytes_read += n; - for &byte in buf[..n].iter() { + for &byte in &buf[..n] { checksum = checksum.rotate_right(1); checksum = checksum.wrapping_add(u16::from(byte)); } @@ -56,7 +56,7 @@ fn sysv_sum(mut reader: Box) -> (usize, u16) { match reader.read(&mut buf) { Ok(n) if n != 0 => { bytes_read += n; - for &byte in buf[..n].iter() { + for &byte in &buf[..n] { ret = ret.wrapping_add(u32::from(byte)); } } diff --git a/src/uu/sync/src/sync.rs b/src/uu/sync/src/sync.rs index 821ad639b..e135fbe7f 100644 --- a/src/uu/sync/src/sync.rs +++ b/src/uu/sync/src/sync.rs @@ -173,7 +173,7 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { let path = Path::new(&f); if let Err(e) = open(path, OFlag::O_NONBLOCK, Mode::empty()) { if e != Errno::EACCES || (e == Errno::EACCES && path.is_dir()) { - return e.map_err_context(|| format!("error opening {}", f.quote()))?; + e.map_err_context(|| format!("error opening {}", f.quote()))?; } } } diff --git a/src/uu/tail/src/chunks.rs b/src/uu/tail/src/chunks.rs index 3aa380e20..7a1e5bc34 100644 --- a/src/uu/tail/src/chunks.rs +++ b/src/uu/tail/src/chunks.rs @@ -495,7 +495,7 @@ impl LinesChunk { fn calculate_bytes_offset_from(&self, offset: usize) -> usize { let mut lines_offset = offset; let mut bytes_offset = 0; - for byte in self.get_buffer().iter() { + for byte in self.get_buffer() { if lines_offset == 0 { break; } diff --git a/src/uu/wc/src/wc.rs b/src/uu/wc/src/wc.rs index 9fb8ca7a6..b79559b29 100644 --- a/src/uu/wc/src/wc.rs +++ b/src/uu/wc/src/wc.rs @@ -686,7 +686,7 @@ fn compute_number_width(inputs: &Inputs, settings: &Settings) -> usize { let mut minimum_width = 1; let mut total: u64 = 0; - for input in inputs.iter() { + for input in inputs { match input { Input::Stdin(_) => minimum_width = MINIMUM_WIDTH, Input::Path(path) => { diff --git a/src/uucore/src/lib/features/fs.rs b/src/uucore/src/lib/features/fs.rs index 5804a2235..f7aa157a0 100644 --- a/src/uucore/src/lib/features/fs.rs +++ b/src/uucore/src/lib/features/fs.rs @@ -845,7 +845,7 @@ mod tests { let path1 = temp_file.path(); let path2 = temp_file.path(); - assert_eq!(are_hardlinks_to_same_file(&path1, &path2), true); + assert!(are_hardlinks_to_same_file(&path1, &path2)); } #[cfg(unix)] @@ -860,7 +860,7 @@ mod tests { let path1 = temp_file1.path(); let path2 = temp_file2.path(); - assert_eq!(are_hardlinks_to_same_file(&path1, &path2), false); + assert!(are_hardlinks_to_same_file(&path1, &path2)); } #[cfg(unix)] @@ -873,6 +873,6 @@ mod tests { let path2 = temp_file.path().with_extension("hardlink"); fs::hard_link(&path1, &path2).unwrap(); - assert_eq!(are_hardlinks_to_same_file(&path1, &path2), true); + assert!(are_hardlinks_to_same_file(&path1, &path2)); } } diff --git a/tests/by-util/test_cp.rs b/tests/by-util/test_cp.rs index 18f3829a2..6c07da22e 100644 --- a/tests/by-util/test_cp.rs +++ b/tests/by-util/test_cp.rs @@ -2022,12 +2022,12 @@ fn test_cp_reflink_always_override() { const USERDIR: &str = "dir/"; const MOUNTPOINT: &str = "mountpoint/"; - let src1_path: &str = &vec![MOUNTPOINT, USERDIR, "src1"].concat(); - let src2_path: &str = &vec![MOUNTPOINT, USERDIR, "src2"].concat(); - let dst_path: &str = &vec![MOUNTPOINT, USERDIR, "dst"].concat(); + let src1_path: &str = &[MOUNTPOINT, USERDIR, "src1"].concat(); + let src2_path: &str = &[MOUNTPOINT, USERDIR, "src2"].concat(); + let dst_path: &str = &[MOUNTPOINT, USERDIR, "dst"].concat(); scene.fixtures.mkdir(ROOTDIR); - scene.fixtures.mkdir(vec![ROOTDIR, USERDIR].concat()); + scene.fixtures.mkdir([ROOTDIR, USERDIR].concat()); // Setup: // Because neither `mkfs.btrfs` not btrfs `mount` options allow us to have a mountpoint owned diff --git a/tests/by-util/test_factor.rs b/tests/by-util/test_factor.rs index cf3744964..381b45484 100644 --- a/tests/by-util/test_factor.rs +++ b/tests/by-util/test_factor.rs @@ -173,7 +173,6 @@ fn test_random() { break; } } - let factor = factor; match product.checked_mul(factor) { Some(p) => { @@ -317,7 +316,7 @@ fn run(input_string: &[u8], output_string: &[u8]) { fn test_primes_with_exponents() { let mut input_string = String::new(); let mut output_string = String::new(); - for primes in PRIMES_BY_BITS.iter() { + for primes in PRIMES_BY_BITS { for &prime in *primes { input_string.push_str(&(format!("{prime} "))[..]); output_string.push_str(&(format!("{prime}: {prime}\n"))[..]); diff --git a/tests/by-util/test_link.rs b/tests/by-util/test_link.rs index 3c068af93..7e422cb55 100644 --- a/tests/by-util/test_link.rs +++ b/tests/by-util/test_link.rs @@ -58,7 +58,7 @@ fn test_link_one_argument() { #[test] fn test_link_three_arguments() { let (_, mut ucmd) = at_and_ucmd!(); - let arguments = vec![ + let arguments = [ "test_link_argument1", "test_link_argument2", "test_link_argument3", diff --git a/tests/by-util/test_mv.rs b/tests/by-util/test_mv.rs index ceaa4ba22..afbe28578 100644 --- a/tests/by-util/test_mv.rs +++ b/tests/by-util/test_mv.rs @@ -1278,7 +1278,7 @@ fn test_mv_verbose() { #[test] #[cfg(any(target_os = "linux", target_os = "android"))] // mkdir does not support -m on windows. Freebsd doesn't return a permission error either. -#[cfg(features = "mkdir")] +#[cfg(feature = "mkdir")] fn test_mv_permission_error() { let scene = TestScenario::new("mkdir"); let folder1 = "bar"; diff --git a/tests/by-util/test_rm.rs b/tests/by-util/test_rm.rs index 737c4fa79..ae8fcfe99 100644 --- a/tests/by-util/test_rm.rs +++ b/tests/by-util/test_rm.rs @@ -478,7 +478,7 @@ fn test_rm_prompts() { // Needed for talking with stdin on platforms where CRLF or LF matters const END_OF_LINE: &str = if cfg!(windows) { "\r\n" } else { "\n" }; - let mut answers = vec![ + let mut answers = [ "rm: descend into directory 'a'?", "rm: remove write-protected regular empty file 'a/empty-no-write'?", "rm: remove symbolic link 'a/slink'?", diff --git a/tests/by-util/test_shuf.rs b/tests/by-util/test_shuf.rs index 44282b8a3..b56fbe7d9 100644 --- a/tests/by-util/test_shuf.rs +++ b/tests/by-util/test_shuf.rs @@ -71,7 +71,7 @@ fn test_echo() { #[test] fn test_head_count() { let repeat_limit = 5; - let input_seq = vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; + let input_seq = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; let input = input_seq .iter() .map(ToString::to_string) @@ -102,7 +102,7 @@ fn test_head_count() { #[test] fn test_repeat() { let repeat_limit = 15000; - let input_seq = vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; + let input_seq = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; let input = input_seq .iter() .map(ToString::to_string) diff --git a/tests/common/util.rs b/tests/common/util.rs index 995312f08..8ef5f517a 100644 --- a/tests/common/util.rs +++ b/tests/common/util.rs @@ -541,7 +541,7 @@ impl CmdResult { let contents = String::from_utf8(read_scenario_fixture(&self.tmpd, file_rel_path)).unwrap(); let possible_values = template_vars.iter().map(|vars| { let mut contents = contents.clone(); - for kv in vars.iter() { + for kv in vars { contents = contents.replace(&kv.0, &kv.1); } contents @@ -2211,12 +2211,12 @@ impl UChild { let join_handle = thread::spawn(move || { let mut writer = BufWriter::new(stdin); - match writer.write_all(&content).and_then(|_| writer.flush()) { + match writer.write_all(&content).and_then(|()| writer.flush()) { Err(error) if !ignore_stdin_write_error => Err(io::Error::new( io::ErrorKind::Other, format!("failed to write to stdin of child: {error}"), )), - Ok(_) | Err(_) => Ok(()), + Ok(()) | Err(_) => Ok(()), } }); @@ -2263,12 +2263,12 @@ impl UChild { pub fn try_write_in>>(&mut self, data: T) -> io::Result<()> { let stdin = self.raw.stdin.as_mut().unwrap(); - match stdin.write_all(&data.into()).and_then(|_| stdin.flush()) { + match stdin.write_all(&data.into()).and_then(|()| stdin.flush()) { Err(error) if !self.ignore_stdin_write_error => Err(io::Error::new( io::ErrorKind::Other, format!("failed to write to stdin of child: {error}"), )), - Ok(_) | Err(_) => Ok(()), + Ok(()) | Err(_) => Ok(()), } } @@ -2505,11 +2505,11 @@ pub fn expected_result(ts: &TestScenario, args: &[&str]) -> std::result::Result< /// This is a convenience wrapper to run a ucmd with root permissions. /// It can be used to test programs when being root is needed -/// This runs 'sudo -E --non-interactive target/debug/coreutils util_name args` +/// This runs `sudo -E --non-interactive target/debug/coreutils util_name args` /// This is primarily designed to run in an environment where whoami is in $path /// and where non-interactive sudo is possible. /// To check if i) non-interactive sudo is possible and ii) if sudo works, this runs: -/// 'sudo -E --non-interactive whoami' first. +/// `sudo -E --non-interactive whoami` first. /// /// This return an `Err()` if run inside CICD because there's no 'sudo'. /// @@ -3279,7 +3279,7 @@ mod tests { std::assert_eq!(error.to_string(), "kill: Timeout of '0s' reached"); } Err(error) => panic!("Assertion failed: Expected error with timeout but was: {error}"), - Ok(_) => panic!("Assertion failed: Expected timeout of `try_kill`."), + Ok(()) => panic!("Assertion failed: Expected timeout of `try_kill`."), } }