forked from magic-wormhole/magic-wormhole.rs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
113 lines (94 loc) · 2.91 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
[package]
name = "magic-wormhole"
version = "0.6.1"
authors = ["piegames <[email protected]>", "Brian Warner <[email protected]>"]
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"
# MSRV (also change in CI)
rust-version = "1.75"
[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.0"
log = "0.4.13"
base64 = "0.21.0"
futures_ringbuf = "0.4.0"
time = { version = "0.3.7", features = ["formatting"] }
instant = { version = "0.1.12", features = ["wasm-bindgen"] }
derive_more = { version = "0.99.0", default-features = false, features = [
"display",
"deref",
"from",
] }
thiserror = "1.0.24"
futures = "0.3.12"
url = { version = "2.2.2", features = ["serde"] }
percent-encoding = { version = "2.1.0" }
# Transit dependencies
stun_codec = { version = "0.3.0", optional = true }
bytecodec = { version = "0.4.15", optional = true }
noise-rust-crypto = { version = "0.6.0-rc.1", optional = true }
async-trait = { version = "0.1.57", optional = true }
noise-protocol = { version = "0.2", optional = true }
# Transfer dependencies
rmp-serde = { version = "1.0.0", optional = true }
tar = { version = "0.4.33", optional = true }
# Forwarding dependencies
# rmp-serde = … # defined above
[target.'cfg(not(target_family = "wasm"))'.dependencies]
libc = "0.2.101"
async-std = { version = "1.12.0", features = ["attributes", "unstable"] }
async-tungstenite = { version = "0.25", features = [
"async-std-runtime",
"async-tls",
] }
async-io = "2.2.0"
# Transit
socket2 = { version = "0.5.0", optional = true, features = ["all"] }
if-addrs = { version = "0.11", optional = true }
# Transfer
async-tar = { version = "0.4", optional = true }
zstd = { version = "0.13", optional = true }
[target.'cfg(target_family = "wasm")'.dependencies]
wasm-timer = "0.2.5"
ws_stream_wasm = "0.7.3"
getrandom = { version = "0.2.5", features = ["js"] }
# for some tests
[dev-dependencies]
env_logger = "0.11"
eyre = "0.6.5"
[features]
transit = [
"socket2",
"stun_codec",
"if-addrs",
"bytecodec",
"async-trait",
"noise-protocol",
"noise-rust-crypto",
]
transfer = ["transit", "tar", "async-tar", "rmp-serde", "zstd"]
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"]