quickbench 1.0 → 1.0.1
raw patch · 5 files changed
+48/−34 lines, 5 filesdep ~docoptdep ~quickbenchPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: docopt, quickbench
API changes (from Hackage documentation)
Files
- CHANGES +0/−20
- CHANGES.md +22/−0
- README.md +19/−8
- quickbench.cabal +4/−4
- stack.yaml +3/−2
− CHANGES
@@ -1,20 +0,0 @@-quickbench changes:--1.0 (pending)--- extract tools/simplebench from the hledger repo--- stop using error, make safe for reuse--- more robust command execution, signal handling, output, error reporting--- switch to docopt, options must precede args for now--- new UI: full commands are specified by arguments/file/stdin,- alternate executables can be specified with -w, flags cleanup--- default file for test commands is ./bench.sh--- -N/--cycles repeats the whole test suite--- man page
+ CHANGES.md view
@@ -0,0 +1,22 @@+1.0.1 2021-10-06++- build cleanly with current GHC & libs++1.0 2016-10-21++- extract tools/simplebench from the hledger repo++- stop using error, make safe for reuse++- more robust command execution, signal handling, output, error reporting++- switch to docopt, options must precede args for now++- new UI: full commands are specified by arguments/file/stdin,+ alternate executables can be specified with -w, flags cleanup++- default file for test commands is ./bench.sh++- -N/--cycles repeats the whole test suite++- man page
README.md view
@@ -3,9 +3,10 @@ Quick & easy benchmarking of command-line programs. [About](#about)+| [Install](#install) | [Examples](#examples) -| [Usage](#usage)-| [Related](#related-work)+| [Options](#options)+| [Related tools](#related-tools) ## About@@ -21,17 +22,24 @@ I find it very useful for quick and dirty, exploratory, and comparative measurements that you can understand at a glance. -## Examples+## Install -Install it easily on most platforms with [stack](https://haskell-lang.org/get-started) (or cabal). -It's not yet on Hackage, so you'll need the source:+You can build it from source on most platforms supporting [GHC](https://haskell.org/ghc). +A [patch](https://github.com/docopt/docopt.hs/pull/34) is required for one of the dependencies,+so for now you must build quickbench from inside its source tree, with +[stack](https://www.fpcomplete.com/haskell/get-started/)+(or if you build with [cabal](https://cabal.readthedocs.io), ensure it uses the docopt version mentioned in stack.yaml): ``` $ git clone https://github.com/simonmichael/quickbench $ cd quickbench-$ stack install # ensure $PATH includes ~/.local/bin+$ stack install ``` +stack will advise you to add ~/.local/bin to $PATH if needed.++## Examples+ You can specify test commands as arguments: ``` $ quickbench 'sleep 1'@@ -139,7 +147,7 @@ +-----------------------------------++--------------------+---------------------+ ``` -## Usage+## Options ``` $ quickbench -h@@ -167,7 +175,7 @@ -h, --help show this help ``` -## Related+## Related tools [bench](https://github.com/Gabriel439/bench#readme) (Gabriel Gonzalez 2016) is another command line benchmarking tool written in Haskell.@@ -189,3 +197,6 @@ std dev 280.3 μs (178.0 μs .. 494.9 μs) variance introduced by outliers: 52% (severely inflated) ```++[hyperfine](https://github.com/sharkdp/hyperfine) also does statistical analysis+and has good usability.
quickbench.cabal view
@@ -1,5 +1,5 @@ name: quickbench-version: 1.0+version: 1.0.1 synopsis: quick & easy benchmarking of command-line programs description: quickbench produces very simple output (elapsed seconds),@@ -21,7 +21,7 @@ extra-source-files: README.md- CHANGES+ CHANGES.md stack.yaml quickbench.1 @@ -32,7 +32,7 @@ base >= 4.7 && < 5 ,containers ,directory- ,docopt >= 0.7.0.4+ ,docopt >= 0.7.0.7 ,pretty-show ,process ,safe@@ -46,7 +46,7 @@ hs-source-dirs: app main-is: Main.hs build-depends:- quickbench == 1.0+ quickbench ,base ,process default-language: Haskell2010
stack.yaml view
@@ -1,6 +1,7 @@-resolver: lts-7.4+resolver: lts-18.10 packages: - '.' -extra-deps: []+extra-deps:+- docopt-0.7.0.7