[package]
name = "cqlsh-rs"
version = "0.5.3"
edition = "2021"
description = "A Rust re-implementation of the Apache Cassandra cqlsh shell"
license = "MIT"
repository = "https://github.com/scylladb/cqlsh-rs"
keywords = ["cassandra", "cql", "cqlsh", "scylladb", "database"]
categories = ["command-line-utilities", "database"]

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

[dependencies]
clap = { version = "4", features = ["derive", "env", "string"] }
clap_complete = "4"
configparser = "3"
anyhow = "1"
thiserror = "2"
dirs = "6"
scylla = { version = "1", features = ["rustls-023", "chrono-04", "num-bigint-04", "bigdecimal-04"] }
tokio = { version = "1", features = ["full"] }
rustls = "0.23"
rustls-pemfile = "2"
uuid = { version = "1", features = ["v4"] }
bigdecimal = "0.4"
num-bigint = "0.4"
chrono = "0.4"
tracing = "0.1"
tracing-subscriber = "0.3"
futures = "0.3"
async-trait = "0.1"
rustyline = { version = "18", features = ["derive"] }
comfy-table = { version = "7", features = ["custom_styling"] }
crossterm = "0.29"
tempfile = "3"
csv = "1"
clap_mangen = "0.3"

[lib]
name = "cqlsh_rs"
path = "src/lib.rs"

[dev-dependencies]
assert_cmd = "2"
predicates = "3"
tempfile = "3"
criterion = { version = "0.8", features = ["html_reports"] }
testcontainers = { version = "0.27", features = ["blocking"] }
tokio = { version = "1", features = ["full", "test-util"] }
insta = { version = "1", features = ["yaml"] }
proptest = "1"
rcgen = "0.13"

[[test]]
name = "integration"
path = "tests/integration/main.rs"

[[bench]]
name = "benchmarks"
harness = false
path = "benches/main.rs"

[profile.release]
lto = "thin"
strip = true
opt-level = "z"
codegen-units = 1
panic = "abort"

