Commit Graph
440 Commits
Author SHA1 Message Date
David Peter 5c9c8c2383 New Benchmark struct 2022-02-22 09:07:40 +01:00
David Peter d3c7c7974a Improve error message 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 811e6b5fcd Rename test 2022-02-22 09:07:40 +01:00
David Peter 6645fa10b9 Use get_program 2022-02-22 09:07:40 +01:00
David Peter 21f76a338f Remove unused option 2022-02-22 09:07:40 +01:00
David Peter f9e62e5e7f Rename parse to from_str 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 250db61fa0 Fix clippy warning 2022-02-22 09:07:40 +01:00
David Peter 2d0cd4b53c Modify doc comment 2022-02-19 16:53:02 +01:00
David Peter 833529f733 Refactor command.rs 2022-02-19 16:53:02 +01:00
David Peter bf4d78dcaf Update code comments 2022-02-19 16:53:02 +01:00
David Peter 72d27729fa New Scheduler struct 2022-02-19 16:53:02 +01:00
David Peter 5df981ae7b Expand execution order tests 2022-02-06 22:50:11 +01:00
David Peter 6db82cdb2a Split range into range_step and commands 2022-02-06 22:49:04 +01:00
David Peter a6baf49b72 Introduce Commands struct 2022-02-06 22:49:04 +01:00
David Peter c5a2266199 New schedule module 2022-02-06 20:19:50 +01:00
David Peter 5c634c9f2f Move a few modules to util 2022-02-06 20:19:50 +01:00
David Peter 999e7c4566 Move more modules around 2022-02-06 20:19:50 +01:00
David Peter 47091a5740 New parameter module 2022-02-06 20:19:50 +01:00
David Peter 865290a144 New output module 2022-02-06 20:19:50 +01:00
David Peter e5e4c8c020 New 'benchmark' module folder 2022-02-06 20:19:50 +01:00
David Peter cd38e9c63b Move build_commands 2022-02-06 20:19:50 +01:00
David Peter 33f8d03d6b Move build_export_manager to ExportManager 2022-02-06 20:19:50 +01:00
David Peter b54b2f81f4 Rename to Options 2022-02-06 20:19:50 +01:00
David Peter 39a85b88cf Move convert_cli_arguments_to_options to HyperfineOptions 2022-02-06 20:19:50 +01:00
David Peter c4ae7f6f8c Fix Windows code 2022-02-06 20:19:50 +01:00
David Peter d7e96928fb Fix format call 2022-02-06 20:19:50 +01:00
David Peter a35e7e2caf Fix formatting 2022-02-06 20:19:50 +01:00
David Peter c6477c7368 Rename function 2022-02-06 20:19:50 +01:00
David Peter 2040810ce3 Unified error handling 2022-02-06 20:19:50 +01:00
David Peter 81b737fdc1 Remove BenchmarkResult::new 2022-02-06 20:19:50 +01:00
David Peter ce7087b107 Use thiserror for to derive Error 2022-02-06 20:19:50 +01:00
David Peter f5de5487cc Fix clippy suggestions 2022-02-06 17:47:40 +01:00
David Peter 80a9f51710 Update to clap 3 2022-02-03 21:07:15 +01:00
Karl Heinz Marbaise 272b107684 Fixed #452 - Difference between markdown and asciidoctor output 2021-12-03 09:11:49 +01:00
Ævar Arnfjörð Bjarmason 017d55a4a1 Add --setup (-s) option, like --prepare but runs once per batch
Add a --setup option for the use-case of wanting to do one-off setup
before a set of benchmarks, not the once-per-test setup that --prepare
does. This is useful for the cases noted in the updated documentation.

Per the feedback on https://github.com/sharkdp/hyperfine/pull/448 this
new "--setup" option will steal the "-s" short option from
"--style" (initially this was called "--build" and used the
non-conflicting "-b").

Potential future work:

I'd prefer if this and --cleanup took N number of commands, so you
could do e.g.:

    hyperfine -L rev master,next \
        -b 'git worktree add /tmp/test-{r}'  \
        -b 'make -C /tmp/test-{r} all'  \
	'make -C /tmp/test-{r} test' \
	-c 'git worktree remove /tmp/test-{r}'

I.e. a shortcut around not providing these with &&, which makes things
a bit more readable.

But the --cleanup option doesn't do that, so let's just go with what
it's doing for consistency, so for this you'll now need to do:

    hyperfine -L rev master,next \
        -b 'git worktree add /tmp/test-{r} &&
	    make -C /tmp/test-{r} all'  \
	'make -C /tmp/test-{r} test' \
	-c 'git worktree remove /tmp/test-{r}'
2021-11-16 21:36:35 +01:00