[package]
edition = "2024"
name = "ferriskey"
version = "0.10.0"
authors = ["FlowFabric Contributors"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust client for Valkey, built for FlowFabric. Forked from glide-core (valkey-glide)."
readme = "README.md"
keywords = [
"valkey",
"redis",
"client",
"async",
]
categories = ["database"]
license = "Apache-2.0"
repository = "https://github.com/avifenesh/FlowFabric"
[package.metadata.cargo-machete]
ignored = ["strum"]
[features]
default = []
iam = [
"dep:aws-config",
"dep:aws-credential-types",
"dep:aws-sigv4",
"dep:http",
"dep:urlencoding",
]
test-util = []
[lib]
name = "ferriskey"
path = "src/lib.rs"
[[test]]
name = "constants"
path = "tests/constants.rs"
[[test]]
name = "test_client"
path = "tests/test_client.rs"
[[test]]
name = "test_cluster_client"
path = "tests/test_cluster_client.rs"
[[test]]
name = "test_compression"
path = "tests/test_compression.rs"
[[test]]
name = "test_dns"
path = "tests/test_dns.rs"
[[test]]
name = "test_fcall"
path = "tests/test_fcall.rs"
[[test]]
name = "test_integration_real_workload"
path = "tests/test_integration_real_workload.rs"
[[test]]
name = "test_pubsub"
path = "tests/test_pubsub.rs"
[[test]]
name = "test_standalone_client"
path = "tests/test_standalone_client.rs"
[[test]]
name = "test_tracing_spans"
path = "tests/test_tracing_spans.rs"
[[bench]]
name = "connections_benchmark"
path = "benches/connections_benchmark.rs"
harness = false
[dependencies.arc-swap]
version = "1.9"
[dependencies.async-trait]
version = "0.1"
[dependencies.aws-config]
version = "1"
optional = true
[dependencies.aws-credential-types]
version = "1"
optional = true
[dependencies.aws-sigv4]
version = "1"
optional = true
[dependencies.bytes]
version = "1"
[dependencies.crc16]
version = "0.4"
[dependencies.dashmap]
version = "6"
[dependencies.dispose]
version = "0.5"
[dependencies.futures]
version = "^0.3"
[dependencies.futures-intrusive]
version = "0.5"
[dependencies.futures-util]
version = "0.3"
features = [
"alloc",
"sink",
]
[dependencies.http]
version = "1"
optional = true
[dependencies.itoa]
version = "1"
[dependencies.lz4]
version = "1.28"
[dependencies.mimalloc]
version = "0.1"
default-features = false
[dependencies.nanoid]
version = "0.4"
[dependencies.num-bigint]
version = "0.4"
[dependencies.once_cell]
version = "1"
[dependencies.parking_lot]
version = "0.12"
[dependencies.percent-encoding]
version = "2"
[dependencies.pin-project-lite]
version = "0.2"
[dependencies.rand]
version = "0.9"
[dependencies.rustls]
version = "0.23"
features = ["aws-lc-rs"]
[dependencies.rustls-pki-types]
version = "1.14"
[dependencies.rustls-platform-verifier]
version = "0.6"
default-features = false
[dependencies.ryu]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha1_smol]
version = "1"
[dependencies.socket2]
version = "0.6"
features = ["all"]
[dependencies.strum]
version = "0.28"
[dependencies.strum_macros]
version = "0.28"
[dependencies.tokio]
version = "1"
features = [
"rt",
"net",
"time",
"sync",
"io-util",
"macros",
]
[dependencies.tokio-retry2]
version = "0.6"
features = ["jitter"]
[dependencies.tokio-rustls]
version = "0.26"
default-features = false
[dependencies.tokio-util]
version = "0.7"
features = ["codec"]
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
[dependencies.urlencoding]
version = "2"
optional = true
[dependencies.versions]
version = "7"
[dependencies.zstd]
version = "0.13"
[dev-dependencies.ctor]
version = "0.9"
[dev-dependencies.hdrhistogram]
version = "7"
[dev-dependencies.libc]
version = "0.2"
[dev-dependencies.num_cpus]
version = "1"
[dev-dependencies.once_cell]
version = "1"
[dev-dependencies.rstest]
version = "^0.26"
[dev-dependencies.rustls]
version = "0.23"
features = ["aws-lc-rs"]
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.serial_test]
version = "3"
[dev-dependencies.socket2]
version = "0.6"
[dev-dependencies.tempfile]
version = "3.27.0"
[dev-dependencies.tokio]
version = "1"
features = ["rt-multi-thread"]
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"fmt",
"env-filter",
]
[dev-dependencies.which]
version = "8"
[lints.clippy]
await_holding_lock = "deny"
mutex_atomic = "warn"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(standalone_heartbeat)",
'cfg(feature, values("iam_tests"))',
]