[package]
name = "inferno"
version = "0.11.21"
edition = "2021"
authors = ["Jon Gjengset <jon@thesquareplanet.com>"]
rust-version = "1.71.0"
readme = "README.md"
description = "Rust port of the FlameGraph performance profiling tool suite"
repository = "https://github.com/jonhoo/inferno.git"
keywords = ["perf", "flamegraph", "profiling"]
categories = ["command-line-utilities", "development-tools::profiling", "visualization"]
license = "CDDL-1.0"
exclude = ["/tests/**", "/flamegraph/**", "/*.perf"]
[profile.release]
strip = true
[features]
default = ["cli", "multithreaded", "nameattr"]
cli = ["clap", "env_logger"]
multithreaded = ["dashmap", "crossbeam-utils", "crossbeam-channel"]
nameattr = ["indexmap"]
[dependencies]
ahash = "0.8"
is-terminal = "0.4.3"
crossbeam-utils = { version = "0.8", optional = true }
crossbeam-channel = { version = "0.5", optional = true }
dashmap = { version = "6.0.1", optional = true }
env_logger = { version = "0.11", default-features = false, optional = true }
indexmap = { version = "2.0", optional = true }
itoa = "1"
log = "0.4"
num-format = { version = "0.4.3", default-features = false }
quick-xml = { version = "0.26", default-features = false }
rgb = "0.8.13"
str_stack = "0.1"
clap = { version = "4.0.1", optional = true, features = ["derive"] }
once_cell = "1.12.0"
[dev-dependencies]
assert_cmd = "2"
criterion = "0.5"
libflate = "2"
maplit = "1.0.1"
pretty_assertions = "1"
rand = { version = "0.8", features = ["small_rng"] }
serde = { version = "1.0.145" }
testing_logger = "0.1.1"
[target.'cfg(any())'.dependencies]
regex = { version = "1.6", default-features = false, optional = true }
rle-decode-fast = { version = "1.0.3", default-features = false, optional = true }
[lib]
name = "inferno"
path = "src/lib.rs"
[[bin]]
name = "inferno-collapse-perf"
path = "src/bin/collapse-perf.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-dtrace"
path = "src/bin/collapse-dtrace.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-sample"
path = "src/bin/collapse-sample.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-vtune"
path = "src/bin/collapse-vtune.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-vsprof"
path = "src/bin/collapse-vsprof.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-ghcprof"
path = "src/bin/collapse-ghcprof.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-guess"
path = "src/bin/collapse-guess.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-collapse-recursive"
path = "src/bin/collapse-recursive.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-flamegraph"
path = "src/bin/flamegraph.rs"
required-features = ["cli"]
[[bin]]
name = "inferno-diff-folded"
path = "src/bin/diff-folded.rs"
required-features = ["cli"]
[[bench]]
name = "collapse"
harness = false
required-features = ["multithreaded"]
[[bench]]
name = "flamegraph"
harness = false
required-features = ["multithreaded"]