ferriskey 0.5.0

Rust client for Valkey, built for FlowFabric. Forked from glide-core (valkey-glide).
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "ferriskey"
version = "0.5.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"))',
]