[package]
edition = "2021"
rust-version = "1.85"
name = "macula-rust"
version = "0.2.3"
authors = ["Macula <raf.lefever@erlef.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust port of macula's SDK (client/leaf) wire protocol — mobile first, not mobile-only. See plans/PLAN_WIRE_PROTOCOL.md."
homepage = "https://github.com/macula-io/macula-rust"
readme = "README.md"
keywords = [
"mesh-network",
"quic",
"p2p",
"ed25519",
"decentralized",
]
categories = [
"network-programming",
"cryptography",
]
license = "Apache-2.0"
repository = "https://github.com/macula-io/macula-rust"
[lib]
name = "macula_rust"
path = "src/lib.rs"
[[example]]
name = "quickstart"
path = "examples/quickstart.rs"
[[example]]
name = "ucan"
path = "examples/ucan.rs"
[[test]]
name = "live_cert_chain"
path = "tests/live_cert_chain.rs"
[[test]]
name = "live_direct_dial_extensions"
path = "tests/live_direct_dial_extensions.rs"
[[test]]
name = "live_direct_dial_ucan"
path = "tests/live_direct_dial_ucan.rs"
[[test]]
name = "live_station"
path = "tests/live_station.rs"
[dependencies.base64]
version = "0.23"
[dependencies.blake3]
version = "1.5"
[dependencies.ed25519-dalek]
version = "3.0"
features = ["rand_core"]
[dependencies.keyring]
version = "4"
features = ["android-native-keyring-store"]
[dependencies.quinn]
version = "0.11"
[dependencies.rand]
version = "0.10"
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"logging",
"std",
"tls12",
]
default-features = false
[dependencies.rustls-webpki]
version = "0.103"
features = ["ring"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.11"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.uuid]
version = "1"
features = ["v7"]
[dependencies.webpki-roots]
version = "1.0"
[dependencies.x509-parser]
version = "0.18"
[dev-dependencies.hex]
version = "0.4"
[dev-dependencies.rcgen]
version = "0.14"
features = [
"pem",
"ring",
"x509-parser",
]
default-features = false
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.time]
version = "0.3"
[target.'cfg(target_os = "linux")'.dependencies.keyring-core]
version = "1"
[target.'cfg(target_os = "linux")'.dependencies.linux-keyutils-keyring-store]
version = "1"
[lints.clippy.all]
level = "deny"
priority = -1
[lints.rust]
unsafe_code = "forbid"