[package]
edition = "2021"
name = "ferntree"
version = "0.3.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Concurrent in-memory B+ Tree featuring optimistic lock coupling"
readme = "README.md"
license = "MIT OR Apache-2.0"
[features]
default = []
loom = ["dep:loom"]
test-utils = []
[lib]
name = "ferntree"
path = "src/lib.rs"
[[test]]
name = "concurrency"
path = "tests/concurrency.rs"
[[test]]
name = "concurrent_shapes"
path = "tests/concurrent_shapes.rs"
[[test]]
name = "deadlock_tests"
path = "tests/deadlock_tests.rs"
[[test]]
name = "fixtures"
path = "tests/fixtures.rs"
[[test]]
name = "functional_coverage"
path = "tests/functional_coverage.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "invariants"
path = "tests/invariants.rs"
[[test]]
name = "loom_tests"
path = "tests/loom_tests.rs"
[[test]]
name = "memory_tests"
path = "tests/memory_tests.rs"
[[test]]
name = "property"
path = "tests/property.rs"
[[test]]
name = "unsafe_coverage"
path = "tests/unsafe_coverage.rs"
[[bench]]
name = "comparison"
path = "benches/comparison.rs"
harness = false
[[bench]]
name = "fanout"
path = "benches/fanout.rs"
harness = false
[dependencies.crossbeam-epoch]
version = "0.9"
[dependencies.loom]
version = "0.7"
optional = true
[dependencies.parking_lot]
version = "0.12.5"
[dependencies.parking_lot_core]
version = "0.9"
[dependencies.smallvec]
version = "1.15.1"
features = [
"serde",
"const_generics",
]
[dependencies.thiserror]
version = "2.0.18"
[dev-dependencies.criterion]
version = "0.8.1"
features = ["html_reports"]
[dev-dependencies.crossbeam-epoch]
version = "0.9"
[dev-dependencies.crossbeam-skiplist]
version = "0.1.3"
[dev-dependencies.loom]
version = "0.7"
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.rand]
version = "0.9.2"
[dev-dependencies.serde]
version = "1.0.228"
features = [
"derive",
"rc",
]
[dev-dependencies.serde_json]
version = "1"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(loom)"]