[package]
name = "shuttle-proto"
version.workspace = true
edition.workspace = true
license.workspace = true
description = "Library for all the gRPC definitions used by shuttle"

[dependencies]
shuttle-common = { workspace = true }

anyhow = { workspace = true, optional = true }
chrono = { workspace = true, optional = true }
futures-core = "0.3.28"
prost = { workspace = true }
prost-types = { workspace = true }
tokio = { workspace = true, optional = true }
tonic = { workspace = true }
tracing = { workspace = true, optional = true }
serde_json = { workspace = true, optional = true }

[features]
default = []

builder = []
logger = [
    "shuttle-common/service",
    "chrono",
    "tracing",
    "tokio/macros",
    "tokio/time",
]
provisioner = []
resource-recorder = ["anyhow", "serde_json"]
runtime = []
