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
David Peter
e88fa27c07
Change order of input/outut
2023-03-15 09:33:49 +01:00
Steve Nease
d32b90ee5c
Add the rest of the suggestions from code review
2023-03-15 09:33:49 +01:00
Steve Nease
0e3bad1391
ran cargo fmt
2023-03-15 09:33:49 +01:00
Steve Nease
e38acdb683
Added --stdin-data argument
...
This argument accepts a path to a file. The data contained in the file will be passed to the command via stdin.
Closes sharkdp/hyperfine#541
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
FilipAndersson
f00acf962e
Fixes #568
2022-10-29 14:58:57 +02:00
David Peter
ec4321392f
Fix clippy warnings
2022-05-17 22:57:10 +02:00
Tavian Barnes
277807cb5a
Implement --output={null,pipe,<FILE>}
...
Fixes #377 .
2022-05-17 22:30:45 +02: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
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
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
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
cb6f2f7c4e
Remove comment
2022-02-22 09:15:40 +01:00
David Peter
6887835f34
Proper shell overhead computation
2022-02-22 09:07:40 +01:00
David Peter
6f51232a8a
Add debug/mock mode
2022-02-22 09:07:40 +01:00
David Peter
5c9c8c2383
New Benchmark struct
2022-02-22 09:07:40 +01:00
David Peter
701a38323d
Formatting
2022-02-22 09:07:40 +01:00
David Peter
8c5ae87ca2
Better error handling in run_intermediate_command
2022-02-22 09:07:40 +01:00
David Peter
662d5ca9ac
Restructure run_intermediate_command
2022-02-22 09:07:40 +01:00
David Peter
f4ef945923
Update BenchmarkResult documentation
2022-02-22 09:07:40 +01:00
David Peter
021583b89b
Simplify code
2022-02-22 09:07:40 +01:00
David Peter
0b5ad72872
Rename to command
2022-02-22 09:07:40 +01:00
David Peter
4cfccf1168
Rename num
2022-02-22 09:07:40 +01:00
David Peter
fa2eaaac5f
Move functionality into run_cleanup_command
2022-02-22 09:07:40 +01:00
David Peter
ffa1c0e839
Remove more function arguments
2022-02-22 09:07:40 +01:00
David Peter
39c7736095
Move functions into Scheduler
2022-02-22 09:07:40 +01:00
David Peter
dcfeede18e
Move functionality to scheduler
2022-02-22 09:07:40 +01:00
David Peter
b658e20110
Move exit code function to separate file
2022-02-22 09:07:40 +01:00
David Peter
0ebd76dfc2
Turn show_output into enum
2022-02-22 09:07:40 +01:00
David Peter
f9334e15fc
Rename _res to _result
2022-02-22 09:07:40 +01:00
David Peter
bea0cfab30
Rename Runs to RunBounds
2022-02-22 09:07:40 +01:00
David Peter
2d0cd4b53c
Modify doc comment
2022-02-19 16:53:02 +01:00
David Peter
bf4d78dcaf
Update code comments
2022-02-19 16:53:02 +01:00