[package]
name = "pitwall"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
homepage.workspace = true
keywords.workspace = true
categories.workspace = true
description = "Modern, type-safe Rust library for iRacing telemetry data"
documentation = "https://docs.rs/pitwall"
readme = "README.md"
include = [
"src/**",
"benches/**",
"tests/**/*.rs",
"README.md",
"LICENSE",
]
[dependencies]
pitwall-derive = { workspace = true, optional = true }
thiserror.workspace = true
anyhow.workspace = true
tokio.workspace = true
tokio-util.workspace = true
serde.workspace = true
serde_yaml_ng.workspace = true
tracing.workspace = true
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"] }
async-trait.workspace = true
tokio-stream = { version = "0.1", features = ["sync"] }
futures = "0.3"
pin-project-lite = "0.2"
specta = { version = "2.0.0-rc.22", features = ["derive"], optional = true }
[target.'cfg(windows)'.dependencies]
windows.workspace = true
windows-core.workspace = true
[dev-dependencies]
tokio = { version = "1.42", features = ["rt", "rt-multi-thread", "macros", "test-util"] }
tokio-stream = { version = "0.1", features = ["sync"] }
futures = "0.3"
futures-util = "0.3"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"] }
proptest.workspace = true
criterion.workspace = true
trybuild = "1.0.105"
[features]
default = ["derive"]
derive = ["dep:pitwall-derive"]
tauri = ["dep:specta"]
benchmark = []
schema-discovery = []
[[bench]]
name = "frame_construction"
harness = false
required-features = ["benchmark"]
[[bench]]
name = "adapter_performance"
harness = false
required-features = ["benchmark"]
[[bench]]
name = "var_data_extraction"
harness = false
required-features = ["benchmark"]
[[bench]]
name = "live_frame_latency"
harness = false
required-features = ["benchmark"]