[package] name = "foyer-storage" description = "storage engine for foyer - Hybrid cache for Rust" version = { workspace = true } edition = { workspace = true } rust-version = { workspace = true } repository = { workspace = true } homepage = { workspace = true } keywords = { workspace = true } authors = { workspace = true } license = { workspace = true } readme = { workspace = true } # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] ahash = "0.8" # TODO(MrCroxx): Remove this after `allocator_api` is stable. allocator-api2 = "0.2" anyhow = "1.0" # TODO(MrCroxx): use `array_chunks` after `#![feature(array_chunks)]` is stable. array-util = "1" async-channel = "2" auto_enums = { version = "0.8", features = ["futures03"] } bincode = "1" bitflags = "2.3.1" bytes = "1" clap = { workspace = true } either = "1" fastrace = { workspace = true } flume = "0.11" foyer-common = { workspace = true } foyer-memory = { workspace = true } fs4 = "0.9.1" futures = "0.3" hashbrown = { workspace = true } itertools = { workspace = true } libc = "0.2" lz4 = "1.24" ordered_hash_map = "0.4" parking_lot = { version = "0.12", features = ["arc_lock"] } paste = "1" pin-project = "1" rand = "0.8" serde = { workspace = true } thiserror = "1" tokio = { workspace = true } tracing = "0.1" twox-hash = "1" zstd = "0.13" [dev-dependencies] bytesize = { workspace = true } tempfile = "3" test-log = { workspace = true } [features] default = [] deadlock = ["parking_lot/deadlock_detection"] nightly = ["allocator-api2/nightly"] strict_assertions = [ "foyer-common/strict_assertions", "foyer-memory/strict_assertions", ] tracing = ["fastrace/enable", "foyer-common/tracing", "foyer-memory/tracing"] [lints] workspace = true