From 537edf510805b852147eb13814d0dcc2156214c1 Mon Sep 17 00:00:00 2001 From: Bluemangoo Date: Thu, 9 Apr 2026 14:46:03 +0800 Subject: [PATCH 01/30] vmstat: fix meminfo unit --- src/uu/vmstat/src/parser.rs | 42 ++++++++++++++++++++++++++----------- 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/src/uu/vmstat/src/parser.rs b/src/uu/vmstat/src/parser.rs index 63fdcf2..728010d 100644 --- a/src/uu/vmstat/src/parser.rs +++ b/src/uu/vmstat/src/parser.rs @@ -211,6 +211,16 @@ pub struct Meminfo { pub swap_total: bytesize::ByteSize, pub swap_free: bytesize::ByteSize, } + +#[cfg(target_os = "linux")] +fn kb_to_kib(mut size: bytesize::ByteSize) -> bytesize::ByteSize { + // "kB" means KiB instead of KB + // Convert from 1000-based(parsed by bytesize from "kB" ended string) to 1024-based(which it actually is) + // See more at https://github.com/uutils/procps/issues/667 + size.0 = size.0 / 1000 * 1024; + size +} + #[cfg(target_os = "linux")] impl Meminfo { pub fn current() -> Self { @@ -221,20 +231,28 @@ impl Meminfo { pub fn from_proc_map(proc_map: &HashMap) -> Self { use std::str::FromStr; - let mem_total = bytesize::ByteSize::from_str(proc_map.get("MemTotal").unwrap()).unwrap(); - let mem_free = bytesize::ByteSize::from_str(proc_map.get("MemFree").unwrap()).unwrap(); + let mem_total = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("MemTotal").unwrap()).unwrap()); + let mem_free = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("MemFree").unwrap()).unwrap()); let mem_available = - bytesize::ByteSize::from_str(proc_map.get("MemAvailable").unwrap()).unwrap(); - let buffers = bytesize::ByteSize::from_str(proc_map.get("Buffers").unwrap()).unwrap(); - let cached = bytesize::ByteSize::from_str(proc_map.get("Cached").unwrap()).unwrap(); + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("MemAvailable").unwrap()).unwrap()); + let buffers = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("Buffers").unwrap()).unwrap()); + let cached = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("Cached").unwrap()).unwrap()); let s_reclaimable = - bytesize::ByteSize::from_str(proc_map.get("SReclaimable").unwrap()).unwrap(); + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("SReclaimable").unwrap()).unwrap()); let swap_cached = - bytesize::ByteSize::from_str(proc_map.get("SwapCached").unwrap()).unwrap(); - let active = bytesize::ByteSize::from_str(proc_map.get("Active").unwrap()).unwrap(); - let inactive = bytesize::ByteSize::from_str(proc_map.get("Inactive").unwrap()).unwrap(); - let swap_total = bytesize::ByteSize::from_str(proc_map.get("SwapTotal").unwrap()).unwrap(); - let swap_free = bytesize::ByteSize::from_str(proc_map.get("SwapFree").unwrap()).unwrap(); + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("SwapCached").unwrap()).unwrap()); + let active = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("Active").unwrap()).unwrap()); + let inactive = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("Inactive").unwrap()).unwrap()); + let swap_total = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("SwapTotal").unwrap()).unwrap()); + let swap_free = + kb_to_kib(bytesize::ByteSize::from_str(proc_map.get("SwapFree").unwrap()).unwrap()); Self { mem_total, mem_free, @@ -258,7 +276,7 @@ pub struct DiskStatParseError; #[cfg(target_os = "linux")] impl Display for DiskStatParseError { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { - std::fmt::Debug::fmt("Failed to parse diskstat line", f) + Debug::fmt("Failed to parse diskstat line", f) } } From c1801fd2646f83c7b7d2e07a8ba2e1c66e6348c2 Mon Sep 17 00:00:00 2001 From: yushuoqi Date: Wed, 8 Apr 2026 12:24:59 +0800 Subject: [PATCH 02/30] ps: improve the parameter output of the ps command --- src/uu/ps/src/process_selection.rs | 2 +- src/uu/ps/src/ps.rs | 5 ++++- tests/by-util/test_ps.rs | 21 ++++++++++++++++++--- 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/uu/ps/src/process_selection.rs b/src/uu/ps/src/process_selection.rs index c2a0a5a..5cacf00 100644 --- a/src/uu/ps/src/process_selection.rs +++ b/src/uu/ps/src/process_selection.rs @@ -71,7 +71,7 @@ pub struct ProcessSelectionSettings { impl ProcessSelectionSettings { pub fn from_matches(matches: &ArgMatches) -> Self { Self { - select_all: matches.get_flag("A"), + select_all: matches.get_flag("A") || matches.get_flag("e"), select_non_session_leaders_with_tty: matches.get_flag("a"), select_non_session_leaders: matches.get_flag("d"), dont_require_tty: matches.get_flag("x"), diff --git a/src/uu/ps/src/ps.rs b/src/uu/ps/src/ps.rs index 8254811..5ee1af3 100644 --- a/src/uu/ps/src/ps.rs +++ b/src/uu/ps/src/ps.rs @@ -202,7 +202,10 @@ pub fn uu_app() -> Command { Arg::new("A") .short('A') .help("all processes") - .visible_short_alias('e') + .action(ArgAction::SetTrue), + Arg::new("e") + .short('e') + .help("Select all processes. Identical to -A") .action(ArgAction::SetTrue), Arg::new("a") .short('a') diff --git a/tests/by-util/test_ps.rs b/tests/by-util/test_ps.rs index 03ffd7a..c8ec6d3 100644 --- a/tests/by-util/test_ps.rs +++ b/tests/by-util/test_ps.rs @@ -13,9 +13,24 @@ use uucore::process::geteuid; #[test] #[cfg(target_os = "linux")] fn test_select_all_processes() { - for arg in ["-A", "-e"] { - // TODO ensure the output format is correct - new_ucmd!().arg(arg).succeeds(); + let expected_headers = ["PID", "TTY", "TIME", "CMD"]; + + let args_sets = vec![vec!["-A"], vec!["-e"], vec!["-A", "-e"]]; + for args in args_sets { + let result = new_ucmd!().args(&args).succeeds(); + let lines: Vec<&str> = result.stdout_str().lines().collect(); + + assert!( + lines.len() >= 2, + "expected at least a header and one process row" + ); + + let headers: Vec<&str> = lines[0].split_whitespace().collect(); + assert_eq!( + headers, expected_headers, + "unexpected header for args: {:?}", + args + ); } } From ef26896397f33f23ee853b9df62c1350447a7c13 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 13 Apr 2026 01:42:41 +0000 Subject: [PATCH 03/30] chore(deps): update rust crate ctor to 0.10.0 --- Cargo.lock | 18 +++++++++--------- Cargo.toml | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d1e6c84..426e4b3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,12 +396,12 @@ dependencies = [ [[package]] name = "ctor" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1c888a2a4f677017373fb6c01e13e318dd9e78758445ed5eb985e355d3f8281" +checksum = "95d0d11eb38e7642efca359c3cf6eb7b2e528182d09110165de70192b0352775" dependencies = [ "ctor-proc-macro 0.0.12", - "dtor 0.6.0", + "dtor 0.7.0", "link-section", ] @@ -589,9 +589,9 @@ dependencies = [ [[package]] name = "dtor" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30e4690622ab6700ced40fc370a3f07b7d111f0154bb6fb08f73b4c8834f75b6" +checksum = "17f72721db8027a4e96dd6fb50d2a1d32259c9d3da1b63dee612ccd981e14293" dependencies = [ "dtor-proc-macro 0.0.12", ] @@ -1081,9 +1081,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.0.12" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f52437d47b0358721ec869cc7374b2a21f7b2237af9b439c0391341a1fbfbf1b" +checksum = "468808413fa8bdf0edbe61c2bbc182dfc59885b94f496cf3fb42c9c96b1e0149" [[package]] name = "linux-raw-sys" @@ -1551,7 +1551,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 0.9.1", + "ctor 0.10.0", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", @@ -2044,7 +2044,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", - "getrandom 0.3.4", + "getrandom 0.4.1", "once_cell", "rustix", "windows-sys 0.61.2", diff --git a/Cargo.toml b/Cargo.toml index 77bd865..ea71049 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -61,7 +61,7 @@ clap = { version = "4.5.4", features = ["wrap_help", "cargo", "env"] } clap_complete = "4.5.2" clap_mangen = "0.3.0" crossterm = "0.29.0" -ctor = "0.9.0" +ctor = "0.10.0" dirs = "6.0.0" jiff = "0.2.15" nix = { version = "0.30", default-features = false, features = ["process"] } From 760cd9d691ebf77a2a33172dde1de65d47f323a9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 13 Apr 2026 15:56:56 +0000 Subject: [PATCH 04/30] chore(deps): update rust crate clap_complete to v4.6.2 --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 426e4b3..b719fd6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -240,9 +240,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.6.1" +version = "4.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "406e68b4de5c59cfb8f750a7cbd4d31ae153788b8352167c1e5f4fc26e8c91e9" +checksum = "3ff7a1dccbdd8b078c2bdebff47e404615151534d5043da397ec50286816f9cb" dependencies = [ "clap", ] From 0ef16701f37b6ad3e7b1bbe8398aae29f3844de0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 16 Apr 2026 10:46:36 +0000 Subject: [PATCH 05/30] chore(deps): update rust crate clap to v4.6.1 --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b719fd6..150f564 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -218,9 +218,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.6.0" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" +checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51" dependencies = [ "clap_builder", ] From 953e354ffd127dae2631f3e956d31ae7e35f12aa Mon Sep 17 00:00:00 2001 From: Daniel Hofstetter Date: Thu, 16 Apr 2026 16:12:38 +0200 Subject: [PATCH 06/30] clippy: fix warnings with Rust 1.95.0 from the collapsible_match and unnecessary_sort_by lints --- src/uu/pgrep/src/process_matcher.rs | 4 ++-- src/uu/pmap/src/smaps_format_parser.rs | 6 ++---- src/uu/ps/src/sorting.rs | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/uu/pgrep/src/process_matcher.rs b/src/uu/pgrep/src/process_matcher.rs index c991092..e82ef1a 100644 --- a/src/uu/pgrep/src/process_matcher.rs +++ b/src/uu/pgrep/src/process_matcher.rs @@ -405,9 +405,9 @@ fn process_flag_o_n( .collect::>(); if settings.newest { - filtered.sort_by(|a, b| b.pid.cmp(&a.pid)); + filtered.sort_by_key(|b| std::cmp::Reverse(b.pid)); } else { - filtered.sort_by(|a, b| a.pid.cmp(&b.pid)); + filtered.sort_by_key(|a| a.pid); } vec![filtered.first().cloned().unwrap().clone()] diff --git a/src/uu/pmap/src/smaps_format_parser.rs b/src/uu/pmap/src/smaps_format_parser.rs index f478916..1ece26c 100644 --- a/src/uu/pmap/src/smaps_format_parser.rs +++ b/src/uu/pmap/src/smaps_format_parser.rs @@ -316,10 +316,8 @@ pub fn parse_smaps(contents: &str) -> Result { let val = val.strip_suffix(" kB").unwrap_or(val); let val = get_smap_item_value(val)?; match key { - pmap_field_name::SIZE => { - if smap_entry.map_line.size_in_kb != val { - return Err(Error::from(ErrorKind::InvalidData)); - } + pmap_field_name::SIZE if smap_entry.map_line.size_in_kb != val => { + return Err(Error::from(ErrorKind::InvalidData)); } pmap_field_name::KERNEL_PAGE_SIZE => { smap_entry.kernel_page_size_in_kb = val; diff --git a/src/uu/ps/src/sorting.rs b/src/uu/ps/src/sorting.rs index bed4946..5e90d0a 100644 --- a/src/uu/ps/src/sorting.rs +++ b/src/uu/ps/src/sorting.rs @@ -13,5 +13,5 @@ pub(crate) fn sort(input: &mut [ProcessInformation], _matches: &ArgMatches) { /// Sort by pid. (Default) fn sort_by_pid(input: &mut [ProcessInformation]) { - input.sort_by(|a, b| a.pid.cmp(&b.pid)); + input.sort_by_key(|a| a.pid); } From b8dcf2a86e50c351ef3253edc826a1312f5c5c2d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 23 Apr 2026 05:21:17 +0000 Subject: [PATCH 07/30] chore(deps): update rust crate ctor to v0.10.1 --- Cargo.lock | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 150f564..6941139 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,12 +396,12 @@ dependencies = [ [[package]] name = "ctor" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95d0d11eb38e7642efca359c3cf6eb7b2e528182d09110165de70192b0352775" +checksum = "83cf0d42651b16c6dfe68685716d18480d18a9c39c62d76e8cf3eb6ed5d8bcbf" dependencies = [ - "ctor-proc-macro 0.0.12", - "dtor 0.7.0", + "ctor-proc-macro 0.0.13", + "dtor 0.8.1", "link-section", ] @@ -413,9 +413,9 @@ checksum = "52560adf09603e58c9a7ee1fe1dcb95a16927b17c127f0ac02d6e768a0e25bc1" [[package]] name = "ctor-proc-macro" -version = "0.0.12" +version = "0.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7ab264ea985f1bd27887d7b21ea2bb046728e05d11909ca138d700c494730db" +checksum = "7a949c44fcacbbbb7ada007dc7acb34603dd97cd47de5d054f2b6493ecebb483" [[package]] name = "darling" @@ -589,11 +589,11 @@ dependencies = [ [[package]] name = "dtor" -version = "0.7.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17f72721db8027a4e96dd6fb50d2a1d32259c9d3da1b63dee612ccd981e14293" +checksum = "edf234dd1594d6dd434a8fb8cada51ddbbc593e40e4a01556a0b31c62da2775b" dependencies = [ - "dtor-proc-macro 0.0.12", + "dtor-proc-macro 0.0.13", ] [[package]] @@ -604,9 +604,9 @@ checksum = "f678cf4a922c215c63e0de95eb1ff08a958a81d47e485cf9da1e27bf6305cfa5" [[package]] name = "dtor-proc-macro" -version = "0.0.12" +version = "0.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c98b077c7463d01d22dde8a24378ddf1ca7263dc687cffbed38819ea6c21131" +checksum = "2647271c92754afcb174e758003cfd1cbf1e43e5a7853d7b1813e63e19e39a73" [[package]] name = "either" @@ -1081,9 +1081,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "468808413fa8bdf0edbe61c2bbc182dfc59885b94f496cf3fb42c9c96b1e0149" +checksum = "b685d66585d646efe09fec763d796c291049c8b6bf84e04954bffc8748341f0d" [[package]] name = "linux-raw-sys" @@ -1551,7 +1551,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 0.10.0", + "ctor 0.10.1", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From e6760307a2b980abce7c1e5f0bf18af4d7bfcae0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 23 Apr 2026 05:25:40 +0000 Subject: [PATCH 08/30] chore(deps): update mozilla-actions/sccache-action action to v0.0.10 --- .github/workflows/code-quality.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index ef6e5f9..6e980ad 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -52,7 +52,7 @@ jobs: components: clippy - uses: Swatinem/rust-cache@v2 - name: Run sccache-cache - uses: mozilla-actions/sccache-action@v0.0.9 + uses: mozilla-actions/sccache-action@v0.0.10 - if: ${{ contains(matrix.job.os, 'ubuntu') }} run: | sudo apt-get update -y From d7f9fa437622cf61b3dfa718caf8cb73c1b8044c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 23 Apr 2026 13:30:10 +0000 Subject: [PATCH 09/30] chore(deps): update rust crate jiff to v0.2.24 --- Cargo.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6941139..f3c6fc5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -532,7 +532,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -633,7 +633,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -941,7 +941,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -976,9 +976,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jiff" -version = "0.2.23" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a3546dc96b6d42c5f24902af9e2538e82e39ad350b0c766eb3fbf2d8f3d8359" +checksum = "f00b5dbd620d61dfdcb6007c9c1f6054ebd75319f163d886a9055cec1155073d" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -986,14 +986,14 @@ dependencies = [ "portable-atomic", "portable-atomic-util", "serde_core", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] name = "jiff-static" -version = "0.2.23" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a8c8b344124222efd714b73bb41f8b5120b27a7cc1c75593a6ff768d9d05aa4" +checksum = "e000de030ff8022ea1da3f466fbb0f3a809f5e51ed31f6dd931c35181ad8e6d7" dependencies = [ "proc-macro2", "quote", @@ -1808,7 +1808,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -2047,7 +2047,7 @@ dependencies = [ "getrandom 0.4.1", "once_cell", "rustix", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -2068,7 +2068,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" dependencies = [ "rustix", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -2868,7 +2868,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] From e390588f087a6dff85ae2fce809524e6c6111152 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 27 Apr 2026 17:38:31 +0000 Subject: [PATCH 10/30] chore(deps): update rust crate clap_complete to v4.6.3 --- Cargo.lock | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f3c6fc5..f48e4a2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -240,9 +240,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.6.2" +version = "4.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ff7a1dccbdd8b078c2bdebff47e404615151534d5043da397ec50286816f9cb" +checksum = "660c0520455b1013b9bcb0393d5f643d7e4454fb69c915b8d6d2aa0e9a45acc3" dependencies = [ "clap", ] @@ -532,7 +532,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -633,7 +633,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -941,7 +941,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -986,7 +986,7 @@ dependencies = [ "portable-atomic", "portable-atomic-util", "serde_core", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -1808,7 +1808,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2047,7 +2047,7 @@ dependencies = [ "getrandom 0.4.1", "once_cell", "rustix", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2068,7 +2068,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" dependencies = [ "rustix", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2868,7 +2868,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] From d667ea884712916e2531144f8a4153198936c2ea Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 28 Apr 2026 23:43:15 +0000 Subject: [PATCH 11/30] chore(deps): update rust crate ctor to 0.11.0 --- Cargo.lock | 16 ++++++++-------- Cargo.toml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f48e4a2..078cb8e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,12 +396,12 @@ dependencies = [ [[package]] name = "ctor" -version = "0.10.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83cf0d42651b16c6dfe68685716d18480d18a9c39c62d76e8cf3eb6ed5d8bcbf" +checksum = "400a21f1014a968ec518c7ccdf9b4a4ed0cac8c56ccb6d604f8b91f00110501e" dependencies = [ "ctor-proc-macro 0.0.13", - "dtor 0.8.1", + "dtor 0.11.0", "link-section", ] @@ -589,9 +589,9 @@ dependencies = [ [[package]] name = "dtor" -version = "0.8.1" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edf234dd1594d6dd434a8fb8cada51ddbbc593e40e4a01556a0b31c62da2775b" +checksum = "96eb86b441d67a711e6e76b410de7135385fec1b8cd304e99d11c56ae542e2fc" dependencies = [ "dtor-proc-macro 0.0.13", ] @@ -1081,9 +1081,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.2.1" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b685d66585d646efe09fec763d796c291049c8b6bf84e04954bffc8748341f0d" +checksum = "8acde40189b7f4b102f876f43a98ec1f5899f96e9a144945d36d9ce0be7f99c7" [[package]] name = "linux-raw-sys" @@ -1551,7 +1551,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 0.10.1", + "ctor 0.11.1", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", diff --git a/Cargo.toml b/Cargo.toml index ea71049..a2e2440 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -61,7 +61,7 @@ clap = { version = "4.5.4", features = ["wrap_help", "cargo", "env"] } clap_complete = "4.5.2" clap_mangen = "0.3.0" crossterm = "0.29.0" -ctor = "0.10.0" +ctor = "0.11.0" dirs = "6.0.0" jiff = "0.2.15" nix = { version = "0.30", default-features = false, features = ["process"] } From a995b907e9b26feb2f9c9b125d67dd735abb8bf1 Mon Sep 17 00:00:00 2001 From: yushuoqi Date: Thu, 30 Apr 2026 11:37:06 +0800 Subject: [PATCH 12/30] hugetop: optimize time format display Change the timestamp to a time format that is readable by humans --- Cargo.lock | 1 + src/uu/hugetop/Cargo.toml | 1 + src/uu/hugetop/src/hugetop.rs | 11 ++++------- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 078cb8e..b346038 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2361,6 +2361,7 @@ dependencies = [ name = "uu_hugetop" version = "0.0.1" dependencies = [ + "chrono", "clap", "tempfile", "uucore 0.7.0", diff --git a/src/uu/hugetop/Cargo.toml b/src/uu/hugetop/Cargo.toml index aa0eea4..983bfea 100644 --- a/src/uu/hugetop/Cargo.toml +++ b/src/uu/hugetop/Cargo.toml @@ -14,6 +14,7 @@ version.workspace = true workspace = true [dependencies] +chrono = { workspace = true } clap = { workspace = true } uucore = { workspace = true } diff --git a/src/uu/hugetop/src/hugetop.rs b/src/uu/hugetop/src/hugetop.rs index ee17ed5..53c6fed 100644 --- a/src/uu/hugetop/src/hugetop.rs +++ b/src/uu/hugetop/src/hugetop.rs @@ -3,12 +3,13 @@ // For the full copyright and license information, please view the LICENSE // file that was distributed with this source code. +use chrono::{DateTime, Local}; use clap::{value_parser, Arg, Command}; use std::collections::BTreeMap; use std::fs; use std::path::Path; use std::thread::sleep; -use std::time::{Duration, SystemTime, UNIX_EPOCH}; +use std::time::Duration; use uucore::error::UResult; const DEFAULT_HUGEPAGES_ROOT: &str = "/sys/kernel/mm/hugepages"; @@ -122,12 +123,8 @@ pub fn uu_app() -> Command { } fn print_summary(numa: bool, human: bool) { - let now = SystemTime::now() - .duration_since(UNIX_EPOCH) - .map(|d| d.as_secs()) - .unwrap_or_default(); - - println!("hugetop - {}", now); + let now: DateTime = Local::now(); + println!("hugetop - {}", now.format("%a %b %e %T %Y")); let pools = match read_node_hugepage_pools() { Ok(nodes) if numa => { From b6f3b2e84bb1f57a7ff22001fb3e72dd5a9f190a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 30 Apr 2026 17:31:29 +0000 Subject: [PATCH 13/30] chore(deps): update rust crate ctor to 0.12.0 --- Cargo.lock | 46 +++++++++++++++------------------------------- Cargo.toml | 2 +- 2 files changed, 16 insertions(+), 32 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 078cb8e..4c3dc88 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -390,19 +390,18 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "352d39c2f7bef1d6ad73db6f5160efcaed66d94ef8c6c573a8410c00bf909a98" dependencies = [ - "ctor-proc-macro 0.0.7", - "dtor 0.3.0", + "ctor-proc-macro", + "dtor", ] [[package]] name = "ctor" -version = "0.11.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "400a21f1014a968ec518c7ccdf9b4a4ed0cac8c56ccb6d604f8b91f00110501e" +checksum = "b8f521dd9c9e5f03986eb5c674b14b21e9ccf2eb9f98fecb681100214d5e9e4f" dependencies = [ - "ctor-proc-macro 0.0.13", - "dtor 0.11.0", "link-section", + "linktime-proc-macro", ] [[package]] @@ -411,12 +410,6 @@ version = "0.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52560adf09603e58c9a7ee1fe1dcb95a16927b17c127f0ac02d6e768a0e25bc1" -[[package]] -name = "ctor-proc-macro" -version = "0.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a949c44fcacbbbb7ada007dc7acb34603dd97cd47de5d054f2b6493ecebb483" - [[package]] name = "darling" version = "0.20.11" @@ -584,16 +577,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1057d6c64987086ff8ed0fd3fbf377a6b7d205cc7715868cd401705f715cbe4" dependencies = [ - "dtor-proc-macro 0.0.6", -] - -[[package]] -name = "dtor" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96eb86b441d67a711e6e76b410de7135385fec1b8cd304e99d11c56ae542e2fc" -dependencies = [ - "dtor-proc-macro 0.0.13", + "dtor-proc-macro", ] [[package]] @@ -602,12 +586,6 @@ version = "0.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f678cf4a922c215c63e0de95eb1ff08a958a81d47e485cf9da1e27bf6305cfa5" -[[package]] -name = "dtor-proc-macro" -version = "0.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2647271c92754afcb174e758003cfd1cbf1e43e5a7853d7b1813e63e19e39a73" - [[package]] name = "either" version = "1.15.0" @@ -1081,9 +1059,15 @@ dependencies = [ [[package]] name = "link-section" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acde40189b7f4b102f876f43a98ec1f5899f96e9a144945d36d9ce0be7f99c7" +checksum = "0567ec9fe5ffdf9241cd90a7629f250a5f903d6ff4573cf7903308662d6fce40" + +[[package]] +name = "linktime-proc-macro" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44cd706ff0d503ee32b2071166510ca27e281228de10cd3aa8d35ff94560f81" [[package]] name = "linux-raw-sys" @@ -1551,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 0.11.1", + "ctor 0.12.0", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", diff --git a/Cargo.toml b/Cargo.toml index a2e2440..c1ca07c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -61,7 +61,7 @@ clap = { version = "4.5.4", features = ["wrap_help", "cargo", "env"] } clap_complete = "4.5.2" clap_mangen = "0.3.0" crossterm = "0.29.0" -ctor = "0.11.0" +ctor = "0.12.0" dirs = "6.0.0" jiff = "0.2.15" nix = { version = "0.30", default-features = false, features = ["process"] } From f1c526d37b7712675b194ec587c7b1e0d3f39dc8 Mon Sep 17 00:00:00 2001 From: Daniel Hofstetter Date: Sun, 3 May 2026 14:24:21 +0200 Subject: [PATCH 14/30] Bump ctor from 0.12.0 to 1.0.1 --- Cargo.lock | 10 +++++----- Cargo.toml | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4c3dc88..4010388 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "0.12.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8f521dd9c9e5f03986eb5c674b14b21e9ccf2eb9f98fecb681100214d5e9e4f" +checksum = "f7335955a5f85f95f3188623240e081e7b2059a8ad1bae68944b7cfdd718fb10" dependencies = [ "link-section", "linktime-proc-macro", @@ -1059,9 +1059,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.12.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0567ec9fe5ffdf9241cd90a7629f250a5f903d6ff4573cf7903308662d6fce40" +checksum = "ea2c24837c4fd5ab6a31d64133eae954f5199247523cf29586117e85245c0dd3" [[package]] name = "linktime-proc-macro" @@ -1535,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 0.12.0", + "ctor 1.0.1", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", diff --git a/Cargo.toml b/Cargo.toml index c1ca07c..1c3be90 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -61,7 +61,7 @@ clap = { version = "4.5.4", features = ["wrap_help", "cargo", "env"] } clap_complete = "4.5.2" clap_mangen = "0.3.0" crossterm = "0.29.0" -ctor = "0.12.0" +ctor = "1.0.0" dirs = "6.0.0" jiff = "0.2.15" nix = { version = "0.30", default-features = false, features = ["process"] } From 295cf62b0f55f0a5707feb9313df8a95c0cec1ae Mon Sep 17 00:00:00 2001 From: Daniel Hofstetter Date: Sun, 3 May 2026 14:25:40 +0200 Subject: [PATCH 15/30] tests.rs: adapt to change in ctor --- tests/tests.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/tests.rs b/tests/tests.rs index a27a429..f9c8076 100644 --- a/tests/tests.rs +++ b/tests/tests.rs @@ -7,7 +7,7 @@ use std::env; pub const TESTS_BINARY: &str = env!("CARGO_BIN_EXE_procps"); // Use the ctor attribute to run this function before any tests -#[ctor::ctor] +#[ctor::ctor(unsafe)] fn init() { unsafe { // Necessary for uutests to be able to find the binary From 2d0ab0b469068e8c7eff591dcd1a5670f7d292db Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 May 2026 08:52:48 +0000 Subject: [PATCH 16/30] chore(deps): update rust crate ctor to v1.0.2 --- Cargo.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4010388..7ee0a72 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7335955a5f85f95f3188623240e081e7b2059a8ad1bae68944b7cfdd718fb10" +checksum = "5449af32ecd0738fb1be3f9faa3c10da8509044fed757aaa2bc1c16f9a74e0c5" dependencies = [ "link-section", "linktime-proc-macro", @@ -1059,9 +1059,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.13.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2c24837c4fd5ab6a31d64133eae954f5199247523cf29586117e85245c0dd3" +checksum = "4641b91711debb59c61b07eb5e30521ed6d9e2bdd9fd04f934e7da3a5bc386d4" [[package]] name = "linktime-proc-macro" @@ -1535,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 1.0.1", + "ctor 1.0.2", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From 3da6129f5c21b0933b115eb63a3e55366bf32e77 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 May 2026 14:42:57 +0000 Subject: [PATCH 17/30] chore(deps): update rust crate ctor to v1.0.3 --- Cargo.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7ee0a72..3f64e03 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5449af32ecd0738fb1be3f9faa3c10da8509044fed757aaa2bc1c16f9a74e0c5" +checksum = "5c24d2b2b7c12a2fffb7c5c8fd0dcda7ca14b4600fa2d3701b6079aefb6fa180" dependencies = [ "link-section", "linktime-proc-macro", @@ -1535,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 1.0.2", + "ctor 1.0.3", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From b3b613301e4715bc2ec24b5b2a60376df4a61826 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 9 May 2026 04:45:05 +0000 Subject: [PATCH 18/30] chore(deps): update rust crate ctor to v1.0.4 --- Cargo.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3f64e03..28e48ee 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c24d2b2b7c12a2fffb7c5c8fd0dcda7ca14b4600fa2d3701b6079aefb6fa180" +checksum = "e2049d5ec0c16ffe3815be58fe6966159a0f37dcf16ae1c7330808ed7c9b71a1" dependencies = [ "link-section", "linktime-proc-macro", @@ -1059,9 +1059,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.15.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4641b91711debb59c61b07eb5e30521ed6d9e2bdd9fd04f934e7da3a5bc386d4" +checksum = "e19299f36b28d94bcf0d8b913305e2b79bd5cb53f981e3855968abfd177379cd" [[package]] name = "linktime-proc-macro" @@ -1535,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 1.0.3", + "ctor 1.0.4", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From d150cb30971169d5842d292455d0f3333f795859 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 10 May 2026 04:27:56 +0000 Subject: [PATCH 19/30] chore(deps): update rust crate clap_complete to v4.6.4 --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 28e48ee..80fc5e9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -240,9 +240,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.6.3" +version = "4.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "660c0520455b1013b9bcb0393d5f643d7e4454fb69c915b8d6d2aa0e9a45acc3" +checksum = "e3e962dae2b1e5007fe9e3db363ddc43a8bf25546d279f7a8a4401204690e80c" dependencies = [ "clap", ] From caabf99f36a0573db13e4defb87d098045971033 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 11 May 2026 21:43:21 +0000 Subject: [PATCH 20/30] chore(deps): update rust crate clap_complete to v4.6.5 --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 80fc5e9..265a815 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -240,9 +240,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.6.4" +version = "4.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3e962dae2b1e5007fe9e3db363ddc43a8bf25546d279f7a8a4401204690e80c" +checksum = "e0a7a9bfdb35811f9e59832f0f05975114d2251b415fb534108e6f34060fd772" dependencies = [ "clap", ] From 66b7129bd967988b64c133abf1fe3b242e34f73d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 11 May 2026 19:00:07 +0000 Subject: [PATCH 21/30] chore(deps): update rust crate ctor to v1.0.5 --- Cargo.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 265a815..ba44631 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2049d5ec0c16ffe3815be58fe6966159a0f37dcf16ae1c7330808ed7c9b71a1" +checksum = "378f0974ae2468eaf63aa036dbe9c926b0dc7ea64c156f2ea618bc2f75b934f0" dependencies = [ "link-section", "linktime-proc-macro", @@ -1059,9 +1059,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.16.0" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e19299f36b28d94bcf0d8b913305e2b79bd5cb53f981e3855968abfd177379cd" +checksum = "5c8600ca3dbe044f07955b443ff606c50f45295b863289bbe7d0844d50cf11e4" [[package]] name = "linktime-proc-macro" @@ -1535,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 1.0.4", + "ctor 1.0.5", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From d688aee40781bcefb669979cfe858761c4fab240 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 17 May 2026 05:29:08 +0000 Subject: [PATCH 22/30] chore(deps): update rust crate ctor to v1.0.6 --- Cargo.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 22715f2..a7ff9bf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "378f0974ae2468eaf63aa036dbe9c926b0dc7ea64c156f2ea618bc2f75b934f0" +checksum = "6d765eb1c0bda10d31e0ea185f5ee15da532d60b0912d2bd1441783439e749c5" dependencies = [ "link-section", "linktime-proc-macro", @@ -1059,9 +1059,9 @@ dependencies = [ [[package]] name = "link-section" -version = "0.16.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8600ca3dbe044f07955b443ff606c50f45295b863289bbe7d0844d50cf11e4" +checksum = "76b87baf24dab54aad743d8e009b90a09e34f4e4457d6f92a375e901453e56c3" [[package]] name = "linktime-proc-macro" @@ -1535,7 +1535,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 1.0.5", + "ctor 1.0.6", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From 3254303bbb9f299e58efb006213ae8c2ab2061fd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 18 May 2026 16:11:14 +0000 Subject: [PATCH 23/30] chore(deps): update rust crate sysinfo to 0.39.0 --- Cargo.lock | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++-- Cargo.toml | 2 +- 2 files changed, 52 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a7ff9bf..95dc28f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -539,6 +539,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "dispatch2" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" +dependencies = [ + "bitflags 2.10.0", + "objc2", +] + [[package]] name = "displaydoc" version = "0.2.5" @@ -1245,6 +1255,15 @@ dependencies = [ "libc", ] +[[package]] +name = "objc2" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" +dependencies = [ + "objc2-encode", +] + [[package]] name = "objc2-core-foundation" version = "0.3.2" @@ -1252,6 +1271,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ "bitflags 2.10.0", + "dispatch2", + "objc2", +] + +[[package]] +name = "objc2-encode" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" + +[[package]] +name = "objc2-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" +dependencies = [ + "bitflags 2.10.0", + "objc2", ] [[package]] @@ -1264,6 +1301,17 @@ dependencies = [ "objc2-core-foundation", ] +[[package]] +name = "objc2-open-directory" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb82bed227edf5201dfedf072bba4015a33d3d4a98519837295a90f0a23f676d" +dependencies = [ + "objc2", + "objc2-core-foundation", + "objc2-foundation", +] + [[package]] name = "once_cell" version = "1.21.3" @@ -2009,15 +2057,16 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.38.4" +version = "0.39.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92ab6a2f8bfe508deb3c6406578252e491d299cbbf3bc0529ecc3313aee4a52f" +checksum = "14311e7e9a03114cd4b65eedd54e8fed2945e17f08586ae97ef53bc0669f9581" dependencies = [ "libc", "memchr", "ntapi", "objc2-core-foundation", "objc2-io-kit", + "objc2-open-directory", "windows", ] diff --git a/Cargo.toml b/Cargo.toml index 1c3be90..9fb898a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -72,7 +72,7 @@ rand = { version = "0.10.0" } ratatui = "0.30.0" regex = "1.10.4" rustix = { version = "1.1.2", features = ["fs", "process", "param"] } -sysinfo = "0.38.0" +sysinfo = "0.39.0" tempfile = "3.10.1" terminal_size = "0.4.2" textwrap = { version = "0.16.1", features = ["terminal_size"] } From d9feba0d83be37fa12c589a626f998bde13cf3d7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 25 May 2026 06:07:14 +0000 Subject: [PATCH 24/30] chore(deps): update rust crate jiff to v0.2.25 --- Cargo.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 95dc28f..0d2b6fb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -525,7 +525,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -621,7 +621,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -929,7 +929,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -964,9 +964,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jiff" -version = "0.2.24" +version = "0.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00b5dbd620d61dfdcb6007c9c1f6054ebd75319f163d886a9055cec1155073d" +checksum = "6835eea34fb6321b9b3aa7b685c2b433948c09447e389dc017fdf687d5d11e65" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -974,14 +974,14 @@ dependencies = [ "portable-atomic", "portable-atomic-util", "serde_core", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] name = "jiff-static" -version = "0.2.24" +version = "0.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e000de030ff8022ea1da3f466fbb0f3a809f5e51ed31f6dd931c35181ad8e6d7" +checksum = "3c22e04db9c58f5136eb1757f3d5c49a7b187f49e52185228cbd2f5acdfcc08c" dependencies = [ "proc-macro2", "quote", @@ -1840,7 +1840,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -2080,7 +2080,7 @@ dependencies = [ "getrandom 0.4.1", "once_cell", "rustix", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -2101,7 +2101,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" dependencies = [ "rustix", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -2902,7 +2902,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] From 1d56f73467986245cacba03c4526229b4a6f9f24 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 26 May 2026 06:58:46 +0000 Subject: [PATCH 25/30] chore(deps): update rust crate jiff to v0.2.26 --- Cargo.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0d2b6fb..0f68013 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -525,7 +525,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -621,7 +621,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -929,7 +929,7 @@ checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -964,9 +964,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jiff" -version = "0.2.25" +version = "0.2.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6835eea34fb6321b9b3aa7b685c2b433948c09447e389dc017fdf687d5d11e65" +checksum = "30457d51cb0e68ee18184b30cd9eb8e1602a20837c321f6ea9706b94f1c681c3" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -974,14 +974,14 @@ dependencies = [ "portable-atomic", "portable-atomic-util", "serde_core", - "windows-sys 0.60.2", + "windows-link", ] [[package]] name = "jiff-static" -version = "0.2.25" +version = "0.2.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c22e04db9c58f5136eb1757f3d5c49a7b187f49e52185228cbd2f5acdfcc08c" +checksum = "05f86e4f0326c61ae6c00b04d9009aaeda644d0b5bdfbf6c67247f492f42b3f3" dependencies = [ "proc-macro2", "quote", @@ -1840,7 +1840,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2080,7 +2080,7 @@ dependencies = [ "getrandom 0.4.1", "once_cell", "rustix", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2101,7 +2101,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" dependencies = [ "rustix", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2902,7 +2902,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] From d8a0cc200bb5539ecbc65dc97b6b26b180be6f2f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 26 May 2026 21:15:27 +0000 Subject: [PATCH 26/30] chore(deps): update rust crate jiff to v0.2.27 --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0f68013..43ea9db 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -964,9 +964,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jiff" -version = "0.2.26" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30457d51cb0e68ee18184b30cd9eb8e1602a20837c321f6ea9706b94f1c681c3" +checksum = "392c70591e8749fe235ddaf513e6f58b26bce3dcc16524cecc8936f75afa161e" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -979,9 +979,9 @@ dependencies = [ [[package]] name = "jiff-static" -version = "0.2.26" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f86e4f0326c61ae6c00b04d9009aaeda644d0b5bdfbf6c67247f492f42b3f3" +checksum = "47b605b0c050d845fc355bb11eb3f9a8deddc218ea60c76e61aa1f2adfb2c96a" dependencies = [ "proc-macro2", "quote", From 8589e46a8b3082c56a5ca04b97d021eb1f5918b9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 29 May 2026 05:03:38 +0000 Subject: [PATCH 27/30] chore(deps): update rust crate jiff to v0.2.28 --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 43ea9db..3d1c154 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -964,9 +964,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jiff" -version = "0.2.27" +version = "0.2.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "392c70591e8749fe235ddaf513e6f58b26bce3dcc16524cecc8936f75afa161e" +checksum = "4603d3033e49e2b0e31229fcab20a5d40089c607d975cd9c80551dc69eed9102" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -979,9 +979,9 @@ dependencies = [ [[package]] name = "jiff-static" -version = "0.2.27" +version = "0.2.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47b605b0c050d845fc355bb11eb3f9a8deddc218ea60c76e61aa1f2adfb2c96a" +checksum = "782d32378dddf207193ac91cefb848ad41abb58195c95168e1291227a0832b47" dependencies = [ "proc-macro2", "quote", From c3f697f67db1d6a365dfd54b9535ff2d93aabb81 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 29 May 2026 02:54:49 +0000 Subject: [PATCH 28/30] chore(deps): update rust crate ctor to v1.0.7 --- Cargo.lock | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3d1c154..b9b73ef 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -396,9 +396,9 @@ dependencies = [ [[package]] name = "ctor" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d765eb1c0bda10d31e0ea185f5ee15da532d60b0912d2bd1441783439e749c5" +checksum = "01334b89b69ff726750c5ce5073fc8bd860e99aa9a8fc5ca11b04730e3aee97a" dependencies = [ "link-section", "linktime-proc-macro", @@ -1069,15 +1069,15 @@ dependencies = [ [[package]] name = "link-section" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76b87baf24dab54aad743d8e009b90a09e34f4e4457d6f92a375e901453e56c3" +checksum = "7a63f9687974de7e2caf6c96a1b19c6e882db299fdde09075c5b9e11c58421cd" [[package]] name = "linktime-proc-macro" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44cd706ff0d503ee32b2071166510ca27e281228de10cd3aa8d35ff94560f81" +checksum = "8c7b0a3383c2a1002d11349c92c85a666a5fb679e96c79d782cf0dbe557fd6ee" [[package]] name = "linux-raw-sys" @@ -1583,7 +1583,7 @@ dependencies = [ "clap", "clap_complete", "clap_mangen", - "ctor 1.0.6", + "ctor 1.0.7", "jiff", "phf 0.13.1", "phf_codegen 0.13.1", From 0c308a15793a9d70846bc865c4c3a519a114d3a0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 29 May 2026 02:54:56 +0000 Subject: [PATCH 29/30] chore(deps): update rust crate sysinfo to v0.39.3 --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b9b73ef..6470b61 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2057,9 +2057,9 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.39.2" +version = "0.39.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14311e7e9a03114cd4b65eedd54e8fed2945e17f08586ae97ef53bc0669f9581" +checksum = "21d0d938c10fcda3e897e28aaddf4ab462375d411f4378cd63b1c945f69aba96" dependencies = [ "libc", "memchr", From 67cdcd74b855dfa324c3270fa2f05dae2681a64c Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sat, 30 May 2026 10:07:54 +0200 Subject: [PATCH 30/30] Add CONTRIBUTING.md pointing to the review guidelines --- CONTRIBUTING.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..f4b1ac7 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,32 @@ +# Contributing to procps + +Hi! Welcome to uutils/procps, and thanks for wanting to contribute! + +This project follows the shared conventions of the [uutils](https://github.com/uutils) +organization. Before opening a pull request, please read: + +- Our **[Review Guidelines](https://uutils.github.io/reviews/)** — what we expect + from a pull request and how reviews are carried out. +- Our community's [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md), if present. + +Finally, feel free to join our [Discord](https://discord.gg/wQVJbvJ)! + +> [!WARNING] +> uutils is original code and cannot contain any code from GNU or other +> strongly-licensed (GPL/LGPL) implementations. We **cannot** accept changes +> based on the GNU source code, and you **must not link** to it either. You may +> look at permissively-licensed implementations (MIT/BSD) and read the GNU +> *manuals* — never the GNU *source*. + +## In short + +- Discuss non-trivial changes in an issue **before** writing the code. +- Keep pull requests **small, self-contained, and descriptively titled** + (e.g. `procps: fix ...`). +- Make sure CI passes: tests are green, `rustfmt` is satisfied, and there are + no `clippy` warnings. +- Add tests for new behavior; don't let coverage regress. +- Write small, atomic commits annotated with the component you touched. + +See the [Review Guidelines](https://uutils.github.io/reviews/) for the full +details.