[package] authors = ["Lucio Franco "] 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"]