[package] name = "hebo" version = "0.3.3" authors = ["Xu Shaohua "] description = "Distributed MQTT broker" edition = "2021" categories = [ "concurrency", "network-programming", ] keywords = [ "broker", "hebo", "mqtt", "qos", ] repository = "https://github.com/RustRobotics/hebo" homepage = "https://github.com/RustRobotics/hebo" license = "AGPL-3.0-only" readme = "./README.md" publish = true [[bin]] name = "hebo" path = "src/bin/hebo.rs" [features] default = [] full = [ "mongodb_conn", "mysql_conn", "pgsql_conn", "redis_conn", ] mongodb_conn = ["mongodb"] mysql_conn = ["mysql_async"] pgsql_conn = ["tokio-postgres"] redis_conn = ["redis"] [dependencies] base64 = "0.21.0" clap = { version = "4.1.4", features = ["derive"] } codec = { path = "../codec", package = "hebo_codec", version = "0.2.3" } env_logger = "0.10.0" futures = "0.3.25" futures-util = "0.3.25" http = "0.2.8" jemallocator = { version = "0.5.0", optional = true } log = "0.4.17" log4rs = { version = "1.2.0", default-features = true, features = [ "all_components", "background_rotation", "gzip" ] } mongodb = { version = "2.3.1", optional = true } mysql_async = { version = "0.31.2", optional = true } openssl = "0.10.45" quinn = { version = "0.9.3", features = ["runtime-tokio"] } rand = "0.8.5" redis = { version = "0.22.3", features = ["tokio-comp", "connection-manager"], optional = true } rustls-pemfile = "1.0.2" serde = { version = "1.0.152", features = ["derive"] } tokio = { version = "1.24.2", features = ["full"] } tokio-postgres = { version = "0.7.7", optional = true } tokio-rustls = "0.23.4" tokio-tungstenite = { version = "0.18.0", features = ["rustls"] } toml = "0.7.0" warp = "0.3.3" webpki-roots = "0.22.6" [target.'cfg(unix)'.dependencies] nc = "0.8.13" users = "0.11.0" [dev-dependencies] rcgen = "0.10.0" ruo = { path = "../ruo", version = "0.1.2" } tokio-test = "0.4.2"