[package] name = "cloudmqtt" version = "0.4.0" edition = "2021" authors = ["Marcel Müller "] description = "A pure Rust MQTT client and server library" readme = "README.md" repository = "https://github.com/TheNeikos/cloudmqtt" license = "MPL-2.0" keywords = ["mqtt", "cloud"] categories = ["embedded"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [workspace] members = ["mqtt-format", "mqtt-tester"] [[bin]] name = "cloudmqtt-client" required-features = ["bin"] [[bin]] name = "cloudmqtt-server" required-features = ["bin"] [[bin]] name = "cloudmqtt-test-client" required-features = ["bin"] [features] bin = ["clap", "tokio/rt-multi-thread", "tokio/macros", "tokio/io-std", "tracing-subscriber"] [dependencies] bytes = "1.3.0" clap = { version = "4.1.1", optional = true, features = ["derive"] } dashmap = "5.4.0" futures = "0.3.25" mqtt-format = { version = "0.4.0", path = "mqtt-format", features = ["yoke"] } nom = { version = "7.1.3" } thiserror = "1.0.38" tokio = { version = "1.24.2", default-features = false, features = [ "net", "time", "sync", "macros", ] } arc-swap = "1.6.0" rpds = "0.12.0" tokio-util = { version = "0.7.4", features = [ "futures-io", "io", "io-util", "compat", ] } tracing = "0.1.37" tracing-subscriber = { version = "0.3.16", optional = true, features = [ "env-filter", ] } yoke = "0.6.1" async-trait = "0.1.63" [dev-dependencies] static_assertions = "1.1.0"