huddle 1.3.2

Terminal-native chat over a self-hosted Tor onion relay (opt-in LAN mDNS / direct dial), all Megolm end-to-end encrypted.
[package]
name = "huddle"
version = "1.3.2"
edition = "2021"
description = "Terminal-native chat over a self-hosted Tor onion relay (opt-in LAN mDNS / direct dial), all Megolm end-to-end encrypted."
license = "MIT OR Apache-2.0"
repository = "https://github.com/richer-richard/huddle"
homepage = "https://github.com/richer-richard/huddle"
readme = "README.md"
keywords = ["chat", "tui", "tor", "onion", "encryption"]
categories = ["command-line-utilities", "network-programming"]

[[bin]]
name = "huddle"
path = "src/main.rs"

[features]
default = []
# huddle 1.0: build with the in-process Tor (Arti) `onion-arti` door.
arti = ["huddle-core/arti"]

[dependencies]
huddle-core = { path = "../huddle-core", version = "1.3.2" }
libp2p = { version = "0.56", features = ["ed25519"] }
ratatui = "0.30"
crossterm = "0.29"
tokio = { version = "1", features = ["full"] }
clap = { version = "4", features = ["derive"] }
anyhow = "1"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tracing-appender = "0.2"
dirs = "6"
qrcode = "0.14"
base64 = "0.22"
# huddle 0.6: opt-in update detection. ureq is lean (blocking,
# rustls-based) — we call it from a tokio::spawn_blocking task once
# per 24 h and parse the JSON response by substring (no serde_json
# dep needed). The user opts in at first launch; default is off.
# huddle 1.1.4: `socks-proxy` lets the update check tunnel the crates.io
# request through the local Tor SOCKS5 proxy, so an onion-default user never
# leaks their clearnet IP to crates.io just to poll for a new version.
ureq = { version = "2", default-features = false, features = ["tls", "socks-proxy"] }