[[bench]]
harness = false
name = "overhead"
path = "benches/overhead.rs"
[[bench]]
harness = false
name = "throughput"
path = "benches/throughput.rs"
[[bin]]
name = "async-inspect"
path = "src/main.rs"
[[bin]]
name = "async-inspect-lsp"
path = "src/bin/async-inspect-lsp.rs"
required-features = ["lsp"]
[dependencies.anyhow]
version = "1.0"
[dependencies.async-inspect-macros]
version = "0.2.0"
[dependencies.async-std]
optional = true
version = "1.12"
[dependencies.axum]
features = ["ws"]
optional = true
version = "0.7"
[dependencies.chrono]
version = "0.4"
[dependencies.clap]
features = ["derive", "cargo"]
version = "4.5"
[dependencies.colored]
version = "2.1"
[dependencies.crossterm]
optional = true
version = "0.28"
[dependencies.futures]
version = "0.3"
[dependencies.inferno]
optional = true
version = "0.11"
[dependencies.once_cell]
version = "1.19"
[dependencies.opentelemetry]
optional = true
version = "0.21"
[dependencies.opentelemetry_sdk]
optional = true
version = "0.21"
[dependencies.parking_lot]
version = "0.12"
[dependencies.pin-project]
version = "1.1"
[dependencies.prometheus]
default-features = false
optional = true
version = "0.13"
[dependencies.ratatui]
optional = true
version = "0.29"
[dependencies.serde]
features = ["derive"]
version = "1.0"
[dependencies.serde_json]
version = "1.0"
[dependencies.smol]
optional = true
version = "2.0"
[dependencies.telemetry-kit]
optional = true
version = "0.3"
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
features = ["rt", "rt-multi-thread", "macros", "sync", "time", "io-std"]
optional = true
version = "1.35"
[dependencies.tokio-tungstenite]
optional = true
version = "0.21"
[dependencies.tokio-util]
features = ["codec"]
optional = true
version = "0.7"
[dependencies.tower-http]
features = ["fs", "cors"]
optional = true
version = "0.5"
[dependencies.tower-lsp]
optional = true
version = "0.20"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
optional = true
version = "0.3"
[dev-dependencies.colored]
version = "2.1"
[dev-dependencies.criterion]
features = ["async_tokio"]
version = "0.5"
[dev-dependencies.tokio]
features = ["full"]
version = "1.35"
[dev-dependencies.tokio-test]
version = "0.4"
[[example]]
name = "async_std_integration"
path = "examples/async_std_integration.rs"
required-features = ["async-std-runtime"]
[[example]]
name = "auto_lock_tracking"
path = "examples/auto_lock_tracking.rs"
required-features = ["tokio"]
[[example]]
name = "basic_inspection"
path = "examples/basic_inspection.rs"
[[example]]
name = "channel_visualization"
path = "examples/channel_visualization.rs"
required-features = ["tokio"]
[[example]]
name = "dashboard_demo"
path = "examples/dashboard_demo.rs"
required-features = ["dashboard"]
[[example]]
name = "deadlock_detection"
path = "examples/deadlock_detection.rs"
[[example]]
name = "ecosystem_integration"
path = "examples/ecosystem_integration.rs"
required-features = ["tokio"]
[[example]]
name = "export_formats"
path = "examples/export_formats.rs"
required-features = ["tokio"]
[[example]]
name = "performance_analysis"
path = "examples/performance_analysis.rs"
required-features = ["tokio"]
[[example]]
name = "performance_profiling"
path = "examples/performance_profiling.rs"
required-features = ["tokio"]
[[example]]
name = "proc_macro_test"
path = "examples/proc_macro_test.rs"
[[example]]
name = "production_ready"
path = "examples/production_ready.rs"
required-features = ["tokio"]
[[example]]
name = "relationship_graph"
path = "examples/relationship_graph.rs"
[[example]]
name = "simple_test"
path = "examples/simple_test.rs"
[[example]]
name = "smol_integration"
path = "examples/smol_integration.rs"
required-features = ["smol-runtime"]
[[example]]
name = "task_hierarchy"
path = "examples/task_hierarchy.rs"
required-features = ["tokio"]
[[example]]
name = "tokio_integration"
path = "examples/tokio_integration.rs"
required-features = ["tokio"]
[[example]]
name = "tui_monitor"
path = "examples/tui_monitor.rs"
required-features = ["cli"]
[[example]]
name = "visualization"
path = "examples/visualization.rs"
required-features = ["tokio"]
[features]
async-std-runtime = ["async-std"]
cli = ["ratatui", "crossterm"]
dashboard = ["axum", "tokio-tungstenite", "tower-http", "tokio"]
default = ["cli", "tokio", "telemetry"]
flamegraph = ["inferno"]
full = ["cli", "tokio", "tracing-sub", "prometheus-export", "opentelemetry-export", "flamegraph", "dashboard", "lsp", "telemetry"]
lsp = ["tower-lsp", "tokio-util", "tokio"]
opentelemetry-export = ["opentelemetry", "opentelemetry_sdk"]
prometheus-export = ["prometheus"]
smol-runtime = ["smol"]
telemetry = ["telemetry-kit", "tokio"]
tokio = ["dep:tokio"]
tracing-sub = ["tracing-subscriber"]
[lib]
name = "async_inspect"
path = "src/lib.rs"
[lints.rust.unexpected_cfgs]
check-cfg = ['cfg(feature, values("unstable"))']
level = "warn"
priority = 0
[package]
authors = ["Ibrahim Cesar <email@ibrahimcesar.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["asynchronous", "development-tools::debugging"]
description = "X-ray vision for async Rust - inspect and debug async state machines"
documentation = "https://docs.rs/async-inspect"
edition = "2021"
exclude = [".github/", ".vscode/", ".claude/", "intellij-plugin/", "vscode-extension/", "scripts/", "lsp-config/", "docs/", "async_inspect_exports/", "*.log", "*.profraw", "*.profdata"]
homepage = "https://github.com/ibrahimcesar/async-inspect"
keywords = ["async", "debugging", "inspection", "state-machine", "tokio"]
license = "MIT"
name = "async-inspect"
readme = "README.md"
repository = "https://github.com/ibrahimcesar/async-inspect"
rust-version = "1.74"
version = "0.2.0"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[profile.dev]
opt-level = 0
[profile.release]
codegen-units = 1
lto = true
opt-level = 3
strip = true