Commit Graph
100 Commits
Author SHA1 Message Date
David Peter 0f2871bd66 Address review feedback 2026-10-05 14:16:33 +02:00
Devon Hollowood ce704016f9 Make time elapsed only show up initially 2026-10-05 14:14:15 +02:00
David Peter 8084a9eb7f Adopt the remaining statistics changes from #790 2026-10-05 13:57:31 +02:00
David Peter df49a04a66 Use typed quantities for relative-speed calculations 2026-10-05 13:41:20 +02:00
David Peter e689520fb5 Merge pull request #969 from sharkdp/codex/result-measurements
Store typed Measurements in BenchmarkResult
2026-10-05 12:51:22 +02:00
David Peter b23372c5e2 Store typed Measurements in BenchmarkResult 2026-10-05 12:46:10 +02:00
David Peter 30a2b61d4c Merge pull request #807 from willcl-ark/expose-run-var
expose HYPERFINE_ITERATION to intermediate commands
2026-10-05 12:45:29 +02:00
David Peter 3558138cea Further simplifications 2026-10-05 12:40:33 +02:00
David Peter 8c40de45f8 Store parameter usage metadata in benchmark results 2026-10-05 12:35:24 +02:00
willcl-ark 44c0cc231b expose HYPERFINE_ITERATION to intermediate commands
Fixes: #781

Expose the `$HYPERFINE_ITERATION` variable to intermediate commands.
This will allow iteration-specific prepare/conclude, such as:

```bash
hyperfine --runs 5 --prepare 'echo touch file${HYPERFINE_ITERATION}.dat' \
    'echo testing file${HYPERFINE_ITERATION}.dat' \
    --conclude 'echo rm file${HYPERFINE_ITERATION}.dat' --show-output
```
2026-10-05 12:24:43 +02:00
David Peter 6f557e0494 Extract typed quantity formatting 2026-10-05 11:46:49 +02:00
David Peter b5f58651a1 Extract quantity and command helpers 2026-10-05 11:14:09 +02:00
David Peter aa14b8c0d9 Group units, formatting, and statistics under quantity 2026-10-05 10:46:51 +02:00
David Peter bef66df7e4 Restore original quantity trait and comments 2026-10-05 10:43:13 +02:00
David Peter a8e56efecc Use uom quantities for benchmark measurements 2026-10-05 10:32:32 +02:00
David Peter db3a3dedc7 Collect benchmark runs in Measurements 2026-10-05 10:10:09 +02:00
David Peter 35c94a0e36 Clarify internal measurement field names 2026-10-05 10:09:41 +02:00
David Peter 750fe11b85 Merge pull request #954 from sharkdp/codex/remove-statistical
Replace statistical with local floating-point helpers
2026-10-05 10:03:27 +02:00
David Peter 305e89d536 Consolidate min and max in the statistics module 2026-10-05 10:00:07 +02:00
David Peter 1fb03c3807 Replace statistical with local floating-point helpers 2026-10-05 09:47:33 +02:00
David Peter 6cb9566118 Unify timer and executor measurement results 2026-10-05 09:47:09 +02:00
David Peter fe75d1cb1b Merge pull request #853 from Rohan5commit/docs/fix-comment-typo
docs: fix typo in relative speed comment
2026-10-05 09:46:07 +02:00
c0b3834277 Handle broken pipe errors on stdout gracefully (#932)
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.


---------

Co-authored-by: Mathjk <Mathjk@users.noreply.github.com>
Co-authored-by: David Peter <mail@david-peter.de>
2026-10-02 11:18:56 +02:00
David Peter 4d073e08ae Dependency and MSRV update (#934) 2026-10-02 11:05:02 +02:00
rohan436 7720bfaba8 docs: fix typo in relative speed comment 2026-03-13 13:29:46 +08:00
David Peter b5a6860d96 Support list of exit codes in --ignore-failure 2025-11-18 09:19:27 +01:00
David Peter 98d262c497 Fix warnings 2025-09-03 20:51:44 +02:00
Niklas Dewally 2166c9f02e Add option to name reference command
Add --reference-name option to give a reference command a name.

This was discussed in the PR that added --reference, #744, but
was unfortunately never implemented.
2025-09-03 20:45:39 +02:00
David Peter ebcf794d97 Clippy 2024-12-29 14:07:21 +01:00
David Peter 038f369420 SortOrder field 2024-12-29 14:07:21 +01:00
David Peter 0705d6c7d0 Basic scheduler test 2024-12-29 14:07:21 +01:00
David Peter 6556b2bd46 Initial work on tracking memory usage 2024-12-29 12:18:55 +01:00
David Peter 99d24b7a2e Multiple output policies 2024-11-11 22:24:25 +01:00
David Carlier 2899deb8fd apply clippy advices on executor/commands lifetimes. 2024-11-11 08:47:33 +01:00
David Peter 83f04cdd31 Add iteration information to failure error message 2024-11-10 22:26:13 +01:00
Jan-Eric Nitschke 13547e973c Change message for identical time and add test for it 2024-06-30 22:45:40 +02:00
Jan-Eric Nitschke d4749b015f Fix prepare and conclude behaviour and add tests. 2024-06-30 22:45:40 +02:00
Jan-Eric Nitschke 9806ed7694 Added option to manually specify a reference to compare the results to. 2024-06-30 22:45:40 +02:00
Hamir Mahal ef1263279d style: simplify string interpolation 2024-06-01 11:07:23 +02:00
Jack O'Connor e13d0cb144 Add --conclude option with tests
This implementation of --conclude is basically identical
to the existing implementation for --prepare. I have not
adapted any existing tests. All tests which test --conclude
functionality are new.

The --conclude commands will run in the same order in which
they are supplied on the cli in the same manner as --prepare
and there must either be one --conclude command, or else the
same number of --concludes as there are commands.
2024-02-02 17:46:23 +01:00
Pedro Witzel ae9b0bbdfd cfg: adding more pre-processing for windows-only parser 2023-10-05 09:25:07 +02:00
Pedro Witzel c2f99e5f94 fmt: apply cargo fmt suggestions 2023-10-05 09:25:07 +02:00
Pedro Witzel bece2eacf0 bug: quoting failure on windows-platform (#296) 2023-10-05 09:25:07 +02:00
David Peter 3d4710f6e0 Clippy suggestions 2023-06-03 23:24:11 +02:00
David Peter ac617c8714 Add new --sort option
This adds a new `--sort` option to choose the way in which the results
in the speed comparison and the markup exports are ordered.

closes #614
closes #601
2023-06-03 21:34:36 +02:00
Ville Skyttä 178bdaa205 Spelling and grammar fixes 2023-05-18 16:31:44 +02:00
David Peter a8752769ab Show unused parameters in command names
closes #600
2023-04-20 21:39:23 +02:00
David Peter 9859ecaafe Always compute relative speed comprison for export, closes #642 2023-04-20 13:22:00 +02:00
David Peter 926b8d07c8 Improve error message, mention --shell=none 2023-04-20 13:22:00 +02:00
David Peter 2793d7b994 Do not export intermediate results to stdout, closes #640 2023-04-20 13:22:00 +02:00