[package]
name = "shuire"
version = "0.1.1"
edition = "2024"
rust-version = "1.85"
authors = ["Takumasa Sakao <sakataku7@gmail.com>"]
description = "Vim-like TUI git diff viewer"
repository = "https://github.com/sachaos/shuire"
homepage = "https://github.com/sachaos/shuire"
documentation = "https://github.com/sachaos/shuire"
readme = "README.md"
keywords = ["git", "diff", "tui", "terminal", "ratatui"]
categories = ["command-line-utilities", "development-tools"]
license = "MIT"
build = "build.rs"

[dependencies]
better-panic = "0.3"
clap = { version = "4.5", features = [
    "derive",
    "cargo",
    "wrap_help",
    "unicode",
    "string",
    "unstable-styles",
] }
color-eyre = "0.6"
config = "0.14"
crossterm = { version = "0.28", features = ["serde", "event-stream"] }
directories = "5"
futures = "0.3"
human-panic = "2"
json5 = "0.4"
lazy_static = "1"
libc = "0.2"
ratatui = { version = "0.30", features = ["serde", "macros"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
signal-hook = "0.3"
strip-ansi-escapes = "0.2"
strum = { version = "0.26", features = ["derive"] }
tokio = { version = "1", features = ["full"] }
tokio-util = "0.7"
tracing = "0.1"
tracing-error = "0.2"
tracing-subscriber = { version = "0.3", features = ["env-filter", "serde"] }

# Domain dependencies ported from legacy
anyhow = "1"
syntect = { version = "5", default-features = false, features = ["default-syntaxes", "default-themes", "parsing", "regex-fancy"] }
unicode-width = "0.1"
arboard = "3"
notify = "7"

[build-dependencies]
anyhow = "1"
vergen-gix = { version = "9", features = ["build", "cargo"] }

[dev-dependencies]
assert_cmd = "2"
predicates = "3"
pretty_assertions = "1"

[profile.release]
codegen-units = 1
lto = true
opt-level = "s"
strip = true
