[package]
name = "pg_replica"
version = "0.4.0"
edition = "2021"
publish = true
description = "Consensus-driven failover for PostgreSQL (Raft control plane)"
license = "GPL-3.0-or-later"
repository = "https://github.com/hyperiondb"
readme = "README.md"
keywords = ["postgresql", "raft", "failover", "replication", "pgrx"]
categories = ["database"]

[lib]
crate-type = ["cdylib", "lib"]

[features]
default = ["pg18"]
pg18 = ["pgrx/pg18", "pgrx-tests/pg18"]
pg_test = []

[dependencies]
pgrx = "=0.18.1"
libc = "=0.2.186"
openraft = { version = "=0.9.23", features = ["serde", "storage-v2"] }
tokio = { version = "=1.52.3", features = ["rt-multi-thread", "net", "io-util", "sync", "time", "macros"] }
serde = { version = "=1.0.228", features = ["derive"] }
serde_json = "=1.0.150"

[dev-dependencies]
pgrx-tests = "=0.18.1"

[profile.dev]
panic = "unwind"

[profile.release]
panic = "unwind"
opt-level = 3
lto = "fat"
codegen-units = 1
