[package]
edition = "2024"
name = "gproxy-cache"
version = "4.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "TTL state, atomic coordination and invalidation notifications for GPROXY"
readme = "README.md"
license = "MIT"
repository = "https://github.com/LeenHawk/gproxy"
[features]
default = ["memory"]
memory = [
"dep:tokio",
"dep:web-time",
]
redis = [
"dep:redis",
"dep:tokio",
"tokio/rt",
"tokio/time",
"dep:futures-util",
]
[lib]
name = "gproxy_cache"
path = "src/lib.rs"
[[test]]
name = "contract"
path = "tests/contract.rs"
[[test]]
name = "redis_disconnect"
path = "tests/redis_disconnect.rs"
[dependencies.async-trait]
version = "0.1"
[dependencies.getrandom]
version = "0.4"
features = ["wasm_js"]
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["sync"]
optional = true
default-features = false
[dependencies.web-time]
version = "1"
optional = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.futures-util]
version = "0.3"
optional = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.redis]
version = "1.7"
features = [
"connection-manager",
"tokio-rustls-comp",
"script",
]
optional = true
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio]
version = "1"
features = [
"macros",
"net",
"rt-multi-thread",
"signal",
"sync",
"time",
"io-util",
]
default-features = false