-
Notifications
You must be signed in to change notification settings - Fork 9
/
Cargo.toml
103 lines (97 loc) · 3.44 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
[package]
name = "ouisync"
description = "Secure P2P file sharing (shared library)"
publish = false
authors.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true
[[bench]]
name = "basic"
harness = false
[[bench]]
name = "large_file"
harness = false
[[bench]]
name = "swarm"
harness = false
[dependencies]
# NOTE: There is a newer version of argon2, but that one is not backward
# compatible with 0.4.1. Thus before we can bump the argon2 version, we need to
# start versioning the metadata table as well as perform migrations. Discussion
# on the topic is here https://github.com/equalitie/ouisync/issues/144
argon2 = "0.4.1"
async-recursion = "1.0.0"
async-trait = { workspace = true }
backoff = "0.4.0"
base64 = "0.13.0"
bincode = "1.3"
blake3 = { version = "1.5.0", features = ["traits-preview"] }
btdht = { workspace = true }
camino = { workspace = true }
chacha20 = "0.9.1"
chrono = { workspace = true }
crossbeam-channel = "0.5.8"
deadlock = { path = "../deadlock" }
ed25519-dalek = { version = "2.0", features = ["rand_core", "serde"] }
either = { version = "1.6.1", default-features = false }
futures-util = { workspace = true }
generic-array = { version = "0.14.5", features = ["serde"] }
hex = "0.4.3"
if-watch = { version = "3.2.0", features = ["tokio"] }
include_dir = "0.7.3"
indexmap = "1.9.3"
lru = "0.11.0"
metrics = { workspace = true }
metrics-exporter-prometheus = { workspace = true, default-features = false, optional = true }
net = { package = "ouisync-net", path = "../net" }
noise-protocol = "0.2.0"
noise-rust-crypto = { version = "0.6.1", default-features = false, features = ["use-x25519", "use-chacha20poly1305", "use-blake2"] }
num_enum = { workspace = true }
once_cell = { workspace = true }
parse-size = { version = "1.0.0", features = ["std"] }
pin-project-lite = "0.2.13"
rand = { workspace = true }
ref-cast = "1.0.14"
rupnp = { version = "1.1.0", default-features = false, features = [] }
scoped_task = { path = "../scoped_task" }
serde = { workspace = true }
serde_bytes = { workspace = true }
slab = "0.4.6"
sqlx = { workspace = true }
ssdp-client = "1.0"
state_monitor = { path = "../state_monitor" }
subtle = { version = "2.5.0", default-features = false, features = ["core_hint_black_box"] }
thiserror = { workspace = true }
tokio = { workspace = true }
tokio-stream = { workspace = true, features = ["sync"] }
tokio-util = { workspace = true, features = ["time"] }
tracing = { workspace = true }
tracing-subscriber = { workspace = true, features = [ "env-filter" ] }
turmoil = { workspace = true, optional = true }
twox-hash = { version = "1.6.3", default-features = false }
urlencoding = "2.1.0"
vint64 = "1.0.1"
zeroize = "1.6.0"
[dev-dependencies]
assert_matches = { workspace = true }
clap = { workspace = true }
criterion = { version = "0.4", features = ["html_reports"] }
hdrhistogram = { version = "7.5.4", default-features = false, features = ["sync"] }
metrics_ext = { path = "../metrics_ext" }
ouisync-tracing-fmt = { path = "../tracing_fmt" }
proptest = "1.0"
rmp-serde = { workspace = true }
serde_json = { workspace = true }
serde_test = "1.0.176"
similar-asserts = "1.5.0"
tempfile = { workspace = true }
test-strategy = "0.2.1"
tokio = { workspace = true, features = ["process", "test-util"] }
[features]
analyze-protocol = []
influxdb = []
prometheus = ["metrics-exporter-prometheus/push-gateway"]
simulation = ["rand/simulation", "turmoil"]