[package]
name = "bestool-psql"
version = "1.1.8"
edition = "2024"
authors = ["Félix Saparelli <felix@passcod.name>", "BES Developers <contact@bes.au>"]
license = "GPL-3.0-or-later"
description = "psql-inspired client for PostgreSQL"
repository = "https://github.com/beyondessential/bestool/tree/main/crates/psql"

[[bin]]
name = "bestool-psql"
path = "src/main.rs"
required-features = ["cli"]

[[bin]]
name = "bestool-psql-audit"
path = "src/bin/audit.rs"
required-features = ["cli"]

[dependencies]
bestool-postgres = { version = "1.0.0", path = "../postgres" }
clap = { version = "4.5.47", features = ["cargo", "derive", "wrap_help"], optional = true }
comfy-table = "7.2.1"
futures = { workspace = true }
csv = "1.3.1"
crossterm = "0.29.0"
ctrlc = "3.4.4"
dirs = "6.0.0"
edit = "0.1.5"
hex = "0.4.3"
jiff = "0.2.15"
lloggs = { version = "1.1.0", optional = true }
miette = "7.6.0"
indexmap = { version = "2.12.0", features = ["serde"] }
percent-encoding = "2.3"
rand = "0.9.2"
redb = "3.1.0"
reflink-copy = "0.1.20"
rust_xlsxwriter = "0.92.0"
rustyline = { version = "17.0.2", features = ["signal-hook"] }
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.145"
supports-unicode = "3.0.0"
syntect = { version = "5.3.0", default-features = false, features = ["parsing", "regex-fancy", "default-themes", "default-syntaxes"] }
sysinfo = "0.37.2"
tempfile = "3.21.0"
fraction = { version = "0.15", features = ["with-postgres-support"] }
thiserror = "2.0.17"
tokio = { version = "1.47.1", features = ["full"] }
tokio-postgres = { version = "0.7.15", features = ["with-jiff-0_2", "with-serde_json-1"] }
tokio-postgres-rustls = "0.13.0"
tracing = "0.1.41"
turso = { version = "0.3.1", default-features = false }
turso_core = "0.3.1"
uuid = { version = "1.11.0", features = ["v4", "serde"] }
winnow = "0.7.13"

[target.'cfg(unix)'.dependencies]
libc = "0.2.177"
signal-hook = "0.3.18"

[dev-dependencies]
filetime = "0.2"
temp-env = "0.3"

[features]
default = ["cli"]
cli = ["dep:clap", "dep:lloggs", "miette/fancy"]
