[[bin]]
name = "warpdrive"
path = "src/main.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.arc-swap]
version = "1.7"
[dependencies.async-compression]
features = ["tokio", "gzip", "brotli", "zstd"]
version = "0.4"
[dependencies.async-trait]
version = "0.1"
[dependencies.brotli]
version = "8.0.2"
[dependencies.bytes]
version = "1.9"
[dependencies.clap]
features = ["derive", "env"]
version = "4.5"
[dependencies.config]
version = "0.15"
[dependencies.daemonize]
version = "0.5"
[dependencies.dashmap]
version = "6.1"
[dependencies.deadpool-postgres]
version = "0.14"
[dependencies.dotenvy]
version = "0.15"
[dependencies.failsafe]
version = "1.3.0"
[dependencies.flate2]
version = "1.0"
[dependencies.futures]
version = "0.3"
[dependencies.governor]
version = "0.10"
[dependencies.http]
version = "1.2"
[dependencies.http-body]
version = "1.0"
[dependencies.http-body-util]
version = "0.1"
[dependencies.hyper]
features = ["full"]
version = "1.7"
[dependencies.hyper-rustls]
default-features = false
features = ["http1", "http2", "ring", "native-tokio", "tls12"]
version = "0.27"
[dependencies.hyper-util]
features = ["full"]
version = "0.1"
[dependencies.instant-acme]
default-features = false
features = ["ring", "hyper-rustls"]
version = "0.8"
[dependencies.ipnet]
version = "2.10"
[dependencies.lru]
version = "0.16"
[dependencies.nix]
features = ["signal"]
version = "0.30"
[dependencies.once_cell]
version = "1.20"
[dependencies.opentelemetry]
features = ["trace", "metrics"]
version = "0.31"
[dependencies.opentelemetry-otlp]
features = ["tokio", "tls", "tls-roots"]
version = "0.31"
[dependencies.opentelemetry_sdk]
features = ["rt-tokio"]
version = "0.31"
[dependencies.parking_lot]
version = "0.12"
[dependencies.pingora]
features = ["lb", "cache", "openssl"]
version = "0.6"
[dependencies.pingora-cache]
version = "0.6"
[dependencies.pingora-core]
version = "0.6"
[dependencies.pingora-http]
version = "0.6"
[dependencies.pingora-load-balancing]
version = "0.6"
[dependencies.pingora-proxy]
version = "0.6"
[dependencies.pingora-timeout]
version = "0.6"
[dependencies.postgres-types]
features = ["derive"]
version = "0.2"
[dependencies.prometheus]
features = ["process"]
version = "0.14"
[dependencies.prometheus-hyper]
version = "0.2"
[dependencies.rand]
version = "0.9"
[dependencies.rcgen]
version = "0.14"
[dependencies.redis]
features = ["tokio-comp", "connection-manager", "cluster", "cluster-async"]
version = "1.0.0-alpha.2"
[dependencies.regex]
version = "1.11"
[dependencies.rustls]
default-features = false
features = ["ring", "std", "tls12"]
version = "0.23"
[dependencies.rustls-pemfile]
version = "2.2"
[dependencies.serde]
features = ["derive"]
version = "1.0.228"
[dependencies.serde_json]
version = "1.0"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
features = ["full"]
version = "1.47"
[dependencies.tokio-postgres]
features = ["with-serde_json-1"]
version = "0.7.14"
[dependencies.tokio-rustls]
default-features = false
features = ["ring"]
version = "0.26"
[dependencies.tokio-stream]
version = "0.1.17"
[dependencies.tokio-tungstenite]
version = "0.28"
[dependencies.tokio-util]
features = ["codec", "io"]
version = "0.7"
[dependencies.toml]
version = "0.9"
[dependencies.tracing]
version = "0.1.41"
[dependencies.tracing-opentelemetry]
version = "0.32"
[dependencies.tracing-subscriber]
features = ["env-filter", "json"]
version = "0.3"
[dependencies.tungstenite]
version = "0.28"
[dev-dependencies.criterion]
version = "0.7"
[dev-dependencies.mockall]
version = "0.13"
[dev-dependencies.serial_test]
version = "3.2"
[dev-dependencies.tempfile]
version = "3.23.0"
[dev-dependencies.wiremock]
version = "0.6"
[lib]
name = "warpdrive_proxy"
path = "src/lib.rs"
[package]
authors = ["Abdelkader Boudih <terminale@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["network-programming", "web-programming::http-server", "asynchronous"]
description = "A high-performance HTTP proxy with PostgreSQL coordination and distributed caching"
documentation = "https://docs.rs/warpdrive-proxy"
edition = "2024"
exclude = ["gem/*", "deployments/*", "docker-compose*.yml", "Dockerfile*", ".env*", "scripts/*", "docs/*", "bin/*", "tests/*", "public/*", ".github/*", ".dockerignore", ".gitignore", "Cross.toml", "config*.toml", "DEPLOYMENT.md", "DOCKER.md", "TESTING.md", "ROUTING.md", "LIMITATIONS.md", ".release-please-manifest.json", "release-please-config.json"]
homepage = "https://github.com/seuros/warpdrive"
keywords = ["proxy", "pingora", "http", "reverse-proxy", "warpdrive"]
license = "MIT"
name = "warpdrive-proxy"
readme = "README.md"
repository = "https://github.com/seuros/warpdrive"
version = "0.1.0"
[profile.release]
codegen-units = 1
lto = true
opt-level = 3
strip = true