[package]
name = "pgtrickle-tui"
version = "0.13.0"
edition = "2024"
description = "Terminal User Interface for pg_trickle stream tables"
license = "Apache-2.0"
repository = "https://github.com/grove/pg-trickle"
readme = "../README.md"

[[bin]]
name = "pgtrickle"
path = "src/main.rs"

[dependencies]
clap = { version = "4", features = ["derive", "env"] }
clap_complete = "4"
comfy-table = "7"
crossterm = "0.28"
ratatui = "0.29"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
tokio = { version = "1", features = ["rt-multi-thread", "macros", "signal", "time", "sync"] }
tokio-postgres = "0.7"
toml = "0.8"
unicode-width = "0.2"
thiserror = "2"
chrono = { version = "0.4", features = ["serde"] }
futures-util = "0.3"

# TLS support (optional, behind "tls" feature)
tokio-postgres-rustls = { version = "0.13", optional = true }
rustls = { version = "0.23", default-features = false, features = ["ring", "logging", "std", "tls12"], optional = true }
rustls-pemfile = { version = "2", optional = true }
webpki-roots = { version = "0.26", optional = true }

[features]
default = []
tls = ["tokio-postgres-rustls", "rustls", "rustls-pemfile", "webpki-roots"]

[dev-dependencies]
insta = "1"
testcontainers = "0.27"
testcontainers-modules = { version = "0.15", features = ["postgres"] }
