# Cargo.toml
[package]
name = "qrusty"
version = "0.19.19"
edition = "2021"
authors = ["Gordon Greene <greeng3@obscure-reference.com>"]
description = "A trusty priority queue server built with Rust"
repository = "https://github.com/greeng3/qrusty"
license = "MIT"
keywords = ["queue", "priority-queue", "message-queue", "persistent-queue"]
categories = ["network-programming", "web-programming"]
exclude = ["requirements/", "integrations/", "scripts/", "web_ui/", "qrusty-*"]

[package.metadata.qrusty]
tagline = "The trusty queue that never forgets."

[dependencies]
anyhow = "1.0.102"
tikv-jemallocator = "0.6"
async-trait = "0.1.89"
axum = { version = "0.8.8", features = ["json", "ws"] }
# bincode = "2.0.1"
chrono = { version = "0.4.43", features = ["serde"] }
futures-util = "0.3.32"
rlimit = "0.10.2"
rocksdb = "0.24.0"
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0.149"
tokio = { version = "1.49.0", features = ["full"] }
tokio-tungstenite = "0.28.0"
tower = { version = "0.5.3", features = ["limit"] }
tower-http = { version = "0.6.6", features = ["cors", "fs"] }
tracing = "0.1.44"
tracing-subscriber = "0.3.22"
uuid = { version = "1.21.0", features = ["v4", "serde"] }
memmap2 = "0.9"
xxhash-rust = { version = "0.8", features = ["xxh3"] }

[dev-dependencies]
criterion = { version = "0.8.2", features = ["async_tokio"] }
httpmock = "0.8.3"
qrusty_client = { path = "crates/qrusty_client" }
reqwest = { version = "0.13.2", features = ["json"] }
tempfile = "3.25.0"

[[bench]]
name = "storage_benchmarks"
harness = false

[[bench]]
name = "http_benchmarks"
harness = false

[[bench]]
name = "ws_benchmarks"
harness = false

[[bench]]
name = "memory_benchmarks"
harness = false

[[bench]]
name = "http_memory_benchmarks"
harness = false

[[bench]]
name = "ws_memory_benchmarks"
harness = false

[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(coverage)'] }
