[package]
name = "distributed-lock"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
description = "Distributed locks for Rust with multiple backend support (PostgreSQL, Redis, MySQL, MongoDB, file system)"
repository.workspace = true
readme.workspace = true
keywords = ["distributed", "lock", "postgres", "redis", "mongodb"]
categories = ["concurrency", "asynchronous", "database"]
rust-version.workspace = true
[lints.clippy]
uninlined_format_args = "allow"
[dependencies]
distributed-lock-core = { workspace = true }
distributed-lock-postgres = { workspace = true, optional = true }
distributed-lock-redis = { workspace = true, optional = true }
distributed-lock-file = { workspace = true, optional = true }
distributed-lock-mysql = { workspace = true, optional = true }
distributed-lock-mongo = { workspace = true, optional = true }
[features]
default = ["postgres", "redis", "file", "mysql", "mongo"]
postgres = ["dep:distributed-lock-postgres"]
redis = ["dep:distributed-lock-redis"]
file = ["dep:distributed-lock-file"]
mysql = ["dep:distributed-lock-mysql"]
mongo = ["dep:distributed-lock-mongo"]
[dev-dependencies]