drizzle-postgres 0.1.13

A type-safe SQL query builder for Rust
Documentation
[package]
name = "drizzle-postgres"
version.workspace = true
edition.workspace = true
authors.workspace = true
keywords.workspace = true
description.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true

[dependencies]
drizzle-core = { workspace = true, features = ["alloc"] }
drizzle-types = { workspace = true, features = ["alloc"] }
serde = { workspace = true, optional = true }
serde_json = { workspace = true, optional = true }
uuid = { workspace = true, optional = true }
chrono = { workspace = true, optional = true, features = ["serde", "alloc"] }
time = { workspace = true, optional = true }
cidr = { workspace = true, optional = true, features = ["serde"] }
geo-types = { workspace = true, optional = true, features = ["serde"] }
bit-vec = { workspace = true, optional = true }
rust_decimal = { workspace = true, optional = true }
arrayvec = { workspace = true, optional = true }
smallvec = { workspace = true, optional = true }
compact_str = { workspace = true, optional = true }
paste = { workspace = true }
postgres = { workspace = true, optional = true }
tokio-postgres = { workspace = true, optional = true }
aws-sdk-rdsdata = { workspace = true, optional = true }
aws-config = { workspace = true, optional = true }
tokio = { workspace = true, optional = true }
bytes = { version = "1.11", optional = true }

[dev-dependencies]
drizzle-macros = { workspace = true, features = ["postgres"] }
drizzle-types = { workspace = true }
drizzle-migrations = { workspace = true }
const_format = { workspace = true }

[features]
default = ["std"]
std = ["drizzle-core/std", "drizzle-types/std", "compact_str?/std"]
# Allocator support for no_std (forwarded features are always enabled since this
# crate requires allocation unconditionally; flag retained for API clarity).
alloc = []

serde = [
    "dep:serde_json",
    "serde_json/alloc",
    "dep:serde",
    "postgres?/with-serde_json-1",
    "tokio-postgres?/with-serde_json-1",
]
uuid = ["dep:uuid", "postgres?/with-uuid-1", "tokio-postgres?/with-uuid-1"]
chrono = [
    "dep:chrono",
    "postgres?/with-chrono-0_4",
    "tokio-postgres?/with-chrono-0_4",
]

time = [
    "dep:time",
    "postgres?/with-time-0_3",
    "tokio-postgres?/with-time-0_3",
]

cidr = ["dep:cidr", "postgres?/with-cidr-0_3", "tokio-postgres?/with-cidr-0_3"]

geo-types = [
    "dep:geo-types",
    "postgres?/with-geo-types-0_7",
    "tokio-postgres?/with-geo-types-0_7",
]

bit-vec = [
    "dep:bit-vec",
    "postgres?/with-bit-vec-0_8",
    "tokio-postgres?/with-bit-vec-0_8",
]

rust-decimal = [
    "dep:rust_decimal",
    "drizzle-core/rust-decimal",
    "rust_decimal?/db-postgres",
    "rust_decimal?/db-tokio-postgres",
]

arrayvec = ["dep:arrayvec"]
smallvec = ["dep:smallvec"]
compact-str = ["dep:compact_str"]
bytes = ["dep:bytes"]

query = [
    "std",
    "dep:serde_json",
    "serde_json/alloc",
    "drizzle-core/query",
    "postgres?/with-serde_json-1",
    "tokio-postgres?/with-serde_json-1",
]
postgres-sync = ["std", "dep:postgres", "dep:bytes", "drizzle-core/postgres-sync"]
tokio-postgres = [
    "std",
    "dep:tokio-postgres",
    "dep:tokio",
    "dep:bytes",
    "drizzle-core/tokio-postgres",
]
# AWS Aurora Data API (RDS Data Service). Uses the aws-sdk-rdsdata crate
# (HTTP-based, not wire-protocol). Row decoding goes through a dedicated
# `AwsDataApiRow` type — the `Field` variants returned by the Data API are
# pre-decoded, so we don't share `postgres-types::FromSql` impls.
aws-data-api = [
    "std",
    "dep:aws-sdk-rdsdata",
    "dep:aws-config",
    "dep:tokio",
]