In tower 0.4.0 we missed a couple of re-exports that tonic 0.4.0 depends on. So tonic really depends on tower at least version 0.4.1. Since specifying your tower depedency as 0.4 means you might get 0.4.0, you might get build errors when updating tonic. Such as [#553] and [#552]. This fixes that by bumping tonic's dependency on tower to 0.4.4. That means users will get at least tower version 0.4.4, but semver compatible updates are still allowed. Fixes https://github.com/hyperium/tonic/issues/553 [#553]: https://github.com/hyperium/tonic/issues/553 [#552]: https://github.com/hyperium/tonic/issues/552
91 lines
2.4 KiB
TOML
91 lines
2.4 KiB
TOML
[package]
|
|
name = "tonic"
|
|
# When releasing to crates.io:
|
|
# - Remove path dependencies
|
|
# - Update html_root_url.
|
|
# - Update doc url
|
|
# - Cargo.toml
|
|
# - README.md
|
|
# - Update CHANGELOG.md.
|
|
# - Create "v0.4.x" git tag.
|
|
version = "0.4.0"
|
|
authors = ["Lucio Franco <[email protected]>"]
|
|
edition = "2018"
|
|
license = "MIT"
|
|
documentation = "https://docs.rs/tonic/0.4.0/tonic/"
|
|
repository = "https://github.com/hyperium/tonic"
|
|
homepage = "https://github.com/hyperium/tonic"
|
|
description = """
|
|
A gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility.
|
|
"""
|
|
readme = "../README.md"
|
|
categories = ["web-programming", "network-programming", "asynchronous"]
|
|
keywords = ["rpc", "grpc", "async", "futures", "protobuf"]
|
|
|
|
[features]
|
|
default = ["transport", "codegen", "prost"]
|
|
codegen = ["async-trait"]
|
|
transport = [
|
|
"h2",
|
|
"hyper",
|
|
"tokio",
|
|
"tower",
|
|
"tracing-futures",
|
|
"tokio/macros"
|
|
]
|
|
tls = ["transport", "tokio-rustls"]
|
|
tls-roots = ["tls", "rustls-native-certs"]
|
|
prost = ["prost1", "prost-derive"]
|
|
|
|
# [[bench]]
|
|
# name = "bench_main"
|
|
# harness = false
|
|
|
|
[dependencies]
|
|
bytes = "1.0"
|
|
futures-core = { version = "0.3", default-features = false }
|
|
futures-util = { version = "0.3", default-features = false }
|
|
tracing = "0.1"
|
|
http = "0.2"
|
|
base64 = "0.13"
|
|
|
|
percent-encoding = "2.1"
|
|
tower-service = "0.3"
|
|
tokio-util = { version = "0.6", features = ["codec"] }
|
|
async-stream = "0.3"
|
|
http-body = "0.4"
|
|
pin-project = "1.0"
|
|
|
|
# prost
|
|
prost1 = { package = "prost", version = "0.7", optional = true }
|
|
prost-derive = { version = "0.7", optional = true }
|
|
|
|
# codegen
|
|
async-trait = { version = "0.1.13", optional = true }
|
|
|
|
# transport
|
|
h2 = { version = "0.3", optional = true }
|
|
hyper = { version = "0.14.2", features = ["full"], optional = true }
|
|
tokio = { version = "1.0.1", features = ["net"], optional = true }
|
|
tokio-stream = "0.1"
|
|
tower = { version = "0.4.4", features = ["balance", "buffer", "discover", "limit", "load", "make", "timeout", "util"], optional = true }
|
|
tracing-futures = { version = "0.2", optional = true }
|
|
|
|
# rustls
|
|
tokio-rustls = { version = "0.22", optional = true }
|
|
rustls-native-certs = { version = "0.5", optional = true }
|
|
|
|
[dev-dependencies]
|
|
tokio = { version = "1.0", features = ["rt", "macros"] }
|
|
static_assertions = "1.0"
|
|
rand = "0.8"
|
|
bencher = "0.1.5"
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
|
|
[[bench]]
|
|
name = "decode"
|
|
harness = false
|