-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cargo.toml
86 lines (75 loc) · 1.9 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
[package]
name = "dakv"
version = "0.1.0"
authors = ["dkkb <dabkb@aol.com>"]
edition = "2021"
[lib]
name = "dakv"
test = true
doctest = true
bench = true
path = "src/lib.rs"
[[example]]
name = "simple"
path = "example/simple.rs"
[[example]]
name = "perf"
path = "example/perf.rs"
[workspace]
members = [
"logger",
"varint",
]
[dependencies]
varint = { path = "./varint", package = "dakv_varint" }
logger = { path = "./logger", package = "dakv_logger" }
rb_tree = { path = "./rb_tree", package = "rb_tree" }
typed-arena = "2.0.1"
crc32fast = "1.2.1"
memmap = "0.7.0"
byteorder = "1.3.1"
quick-error = "1.2.3"
log = "0.4.0"
env_logger = "0.6.1"
integer-encoding = "1.0.7"
num-traits = "0.2.11"
snap = "1"
zstd = "0.9"
lazy_static = "1.4.0"
seahash = "4.0.1"
lock_api = "0.4.2"
scopeguard = "1.1.0"
slog-scope = "4.3.0"
slog = "2.5.2"
crossbeam-channel = "0.5.1"
atomic_float = "0.1.0"
hashbrown = "0.11"
# only for test
[dev-dependencies]
criterion = "0.3"
temp_testdir = "0.2"
tempfile = "3.1.0"
regex = "1.5.4"
pprof = { version = "0.4", features = ["flamegraph", "protobuf"] }
[profile.dev]
opt-level = 0 # Controls the --opt-level the compiler builds with
debug = true # Controls whether the compiler passes `-g`
codegen-units = 4
debug-assertions = true
# The release profile, used for `cargo build --release`
# See more details from `https://github.com/johnthagen/min-sized-rust`
# TODO: Use the build-std feature when it's stable. https://doc.rust-lang.org/cargo/reference/unstable.html#build-std
[profile.release]
opt-level = 'z' # Optimize for size.
lto = true # Enable Link Time Optimization
codegen-units = 1 # Reduce number of codegen units to increase optimizations.
panic = 'abort' # Abort on panic
# The benchmark profile is identical to release, except that lto = false
[profile.bench]
lto = false
opt-level = 3
debug = true
codegen-units = 1
#[[bench]]
#name = "slice"
#harness = false