[package]
name = "bellows"
version = "0.0.5"
authors = ["Jonathan LEI <me@xjonathan.dev>"]
license = "MIT OR Apache-2.0"
edition = "2024"
readme = "README.md"
documentation = "https://docs.rs/bellows"
repository = "https://github.com/xJonathanLEI/bellows"
description = "Durable task processing framework in Rust for applications of all sizes"

[features]
default = ["in_memory", "sqlite", "postgres"]
in_memory = ["serde_json"]
sqlite = ["sqlx", "serde_json"]
postgres = ["sqlx", "serde_json"]

[dependencies]
rand = { version = "0.10.0", default-features = false, features = ["thread_rng"] }
serde = { version = "1.0.228", default-features = false }
serde_json = { version = "1.0.149", optional = true }
sqlx = { version = "0.8.6", default-features = false, optional = true, features = ["runtime-tokio", "sqlite", "postgres"] }
tokio = { version = "1.49.0", default-features = false, features = ["macros", "rt", "sync"] }
tracing = { version = "0.1.44", default-features = false }

[dev-dependencies]
serde = { version = "1.0.228", default-features = false, features = ["std", "derive"] }
tempfile = "3.26.0"
tokio = { version = "1.49.0", default-features = false, features = ["rt-multi-thread"] }
