[package]
name = "sequential-storage"
version = "7.1.0"
edition = "2024"
license = "MIT OR Apache-2.0"
description = "A crate for storing data in flash with minimal erase cycles."
homepage = "https://github.com/tweedegolf/sequential-storage"
repository = "https://github.com/tweedegolf/sequential-storage"
readme = "README.md"
keywords = ["no_std", "embedded", "flash", "storage"]
rust-version = "1.87"
[dependencies]
embedded-storage-async = "0.4.1"
defmt = { version = "1.0.1", optional = true }
futures = { version = "0.3.30", features = ["executor"], optional = true }
approx = { version = "0.5.1", optional = true }
arrayvec = { version = "0.7.4", default-features = false, optional = true }
heapless = { version = "0.8.0", optional = true }
heapless-09 = { package = "heapless", version = "0.9.0", optional = true }
postcard = { version = "1.1.3", optional = true }
serde = { version = "1.0.228", default-features = false, optional = true }
[dev-dependencies]
approx = "0.5.1"
futures = { version = "0.3.30", features = ["executor"] }
futures-test = "0.3.30"
[features]
defmt = ["dep:defmt"]
std = ["alloc"]
arrayvec = ["dep:arrayvec"]
alloc = ["defmt?/alloc"]
heapless = ["dep:heapless"]
heapless-09 = ["dep:heapless-09"]
postcard = ["dep:postcard", "dep:serde"]
_test = ["dep:futures", "dep:approx", "std", "arrayvec", "alloc", "heapless"]
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing_repro)'] }
[package.metadata.docs.rs]
features = ["arrayvec", "std", "heapless", "heapless-09", "postcard"]