[package]
edition = "2024"
name = "pg-api"
version = "0.2.0"
authors = ["Aerun Serviços de Tecnologia <aerun@aerun.com.br>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A high-performance PostgreSQL REST API driver with rate limiting, connection pooling, and observability"
homepage = "https://gitlab.com/aerunti/pg-api"
documentation = "https://docs.rs/pg-api"
readme = "README.md"
keywords = [
"postgresql",
"api",
"rest",
"database",
"driver",
]
categories = [
"database",
"web-programming",
"api-bindings",
]
license = "MIT"
repository = "https://gitlab.com/aerunti/pg-api"
[[bin]]
name = "pg-api"
path = "src/main.rs"
[[example]]
name = "rust_client"
path = "examples/rust_client.rs"
[[test]]
name = "auth_integration"
path = "tests/auth_integration.rs"
[[test]]
name = "health_check"
path = "tests/health_check.rs"
[[test]]
name = "query_execution"
path = "tests/query_execution.rs"
[[test]]
name = "rate_limiting"
path = "tests/rate_limiting.rs"
[[bench]]
name = "api_benchmarks"
path = "benches/api_benchmarks.rs"
harness = false
[dependencies.anyhow]
version = "1"
[dependencies.axum]
version = "0.8.4"
[dependencies.bytes]
version = "1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.dashmap]
version = "6"
[dependencies.deadpool-postgres]
version = "0.14"
[dependencies.dotenvy]
version = "0.15"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.12"
features = ["json"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tokio-postgres]
version = "0.7"
features = [
"with-chrono-0_4",
"with-serde_json-1",
"with-uuid-1",
]
[dependencies.tower-http]
version = "0.6"
features = ["cors"]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"json",
]
[dependencies.uuid]
version = "1"
features = [
"v4",
"serde",
]
[dev-dependencies.criterion]
version = "0.5"
features = ["async_tokio"]
[dev-dependencies.reqwest]
version = "0.12"
features = ["json"]
[dev-dependencies.tokio-test]
version = "0.4"
[profile.bench]
debug = 2
[profile.release]
lto = true
codegen-units = 1