-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathCargo.toml
More file actions
125 lines (108 loc) · 3.14 KB
/
Cargo.toml
File metadata and controls
125 lines (108 loc) · 3.14 KB
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
[workspace]
members = [
# Authored crates
"crates/bpf-recorder",
"crates/bpf-ring-buffer",
"crates/mina-recorder",
"crates/mina-aggregator",
"crates/mina-ipc",
"crates/simulator",
"crates/tester",
"crates/topology-tool",
# Vendored crates
"vendored/ebpf-kern",
"vendored/ebpf-kern/macros",
"vendored/ebpf-user",
"vendored/ebpf-user/macros",
"vendored/radiation",
"vendored/radiation/macros",
]
resolver = "2"
[workspace.dependencies]
# Authored crates
bpf-ring-buffer = { version = "=0.1.0", path = "crates/bpf-ring-buffer" }
mina-recorder = { path = "crates/mina-recorder" }
mina-ipc = { path = "crates/mina-ipc" }
simulator = { path = "crates/simulator" }
# Vendored crates
ebpf-kern = { path = "vendored/ebpf-kern" }
ebpf-kern-macros = { version = "0.2.0", path = "vendored/ebpf-kern/macros" }
ebpf-user = { path = "vendored/ebpf-user" }
ebpf-user-macros = { version = "0.2.0", path = "vendored/ebpf-user/macros" }
radiation = { path = "vendored/radiation" }
radiation-macros = { version = "=0.3.1", path = "vendored/radiation/macros" }
# Proc-macro utilities
proc-macro2 = "1.0"
quote = "1.0"
syn = { version = "2.0", features = ["derive", "parsing"] }
synstructure = "0.13.1"
# Logging
log = "0.4.22"
env_logger = { version = "0.11.3", default-features = false }
# Serialization
serde = { version = ">=1.0, <1.0.194", features = ["derive"] }
serde_json = { version = "1.0", features = ["preserve_order"] }
hex = "0.4.3"
base64 = "0.22.1"
nom = "7.1"
# Async runtime
tokio = { version = "1.38", features = ["rt-multi-thread"] }
tokio-util = { version = "0.7.10", features = ["codec"] }
# HTTP
warp = { version = "0.3.7", features = ["tls"] }
reqwest = { version = "0.12.5", features = ["blocking"] }
# Protobuf / CapnProto
prost = "0.13.1"
prost-build = "0.11.9"
capnp = "0.15.2"
capnpc = "0.15.2"
# Cryptography
salsa20 = "0.10.2"
blake2 = "0.10.6"
curve25519-dalek = "3.2"
sha2 = "0.10.8"
sha3 = "0.10.8"
chacha20poly1305 = "0.10.1"
vru-noise = "1.5"
# libp2p
libp2p-core = { version = "0.41.3", features = ["serde"] }
libp2p-identity = { version = "0.2.9", features = ["ed25519", "secp256k1", "ecdsa"] }
multiaddr = "0.18.1"
unsigned-varint = "0.8.0"
# eBPF / system
libbpf-sys = "1.4.2"
libc = "0.2.155"
epoll = "4.3"
cty = "0.2.2"
errno = "0.3.1"
network-types = "0.0.4"
typenum = "1.17"
nix = "0.28.0"
signal-hook = "0.3.17"
# Database
rocksdb = { version = "0.21.0", default-features = false }
# Error handling
thiserror = "1.0"
anyhow = "1.0"
# Utilities
ctrlc = { version = "3.4.4", features = ["termination"] }
itertools = "0.13.0"
parking_lot = "0.12.3"
bitflags = "1.3"
time = { version = "0.3.36", features = ["parsing", "formatting"] }
rand = "0.8.5"
bytes = "1.5"
petgraph = "0.6.5"
roxmltree = "0.20.0"
structopt = "0.3.26"
crc64 = "2.0"
# Optional dependencies
pqcrypto-dilithium = "0.5.0"
pqcrypto-traits = "0.3.5"
# Mina-specific
mina-p2p-messages = { git = "https://github.com/openmina/openmina.git", rev = "6fb148ba06153a6497173e62bae1a67323fe5f92" }
# x86_64 only dependencies
strace-parse = { git = "https://github.com/openmina/strace-parse.rs.git" }
pete = "0.12.0"
# Dev dependencies
temp-dir = "0.1.13"