Cargo Features

shuttle-proto has no features set by default.

[dependencies]
shuttle-proto = { version = "0.44.0", features = ["logger", "provisioner", "resource-recorder", "runtime", "client", "logger-client", "provisioner-client", "runtime-client", "resource-recorder-client", "async-trait", "portpicker"] }
logger logger-client? = chrono, tracing

Enables service of shuttle-common, macros and time of tokio

Affects shuttle-proto::logger

provisioner provisioner-client?

Affects shuttle-proto::provisioner

resource-recorder resource-recorder-client? = anyhow, serde_json

Affects shuttle-proto::resource_recorder

runtime runtime-client?

Affects shuttle-proto::runtime

client logger-client? provisioner-client? resource-recorder-client? runtime-client? = tower

Enables claims of shuttle-common

logger-client = client, http, logger
provisioner-client = client, http, provisioner
runtime-client = anyhow, client, runtime, tokio, tracing
resource-recorder-client = client, http, resource-recorder

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

anyhow resource-recorder? runtime-client?
async-trait implicit feature

Enables async-trait

async-trait:

Type erasure for async trait methods

chrono logger?
http logger-client? provisioner-client? resource-recorder-client?

Enables http ^0.2.8

portpicker implicit feature

Enables portpicker

portpicker:

Pick a free unused port

tokio logger? runtime-client?
tower client?
tracing logger? runtime-client?
serde_json resource-recorder?