[package] name = "pkarr" version = "2.2.1-alpha.2" authors = ["Nuh "] edition = "2021" description = "Public-Key Addressable Resource Records (Pkarr); publish and resolve DNS records over Mainline DHT" license = "MIT" repository = "https://git.pkarr.org" keywords = ["mainline", "dht", "dns", "decentralized", "identity"] [dependencies] base32 = "0.5.0" bytes = "1.7.1" document-features = "0.2.8" ed25519-dalek = "2.0.0" self_cell = "1.0.2" simple-dns = "0.6.1" thiserror = "1.0.49" tracing = "0.1.40" rand = { version = "0.8.5", optional = true } lru = { version = "0.12.3", default-features = false } flume = { version = "0.11.0", features = ["select", "eventual-fairness"], default-features = false } serde = { version = "1.0.209", features = ["derive"], optional = true } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] # Dht client dependencies: mainline = { version = "2.0.1", optional = true } dyn-clone = { version = "1.0.17", optional = true } # Relay client dependencies ureq = { version = "2.10", default-features = false, features = ["tls"], optional = true } [target.'cfg(target_arch = "wasm32")'.dependencies] futures = "0.3.29" js-sys = "0.3.69" wasm-bindgen = "0.2.92" wasm-bindgen-futures = "0.4.42" web-sys = { version = "0.3.69", features = [ "console", "Request", "RequestInit", "RequestMode", "Response", "Window", ] } [dev-dependencies] futures = "0.3.29" postcard = { version = "1.0.10", features = ["alloc"] } [target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] clap = { version = "4.4.8", features = ["derive"] } mockito = "1.4.0" tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } [target.'cfg(target_arch = "wasm32")'.dev-dependencies] wasm-bindgen-test = "0.3.42" [features] ## Use [PkarrClient] dht = ["dep:mainline", "dep:dyn-clone"] ## Use [Keypair::random] rand = ["dep:rand", "ed25519-dalek/rand_core"] ## Use async versions of [PkarrClient] and/or [PkarrRelayClient] async = ["flume/async"] ## Use [PkarrRelayClient] relay = ["dep:ureq"] ## Derive serde Serialize/Deserialize for PublicKey serde = ["dep:serde"] ## Use all features full = ["dht", "async", "relay", "rand", "serde"] default = ["dht", "rand"] [package.metadata.docs.rs] all-features = true