This repository has been archived by the owner on Nov 5, 2023. It is now read-only.
forked from paradigmxyz/reth
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Cargo.toml
115 lines (96 loc) · 2.81 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
[package]
name = "reth-db"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
description = "Staged syncing primitives used in reth."
[dependencies]
# reth
reth-primitives.workspace = true
reth-interfaces.workspace = true
reth-codecs = { path = "../codecs" }
reth-libmdbx = { path = "../libmdbx-rs", optional = true, features = ["return-borrowed"] }
reth-nippy-jar = { path = "../nippy-jar" }
reth-tracing.workspace = true
# codecs
serde = { workspace = true, default-features = false }
postcard = { version = "1.0.2", features = ["alloc"] }
heapless = "0.7.16"
parity-scale-codec = { version = "3.2.1", features = ["bytes"] }
futures.workspace = true
tokio-stream.workspace = true
rand.workspace = true
secp256k1 = { workspace = true, default-features = false, features = [
"alloc",
"recovery",
"rand",
], optional = true }
modular-bitfield = "0.11.2"
# metrics
reth-metrics.workspace = true
metrics.workspace = true
# misc
bytes.workspace = true
page_size = "0.6.0"
thiserror.workspace = true
tempfile = { workspace = true, optional = true }
parking_lot.workspace = true
derive_more = "0.99"
eyre.workspace = true
paste = "1.0"
rayon.workspace = true
itertools.workspace = true
# arbitrary utils
arbitrary = { workspace = true, features = ["derive"], optional = true }
proptest = { workspace = true, optional = true }
proptest-derive = { workspace = true, optional = true }
[dev-dependencies]
# reth libs with arbitrary
reth-primitives = { workspace = true, features = ["arbitrary"] }
reth-codecs = { path = "../codecs", features = ["arbitrary"] }
reth-interfaces.workspace = true
tempfile.workspace = true
test-fuzz = "4"
pprof = { version = "0.12", features = ["flamegraph", "frame-pointer", "criterion"] }
criterion = "0.5"
iai = "0.1.1"
tokio = { workspace = true, features = ["full"] }
# needed for test-fuzz to work properly, see https://github.com/paradigmxyz/reth/pull/177#discussion_r1021172198
secp256k1.workspace = true
async-trait.workspace = true
arbitrary = { workspace = true, features = ["derive"] }
proptest.workspace = true
proptest-derive.workspace = true
serde_json.workspace = true
paste = "1.0"
assert_matches.workspace = true
[build-dependencies]
vergen = { version = "8.0.0", features = ["git", "gitcl"] }
[features]
default = ["mdbx"]
test-utils = ["tempfile", "arbitrary"]
bench-postcard = ["bench"]
mdbx = ["reth-libmdbx"]
bench = []
arbitrary = [
"reth-primitives/arbitrary",
"reth-codecs/arbitrary",
"dep:arbitrary",
"dep:proptest",
"dep:proptest-derive",
]
[[bench]]
name = "hash_keys"
required-features = ["test-utils"]
harness = false
[[bench]]
name = "criterion"
required-features = ["test-utils"]
harness = false
[[bench]]
name = "iai"
required-features = ["test-utils"]
harness = false