[package] name = "gitui" version = "0.28.1" authors = ["extrawurst "] description = "blazing fast terminal-ui for git" edition = "2021" rust-version = "1.88" exclude = [".github/*", ".vscode/*", "assets/*"] homepage = "https://github.com/gitui-org/gitui" repository = "https://github.com/gitui-org/gitui" readme = "README.md" license = "MIT" categories = ["command-line-utilities"] keywords = ["cli", "git", "gui", "terminal", "ui"] build = "build.rs" [workspace] members = [ "asyncgit", "filetreelist", "git2-hooks", "git2-testing", "scopetime", ] [dependencies] anyhow = "1.0" asyncgit = { path = "./asyncgit", version = "0.28.1", default-features = false } backtrace = "0.3" base64 = "0.22" bitflags = "2.10" bugreport = "0.5.1" bwrap = { version = "1.3", features = ["use_std"] } bytesize = { version = "2.3", default-features = false } chrono = { version = "0.4", default-features = false, features = ["clock"] } clap = { version = "4.5", features = ["cargo", "env"] } crossbeam-channel = "0.5" crossterm = { version = "0.29", features = ["serde"] } dirs = "6.0" easy-cast = "0.5" filetreelist = { path = "./filetreelist", version = ">=0.6" } fuzzy-matcher = "0.3" gh-emoji = { version = "1.0", optional = true } indexmap = "2" itertools = "0.14" log = "0.4" notify = "8" notify-debouncer-mini = "0.7" once_cell = "1" parking_lot_core = "0.9" ratatui = { version = "0.30", default-features = false, features = [ "crossterm", "serde", ] } ratatui-textarea = "0.8" rayon-core = "1.13" ron = "0.12" scopeguard = "1.2" scopetime = { path = "./scopetime", version = "0.1" } serde = "1.0" shellexpand = "3.1" simplelog = { version = "0.12", default-features = false } struct-patch = "0.10" syntect = { version = "5.3", default-features = false, features = [ "default-syntaxes", "default-themes", "html", "parsing", "plist-load", ] } two-face = { version = "0.4.4", default-features = false } unicode-segmentation = "1.12" unicode-truncate = "2.0" unicode-width = "0.2" which = "8.0" [dev-dependencies] env_logger = "0.11" git2-testing = { path = "./git2-testing" } insta = { version = "1.41.0", features = ["filters"] } pretty_assertions = "1.4" tempfile = "3" [build-dependencies] chrono = { version = "0.4", default-features = false, features = ["clock"] } [badges] maintenance = { status = "actively-developed" } [features] default = ["ghemoji", "regex-fancy", "trace-libgit", "vendor-openssl"] ghemoji = ["gh-emoji"] # regex-* features are mutually exclusive. regex-fancy = ["syntect/regex-fancy", "two-face/syntect-fancy"] regex-onig = ["syntect/regex-onig", "two-face/syntect-onig"] timing = ["scopetime/enabled"] trace-libgit = ["asyncgit/trace-libgit"] vendor-openssl = ["asyncgit/vendor-openssl"] # make debug build as fast as release # usage of utf8 encoding inside tui # makes their debug profile slow [profile.dev.package."ratatui"] opt-level = 3 [profile.release] opt-level = "z" # Optimize for size. strip = "debuginfo" lto = true codegen-units = 1