[package]
name = "pgb-iam"
version = "0.2.0"
edition = "2021"
description = "IAM-Aware PostgreSQL Connection Pooler — production-ready PgBouncer alternative with native AWS RDS IAM and GCP Cloud SQL IAM authentication"
license = "Apache-2.0"
repository = "https://github.com/gaurav1704/pgb-iam"
homepage = "https://github.com/gaurav1704/pgb-iam"
readme = "README.md"
exclude = ["config.toml"]
keywords = ["postgresql", "connection-pooler", "iam", "aws-rds", "gcp-cloud-sql"]
categories = ["database", "authentication", "network-programming"]

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[dependencies]
tokio = { version = "1", features = ["full"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "0.8"
anyhow = "1"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
clap = { version = "4", features = ["derive"] }
aws-config = "1"
aws-sdk-rds = "1"
aws-types = "1"
axum = "0.7"
md-5 = "0.10"
tokio-rustls = "0.26"
rustls = "0.23"
rustls-pemfile = "2"
rustls-native-certs = "0.8"
sha2 = "0.10"
hmac = "0.12"
pbkdf2 = "0.12"
rand = "0.8"
base64 = "0.22"
ldap3 = { version = "0.11", features = ["tls"] }
# pam = "0.8"  Using custom FFI in auth/pam_ffi.rs
ipnetwork = "0.20"
libc = "0.2"
chrono = { version = "0.4", default-features = false }
aws-credential-types = "1.2.14"
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "json"] }
