From df6d5872b1db011a3023e0a4e0aa54466fb4b90f Mon Sep 17 00:00:00 2001 From: Taxrosdev Date: Tue, 10 Jun 2025 15:54:15 +1200 Subject: [PATCH 1/3] watch: fix minimum seconds --- src/uu/watch/src/watch.rs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/uu/watch/src/watch.rs b/src/uu/watch/src/watch.rs index b1e7d6b..1943fe1 100644 --- a/src/uu/watch/src/watch.rs +++ b/src/uu/watch/src/watch.rs @@ -19,7 +19,12 @@ fn parse_interval(input: &str) -> Result { // Find index where to split string into seconds and nanos let Some(index) = input.find([',', '.']) else { let seconds: u64 = input.parse()?; - return Ok(Duration::new(seconds, 0)); + + if seconds != 0 { + return Ok(Duration::new(seconds, 0)); + } else { + return Ok(Duration::from_millis(100)); + }; }; // If the seconds string is empty, set seconds to 0 @@ -250,4 +255,16 @@ mod parse_interval_tests { let interval = parse_interval("1.00000000000a"); assert!(interval.is_err()) } + + #[test] + fn test_minimum_seconds() { + let interval = parse_interval("0"); + assert_eq!(Ok(Duration::from_millis(100)), interval); + } + + #[test] + fn test_minimum_nanos() { + let interval = parse_interval("0.0"); + assert_eq!(Ok(Duration::from_millis(100)), interval); + } } From 2eb30d5ed40a9d749c388b9dba7bd2723feba423 Mon Sep 17 00:00:00 2001 From: Taxrosdev Date: Tue, 10 Jun 2025 16:15:58 +1200 Subject: [PATCH 2/3] deps: add env feature to clap --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index a707bb2..0146904 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -53,7 +53,7 @@ feat_common_core = [ [workspace.dependencies] bytesize = "2.0.0" chrono = { version = "0.4.38", default-features = false, features = ["clock"] } -clap = { version = "4.5.4", features = ["wrap_help", "cargo"] } +clap = { version = "4.5.4", features = ["wrap_help", "cargo", "env"] } clap_complete = "4.5.2" clap_mangen = "0.2.20" crossterm = "0.29.0" From 403830db21b651c742197f0865cf4f99e58510b8 Mon Sep 17 00:00:00 2001 From: Taxrosdev Date: Wed, 11 Jun 2025 09:41:55 +1200 Subject: [PATCH 3/3] style: readability fix --- src/uu/watch/src/watch.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/uu/watch/src/watch.rs b/src/uu/watch/src/watch.rs index 1943fe1..abf2db2 100644 --- a/src/uu/watch/src/watch.rs +++ b/src/uu/watch/src/watch.rs @@ -20,10 +20,10 @@ fn parse_interval(input: &str) -> Result { let Some(index) = input.find([',', '.']) else { let seconds: u64 = input.parse()?; - if seconds != 0 { - return Ok(Duration::new(seconds, 0)); + return if seconds == 0 { + Ok(Duration::from_millis(100)) } else { - return Ok(Duration::from_millis(100)); + Ok(Duration::new(seconds, 0)) }; };