# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2018"
name = "criterion"
version = "0.5.1"
authors = [
    "Jorge Aparicio <japaricious@gmail.com>",
    "Brook Heisler <brookheisler@gmail.com>",
]
exclude = ["book/*"]
description = "Statistics-driven micro-benchmarking library"
homepage = "https://bheisler.github.io/criterion.rs/book/index.html"
readme = "README.md"
keywords = [
    "criterion",
    "benchmark",
]
categories = ["development-tools::profiling"]
license = "Apache-2.0 OR MIT"
repository = "https://github.com/bheisler/criterion.rs"

[package.metadata.docs.rs]
features = [
    "async_futures",
    "async_smol",
    "async_std",
    "async_tokio",
]

[lib]
bench = false

[[bench]]
name = "bench_main"
harness = false

[dependencies.anes]
version = "0.1.4"

[dependencies.async-std]
version = "1.9"
optional = true

[dependencies.cast]
version = "0.3"

[dependencies.ciborium]
version = "0.2.0"

[dependencies.clap]
version = "4"
features = ["std"]
default-features = false

[dependencies.criterion-plot]
version = "0.5.0"

[dependencies.csv]
version = "1.1"
optional = true

[dependencies.futures]
version = "0.3"
optional = true
default_features = false

[dependencies.is-terminal]
version = "0.4.6"

[dependencies.itertools]
version = "0.10"

[dependencies.num-traits]
version = "0.2"
features = ["std"]
default-features = false

[dependencies.once_cell]
version = "1.14"

[dependencies.oorandom]
version = "11.1"

[dependencies.plotters]
version = "^0.3.1"
features = [
    "svg_backend",
    "area_series",
    "line_series",
]
optional = true
default-features = false

[dependencies.rayon]
version = "1.3"
optional = true

[dependencies.regex]
version = "1.5"
features = ["std"]
default-features = false

[dependencies.serde]
version = "1.0"

[dependencies.serde_derive]
version = "1.0"

[dependencies.serde_json]
version = "1.0"

[dependencies.smol]
version = "1.2"
optional = true
default-features = false

[dependencies.tinytemplate]
version = "1.1"

[dependencies.tokio]
version = "1.0"
features = ["rt"]
optional = true
default-features = false

[dependencies.walkdir]
version = "2.3"

[dev-dependencies.approx]
version = "0.5.0"

[dev-dependencies.futures]
version = "0.3"
features = ["executor"]
default_features = false

[dev-dependencies.quickcheck]
version = "1.0"
default-features = false

[dev-dependencies.rand]
version = "0.8"

[dev-dependencies.tempfile]
version = "~3.5.0"

[features]
async = ["futures"]
async_futures = [
    "futures/executor",
    "async",
]
async_smol = [
    "smol",
    "async",
]
async_std = [
    "async-std",
    "async",
]
async_tokio = [
    "tokio",
    "async",
]
cargo_bench_support = []
csv_output = ["csv"]
default = [
    "rayon",
    "plotters",
    "cargo_bench_support",
]
html_reports = []
real_blackbox = []
stable = [
    "csv_output",
    "html_reports",
    "async_futures",
    "async_smol",
    "async_tokio",
    "async_std",
]

[badges.maintenance]
status = "passively-maintained"
