Files
2023-04-03 13:30:18 +00:00

319 lines
8.1 KiB
TOML

[package]
authors = ["Lucio Franco <luciofranco14@gmail.com>"]
edition = "2021"
license = "MIT"
name = "examples"
publish = false
version = "0.1.0"
[[bin]]
name = "helloworld-server"
path = "src/helloworld/server.rs"
[[bin]]
name = "helloworld-client"
path = "src/helloworld/client.rs"
[[bin]]
name = "blocking-server"
path = "src/blocking/server.rs"
[[bin]]
name = "blocking-client"
path = "src/blocking/client.rs"
[[bin]]
name = "routeguide-server"
path = "src/routeguide/server.rs"
required-features = ["routeguide"]
[[bin]]
name = "routeguide-client"
path = "src/routeguide/client.rs"
required-features = ["routeguide"]
[[bin]]
name = "authentication-client"
path = "src/authentication/client.rs"
[[bin]]
name = "authentication-server"
path = "src/authentication/server.rs"
[[bin]]
name = "load-balance-client"
path = "src/load_balance/client.rs"
[[bin]]
name = "load-balance-server"
path = "src/load_balance/server.rs"
[[bin]]
name = "dynamic-load-balance-client"
path = "src/dynamic_load_balance/client.rs"
required-features = ["dynamic-load-balance"]
[[bin]]
name = "dynamic-load-balance-server"
path = "src/dynamic_load_balance/server.rs"
required-features = ["dynamic-load-balance"]
[[bin]]
name = "tls-client"
path = "src/tls/client.rs"
required-features = ["tls"]
[[bin]]
name = "tls-server"
path = "src/tls/server.rs"
required-features = ["tls"]
[[bin]]
name = "tls-rustls-client"
path = "src/tls_rustls/client.rs"
required-features = ["tls-rustls"]
[[bin]]
name = "tls-rustls-server"
path = "src/tls_rustls/server.rs"
required-features = ["tls-rustls"]
[[bin]]
name = "tls-client-auth-server"
path = "src/tls_client_auth/server.rs"
required-features = ["tls-client-auth"]
[[bin]]
name = "tls-client-auth-client"
path = "src/tls_client_auth/client.rs"
required-features = ["tls-client-auth"]
[[bin]]
name = "tower-server"
path = "src/tower/server.rs"
required-features = ["tower"]
[[bin]]
name = "tower-client"
path = "src/tower/client.rs"
required-features = ["tower"]
[[bin]]
name = "timeout-server"
path = "src/timeout/server.rs"
required-features = ["timeout"]
[[bin]]
name = "timeout-client"
path = "src/timeout/client.rs"
required-features = ["timeout"]
[[bin]]
name = "multiplex-server"
path = "src/multiplex/server.rs"
[[bin]]
name = "multiplex-client"
path = "src/multiplex/client.rs"
[[bin]]
name = "gcp-client"
path = "src/gcp/client.rs"
required-features = ["gcp"]
[[bin]]
name = "tracing-client"
path = "src/tracing/client.rs"
required-features = ["tracing"]
[[bin]]
name = "tracing-server"
path = "src/tracing/server.rs"
required-features = ["tracing"]
[[bin]]
name = "uds-client"
path = "src/uds/client.rs"
required-features = ["uds"]
[[bin]]
name = "uds-server"
path = "src/uds/server.rs"
required-features = ["uds"]
[[bin]]
name = "interceptor-client"
path = "src/interceptor/client.rs"
[[bin]]
name = "interceptor-server"
path = "src/interceptor/server.rs"
[[bin]]
name = "hyper-warp-client"
path = "src/hyper_warp/client.rs"
required-features = ["hyper-warp"]
[[bin]]
name = "hyper-warp-server"
path = "src/hyper_warp/server.rs"
required-features = ["hyper-warp"]
[[bin]]
name = "health-server"
path = "src/health/server.rs"
required-features = ["health"]
[[bin]]
name = "reflection-server"
path = "src/reflection/server.rs"
required-features = ["reflection"]
[[bin]]
name = "autoreload-server"
path = "src/autoreload/server.rs"
required-features = ["autoreload"]
[[bin]]
name = "optional-server"
path = "src/optional/server.rs"
[[bin]]
name = "hyper-warp-multiplex-client"
path = "src/hyper_warp_multiplex/client.rs"
required-features = ["hyper-warp-multiplex"]
[[bin]]
name = "hyper-warp-multiplex-server"
path = "src/hyper_warp_multiplex/server.rs"
required-features = ["hyper-warp-multiplex"]
[[bin]]
name = "compression-server"
path = "src/compression/server.rs"
required-features = ["compression"]
[[bin]]
name = "compression-client"
path = "src/compression/client.rs"
required-features = ["compression"]
[[bin]]
name = "mock"
path = "src/mock/mock.rs"
required-features = ["mock"]
[[bin]]
name = "grpc-web-server"
path = "src/grpc-web/server.rs"
required-features = ["grpc-web"]
[[bin]]
name = "grpc-web-client"
path = "src/grpc-web/client.rs"
required-features = ["grpc-web"]
[[bin]]
name = "streaming-client"
path = "src/streaming/client.rs"
required-features = ["streaming"]
[[bin]]
name = "streaming-server"
path = "src/streaming/server.rs"
required-features = ["streaming"]
[[bin]]
name = "json-codec-client"
path = "src/json-codec/client.rs"
required-features = ["json-codec"]
[[bin]]
name = "json-codec-server"
path = "src/json-codec/server.rs"
required-features = ["json-codec"]
[[bin]]
name = "richer-error-client"
path = "src/richer-error/client.rs"
required-features = ["types"]
[[bin]]
name = "richer-error-server"
path = "src/richer-error/server.rs"
required-features = ["types"]
[[bin]]
name = "richer-error-client-vec"
path = "src/richer-error/client_vec.rs"
required-features = ["types"]
[[bin]]
name = "richer-error-server-vec"
path = "src/richer-error/server_vec.rs"
required-features = ["types"]
[features]
gcp = ["dep:prost-types", "tonic/tls"]
routeguide = ["dep:async-stream", "dep:futures", "tokio-stream", "dep:rand", "dep:serde", "dep:serde_json"]
reflection = ["dep:tonic-reflection"]
autoreload = ["tokio-stream/net", "dep:listenfd"]
health = ["dep:tonic-health"]
grpc-web = ["dep:tonic-web", "dep:bytes", "dep:http", "dep:hyper", "dep:tracing-subscriber"]
tracing = ["dep:tracing", "dep:tracing-subscriber"]
hyper-warp = ["dep:futures", "dep:tower", "dep:hyper", "dep:http", "dep:http-body", "dep:warp"]
hyper-warp-multiplex = ["hyper-warp"]
uds = ["tokio-stream/net", "dep:tower", "dep:hyper"]
streaming = ["dep:futures", "tokio-stream", "dep:h2"]
mock = ["dep:futures", "dep:tower"]
tower = ["dep:futures", "dep:hyper", "dep:tower", "dep:http"]
json-codec = ["dep:serde", "dep:serde_json", "dep:bytes"]
compression = ["tonic/gzip"]
tls = ["tonic/tls"]
tls-rustls = ["dep:hyper", "dep:hyper-rustls", "dep:tower", "tower-http/util", "tower-http/add-extension", "dep:rustls-pemfile", "dep:tokio-rustls"]
dynamic-load-balance = ["dep:tower"]
timeout = ["tokio/time", "dep:tower"]
tls-client-auth = ["tonic/tls"]
types = ["dep:tonic-types"]
full = ["gcp", "routeguide", "reflection", "autoreload", "health", "grpc-web", "tracing", "hyper-warp", "hyper-warp-multiplex", "uds", "streaming", "mock", "tower", "json-codec", "compression", "tls", "tls-rustls", "dynamic-load-balance", "timeout", "tls-client-auth", "types"]
default = ["full"]
[dependencies]
# Common dependencies
tokio = { version = "1.0", features = ["rt-multi-thread", "macros"] }
prost = "0.11"
tonic = { path = "../tonic" }
# Optional dependencies
tonic-web = { path = "../tonic-web", optional = true }
tonic-health = { path = "../tonic-health", optional = true }
tonic-reflection = { path = "../tonic-reflection", optional = true }
tonic-types = { path = "../tonic-types", optional = true }
async-stream = { version = "0.3", optional = true }
futures = { version = "0.3", default-features = false, optional = true }
tokio-stream = { version = "0.1", optional = true }
tower = { version = "0.4", optional = true }
rand = { version = "0.8", optional = true }
serde = { version = "1.0", features = ["derive"], optional = true }
serde_json = { version = "1.0", optional = true }
tracing = { version = "0.1.16", optional = true }
tracing-subscriber = { version = "0.3", features = ["tracing-log", "fmt"], optional = true }
prost-types = { version = "0.11", optional = true }
http = { version = "0.2", optional = true }
http-body = { version = "0.4.2", optional = true }
hyper = { version = "0.14", optional = true }
warp = { version = "0.3.4", default-features = false, optional = true }
listenfd = { version = "1.0", optional = true }
bytes = { version = "1", optional = true }
h2 = { version = "0.3", optional = true }
tokio-rustls = { version = "0.24.0", optional = true }
hyper-rustls = { version = "0.24.0", features = ["http2"], optional = true }
rustls-pemfile = { version = "1", optional = true }
tower-http = { version = "0.4", optional = true }
[build-dependencies]
tonic-build = { path = "../tonic-build", features = ["prost"] }
[package.metadata.cargo-machete]
ignored = ["prost-types"]