[package] authors.workspace = true description = "SDK for KPN Data Services Hub" edition.workspace = true exclude.workspace = true homepage.workspace = true keywords = ["kpn", "dsh", "sdk"] license.workspace = true name = "dsh_sdk" readme = 'README.md' repository.workspace = true version = "0.4.10" [package.metadata.docs.rs] all-features = true [dependencies] base64 = {version = "0.22", optional = true } bytes = { version = "1.6", optional = true } dashmap = {version = "6.0", optional = true} http-body-util = { version = "0.1", optional = true } hyper = { version = "1.3", features = ["server", "http1"], optional = true } hyper-util = { version = "0.1", features = ["tokio"], optional = true } lazy_static = { version = "1.5", optional = true } log = "0.4" pem = "3" prometheus = { version = "0.13", features = ["process"], optional = true } rcgen = { version = "0.13", optional = true } reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "json", "blocking"], optional = true } rdkafka = { version = "0.36", features = ["cmake-build"], optional = true } serde = { version = "1.0", features = ["derive"] } serde_json = { version = "1.0", optional = true } sha2 = { version = "0.10", optional = true} thiserror = "1.0" tokio = { version = "^1.35", features = ["signal", "sync", "time", "macros"], optional = true } tokio-util = { version = "0.7", default-features = false, optional = true } [features] default = ["bootstrap", "graceful_shutdown", "metrics", "rdkafka-ssl"] bootstrap = ["rcgen", "serde_json", "reqwest", "tokio/rt-multi-thread"] metrics = ["prometheus", "hyper", "hyper-util", "http-body-util", "lazy_static", "tokio", "bytes"] dlq = ["tokio", "bootstrap", "rdkafka-ssl", "graceful_shutdown"] graceful_shutdown = ["tokio", "tokio-util"] rdkafka-ssl-vendored = ["rdkafka", "rdkafka/ssl-vendored"] rdkafka-ssl = ["rdkafka", "rdkafka/ssl"] rest-token-fetcher = ["reqwest"] mqtt-token-fetcher = ["base64","dashmap","reqwest","serde_json","sha2","tokio/sync"] [dev-dependencies] mockito = "1.1.1" openssl = "0.10" tokio = { version = "^1.35", features = ["full"] } hyper = { version = "1.2.0", features = ["full"]} serial_test = "3.1.0" dsh_rest_api_client = { path = "../dsh_rest_api_client", version = "0.2.0"} dsh_sdk = { features = ["dlq"], path = "." }