Commit Graph

728 Commits

Author SHA1 Message Date
David Peter
36e57044c9 Simplify test 2022-05-15 21:29:36 +02:00
David Peter
066cb732f9 table_line => table_divider 2022-05-15 21:28:35 +02:00
David Peter
79ca2297bb table_data => table_row 2022-05-15 21:14:56 +02:00
David Peter
4c91b36259 Remove superfluous newline 2022-05-15 21:12:07 +02:00
David Peter
9f4951ef6c Move determine_unit_from_results 2022-05-15 21:11:22 +02:00
David Peter
b23134b371 Implement Exporter for all MarkupExporters 2022-05-15 21:10:38 +02:00
David Peter
a3d9642b2b Remove the TestExporter 2022-05-15 20:46:44 +02:00
David Peter
5b2b5683b7 Do not pass 'unit' into determine_unit_from_results 2022-05-15 20:44:34 +02:00
David Peter
8cd5b1f6bc Move Exporter::unit => determine_unit_from_results 2022-05-15 20:41:55 +02:00
Philipp Paulweber
dda9b97078
Refactor MarkupExporter to omit intermediate table result creation and simplify MarkupFormatter emitting
* see: https://github.com/sharkdp/hyperfine/pull/490#pullrequestreview-932424652
2022-04-22 15:58:51 +02:00
Philipp Paulweber
288e9fb4c9
Refactor MarkdownExporter emitting using a generic MarkupFormatter trait
* see: https://github.com/sharkdp/hyperfine/pull/490#issuecomment-1076784074
2022-04-07 00:11:15 +02:00
Philipp Paulweber
5470a08c85
Refactor Markdown table emitting to generic Markup function 2022-04-07 00:11:15 +02:00
Philipp Paulweber
8d815ababf
Refactor Markdown table contents generation to generic Markup function 2022-04-07 00:11:15 +02:00
Philipp Paulweber
ab03e250a4
Refactor Markdown with Markup by using generic table emitter 2022-04-07 00:11:15 +02:00
dependabot[bot]
7205ac62f2 Bump clap from 3.1.5 to 3.1.7
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.5 to 3.1.7.
- [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/compare/v3.1.5...v3.1.7)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 18:03:38 +02:00
dependabot[bot]
775a4a59b3 Bump rust_decimal from 1.22.0 to 1.23.1
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.22.0 to 1.23.1.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/compare/1.22.0...1.23.1)

---
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-04-01 18:03:26 +02:00
dependabot[bot]
d02690c8a8 Bump anyhow from 1.0.55 to 1.0.56
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.55 to 1.0.56.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.55...1.0.56)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 18:03:19 +02:00
dependabot[bot]
716e52d05b Bump libc from 0.2.119 to 0.2.121
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.119 to 0.2.121.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.119...0.2.121)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 18:03:13 +02:00
David Peter
65844b00b8
Fix description of execution order 2022-03-07 08:49:33 +01:00
David Peter
0ad80759c0
Add execution order to README
closes #247
2022-03-05 13:11:50 +01:00
David Peter
94b40d274e Update execution order image 2022-03-05 13:10:46 +01:00
David Peter
4861321884
Use table for example plots 2022-03-05 13:07:28 +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
73efc650de
Update README.md 2022-03-05 12:52:02 +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
851e9b8dfa
Update documentation 2022-03-05 12:39:00 +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
Vin Singh
56cce61077 Add scipy to scripts README.md pre-requisites 2022-03-03 20:37:09 +01:00
dependabot[bot]
770e23bc1b Bump clap from 3.1.1 to 3.1.3
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.1 to 3.1.3.
- [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/compare/v3.1.1...v3.1.3)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-01 08:43:19 +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