[workspace] members = [ "crates/steep-server", "crates/devcontainer-rs", ] resolver = "3" [workspace.dependencies] # TLS is pure Rust (rustls + ring): no libssl is needed at build or run time. # `rustls-no-provider` leaves the crypto provider to the binary, which installs # `ring` at startup (see `main`), so that a single provider is ever compiled in. reqwest = { version = "0.13", default-features = false, features = ["json", "rustls-no-provider", "stream"] } rustls = { version = "0.23", default-features = false, features = ["ring", "std", "tls12"] } tokio = { version = "1.53", features = ["full"] } tokio-stream = "0.1" tokio-util = "0.7" futures-util = "0.3" serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } # Sentry's default `transport` feature pulls `native-tls`; the same set of features # is spelled out here with rustls instead. sentry = { version = "0.49", default-features = false, features = [ "backtrace", "contexts", "debug-images", "logs", "metrics", "panic", "release-health", "reqwest", "rustls-no-provider", "tower-axum-matched-path", ] } sentry-anyhow = { version = "0.49", features = ["backtrace"] } dotenvy = "0.15" tower = "0.5" tower-http = { version = "0.7", features = ["trace", "fs"] } tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } axum = "0.8" anyhow = { version = "1", features = ["backtrace"] } thiserror = "2.0" ring = "0.17" hex = "0.4" bytes = "1.1" metrics = "0.24" metrics-exporter-prometheus = { version = "0.18", default-features = false, features = ["http-listener"] } toasty = { version = "0.11", features = ["postgresql", "serde", "jiff"] } toasty-cli = "0.11" jiff = { version = "0.2", features = ["serde"] } tempfile = "3" bollard = "0.21" tar = "0.4" [profile.release] debug = 1