[package]
name = "dbuff"
edition = "2024"
version = "0.1.0"
description = "Double-buffered state with async command chains, streaming, and keyed task pools for ratatui applications"
license = "LGPL-3.0-or-later"
repository = "https://github.com/jayson-lennon/dbuff"
keywords = ["async", "tokio", "double-buffer", "command", "state"]
categories = ["asynchronous", "command-line-interface"]
readme = "README.md"
[dependencies]
arc-swap = "1"
async-trait = "0.1.89"
error-stack = { version = "0.7.0", features = ["serde"], optional = true }
futures-util = "0.3"
kanal = { version = "0.1", features = ["async"] }
parking_lot = "0.12"
paste = "1"
tokio = { version = "1.51.0", features = ["full"] }
wherror = "2.3.1"
[features]
default = []
error-stack = ["dep:error-stack"]
[dev-dependencies]
rpds = "1"
[lints.clippy]
pedantic = { level = "warn", priority = -1 }
collapsible_if = "allow"
default_constructed_unit_structs = "allow"
doc_markdown = "allow"
enum_glob_use = "allow"
match_wildcard_for_single_variants = "allow"
must_use_candidate = "allow"
needless_pass_by_value = "allow"
needless_raw_string_hashes = "allow"
single_match = "allow"
single_match_else = "allow"
wildcard_imports = "allow"
[[example]]
name = "error_stack"
required-features = ["error-stack"]