-
Notifications
You must be signed in to change notification settings - Fork 1
/
Cargo.toml
78 lines (68 loc) · 2.25 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
[package]
name = "canopydb"
version = "0.1.0"
authors = ["arthurprs <[email protected]>"]
edition = "2021"
description = "Transactional key-value storage engine"
license = "MIT"
readme = "README.md"
repository = "https://github.com/arthurprs/canopydb"
keywords = ["database", "storage-engine", "embedded-database", "lmdb", "rocksdb"]
categories = ["data-structures", "database-implementations", "algorithms"]
exclude = ["fuzz/", "assets/"]
[features]
default = []
# default = ["nightly"]
# default = ["shuttle"]
shuttle = ["dep:shuttle"]
nightly = []
[dependencies]
foldhash = "0.1"
bitflags = "2"
dashmap = "6"
derive_more = { version = "1", features = ["debug", "deref", "deref_mut", "display", "error"] }
fail = "0.5"
# pending https://github.com/brunoczim/fslock/pull/17, but only relevant for miri tests
fslock = { git = "https://github.com/arthurprs/fslock.git", rev = "7ec91154136a2b3d567b1f79e87cae5d3ca3d927", version = "0.2" }
quick_cache = { version = "0.6.9" }
smallvec = { version = "2.0.0-alpha.7" }
lock_api = { version = "0.4", features = ["arc_lock"] }
log = "0.4"
tempfile = "3.7"
triomphe = { version = "0.1.14", default-features = false }
lz4_flex = { version = "0.11", default-features = false, features = ["std"] }
memmap2 = "0.9"
parking_lot = { version = "0.12", features = ["send_guard"] }
rand = { version = "0.8" }
xxhash-rust = { version = "0.8.12", features = ["xxh3"] }
zerocopy = { version = "0.7", default-features = false, features = ["derive"] }
shuttle = { version = "0.7", optional = true }
hashbrown = "0.14.5"
sptr = "0.3.2"
serde_json = { version = "1" }
serde = { version = "1", features = ["derive"] }
[target.'cfg(unix)'.dependencies]
nix = { version = "0.29", features = ["fs", "mman"] }
libc = { version = "0.2" }
[profile.test]
opt-level = 1
[profile.release]
debug = true
# overflow-checks = true
# debug-assertions = true
[profile.bench]
debug = true
# overflow-checks = false
# debug-assertions = false
[profile.shuttle]
inherits = "test"
opt-level = 3
[dev-dependencies]
env_logger = "0.11"
proptest = "1"
rand = { version = "0.8", features = ["small_rng"] }
sysinfo = { version = "0.30", default-features = false }
[profile.dev.package."lz4_flex"]
opt-level = 3
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }