[package]
name = "pglite-rs"
description = "In-process PostgreSQL for Rust, embedded like SQLite, async on any runtime"
build = "build.rs"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
readme.workspace = true
keywords.workspace = true
categories = ["database", "database-implementations"]

[lib]
name = "pglite"

[build-dependencies]
ruzstd = "0.8"

[dependencies]
pglite-rs-sys = { path = "../pglite-sys", version = "0.1.0" }
futures = { version = "0.3", features = ["executor"] }
postgres-protocol = "0.6"
postgres-types = "0.2"
thiserror = "2"
libc = "0.2"
tar = "0.4"
bytes = "1"
fallible-iterator = "0.2"

[dev-dependencies]
futures = { version = "0.3", features = ["executor"] }
libc = "0.2"
postgres = "0.19"

[features]
default = ["socket"]
multiple-process = []
socket = []
pgcrypto = []
pgvector = []
icu = ["pglite-rs-sys/icu"]
replica = []
full = [
    "multiple-process",
    "socket",
    "pgcrypto",
    "pgvector",
    "icu",
    "replica",
]

[package.metadata.docs.rs]
all-features = true
