dircat 1.0.1

High-performance Rust utility that concatenates and displays directory contents, similar to the C++ DirCat.
Documentation
[[bin]]
name = "dircat"
path = "src/main.rs"

[dependencies.anyhow]
version = "1.0"

[dependencies.arboard]
optional = true
version = "3.6"

[dependencies.atty]
optional = true
version = "0.2"

[dependencies.byte-unit]
version = "5.1"

[dependencies.clap]
features = ["derive", "cargo"]
version = "4.5"

[dependencies.content_inspector]
version = "0.2"

[dependencies.crossbeam-channel]
version = "0.5"

[dependencies.ctrlc]
features = ["termination"]
version = "3.5"

[dependencies.directories]
version = "5.0"

[dependencies.dyn-clone]
version = "1.0"

[dependencies.env_logger]
version = "0.11"

[dependencies.git2]
features = ["vendored-libgit2", "vendored-openssl"]
optional = true
version = "0.20"

[dependencies.glob]
version = "0.3"

[dependencies.hex]
optional = true
version = "0.4"

[dependencies.ignore]
version = "0.4"

[dependencies.indicatif]
optional = true
version = "0.17"

[dependencies.log]
version = "0.4"

[dependencies.once_cell]
version = "1.21"

[dependencies.rayon]
version = "1.11"

[dependencies.regex]
version = "1.12"

[dependencies.reqwest]
features = ["blocking", "json"]
optional = true
version = "0.12"

[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0"

[dependencies.serde_json]
optional = true
version = "1.0"

[dependencies.sha2]
optional = true
version = "0.10"

[dependencies.tempfile]
version = "3.23"

[dependencies.thiserror]
version = "1.0"

[dependencies.tracing]
version = "0.1"

[dev-dependencies.assert_cmd]
version = "2.1"

[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.5"

[dev-dependencies.predicates]
version = "3.1"

[dev-dependencies.tempfile]
version = "3.23"

[features]
clipboard = ["arboard"]
default = ["git", "clipboard", "progress"]
git = ["git2", "sha2", "hex", "reqwest", "serde", "serde_json"]
progress = ["indicatif", "atty"]

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

[package]
authors = ["Romelium author@romelium.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["command-line-utilities"]
description = "High-performance Rust utility that concatenates and displays directory contents, similar to the C++ DirCat."
edition = "2021"
keywords = ["cli", "ai", "cat", "utility", "llm"]
license = "MIT"
name = "dircat"
readme = "README.md"
repository = "https://github.com/romelium/dircat-rust"
version = "1.0.1"

[[test]]
name = "basic"
path = "tests/basic.rs"

[[test]]
name = "common"
path = "tests/common.rs"

[[test]]
name = "content_processing"
path = "tests/content_processing.rs"

[[test]]
name = "content_processing_adv"
path = "tests/content_processing_adv.rs"

[[test]]
name = "dry_run"
path = "tests/dry_run.rs"

[[test]]
name = "edge_cases"
path = "tests/edge_cases.rs"

[[test]]
name = "errors"
path = "tests/errors.rs"

[[test]]
name = "filter_binary"
path = "tests/filter_binary.rs"

[[test]]
name = "filter_combinations_adv"
path = "tests/filter_combinations_adv.rs"

[[test]]
name = "filter_extensions"
path = "tests/filter_extensions.rs"

[[test]]
name = "filter_gitignore"
path = "tests/filter_gitignore.rs"

[[test]]
name = "filter_gitignore_advanced"
path = "tests/filter_gitignore_advanced.rs"

[[test]]
name = "filter_ignore"
path = "tests/filter_ignore.rs"

[[test]]
name = "filter_lockfiles"
path = "tests/filter_lockfiles.rs"

[[test]]
name = "filter_recursive"
path = "tests/filter_recursive.rs"

[[test]]
name = "filter_regex"
path = "tests/filter_regex.rs"

[[test]]
name = "filter_size"
path = "tests/filter_size.rs"

[[test]]
name = "filtering_combinations"
path = "tests/filtering_combinations.rs"

[[test]]
name = "format_backticks"
path = "tests/format_backticks.rs"

[[test]]
name = "format_combinations"
path = "tests/format_combinations.rs"

[[test]]
name = "format_header"
path = "tests/format_header.rs"

[[test]]
name = "format_lines"
path = "tests/format_lines.rs"

[[test]]
name = "format_ticks"
path = "tests/format_ticks.rs"

[[test]]
name = "git_api_download"
path = "tests/git_api_download.rs"

[[test]]
name = "git_input"
path = "tests/git_input.rs"

[[test]]
name = "git_update"
path = "tests/git_update.rs"

[[test]]
name = "library_api"
path = "tests/library_api.rs"

[[test]]
name = "library_pipeline"
path = "tests/library_pipeline.rs"

[[test]]
name = "output_file"
path = "tests/output_file.rs"

[[test]]
name = "output_format"
path = "tests/output_format.rs"

[[test]]
name = "process_order"
path = "tests/process_order.rs"

[[test]]
name = "process_order_adv"
path = "tests/process_order_adv.rs"

[[test]]
name = "repro_dry_run_order"
path = "tests/repro_dry_run_order.rs"

[[test]]
name = "repro_github_url_parsing"
path = "tests/repro_github_url_parsing.rs"

[[test]]
name = "repro_recursive_glob"
path = "tests/repro_recursive_glob.rs"

[[test]]
name = "summary_counts"
path = "tests/summary_counts.rs"