Merge pull request #5182 from sylvestre/clippy_

Fix some of the recent clippy warnings
This commit is contained in:
Sylvestre Ledru 2023-08-21 16:21:02 -04:00 committed by GitHub
commit 0b9c829bce
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
24 changed files with 54 additions and 58 deletions

View file

@ -40,6 +40,7 @@ pub fn main() {
mf.write_all(
"type UtilityMap<T> = phf::OrderedMap<&'static str, (fn(T) -> i32, fn() -> Command)>;\n\
\n\
#[allow(clippy::too_many_lines)]
fn util_map<T: uucore::Args>() -> UtilityMap<T> {\n"
.as_bytes(),
)

View file

@ -187,7 +187,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(),
@ -196,7 +196,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(),
@ -204,7 +204,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(),

View file

@ -436,25 +436,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"]);
}
}

View file

@ -165,9 +165,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)),
}
}

View file

@ -305,7 +305,7 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> {
}
if default_format {
id_print(&mut state, &groups);
id_print(&state, &groups);
}
print!("{line_ending}");
@ -547,7 +547,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;

View file

@ -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()))

View file

@ -99,12 +99,10 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> {
matches.get_one::<u64>("major"),
matches.get_one::<u64>("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 {

View file

@ -361,7 +361,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());
}

View file

@ -86,7 +86,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 {

View file

@ -54,7 +54,7 @@ pub fn check(path: &OsStr, settings: &GlobalSettings) -> UResult<()> {
let mut prev_chunk: Option<Chunk> = 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,

View file

@ -215,7 +215,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,

View file

@ -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);
@ -152,8 +152,8 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> {
let mut command = process::Command::new(command_values.next().unwrap());
let command_params: Vec<&str> = command_values.map(|s| s.as_ref()).collect();
let mut tmp_dir = tempdir().unwrap();
let (preload_env, libstdbuf) = get_preload_env(&mut tmp_dir).map_err_context(String::new)?;
let tmp_dir = tempdir().unwrap();
let (preload_env, libstdbuf) = get_preload_env(&tmp_dir).map_err_context(String::new)?;
command.env(preload_env, libstdbuf);
set_command_env(&mut command, "_STDBUF_I", &options.stdin);
set_command_env(&mut command, "_STDBUF_O", &options.stdout);

View file

@ -33,7 +33,7 @@ fn bsd_sum(mut reader: Box<dyn Read>) -> (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<dyn Read>) -> (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));
}
}

View file

@ -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()))?;
}
}
}

View file

@ -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;
}

View file

@ -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) => {

View file

@ -842,7 +842,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)]
@ -857,7 +857,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)]
@ -870,6 +870,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));
}
}

View file

@ -2026,12 +2026,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

View file

@ -171,7 +171,6 @@ fn test_random() {
break;
}
}
let factor = factor;
match product.checked_mul(factor) {
Some(p) => {
@ -315,7 +314,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"))[..]);

View file

@ -62,7 +62,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",

View file

@ -1282,7 +1282,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";

View file

@ -482,7 +482,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'?",

View file

@ -75,7 +75,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)
@ -106,7 +106,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)

View file

@ -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<T: Into<Vec<u8>>>(&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`."),
}
}