Releases: sharkdp/hyperfine
Releases Β· sharkdp/hyperfine
v1.20.0
v1.20.0
Features
- Add
--reference-nameoption to give a meaningful name to the reference command, see #808 (@niklasdewally) - The
--ignore-failureoption now supports a comma-separated list of exit codes to ignore (e.g.,--ignore-failure=1,2), see #836 (@sharkdp) - Python scripts: Add
--time-unitoption toadvanced_statistics.py(@sharkdp) - Python scripts: Add new
plot_benchmarks.pyscript for plotting collections of benchmarks, see #806 (@marxin)
Bugfixes
- Fix bug where naming individual commands with parameter scan was not working correctly, see #794 (@teofr)
Other
v1.19.0
Features
- Add a new
--reference <cmd>option to specify a reference command for the relative speed comparison, see #579, #577 and #744 (@JanEricNitschke) - Add
--concludeargument (analog to--prepare), see #565 and #719 as well as the docs here (@jackoconnordev) - Allow
--output=β¦to appear once for each command, enabling use cases likehyperfine --output=null my-cmd --output=./file.log my-cmd, see #529 and #775 (@sharkdp) - The environment variable
$HYPERFINE_ITERATIONwill now contain the current iteration number for each benchmarked command, see #775 (@sharkdp) - Add iteration information to failure error message, see #771 and #772 (@sharkdp)
- Python scripts:
- legend modification parameters and output DPI, see #758 (@Spreadcat)
- Nicer whiskers plot, see #727 (@serpent7776)
Bugfixes
- ETA not clearly visible on terminals with a block cursor, see #698 and #699 (@overclockworked64)
- Fix zsh completions, see #717 (@xzfc)
Other
- Build binaries for aarch64-apple-darwin, see #728 (@Phault)
- Various cleanups (@hamirmahal, @one230six)
v1.18.0
v1.17.0
Features
- Add new
--sortoption to control the order in the rel. speed comparison and in markup export formats, see #601, #614, #655 (@sharkdp) - Parameters which are unused in the command line are now displayed in parentheses, see #600 and #644 (@sharkdp).
- Added
--log-countoption for histogram plots, seescripts/plot_histogram.py(@sharkdp)
Changes
- Updated hyperfine to use
windows-sysinstead of the unmaintainedwinapi, see #624, #639, #636, #641 (@clemenswasser) - Silenced deprecation warning in Python scripts, see #633 (@nicovank)
- Major update of the man page, see 0ce6578, #647 (@sharkdp)
Bugfixes
v1.16.1
v1.16.0
Features
- Added new
--inputoption, see #541 and #563 (@snease) - Added possibility to specify
-as the filename in the--export-*options, see #615 and #623 (@humblepenguinn)
Changes
Bugfixes
- Fix uncolored output on Windows if
TERMis not set, see #583 (@nabijaczleweli) - On Windows, only run
cmd.exewith the/Coption. Use-cfor all other shells, see #568 and #582 (@FilipAndersson245)
Other
- Thanks to @berombau for working on dependency upgrades, see #584
- Fixed installationm on Windows, see #595 and #596 (@AntoniosBarotsis)
v1.15.0
Features
- Disable colorized output in case of
TERM=dumborNO_COLOR=1, see #542 and #555 (@nabijaczleweli) - Add new (experimental)
--min-benchmarking-time <secs>option, see #527 (@sharkdp)
Bugfixes
- Fix user and kernel times on Windows, see #368 and #538 (@clemenswasser)
Other
v1.14.0
- Add a new
--output={null,pipe,inherit,<FILE>}option to control
where the output of the benchmarked program is redirected (if at all),
see #377 and #509 (@tavianator, originally suggested by @BurntSushi) - Add Emacs org-mode as a new export format, see #491 (@ppaulweber)
- Relax glibc requirements, see #508 and #512 (@sharkdp)
v1.13.0
Features
- Added a new
--shell=none/-Noption to disable the intermediate
shell for executing the benchmarked commands. Hyperfine normally
measures and subtracts the shell spawning time, but the intermediate
shell always introduces a certain level of measurement noise. Using
--shell=none/-Nallows users to benchmark very fast commands
(with a runtime on the order of a few milliseconds). See #336, #429,
and #487 (@cipriancraciun and @sharkdp) - Added
--setup/-soption that can be used to runmake allor
similar. It runs once per set of tests, like--cleanup/-c(@avar) - Added new
plot_progression.pyscript to debug background
interference effects.
Changes
- Breaking change: the
-sshort option for--styleis now used for
the new--setupoption. - The environment offset randomization is now also available on Windows,
see #484
Other
- Improved documentation and test coverage, cleaned up code base for
future improvements.
v1.12.0
Features
--command-namecan now take parameter names from--parameter-*options, see #351 and #391 (@silathdiir)- Exit codes (or signals) are now printed in cases of command failures, see #342 (@KaindlJulian)
- Exit codes are now part of the JSON output, see #371 (@JordiChauzi)
- Colorized output should now be enabled on Windows by default, see #427
Changes
- When
--export-*commands are used, result files are created before benchmark execution
to fail early in case of, e.g., wrong permissions. See #306 (@s1ck). - When
--export-*options are used, result files are written after each individual
benchmark command instead of writing after all benchmarks have finished. See #306 (@s1ck). - Reduce number of shell startup time measurements from 200 to 50, generally speeding up benchmarks. See #378
- User and system time are now in consistent time units, see #408 and #409 (@film42)