[package]
edition = "2024"
rust-version = "1.85"
name = "zenbench"
version = "0.1.9"
build = false
exclude = [
"CLAUDE.md",
"CONTEXT-HANDOFF.md",
"FEEDBACK.md",
".claude/",
".superwork/",
".zenbench/",
".gitignore",
"copter-report/",
".github/",
"Cross.toml",
"justfile",
"Cargo.toml.original.txt",
"fuzz/",
"benches/",
"tests/",
"docs/",
"site/",
"CHART-GALLERY.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Interleaved microbenchmarking with paired statistics, CI regression testing, and hardware-adaptive measurement"
readme = "README.crates.md"
keywords = [
"benchmark",
"performance",
"profiling",
"testing",
]
categories = [
"development-tools",
"development-tools::profiling",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/imazen/zenbench"
[features]
alloc-profiling = []
async = ["dep:tokio"]
charts = ["dep:charts-rs"]
cli = ["dep:clap"]
cpu-time = ["dep:cpu-time"]
criterion-compat = []
daemon = []
default = [
"cli",
"daemon",
"precise-timing",
"alloc-profiling",
]
precise-timing = []
wasm = [
"dep:wasmtime",
"dep:wasmtime-wasi",
]
[lib]
name = "zenbench"
path = "src/lib.rs"
[[bin]]
name = "zenbench"
path = "src/bin/zenbench.rs"
required-features = ["cli"]
[[bin]]
name = "zenbench-mcp"
path = "src/bin/zenbench-mcp.rs"
[[example]]
name = "lock_holder"
path = "examples/lock_holder.rs"
[[example]]
name = "sorting"
path = "examples/sorting.rs"
[[example]]
name = "template_bench"
path = "examples/template_bench.rs"
[[example]]
name = "wasm_simd_bench"
path = "examples/wasm_simd_bench.rs"
required-features = ["wasm"]
[dependencies.charts-rs]
version = "0.3.28"
optional = true
default-features = false
[dependencies.clap]
version = "4.6.0"
features = ["derive"]
optional = true
[dependencies.cpu-time]
version = "1.0.0"
optional = true
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.149"
[dependencies.sysinfo]
version = "0.36.1"
[dependencies.terminal_size]
version = "0.4.4"
[dependencies.tokio]
version = "1.50.0"
features = ["rt"]
optional = true
[dependencies.wasmtime]
version = "43.0.0"
optional = true
[dependencies.wasmtime-wasi]
version = "43.0.0"
optional = true
[dev-dependencies.criterion]
version = ">=0.7.0, <0.9.0"
features = ["html_reports"]
[dev-dependencies.divan]
version = "0.1.21"
[dev-dependencies.tokio]
version = "1.50.0"
features = [
"rt",
"macros",
]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.fs4]
version = "1.1.0"
features = ["sync"]