Commit Graph
100 Commits
Author SHA1 Message Date
David Peter 575949ad9d Fix version in CHANGELOG 2023-06-04 08:25:49 +02:00
David Peter a719153e63 Update CHANGELOG 2023-06-03 23:38:47 +02:00
David Peter 3d4710f6e0 Clippy suggestions 2023-06-03 23:24:11 +02:00
David Peter 8349ad4c44 Update CHANGELOG 2023-06-03 23:22:43 +02:00
David Peter 0ce6578ea9 Update man page
closes #647
2023-06-03 23:20:19 +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
David Peter 2393de0c36 Updates for v0.17 2023-06-03 20:11:33 +02:00
David Peter 64b9c715e9 Update dependencies 2023-04-20 23:46:27 +02:00
David Peter acaa401ca0 Update CHANGELOG 2023-04-20 21:46:50 +02:00
David Peter a8752769ab Show unused parameters in command names
closes #600
2023-04-20 21:39:23 +02:00
David Peter 4b9cd06d86 Add regression test for #642 2023-04-20 13:22:00 +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 bf9644d74a Add regression test for #640 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
David Peter 77e7b6cd65 Add --log-count option to plot_histogram.py 2023-04-17 22:27:28 +02:00
David Peter 74d240cadd Add profile.release section 2023-03-25 22:16:51 +01:00
David Peter d50bca36c9 CI updates 2023-03-25 22:03:01 +01:00
David Peter b4cfbfaf7b Bump version 2023-03-21 21:03:34 +01:00
David Peter 80ec1c5ddf Fix usage of --input=null 2023-03-21 21:03:34 +01:00
David Peter fbe9ca6669 Use max. term width, not term width 2023-03-21 21:03:34 +01:00
David Peter 1c7a8cc2f6 Fix clippy suggestions 2023-03-15 10:13:58 +01:00
David Peter 2dfc919227 Help text wrapping 2023-03-15 10:13:58 +01:00
David Peter 8f20aed2da Fix pipeline! 2023-03-15 10:13:58 +01:00
David Peter ca9e29ad8c Fix pipeline! 2023-03-15 10:13:58 +01:00
David Peter 6a4239d236 MSRV in CI/CD 2023-03-15 10:13:58 +01:00
David Peter c44aa1d006 Fix clippy suggestions 2023-03-15 10:13:58 +01:00
David Peter b38bfc894c Update dependencies 2023-03-15 10:13:58 +01:00
David Peter 13357a9b67 Update CI/CD 2023-03-15 10:13:58 +01:00
David Peter 94322c50e5 Bump version 2023-03-15 10:13:58 +01:00
David Peter 5f5adda8b4 Prevent creation of file named '-' 2023-03-15 10:13:58 +01:00
David Peter 5924ac3b63 Update CHANGELOG 2023-03-15 10:13:58 +01:00
David Peter 42e85f240c Fix merge conflicts 2023-03-15 09:33:49 +01:00
David Peter ba30c9db4a Add CHANGELOG entry 2023-03-15 09:33:49 +01:00
David Peter e4790ab441 Change error message 2023-03-15 09:33:49 +01:00
David Peter e88fa27c07 Change order of input/outut 2023-03-15 09:33:49 +01:00
David Peter 5db7516dd9 Formatting of help text 2023-03-15 09:33:49 +01:00
David Peter 5b5daa0493 Improve hints for outlier warnings
Improve hints for outlier warnings if `--warmup` or `--prepare` are in
use already.

Closes #570
2022-11-20 21:19:27 +01:00
David Peter 3528e95b34 Update CHANGELOG 2022-10-29 15:04:01 +02:00
David Peter 69c91f5b2d Revert to prev. sentence 2022-10-13 22:43:57 +02:00
David Peter 779d4250c4 Move information to CITATION.cff file 2022-10-13 22:34:01 +02:00
David Peter 9612427753 Update indicatif 2022-09-23 08:34:10 +02:00
David Peter 71c139c81e Updates for indicatif 0.17 2022-09-23 08:34:10 +02:00
David Peter c7e56942f7 Fix clippy suggestions 2022-09-07 09:20:50 +02:00
David Peter 790e1bfa2c Bump version to 1.15 2022-09-07 09:16:43 +02:00
David Peter dffbdc34d4 Add new (hidden) --min-benchmarking-time option 2022-09-07 09:13:53 +02:00
David Peter c4f7bbbd2b Merge branch '1' 2022-09-07 08:47:26 +02:00
David Peter dc7e0e0240 Add CHANGELOG entry 2022-09-07 08:46:35 +02:00
David Peter 9fefe9af31 Rewrite boolean condition 2022-09-07 08:44:57 +02:00
David Peter de0ace4c7d Add full stop after help messages 2022-07-01 13:57:42 +02:00
David Peter bbde07fcf6 Update dependencies 2022-06-26 21:20:24 +02:00
David Peter b989a2afa6 Add new unreleased section 2022-05-17 22:57:20 +02:00
David Peter ec4321392f Fix clippy warnings 2022-05-17 22:57:10 +02:00
David Peter 623ce2d2d9 Bump version 2022-05-17 22:37:08 +02:00
David Peter f75f0a10fe Use cross to build x86_64-unknown-linux-gnu executables
We do this in order to link against older versions of glibc.

closes #508
2022-05-16 21:15:57 +02:00
David Peter 692469659b Add CHANGELOG entry for Emacs org-mode 2022-05-15 21:58:47 +02:00
David Peter eb0ccc85f1 Adapt to new markup exporter changes 2022-05-15 21:57:35 +02:00
David Peter e3bc5b8b25 Simplify test 2022-05-15 21:37:40 +02:00
David Peter 8c05fd030d table_line => table_divider 2022-05-15 21:37:40 +02:00
David Peter 5cd2821266 table_data => table_row 2022-05-15 21:37:40 +02:00
David Peter 7fdb32d202 Remove superfluous newline 2022-05-15 21:37:40 +02:00
David Peter 339f6661ce Move determine_unit_from_results 2022-05-15 21:37:40 +02:00
David Peter 4cdf2d5152 Implement Exporter for all MarkupExporters 2022-05-15 21:37:40 +02:00
David Peter 9a46bcc390 Remove the TestExporter 2022-05-15 21:37:40 +02:00
David Peter 6fe7738165 Do not pass 'unit' into determine_unit_from_results 2022-05-15 21:37:40 +02:00
David Peter 8741d05d11 Move Exporter::unit => determine_unit_from_results 2022-05-15 21:37:40 +02:00
David Peter 94b40d274e Update execution order image 2022-03-05 13:10:46 +01:00
David Peter 4593572d9d Add whisker plot 2022-03-05 13:02:40 +01:00
David Peter 79f3957879 Update CHANGELOG 2022-03-05 13:01:44 +01:00
David Peter 02157eb6ca Add histogram image 2022-03-05 12:51:01 +01:00
David Peter 65932dd5ce Update warning text 2022-03-05 12:47:30 +01:00
David Peter 5c676a9626 Bump version to v1.13.0 2022-03-05 12:10:38 +01:00
David Peter f1557d47fb Add plot_progression.py 2022-03-05 12:03:29 +01:00
David Peter bcd3705ce0 Add number of runs to advanced_statistics.py 2022-03-05 11:53:59 +01:00
David Peter 176275ecab Update dependencies 2022-03-05 11:53:45 +01:00
David Peter 0601a1971e Add --t-min/--t-max to histogram script 2022-02-27 20:11:13 +01:00
David Peter f742329f1e Adjust image size 2022-02-27 17:04:00 +01:00
David Peter d13454a0d4 Add additional integration test for failing command 2022-02-22 22:51:09 +01:00
David Peter e666b01e09 Add simple integation test for --shell=none 2022-02-22 22:51:09 +01:00
David Peter e38ac46179 Add CHANGELOG entry 2022-02-22 22:51:09 +01:00
David Peter 365ff2584d Switch to --shell=none/-N, do not change the default 2022-02-22 22:51:09 +01:00
David Peter d9418e0731 Use raw executor by default, skip intermediate shell
This adds a new "raw executor" (next to the "shell executor") that
allows hyperfine to execute commands directly without any intermediate
shell.

The command line is split into tokens (using the `shell-words` crate),
and according to POSIX rules. The first token is taken as the executable,
and the rest as arguments.

The new executor is enabled by default. In order to select the shell
executor, users will have to pass `--shell=default`.

This allows us to reduce measurement noise and to benchmark very quick
commands. It also decreases the time to run benchmarks, as we don't need
the calibration phase.

Also, it allows one to make sure that the executed command is not
implemented as a shell builtin. For example `hyperfine true`
and `hyperfine --shell=default true` return different times due
to the fact that `bash` executes `true` as a NOP.

Co-authored: Ciprian Dorin Craciun <ciprian@volution.ro>
2022-02-22 22:51:09 +01:00
David Peter f2f1dd9d40 Update dependencies 2022-02-22 14:04:07 +01:00
David Peter 308bf5cd26 Extract common functionality 2022-02-22 13:24:05 +01:00
David Peter f19223ba9d Simplify 2022-02-22 13:24:05 +01:00
David Peter 7fd4aea495 Rename to TimerResult 2022-02-22 13:24:05 +01:00
David Peter 55f0ef6637 Move wall clock timer into execute_and_measure 2022-02-22 13:24:05 +01:00
David Peter e001530f61 Change argument order 2022-02-22 13:24:05 +01:00
David Peter d27cbceed2 Add integration test for --show-output 2022-02-22 13:24:05 +01:00
David Peter 9b8f2a9ee2 Move Stdio extraction to enum 2022-02-22 13:24:05 +01:00
David Peter e1da8ba00f Further simplify execute_and_measure 2022-02-22 13:24:05 +01:00
David Peter 0ffc6d7cc0 Move to timer module 2022-02-22 13:24:05 +01:00
David Peter 1f3943e7d1 Move custom functionality to executor 2022-02-22 13:24:05 +01:00
David Peter f822455d99 Rename functions 2022-02-22 13:24:05 +01:00
David Peter 7c929f7e48 Rename to run_command_and_measure 2022-02-22 13:24:05 +01:00
David Peter 826449bc8f Rename to get_command_line 2022-02-22 13:24:05 +01:00
David Peter defafdf707 Refactor timer module 2022-02-22 10:51:06 +01:00
David Peter f029a46ff9 Fix clippy warnings 2022-02-22 10:13:06 +01:00
David Peter b6ff23a77f Update outdated comment 2022-02-22 10:08:15 +01:00
David Peter eb72702956 Update LICENSE 2022-02-22 10:05:04 +01:00