[package]
edition = "2021"
name = "brakes"
version = "0.1.1"
authors = ["Mohammad Samir <mo.samir.yos@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A distributed rate limiting library"
readme = "README.md"
keywords = [
"ratelimit",
"actix-web",
"axum",
"middleware",
"rate-limiting",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/mohammadsamir/brakes"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
actixweb = [
"dep:actix-web",
"dep:futures-util",
]
memcache = ["dep:memcache"]
redis = [
"dep:redis",
"dep:r2d2",
]
tower = [
"dep:tower",
"dep:http",
"dep:futures",
]
[lib]
name = "brakes"
path = "src/lib.rs"
[[test]]
name = "backend"
path = "tests/backend.rs"
[[test]]
name = "conflict_strategy_memcache"
path = "tests/conflict_strategy_memcache.rs"
[[test]]
name = "conflict_strategy_redis"
path = "tests/conflict_strategy_redis.rs"
[[test]]
name = "invalid_cache"
path = "tests/invalid_cache.rs"
[[test]]
name = "limiter_types"
path = "tests/limiter_types.rs"
[dependencies.actix-web]
version = "4"
optional = true
[dependencies.bincode]
version = "1.3.3"
[dependencies.futures]
version = "0.3.31"
optional = true
[dependencies.futures-util]
version = "0.3.31"
optional = true
[dependencies.http]
version = "1.2.0"
optional = true
[dependencies.log]
version = "0.4.22"
[dependencies.memcache]
version = "0.18.0"
optional = true
[dependencies.r2d2]
version = "0.8.10"
optional = true
[dependencies.redis]
version = "0.27.6"
features = ["r2d2"]
optional = true
package = "redis"
[dependencies.serde]
version = "1.0.216"
features = ["derive"]
[dependencies.tower]
version = "0.5.2"
optional = true