# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2018"
name = "hrpc"
version = "0.12.2"
authors = ["Yusuf Bera Ertan <y.bera003.06@protonmail.com>"]
description = "Common code for hRPC."
homepage = "https://github.com/harmony-development/hrpc-rs"
keywords = ["hrpc", "harmony", "rpc"]
license = "MIT"
repository = "https://github.com/harmony-development/hrpc-rs"
[package.metadata.nix]
build = true
library = true
[dependencies.ahash]
version = "0.7"
optional = true
default-features = false

[dependencies.async-trait]
version = "0.1"

[dependencies.axum]
version = "0.2"
features = ["http2", "ws"]
optional = true
default-features = false

[dependencies.axum-server]
version = "0.2"
features = ["tls-rustls"]
optional = true

[dependencies.bytes]
version = "1.0"

[dependencies.dashmap]
version = "4.0"
optional = true

[dependencies.flume]
version = "0.10"

[dependencies.futures-util]
version = "0.3"

[dependencies.http]
version = "0.2"

[dependencies.hyper]
version = "0.14"
features = ["http1", "http2", "runtime"]

[dependencies.hyper-rustls]
version = "0.22"
features = ["native-tokio"]
optional = true
default-features = false

[dependencies.parking_lot]
version = "0.11"

[dependencies.prost]
version = "0.8"

[dependencies.rustls-native-certs]
version = "0.5"
optional = true

[dependencies.tokio]
version = "1.8"
features = ["parking_lot"]
optional = true

[dependencies.tokio-rustls]
version = "0.22"
optional = true

[dependencies.tokio-tungstenite]
version = "0.15"
features = ["rustls-tls"]
optional = true

[dependencies.tower]
version = "0.4"
features = ["util"]
optional = true
default-features = false

[dependencies.tower-http]
version = "0.1"
features = ["compression-gzip", "decompression-gzip", "trace"]
optional = true
default-features = false

[dependencies.tracing]
version = "0.1"

[features]
client = ["rustls-native-certs", "tokio-tungstenite", "tokio", "tokio-rustls", "hyper/client", "hyper-rustls", "tower-http", "tower"]
default = ["server", "client"]
server = ["axum", "axum-server", "tokio", "ahash", "dashmap", "tokio/macros", "hyper/server", "tower-http", "tower"]
