[package]
name = "broot"
version = "1.16.2"
authors = ["dystroy <denys.seguret@gmail.com>"]
repository = "https://github.com/Canop/broot"
homepage = "https://dystroy.org/broot"
documentation = "https://dystroy.org/broot"
description = "A new file manager"
edition = "2021"
keywords = ["cli", "fuzzy", "tree", "search", "file"]
license = "MIT"
categories = ["command-line-utilities"]
readme = "README.md"
build = "build.rs"
rust-version = "1.60"
exclude = ["website", "broot*.zip"]

[features]
default = []
clipboard = ["terminal-clipboard"]
kitty-csi-check = ["xterm-query"]

[dependencies]
ahash = { version = "0.7", features = ["serde"] }
ansi_colours = "1.0"
base64 = "0.13"
bet = "1.0.2"
char_reader = "0.1"
chrono = "0.4"
clap = { version = "3.2.1", features = ["derive"] }
cli-log = "2.0"
crokey = "0.4.3"
crossbeam = "0.8"
custom_error = "1.6"
deser-hjson = "1.0.2"
directories = "4.0"
file-size = "1.0.3"
fnv = "1.0.7"
git2 = { version="0.14", default-features=false }
glob = "0.3"
id-arena = "2.2.1"
image = "0.24"
include_dir = "0.7"
lazy-regex = "2.3.1"
libc = "0.2"
memmap2 = "0.5"
once_cell = "1.7"
opener = "0.5"
pathdiff = "0.2"
phf = { version = "0.10", features = ["macros"] }
rayon = "1.5"
regex = "1.5"
secular = { version = "1.0", features = ["normalization"] }
serde = { version = "1.0", features = ["derive"] }
smallvec = "1.9"
splitty = "1.0"
strict = "0.1.4"
syntect = { package = "syntect-no-panic", version = "4.6.1" } # see issue #485
tempfile = "3.2"
termimad = "0.20.3"
terminal-clipboard = { version = "0.3.1", optional = true }
terminal-light = "1.0.1"
toml = "0.5"
umask = "2.0.0"
unicode-width = "0.1.8"
xterm-query = { version = "0.1", optional = true }

[dev-dependencies]
glassbench = "0.3.3"

[target.'cfg(unix)'.dependencies]
lfs-core = "0.11.0"
users = "0.11"

[target.'cfg(windows)'.dependencies]
is_executable = "1.0.1"

[build-dependencies]
clap = { version = "3.2.1", features = ["derive"] }
clap_complete = "3.2.1"

[profile.dev]
debug = false

[profile.release]
debug = false
lto = true
codegen-units = 1 # this removes a few hundred bytes from the final exec size
strip = true

[[bench]]
name = "fuzzy"
harness = false
[[bench]]
name = "toks"
harness = false
[[bench]]
name = "composite"
harness = false
[[bench]]
name = "path_normalization"
harness = false

[patch.crates-io]
# bet = { path = "../bet" }
# crokey = { path = "../crokey" }
# cli-log = { path = "../cli-log" }
# crossterm = { path = "../crossterm-rs/crossterm" }
# deser-hjson = { path = "../deser-hjson" }
# glassbench = { path = "../glassbench" }
# lazy-regex = { path = "../lazy-regex" }
# lfs-core = { path = "../lfs-core" }
# secular = { path = "../secular", features=["normalization"] }
# strict = { path = "../strict" }
# syntect = { path = "../syntect" }
# syntect = { path = "../syntect" }
# syntect-no-panic = { path = "../syntect" }
# termimad = { path = "../termimad" }
# terminal-light = { path = "../terminal-light" }
# terminal-clipboard = { path = "../terminal-clipboard" }
# umask = { path = "../umask" }
