[package]
name = "redisson"
version = "0.1.0"
authors = ["mrpan <1049058427@qq.com>"]
edition = "2021"
description = "A Redis-based distributed synchronization and data structures library for Rust"
readme = "README.md"
keywords = ["redis", "distributed", "lock", "synchronization", "redisson"]
categories = ["data-structures", "asynchronous", "database"]
homepage = "https://github.com/wslongchen/redisson.rs"
repository = "https://github.com/wslongchen/redisson.rs"
documentation = "https://docs.rs/redisson"
license = "MIT"
[lib]
path = "src/lib.rs"
[features]
default = ["sync"]
sync = ["r2d2"]
caching = []
async = ["tokio/full", "async-trait", "futures", "deadpool", "tokio-stream"]
full = ["sync", "async", "caching"]
[dependencies]
redis = { version = "1.0.2", features = ["r2d2", "tokio-comp", "tokio-native-tls-comp", "cluster-async","tls-rustls", "connection-manager","sentinel", "streams", "cluster"] }
async-trait = { version = "0.1", optional = true }
futures = { version = "0.3", optional = true }
deadpool = { version = "0.10", features = ["managed", "rt_tokio_1"], optional = true }
tokio = { version = "1.0", optional = true, features = ["rt", "sync", "time"] }
tokio-stream = {version = "0.1.18", optional = true}
r2d2 = { version = "0.8", optional = true }
once_cell = "1.18"
rand = "0.8"
uuid = { version = "1.0", features = ["v4", "serde"] }
bloom = "0.3"
lru = "0.16.3"
parking_lot = "0.12"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "1.0"
tracing = { version = "0.1"}
[dev-dependencies]
criterion = { version = "0.8.1", features = ["async", "async_futures"] }
tokio = { version = "1.0", features = ["full"] }
[[bench]]
name = "redisson_benchmark"
harness = false
[[example]]
name = "async_usage"
path = "examples/async_usage.rs"
required-features = ["async"]
[[example]]
name = "basic_usage"
path = "examples/basic_usage.rs"
[[example]]
name = "advanced"
path = "examples/advanced.rs"
[[example]]
name = "batch"
path = "examples/batch.rs"