rustrade-supervisor 0.4.0

Service lifecycle supervisor with backoff and circuit breakers for rustrade
Documentation
[package]
name         = "rustrade-supervisor"
description  = "Service lifecycle supervisor with backoff and circuit breakers for rustrade"
version.workspace      = true
edition.workspace      = true
authors.workspace      = true
license.workspace      = true
repository.workspace   = true
rust-version.workspace = true
readme     = "README.md"
keywords   = ["supervisor", "tokio", "trading", "lifecycle"]
categories = ["asynchronous", "concurrency"]

# docs.rs builds with every feature on, so the prometheus-gated API is
# documented (annotated with its required feature via doc_cfg).
[package.metadata.docs.rs]
all-features = true

[features]
# Publish supervisor metrics to a global Prometheus registry.
# Off by default — downstream binaries opt in if they want Prometheus.
default = []
prometheus = ["dep:prometheus"]

[dependencies]
async-trait = { workspace = true }
tokio       = { workspace = true }
tokio-util  = { workspace = true }
tracing     = { workspace = true }
prometheus  = { workspace = true, optional = true }
thiserror   = { workspace = true }
anyhow      = { workspace = true }
rand        = { workspace = true }
serde       = { workspace = true }

[dev-dependencies]
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "time", "test-util"] }
serde_json = { workspace = true }