[package]
name = "shuttle-service"
version = "0.46.0"
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "The core traits for running services on Shuttle (https://www.shuttle.rs/)"
homepage = "https://www.shuttle.rs"
[lib]
doctest = false
[dependencies]
shuttle-common = { workspace = true, features = [
"service",
"tracing",
] }
shuttle-proto = { workspace = true, optional = true }
anyhow = { workspace = true }
async-trait = { workspace = true }
cargo_metadata = { workspace = true, optional = true }
dunce = { workspace = true, optional = true }
serde = { workspace = true, features = ["derive"] }
strfmt = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, optional = true }
toml = { workspace = true, optional = true }
tracing = { workspace = true, optional = true }
[dev-dependencies]
tokio = { workspace = true, features = ["macros", "rt"] }
[features]
default = []
builder = [
"cargo_metadata",
"tokio/process",
"tokio/io-util",
"tokio/sync",
"tokio/time",
"toml",
"tracing",
]
runner = ["shuttle-proto/runtime-client", "tokio/process", "dunce"]