mirror of
https://github.com/sharkdp/hyperfine.git
synced 2026-10-29 03:05:13 +08:00
Replace `println!` calls on the results paths with `writeln!` on `io::stdout()` and propagate the `io::Error` to `main`, where `ErrorKind::BrokenPipe` is turned into a quiet `exit(0)`. This matches the conventional behavior of command-line tools when their output pipe is closed early (e.g. `hyperfine ... | head -n 0`), and fixes panics in all run-output paths: the per-benchmark header and results, the speed comparison summary, and `-`-style exports to stdout. The warnings and "Note" outputs to stderr are converted the same way. The earlier fix for #453 only covered the `-h`/`--help` output. A regression test runs hyperfine with a pre-closed stdout pipe. Assisted-by: AI tooling (patch generated and verified automatically)