cacheflight 0.2.0

Cache-backed deduplication for async Rust services with stale-while-revalidate support
Documentation
[package]
name = "cacheflight"
version = "0.2.0"
edition = "2024"
rust-version = "1.85"
description = "Cache-backed deduplication for async Rust services with stale-while-revalidate support"
license = "MIT OR Apache-2.0"
readme = "README.md"
documentation = "https://docs.rs/cacheflight"
keywords = ["cache", "singleflight", "async", "deduplication"]
categories = ["asynchronous", "caching"]

[features]
default = ["redis"]
redis = ["dep:redis"]

[dependencies]
async-trait = "0.1"
dashmap = "6"
redis = { version = "0.28", features = ["tokio-comp", "connection-manager"], optional = true }
fastrand = "2"
thiserror = "2"
tokio = { version = "1", features = [
    "macros",
    "rt-multi-thread",
    "sync",
    "time",
] }

[dev-dependencies]
criterion = { version = "0.5", features = ["async_tokio"] }
testcontainers = { version = "0", default-features = false, features = ["tokio"] }

[[bench]]
name = "cacheflight"
harness = false