[package]
name = "magic-wormhole"
version = "0.6.1"
authors = ["piegames <info@piegames.de>", "Brian Warner <warner@lothar.com>"]
description = "Get things from one computer to another, safely"
keywords = ["magic-wormhole", "wormhole", "file-transfer", "transfer"]
categories = ["network-programming", "command-line-utilities"]
readme = "README.md"
homepage = "http://magic-wormhole.io/"
repository = "https://github.com/magic-wormhole/magic-wormhole.rs"
documentation = "https://docs.rs/magic-wormhole/latest/"
license = "EUPL-1.2"
edition = "2021"
rust-version = "1.70"
[dependencies]
serde = { version = "1.0.120", features = ["rc"] }
serde_json = "1.0.61"
serde_derive = "1.0.120"
crypto_secretbox = "0.1.1"
spake2 = "0.4.0"
sha-1 = "0.10.0"
sha2 = "0.10.0"
hkdf = "0.12.2"
hex = { version = "0.4.2", features = ["serde"] }
rand = "0.8.3"
log = "0.4.13"
base64 = "0.21.5"
futures_ringbuf = "0.4.0"
time = { version = "0.3.7", features = ["formatting"] }
derive_more = { version = "0.99.0", default-features = false, features = [
"display",
"deref",
"from",
] }
thiserror = "1.0.24"
futures = "0.3.12"
async-std = { version = "1.12.0", features = ["attributes", "unstable"] }
async-tungstenite = { version = "0.23.0", features = [
"async-std-runtime",
"async-tls",
] }
async-io = "2.2.0"
libc = "0.2.101"
url = { version = "2.2.2", features = ["serde"] }
percent-encoding = { version = "2.1.0" }
socket2 = { version = "0.5.5", optional = true, features = ["all"] }
stun_codec = { version = "0.3.4", optional = true }
if-addrs = { version = "0.10.2", optional = true }
bytecodec = { version = "0.4.15", optional = true }
async-trait = { version = "0.1.57", optional = true }
noise-protocol = { version = "0.2.0", optional = true }
noise-rust-crypto = { version = "0.6.2", optional = true }
async-tar = { version = "0.4.2", optional = true }
rmp-serde = { version = "1.0.0", optional = true }
[dev-dependencies]
env_logger = "0.10.0"
eyre = "0.6.5"
[features]
transit = [
"socket2",
"stun_codec",
"if-addrs",
"bytecodec",
"async-trait",
"noise-protocol",
"noise-rust-crypto",
]
transfer = ["transit", "async-tar", "rmp-serde"]
forwarding = ["transit", "rmp-serde"]
default = ["transit", "transfer"]
all = ["default", "forwarding"]
[profile.release]
overflow-checks = true
strip = "debuginfo"
lto = "thin"
[workspace]
members = [".", "cli"]
default-members = ["cli"]