[package] name = "perf" version = "0.2.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false [[bin]] name = "noq-perf" path = "src/bin/perf.rs" [features] # NOTE: Please keep this in sync with the feature list in `.github/workflows/codecov.yml`, see # comment in that file for more information. default = ["json-output", "qlog"] # Allow for json output from the perf client json-output = ["serde", "serde_json"] # Enable qlog support qlog = ["noq/qlog"] # Enable tokio-console https://github.com/tokio-rs/console # See https://docs.rs/console-subscriber/latest/console_subscriber/struct.Builder.html#method.with_default_env # for useful environment variables in particular to change listen addr and port # WARNING: it requires special compilation flags # RUSTFLAGS="--cfg tokio_unstable" cargo build -r -p perf -F tokio-console tokio-console = ["console-subscriber"] [dependencies] anyhow = { workspace = true } bytes = { workspace = true } clap = { workspace = true } console-subscriber = { version = "0.5.0", features = ["parking_lot"], optional = true } hdrhistogram = { workspace = true } noq = { package = "noq", path = "../noq" } noq-proto = { package = "noq-proto", path = "../noq-proto" } rcgen = { workspace = true } rustls = { workspace = true } serde = { workspace = true, optional = true } serde_json = { workspace = true, optional = true } socket2 = { workspace = true } tokio = { workspace = true, features = ["rt", "macros", "signal", "net"] } tracing = { workspace = true } tracing-subscriber = { workspace = true } [lints] workspace = true