[package] name = "ac-rumqttc" version = "0.21.0-alpha.2" description = "An efficient and robust mqtt client for your connected devices" license = "Apache-2.0" repository = "https://github.com/voididea/rumqtt" authors = ["anchen"] edition = "2018" keywords = ["mqtt", "iot", "coap", "http"] categories = ["network-programming"] [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] default = ["use-rustls"] use-rustls = ["dep:tokio-rustls", "dep:rustls-pemfile", "dep:rustls-native-certs"] use-native-tls = ["dep:tokio-native-tls", "dep:native-tls"] websocket = ["dep:async-tungstenite", "dep:ws_stream_tungstenite", "dep:http"] [dependencies] futures = "0.3" tokio = { version = "1.0", features = ["rt", "macros", "io-util", "net", "time"] } bytes = "1.0" log = "0.4" pollster = "0.2" flume = "0.10" thiserror = "1" rustls = "0.21.0-alpha.1" # Optional # rustls tokio-rustls = { version = "0.23", optional = true } rustls-pemfile = { version = "1", optional = true } rustls-native-certs = { version = "0.6", optional = true } # websockets async-tungstenite = { version = "0.16", default-features = false, features = ["tokio-rustls-native-certs"], optional = true } ws_stream_tungstenite = { version = "0.7", default-features = false, features = ["tokio_io"], optional = true } http = { version = "0.2", optional = true } # native-tls tokio-native-tls = { version = "0.3.0", optional = true } native-tls = { version = "0.2.8", optional = true } # url url = { version = "2", default-features = false, optional = true } [dev-dependencies] color-backtrace = "0.4" matches = "0.1" pretty_assertions = "1" pretty_env_logger = "0.4" rustls = "0.21.0-alpha.1" rustls-native-certs = "0.6" serde = { version = "1", features = ["derive"] } tokio = { version = "1", features = ["full", "macros"] }