Dependency and MSRV update (#934)

This commit is contained in:
David Peter authored and GitHub committed 2026-10-02 11:05:02 +02:00
1 parent 4b561defef
commit 4d073e08ae
7 files changed
+319 -485

No files matched your search

Generated
+295 -464
View File
File diff suppressed because it is too large. Load diff
+15 -14
View File
@@ -10,22 +10,23 @@ repository = "https://github.com/sharkdp/hyperfine"
version = "1.20.0" version = "1.20.0"
edition = "2018" edition = "2018"
build = "build.rs" build = "build.rs"
rust-version = "1.88.0" rust-version = "1.97.0"
[features] [features]
# Use the nightly feature windows_process_extensions_main_thread_handle # Use the nightly feature windows_process_extensions_main_thread_handle
windows_process_extensions_main_thread_handle = [] windows_process_extensions_main_thread_handle = []
[dependencies] [dependencies]
colored = "2.1" colored = "3.1"
# Newer versions regress ETA estimates: https://github.com/console-rs/indicatif/issues/580
indicatif = "=0.17.4" indicatif = "=0.17.4"
statistical = "1.0" statistical = "1.0"
csv = "1.3" csv = "1.4"
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0" serde_json = "1.0"
rust_decimal = "1.36" rust_decimal = "1.43"
rand = "0.8" rand = "0.10"
shell-words = "1.0" shell-words = "1.1"
thiserror = "2.0" thiserror = "2.0"
anyhow = "1.0" anyhow = "1.0"
@@ -33,7 +34,7 @@ anyhow = "1.0"
libc = "0.2" libc = "0.2"
[target.'cfg(windows)'.dependencies] [target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.59", features = [ windows-sys = { version = "0.61", features = [
"Win32_Foundation", "Win32_Foundation",
"Win32_Security", "Win32_Security",
"Win32_System_JobObjects", "Win32_System_JobObjects",
@@ -42,10 +43,10 @@ windows-sys = { version = "0.59", features = [
] } ] }
[target.'cfg(all(windows, not(windows_process_extensions_main_thread_handle)))'.dependencies] [target.'cfg(all(windows, not(windows_process_extensions_main_thread_handle)))'.dependencies]
once_cell = "1.19" once_cell = "1.21"
[target.'cfg(target_os="linux")'.dependencies] [target.'cfg(target_os="linux")'.dependencies]
nix = { version = "0.29", features = ["zerocopy"] } nix = { version = "0.31", features = ["zerocopy"] }
[dependencies.clap] [dependencies.clap]
version = "4" version = "4"
@@ -62,18 +63,18 @@ features = [
[dev-dependencies] [dev-dependencies]
approx = "0.5" approx = "0.5"
assert_cmd = "2.0" assert_cmd = "2.2"
insta = { version = "1.41.1", features = ["yaml"] } insta = { version = "1.48", features = ["yaml"] }
predicates = "3.1" predicates = "3.1"
tempfile = "3.23" tempfile = "3.27"
[profile.dev.package] [profile.dev.package]
insta.opt-level = 3 insta.opt-level = 3
similar.opt-level = 3 similar.opt-level = 3
[build-dependencies] [build-dependencies]
clap = "4.5.48" clap = "4.6"
clap_complete = "4.2.1" clap_complete = "4.6"
[profile.release] [profile.release]
lto = true lto = true
+1 -1
View File
@@ -302,7 +302,7 @@ Hyperfine can be installed from source via [cargo](https://doc.rust-lang.org/car
cargo install --locked hyperfine cargo install --locked hyperfine
``` ```
Make sure that you use Rust 1.88 or newer. Make sure that you use Rust 1.97 or newer.
### From binaries (Linux, macOS, Windows) ### From binaries (Linux, macOS, Windows)
+2 -2
View File
@@ -117,7 +117,7 @@ impl<'a> Scheduler<'a> {
println!( println!(
"{} {}", "{} {}",
comparator, comparator,
&item.result.command_with_unused_parameters.magenta() item.result.command_with_unused_parameters.magenta()
); );
} }
} }
@@ -135,7 +135,7 @@ impl<'a> Scheduler<'a> {
} else { } else {
" ".into() " ".into()
}, },
&item.result.command_with_unused_parameters, item.result.command_with_unused_parameters,
); );
} }
} }
+4 -2
View File
@@ -158,7 +158,9 @@ impl<'a> Commands<'a> {
}); });
let args: Vec<_> = args.map(|v| v.as_str()).collect::<Vec<_>>(); let args: Vec<_> = args.map(|v| v.as_str()).collect::<Vec<_>>();
let param_names_and_values: Vec<(&str, Vec<String>)> = args let param_names_and_values: Vec<(&str, Vec<String>)> = args
.chunks_exact(2) .as_chunks::<2>()
.0
.iter()
.map(|pair| { .map(|pair| {
let name = pair[0]; let name = pair[0];
let list_str = pair[1]; let list_str = pair[1];
@@ -169,7 +171,7 @@ impl<'a> Commands<'a> {
let duplicates = let duplicates =
Self::find_duplicates(param_names_and_values.iter().map(|(name, _)| *name)); Self::find_duplicates(param_names_and_values.iter().map(|(name, _)| *name));
if !duplicates.is_empty() { if !duplicates.is_empty() {
bail!("Duplicate parameter names: {}", &duplicates.join(", ")); bail!("Duplicate parameter names: {}", duplicates.join(", "));
} }
} }
+1 -1
View File
@@ -9,7 +9,7 @@ impl MarkupExporter for OrgmodeExporter {
format!( format!(
"| {} | {} |\n", "| {} | {} |\n",
cells.first().unwrap(), cells.first().unwrap(),
&cells[1..].join(" | ") cells[1..].join(" | ")
) )
} }
+1 -1
View File
@@ -4,5 +4,5 @@
/// [1] Mytkowicz, 2009. Producing Wrong Data Without Doing Anything Obviously Wrong!. /// [1] Mytkowicz, 2009. Producing Wrong Data Without Doing Anything Obviously Wrong!.
/// Sigplan Notices - SIGPLAN. 44. 265-276. 10.1145/1508284.1508275. /// Sigplan Notices - SIGPLAN. 44. 265-276. 10.1145/1508284.1508275.
pub fn value() -> String { pub fn value() -> String {
"X".repeat(rand::random::<usize>() % 4096usize) "X".repeat(rand::random_range(0..4096))
} }