[package]
edition = "2024"
name = "pg-proto"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Session-typed PostgreSQL wire protocol"
homepage = "https://github.com/freshtonic/pg-proto"
documentation = "https://docs.rs/pg-proto"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/freshtonic/pg-proto"
[lib]
name = "pg_proto"
path = "src/lib.rs"
[[example]]
name = "intermediary_pipeline"
path = "examples/intermediary_pipeline.rs"
[[example]]
name = "protocol_logging_proxy"
path = "examples/protocol_logging_proxy/main.rs"
[[example]]
name = "proxy_skeleton"
path = "examples/proxy_skeleton.rs"
[[example]]
name = "rewriting_intermediary"
path = "examples/rewriting_intermediary.rs"
[[example]]
name = "sql_logging_proxy"
path = "examples/sql_logging_proxy/main.rs"
[[test]]
name = "compile_fail"
path = "tests/compile_fail.rs"
[[test]]
name = "intermediary_harness"
path = "tests/intermediary_harness.rs"
[[test]]
name = "intermediary_pipeline"
path = "tests/intermediary_pipeline.rs"
[[test]]
name = "logging_proxy_example"
path = "tests/logging_proxy_example.rs"
[[test]]
name = "postgres_container"
path = "tests/postgres_container.rs"
[[test]]
name = "recorded_fixtures"
path = "tests/recorded_fixtures.rs"
[[test]]
name = "security"
path = "tests/security.rs"
[[test]]
name = "server_role"
path = "tests/server_role.rs"
[[bench]]
name = "protocol_budget"
path = "benches/protocol_budget.rs"
harness = false
[dependencies.base64]
version = "0.22.1"
[dependencies.bytes]
version = "1.12.1"
[dependencies.hmac]
version = "0.13.0"
[dependencies.pg-proto-fsm]
version = "0.2.0"
[dependencies.postgres-protocol]
version = "0.6.12"
[dependencies.rand]
version = "0.10.2"
[dependencies.rustls]
version = "0.23.43"
[dependencies.sha2]
version = "0.11.0"
[dependencies.stringprep]
version = "0.1.5"
[dependencies.subtle]
version = "2.6.1"
[dependencies.tokio]
version = "1.53.1"
features = ["io-util"]
[dependencies.tokio-rustls]
version = "0.26.4"
[dependencies.tokio-util]
version = "0.7.19"
features = ["codec"]
[dependencies.x509-parser]
version = "0.18.1"
[dev-dependencies.rcgen]
version = "0.14.8"
[dev-dependencies.testcontainers-modules]
version = "0.15.0"
features = ["postgres"]
[dev-dependencies.tokio]
version = "1.53.1"
features = [
"macros",
"rt-multi-thread",
"net",
"io-util",
"time",
]
[dev-dependencies.tokio-postgres]
version = "0.7.18"
[dev-dependencies.tokio-postgres-rustls]
version = "0.13.0"
[dev-dependencies.trybuild]
version = "1.0.120"
[lints.clippy]
all = "warn"
pedantic = "warn"
[lints.rust]
missing_docs = "deny"
unsafe_code = "forbid"