forked from hoprnet/hoprnet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
248 lines (239 loc) · 7.53 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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
[workspace]
exclude = ["vendor/cargo/scale-info-2.10.0"]
resolver = "2"
members = [
"chain/actions",
"chain/api",
"chain/indexer",
"chain/rpc",
"chain/types",
"common/async-runtime",
"common/internal-types",
"common/network-types",
"common/parallelize",
"common/primitive-types",
"crypto/packet",
"crypto/random",
"crypto/sphinx",
"crypto/types",
"db/api",
"db/entity",
"db/migration",
"db/sql",
"ethereum/bindings",
"hopli",
"hopr/hopr-lib",
"hoprd/db/api",
"hoprd/db/migration",
"hoprd/db/entity",
"hoprd/hoprd",
"hoprd/inbox",
"hoprd/keypair",
"hoprd/rest-api",
"logic/path",
"logic/strategy",
"misc/metrics",
"misc/platform",
"transport/api",
"transport/identity",
"transport/mixer",
"transport/network",
"transport/p2p",
"transport/protocol",
"transport/session",
]
[workspace.dependencies]
aes = "0.8"
anyhow = "1.0.95"
aquamarine = "0.6.0"
arrayvec = { version = "0.7.6", features = ["serde"] }
async-channel = "2.3.1"
async-lock = "3.4.0"
async-signal = "0.2.8"
async-std = { version = "1.13.0", features = ["attributes", "unstable"] }
async-std-resolver = { version = "0.24.2" }
async-stream = "0.3.6"
async-trait = "0.1.85"
atomic_enum = "0.3.0"
axum = { version = "0.8.2", features = ["ws", "http2"] }
axum-extra = { version = "0.11.0", features = ["query"] }
backon = { version = "1.3.0", default-features = false }
base64 = "0.22.1"
bimap = "0.6.3"
bincode = "1.3.3"
bitvec = "1.0.1"
bloomfilter = { version = "2.0.0", features = ["serde"] }
bytesize = { version = "1.3.0", features = ["serde"] }
cbor4ii = { version = "1.0.0" }
chrono = { version = "0.4.39", default-features = false }
clap = { version = "4.5.27", features = ["derive", "env", "string"] }
const_format = "0.2.34"
console-subscriber = "0.4.1"
criterion = { version = "0.5.1", features = [
"async_tokio",
"async-std",
"html_reports",
] }
crossbeam-queue = "0.3.12"
crossbeam-skiplist = "0.1.3"
ctor = "0.2.9"
ctr = "0.9"
dashmap = "6.1.0"
divan = "0.1.15"
env_logger = "0.11.6"
ethers = { version = "2.0.10", default-features = false }
flume = "0.11.1"
float-cmp = "0.10.0"
futures = "0.3.31"
futures-concurrency = "7.6.2"
futures-timer = "3.0.3"
generic-array = { version = "0.14.7", features = ["zeroize"] }
getrandom = "0.2.15"
governor = { version = "0.8" }
hex = "0.4.3"
hex-literal = "0.4.1"
hickory-resolver = "0.24.2"
http-types = "2.12.0"
lazy_static = "1.4.0"
libp2p = { version = "0.55.0" }
libp2p-identity = { version = "0.2.10", features = [
"peerid",
"ed25519",
"rand",
] }
mockall = "0.13.1"
mockito = "1.6.1"
moka = { version = "0.12.10", features = ["future"] }
more-asserts = "0.3.1"
multiaddr = "0.18.2"
num_enum = "0.7.2"
opentelemetry = { version = "0.27.1" }
opentelemetry-otlp = { version = "0.27.0", default-features = false }
opentelemetry_sdk = { version = "0.27.1" }
tracing-opentelemetry = { version = "0.28.0" }
parameterized = "2.0.0"
petgraph = { version = "0.7.1", features = ["serde-1"] }
primitive-types = { version = "0.12.2", features = [
"serde",
] } # cannot be updated until the ethers-rs is replaced with alloy-rs
proc-macro-regex = "~1.1.0"
prometheus = "0.13.4"
rand = "0.8.5"
rand_distr = "0.4.3"
rayon = "1.10.0"
regex = "1.11.1"
reqwest = { version = "0.12.12" }
ringbuffer = "0.15.0"
rpassword = "7.3"
rust-stream-ext-concurrent = "1.0.0"
scrypt = { version = "0.11.0", default-features = false }
sea-orm = { version = "1.1.4", features = [
"sqlx-sqlite",
"with-chrono",
"debug-print",
] }
sea-orm-cli = { version = "1.1.4", features = ["codegen"] }
sea-orm-migration = { version = "1.1.4", features = [
"sqlx-sqlite",
"with-chrono",
] }
sea-query = { version = "0.32.1", default-features = false }
sea-query-binder = { version = "0.7.0", default-features = false, features = [
"with-chrono",
"sqlx-sqlite",
"runtime-async-std-rustls",
] }
semver = "1.0.25"
serde = { version = "1.0.217", features = ["derive"] }
serde_bytes = "0.11.14"
serde_json = "1.0.137"
serde_repr = "0.1.19"
serde_with = { version = "3.12.0", features = ["base64"] }
serde_yaml = { version = "0.9.33" }
serial_test = "3.2.0"
sha3 = "0.10"
signal-hook = "0.3.17"
smart-default = "0.7.1"
socket2 = "0.5.8"
sqlx = { version = "0.8.3", default-features = false, features = [
"sqlite",
"macros",
"migrate",
] } # specific version needed by the sea-orm crates
strum = { version = "0.26.3", features = ["derive"] }
surf = { version = "2.3.2" }
surf-governor = { version = "0.2.0" }
tempfile = "3.15.0"
test-log = { version = "0.2.17", features = ["trace"] }
thiserror = "2.0.11"
tokio = { version = "1.43.0", features = [
"rt-multi-thread",
"macros",
"tracing",
] }
tokio-util = { version = "0.7.13", features = ["compat"] }
tokio-retry = "0.3.0"
tracing = { version = "0.1.41" }
tracing-futures = { version = "0.2.5" }
tracing-subscriber = { version = "0.3.19", features = [
"env-filter",
"fmt",
"registry",
"std",
] }
tracing-test = { version = "0.2.5", features = ["no-env-filter"] }
typenum = "1.17.0"
uuid = { version = "1.12.1" }
validator = { version = "0.20.0", features = ["derive"] }
vergen-gix = { version = "1.0.6", features = ["build"] }
void = "1.0.2"
zeroize = { version = "1.8.1" }
hopr-async-runtime = { path = "common/async-runtime" }
hopr-bindings = { path = "ethereum/bindings", default-features = false }
hopr-chain-actions = { path = "chain/actions", default-features = false }
hopr-chain-api = { path = "chain/api", default-features = false }
hopr-chain-indexer = { path = "chain/indexer", default-features = false }
hopr-chain-rpc = { path = "chain/rpc", default-features = false }
hopr-chain-types = { path = "chain/types", default-features = false }
hopr-crypto-packet = { path = "crypto/packet", default-features = false }
hopr-crypto-random = { path = "crypto/random", default-features = false }
hopr-crypto-sphinx = { path = "crypto/sphinx", default-features = false, features = [
"x25519",
] }
hopr-crypto-types = { path = "crypto/types", default-features = false }
hopr-db-api = { path = "db/api" }
hopr-db-entity = { path = "db/entity" }
hopr-db-migration = { path = "db/migration" }
hopr-db-sql = { path = "db/sql" }
hopr-internal-types = { path = "common/internal-types", default-features = false }
hopr-lib = { path = "hopr/hopr-lib", default-features = false }
hopr-metrics = { path = "misc/metrics", default-features = false }
hopr-network-types = { path = "common/network-types", default-features = false }
hopr-path = { path = "logic/path" }
hopr-parallelize = { path = "common/parallelize" }
hopr-platform = { path = "misc/platform" }
hopr-primitive-types = { path = "common/primitive-types", default-features = false }
hopr-strategy = { path = "logic/strategy", default-features = false }
hopr-transport = { path = "transport/api" }
hopr-transport-identity = { path = "transport/identity" }
hopr-transport-network = { path = "transport/network" }
hopr-transport-mixer = { path = "transport/mixer" }
hopr-transport-protocol = { path = "transport/protocol" }
hopr-transport-p2p = { path = "transport/p2p" }
hopr-transport-session = { path = "transport/session" }
hoprd-api = { path = "hoprd/rest-api", default-features = false }
hoprd-inbox = { path = "hoprd/inbox", default-features = false }
hoprd-keypair = { path = "hoprd/keypair", default-features = false }
hoprd-db-api = { path = "hoprd/db/api" }
hoprd-db-entity = { path = "hoprd/db/entity" }
hoprd-db-migration = { path = "hoprd/db/migration" }
# [build]
# rustflags = ["-C", "link-arg=-fuse-ld=lld"] # needs the "pkgs.llvmPackages.bintools" nix package
[profile.dev]
panic = "abort"
[profile.release]
codegen-units = 1
lto = "fat"
panic = "abort"
strip = true
opt-level = 3