[package]
name = "btctax-cli"
version = "0.2.0"
edition.workspace = true
license.workspace = true
description = "btctax — an offline, single-user US Bitcoin tax ledger (CLI: import, reconcile, and compute)."
repository.workspace = true
homepage.workspace = true
keywords.workspace = true
categories = ["command-line-utilities", "finance"]
rust-version.workspace = true   # M3: enforce the workspace MSRV (1.88 — raised from 1.74, see FOLLOWUPS CI entry) like the other 3 crates

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

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

[dependencies]
btctax-core = { path = "../btctax-core", version = "0.2.0" }
btctax-store = { path = "../btctax-store", version = "0.2.0" }
btctax-adapters = { path = "../btctax-adapters", version = "0.2.0" }
rust_decimal = { version = "1.36", default-features = false, features = ["std"] }
time = { version = "0.3", features = ["macros", "parsing", "formatting"] }
rusqlite = { version = "0.31", features = ["bundled"] } # cli_config side-table over the vault Connection
clap = { version = "4.5", features = ["derive"] }       # binary arg parsing (derive)
rpassword = "7.3"                                        # secure interactive passphrase (main only)
csv = "1.3"                                              # FR10 ledger CSV export
serde_json = "1"                                         # classify-raw typed-payload input
thiserror = "1"

[dev-dependencies]
tempfile = "3"
rust_decimal_macros = "1.36"
time = { version = "0.3", features = ["macros"] }
