[package]
name = "sabi_redis"
version = "0.3.0"
authors = ["Takayuki Sato <sttk.xslet@gmail.com>"]
edition = "2021"
rust-version = "1.87.0"
description = "The sabi data access library for Redis in Rust"
documentation = "https://docs.rs/sabi_redis"
readme = "README.md"
repository = "https://github.com/sttk/sabi_redis-rust"
license = "MIT"
keywords = ["sabi", "redis", "data", "access"]
categories = ["database"]

[dependencies]
deadpool = { version = "0.13", features = ["managed"], optional = true }
deadpool-redis = { version = "0.23", features = ["sentinel"], optional = true }
errs = "0.8"
r2d2 = { version = "0.8", optional = true }
redis = { version = "1" }
sabi-rust = "0.7"
tokio = { version = "1", optional = true }

[dev-dependencies]
override_macro = "0.1"

[features]
default = ["standalone-sync"]

standalone-sync = ["dep:r2d2", "redis/r2d2"]
standalone-async = ["dep:deadpool-redis", "redis/tokio-comp", "sabi-rust/tokio", "dep:tokio", "tokio/full"]

sentinel-sync = ["dep:r2d2", "redis/r2d2", "redis/sentinel"]
sentinel-async = ["deadpool/managed", "deadpool-redis/sentinel", "redis/tokio-comp", "redis/sentinel", "redis/aio", "sabi-rust/tokio", "dep:tokio", "tokio/full"]

[package.metadata.docs.rs]
all-features = true
targets = ["x86_64-unknown-linux-gnu"]
rustdoc-args = ["--cfg", "docsrs"]
