[package]
name = "gmqtt-client"
version = "0.3.0"
authors = ["biuro@genesismobo.com"]
edition = "2021"
rust-version = "1.68"
license = "MIT/Apache-2.0"
keywords = ["mqtt", "mqtt5","client"]
description = "Simple MQTTv5 client"
repository = "https://gitlab.com/genesismobo/gmqtt-client"

[dependencies]
anyhow = "1"
thiserror = { version = "2", default-features = false }
tracing = { version = "0.1", default-features = false }
parking_lot = "0.12"
bytes = "1"
tokio = { version = "1", features = ["time", "net", "macros", "parking_lot" ] }
mqttbytes = "0.6"
tokio-util = { version = "0.7", features = ["codec"] }
futures-util = { version = "0.3", default-features = false, features = ["std", "sink", "async-await", "async-await-macro"] }
fluent-uri = "0.4"
rand = "0.9"

serde = { version = "1", features = ["derive"], optional = true }
serde_json = { version = "1", optional = true }

[features]
default = ["json"]
json = ["dep:serde", "dep:serde_json"]

[dev-dependencies]
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
serde_json = "1"
tokio = { version = "1", features = ["rt-multi-thread", "time", "net", "macros"] }
