Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Runs criterion benchmarks (`cargo bench`) and compares against a stored baseline

Runs end-to-end benchmarks with [hyperfine](https://github.com/sharkdp/hyperfine) across multiple fixture sizes (single repo, mono-small, mono-medium, mono-large). Optionally compares against competitor tools (semantic-release, changesets, release-please).

- Generates fixtures using `cargo run --release --bin generate-fixtures`
- Generates fixtures via the [`FerrLabs/Fixtures`](https://github.com/FerrLabs/Fixtures) action from the JSON `definitions` directory you pass
- Measures execution time, memory usage, and binary size
- Compares against stored baseline and detects regressions (configurable threshold, default 25%)

Expand All @@ -62,4 +62,5 @@ The calling workflow must provide:
- Rust cache (`Swatinem/rust-cache@v2`)
- Node.js (for full benchmarks with competitors): `actions/setup-node@v6`
- A project with `cargo bench --bench ferrflow_benchmarks` (for micro)
- A project with `cargo run --release --bin generate-fixtures` (for full)
- A directory of JSON fixture definitions, passed via the `definitions` input — the action generates the fixtures with [`FerrLabs/Fixtures`](https://github.com/FerrLabs/Fixtures) (for full)
- A project that builds a release binary with `cargo build --release` — the action puts `target/release` on `PATH` and benchmarks it (for full)
2 changes: 1 addition & 1 deletion action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ inputs:
required: false
default: '10'
definitions:
description: 'Path to TOML definitions for benchmark fixture generation'
description: 'Path to the directory of JSON fixture definitions for benchmark fixture generation'
required: true
verbose:
description: 'Show full error output when a benchmark command fails validation'
Expand Down
Loading