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
34dabcbed7
Integration test for duplicate parameter names
2022-02-06 20:19:50 +01:00
David Peter
4d3314f26f
Add integration test for prepare option
2022-02-06 20:19:50 +01:00
David Peter
b3c0022386
Add more integration tests
2022-02-06 20:19:50 +01:00
David Peter
81b737fdc1
Remove BenchmarkResult::new
2022-02-06 20:19:50 +01:00
David Peter
4fa0aba266
Add new integration test
2022-02-06 20:19:50 +01:00
David Peter
c751a7735c
Move execution order tests to separate file
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
e6dad51f34
Fix deprecated clippy option
2022-02-06 17:47:40 +01:00
David Peter
f5de5487cc
Fix clippy suggestions
2022-02-06 17:47:40 +01:00
David Peter
f443195d92
Update install instructions
2022-02-03 21:44:23 +01:00
David Peter
80a9f51710
Update to clap 3
2022-02-03 21:07:15 +01:00
David Peter
f619511101
Update CHANGELOG
2022-02-03 21:07:15 +01:00
dependabot[bot]
f077ab1118
Bump serde from 1.0.132 to 1.0.136
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.132 to 1.0.136.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.132...v1.0.136 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 21:16:39 +01:00
dependabot[bot]
be29b93cda
Bump libc from 0.2.112 to 0.2.116
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.112 to 0.2.116.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.112...0.2.116 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 21:15:26 +01:00
dependabot[bot]
350797430e
Bump serde_json from 1.0.73 to 1.0.78
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.73 to 1.0.78.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.73...v1.0.78 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 21:15:21 +01:00
dependabot[bot]
1f909a11e5
Bump tempfile from 3.2.0 to 3.3.0
...
Bumps [tempfile](https://github.com/Stebalien/tempfile ) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/Stebalien/tempfile/releases )
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/NEWS )
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.2.0...v3.3.0 )
---
updated-dependencies:
- dependency-name: tempfile
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 08:00:17 +01:00
dependabot[bot]
d3321dc363
Bump predicates from 2.1.0 to 2.1.1
...
Bumps [predicates](https://github.com/assert-rs/predicates-rs ) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases )
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v2.1.0...v2.1.1 )
---
updated-dependencies:
- dependency-name: predicates
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 07:59:39 +01:00
dependabot[bot]
9484a137a8
Bump assert_cmd from 2.0.2 to 2.0.4
...
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd ) from 2.0.2 to 2.0.4.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases )
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md )
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v2.0.2...v2.0.4 )
---
updated-dependencies:
- dependency-name: assert_cmd
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 07:59:15 +01:00
dependabot[bot]
34716f130c
Bump serde_json from 1.0.72 to 1.0.73
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.72 to 1.0.73.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.72...v1.0.73 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 11:28:03 +01:00
David Peter
f5bd1aea66
Bump MSRV
2022-01-01 11:18:54 +01:00
dependabot[bot]
6b1981c941
Bump libc from 0.2.108 to 0.2.112
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.108 to 0.2.112.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.108...0.2.112 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 11:08:41 +01:00
dependabot[bot]
7fea66b5bf
Bump serde from 1.0.130 to 1.0.132
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.130 to 1.0.132.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.130...v1.0.132 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 11:08:31 +01:00
dependabot[bot]
cb3346821f
Bump rust_decimal from 1.17.0 to 1.19.0
...
Bumps [rust_decimal](https://github.com/paupino/rust-decimal ) from 1.17.0 to 1.19.0.
- [Release notes](https://github.com/paupino/rust-decimal/releases )
- [Commits](https://github.com/paupino/rust-decimal/compare/1.17.0...1.19.0 )
---
updated-dependencies:
- dependency-name: rust_decimal
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 11:08:18 +01:00
Karl Heinz Marbaise
272b107684
Fixed #452 - Difference between markdown and asciidoctor output
2021-12-03 09:11:49 +01:00
dependabot[bot]
63d7442dc5
Bump clap from 2.33.3 to 2.34.0
...
Bumps [clap](https://github.com/clap-rs/clap ) from 2.33.3 to 2.34.0.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/commits )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-03 09:07:55 +01:00
dependabot[bot]
a4ccf3bf11
Bump serde_json from 1.0.68 to 1.0.72
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.68 to 1.0.72.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.68...v1.0.72 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-01 11:18:02 +01:00
dependabot[bot]
cd8e4f444a
Bump libc from 0.2.106 to 0.2.108
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.106 to 0.2.108.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.106...0.2.108 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-01 11:17:07 +01:00
dependabot[bot]
f862699f52
Bump predicates from 2.0.3 to 2.1.0
...
Bumps [predicates](https://github.com/assert-rs/predicates-rs ) from 2.0.3 to 2.1.0.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases )
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v2.0.3...v2.1.0 )
---
updated-dependencies:
- dependency-name: predicates
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-01 11:17:00 +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
David Peter
abd0d335ab
Make stddev fields optional, hide "± σ" for 1 run
2021-11-14 10:28:24 +01:00
Ævar Arnfjörð Bjarmason
bffd476128
Add support for one run with --runs=1
...
Extend the --runs=N option added in d78c33b
(Added options to specify
the max/exact numbers of runs., 2018-09-09) to support --runs=1
instead of dying with a usage error.
This is useful to do ad-hoc testing of your commands while they might
still have syntax errors, or just for doing one run where you don't
care about the stddev.
Before:
$ /usr/bin/hyperfine -s basic -r 1 -L n 5,10 'sleep 0.{n}'
Error: Number of runs below two
After (-s basic) also works:
$ hyperfine -r 1 -L n 5,10 'sleep 0.{n}'
Benchmark 1: sleep 0.5
Time (abs ≡): 500.6 ms [User: 0.6 ms, System: 0.0 ms]
Benchmark 2: sleep 0.10
Time (abs ≡): 100.8 ms [User: 0.7 ms, System: 0.0 ms]
Summary
'sleep 0.10' ran
4.97 ± 0.00 times faster than 'sleep 0.5'
This likewise combines correctly with -m and -M, probably not very
useful, but if you're tweaking an existing command-line:
$ hyperfine -m 1 -M 1 -L n 5,10 'sleep 0.{n}'
Benchmark 1: sleep 0.5
Time (abs ≡): 500.6 ms [User: 0.5 ms, System: 0.0 ms]
Benchmark 2: sleep 0.10
Time (abs ≡): 100.6 ms [User: 0.6 ms, System: 0.0 ms]
Summary
'sleep 0.10' ran
4.98 ± 0.00 times faster than 'sleep 0.5'
The "± 0.00" output in "faster than" should probably be adjusted too,
or we could keep it for consistency. I didn't implement that because
this is the first time I do anything in Rust, and I ran out of
template to copy when wanting to quickly implement this in
write_benchmark_comparison() in main.rs.
2021-11-14 10:28:24 +01:00
dependabot[bot]
4b419c6ab4
Bump rust_decimal from 1.16.0 to 1.17.0
...
Bumps [rust_decimal](https://github.com/paupino/rust-decimal ) from 1.16.0 to 1.17.0.
- [Release notes](https://github.com/paupino/rust-decimal/releases )
- [Commits](https://github.com/paupino/rust-decimal/commits )
---
updated-dependencies:
- dependency-name: rust_decimal
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 17:31:37 +01:00
dependabot[bot]
b44890ba90
Bump libc from 0.2.104 to 0.2.106
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.104 to 0.2.106.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.104...0.2.106 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 17:31:24 +01:00
David Peter
8b60a06ee5
Update CI file
2021-10-17 19:45:12 +02:00
David Peter
21a5ed2b89
Update dependencies
2021-10-17 19:45:12 +02:00
David Peter
a36e5990c5
Update dependencies
2021-10-17 19:45:12 +02:00
David Peter
93c16534c0
Prepare release v1.12
2021-10-17 19:45:12 +02:00
David Peter
58d3eada61
Enable colors on Windows, closes #427
2021-10-17 18:03:18 +02:00
Clément Joly
5c6b302591
Document different increase pattern for -P
...
Document values of `-P` increasing as powers of 2 and following other
patterns.
Fixes #403
2021-10-17 17:24:32 +02:00