[package]
name = "xitca-postgres"
version = "0.4.0"
edition = "2024"
license = "Apache-2.0"
description = "an async postgres client"
repository = "https://github.com/HFQR/xitca-web"
keywords = ["xitca-web", "database", "postgres", "sql", "async"]
categories = ["database"]
authors = ["fakeshadow <everestshadow@gmail.com>"]
readme= "README.md"
rust-version.workspace = true
[lints]
workspace = true
[features]
tls = ["dep:xitca-tls", "xitca-tls/rustls-ring-crypto", "dep:sha2", "dep:webpki-roots"]
quic = ["dep:quinn", "dep:rustls-pemfile", "tls"]
compat = []
io-uring = ["xitca-io/runtime-uring", "dep:tokio-uring-xitca"]
compio = ["dep:compio"]
nightly = []
[dependencies]
xitca-io = { version = "0.5.1", features = ["runtime"] }
xitca-unsafe-collection = { version = "0.2.0", features = ["bytes"] }
fallible-iterator = "0.2"
futures-core = { version = "0.3", default-features = false }
lru = { version = "0.16", default-features = false }
percent-encoding = "2"
postgres-protocol = "0.6.5"
postgres-types = "0.2"
tokio = { version = "1.48", features = ["rt", "sync"] }
tracing = { version = "0.1.40", default-features = false }
sha2 = { version = "0.10.8", optional = true }
webpki-roots = { version = "1", optional = true }
xitca-tls = { version = "0.5.0", optional = true }
quinn = { version = "0.11", features = ["ring"], optional = true }
rustls-pemfile = { version = "2", optional = true }
tokio-uring-xitca = { version = "0.1.1", optional = true }
compio = { version = "0.17", features = ["bytes"], optional = true }
[dev-dependencies]
xitca-postgres-codegen = "0.1"
bb8 = "0.9.0"
futures = { version = "0.3", default-features = false }
postgres-derive = "0.4"
postgres-types = { version = "0.2", features = ["with-uuid-1"] }
rcgen = "0.14"
tokio = { version = "1.47.1", features = ["macros", "rt-multi-thread", "time"] }
uuid = "1"