[workspace] members = [ ".", "fuzz", ] [package] name = "ekv" version = "1.0.0" edition = "2021" license = "MIT OR Apache-2.0" description = "Key-value database for embedded systems, for raw NOR flash, using an LSM-Tree" repository = "https://github.com/embassy-rs/ekv" documentation = "https://docs.embassy.dev/ekv" keywords = ["embedded", "storage", "database", "flash", "key-value"] categories = [ "embedded", "no-std", "asynchronous", "database-implementations", ] [dependencies] defmt = { version = "0.3.2", optional = true } log = { version = "0.4.17", optional = true } heapless = "0.8" embassy-sync = "0.6.0" [dev-dependencies] ekv = { path = ".", features = ["std", "log"]} env_logger = "0.10.0" plotters = "0.3.4" test-log = "0.2.11" rand = "0.8.5" tokio = { version = "1.24.2", default-features = false, features = ["macros", "rt"] } critical-section = { version = "1", features = ["std"] } # Do asserts and overflow checks when doing `cargo test --release` # Release makes smoke tests faster, but we still want the full checking. [profile.release] debug-assertions = true overflow-checks = true [package.metadata.embassy_docs] src_base = "https://github.com/embassy-rs/ekv/blob/v$VERSION/src/" src_base_git = "https://github.com/embassy-rs/ekv/blob/$COMMIT/src/" features = ["defmt"] target = "thumbv7em-none-eabi" [features] std = [] log = ["dep:log", "std"] defmt = ["dep:defmt"] crc = [] ### FEATURES FOR TESTING ONLY. NOT COVERED BY SEMVER. # Panic on corrupted, instead of returning Error::Corrupted. # Useful for seeing the stack trace of the corruption check that tripped. _panic-on-corrupted = [] # Erase pages immediately when freeing them. # Helps catch use-after-frees. _erase-on-free = [] # Expose inner guts. _test = [] # BEGIN AUTOGENERATED CONFIG FEATURES # Generated by gen_config.py. DO NOT EDIT. align-1 = [] align-2 = [] align-4 = [] # Default page-size-128 = [] page-size-256 = [] page-size-512 = [] page-size-1024 = [] page-size-2048 = [] page-size-4096 = [] # Default page-size-8192 = [] page-size-16384 = [] page-size-32768 = [] page-size-65536 = [] max-page-count-1 = [] max-page-count-2 = [] max-page-count-3 = [] max-page-count-4 = [] max-page-count-5 = [] max-page-count-6 = [] max-page-count-8 = [] max-page-count-9 = [] max-page-count-10 = [] max-page-count-12 = [] max-page-count-16 = [] max-page-count-18 = [] max-page-count-20 = [] max-page-count-24 = [] max-page-count-32 = [] max-page-count-36 = [] max-page-count-40 = [] max-page-count-48 = [] max-page-count-64 = [] max-page-count-72 = [] max-page-count-80 = [] max-page-count-96 = [] max-page-count-128 = [] max-page-count-144 = [] max-page-count-160 = [] max-page-count-192 = [] max-page-count-256 = [] # Default max-page-count-288 = [] max-page-count-320 = [] max-page-count-384 = [] max-page-count-512 = [] max-page-count-576 = [] max-page-count-640 = [] max-page-count-768 = [] max-page-count-1024 = [] max-page-count-1152 = [] max-page-count-1280 = [] max-page-count-1536 = [] max-page-count-2048 = [] max-page-count-2304 = [] max-page-count-2560 = [] max-page-count-3072 = [] max-page-count-4096 = [] max-page-count-4608 = [] max-page-count-5120 = [] max-page-count-6144 = [] max-page-count-8192 = [] max-page-count-9216 = [] max-page-count-10240 = [] max-page-count-12288 = [] max-page-count-16384 = [] max-page-count-18432 = [] max-page-count-20480 = [] max-page-count-24576 = [] max-page-count-32768 = [] max-page-count-36864 = [] max-page-count-40960 = [] max-page-count-49152 = [] max-page-count-65536 = [] erase-value-0 = [] erase-value-255 = [] # Default max-key-size-1 = [] max-key-size-2 = [] max-key-size-4 = [] max-key-size-8 = [] max-key-size-16 = [] max-key-size-32 = [] max-key-size-64 = [] # Default max-key-size-128 = [] max-key-size-256 = [] max-key-size-512 = [] max-key-size-1024 = [] max-value-size-1 = [] max-value-size-2 = [] max-value-size-4 = [] max-value-size-8 = [] max-value-size-16 = [] max-value-size-32 = [] max-value-size-64 = [] max-value-size-128 = [] max-value-size-256 = [] max-value-size-512 = [] max-value-size-1024 = [] # Default max-value-size-2048 = [] max-value-size-4096 = [] max-value-size-8192 = [] max-value-size-16384 = [] max-value-size-32768 = [] max-value-size-65536 = [] scratch-page-count-0 = [] scratch-page-count-1 = [] scratch-page-count-2 = [] scratch-page-count-4 = [] # Default scratch-page-count-8 = [] scratch-page-count-16 = [] scratch-page-count-32 = [] scratch-page-count-64 = [] scratch-page-count-128 = [] scratch-page-count-256 = [] scratch-page-count-512 = [] scratch-page-count-1024 = [] scratch-page-count-2048 = [] scratch-page-count-4096 = [] scratch-page-count-8192 = [] scratch-page-count-16384 = [] scratch-page-count-32768 = [] scratch-page-count-65536 = [] branching-factor-2 = [] # Default branching-factor-3 = [] branching-factor-4 = [] max-chunk-size-128 = [] max-chunk-size-256 = [] max-chunk-size-512 = [] max-chunk-size-1024 = [] max-chunk-size-2048 = [] max-chunk-size-4096 = [] # Default # END AUTOGENERATED CONFIG FEATURES