dircat 0.5.0

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]
version = "3.6"

[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.4"

[dependencies.directories]
version = "5.0"

[dependencies.env_logger]
version = "0.11"

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

[dependencies.glob]
version = "0.3"

[dependencies.hex]
version = "0.4"

[dependencies.ignore]
version = "0.4"

[dependencies.indicatif]
version = "0.17"

[dependencies.log]
version = "0.4"

[dependencies.once_cell]
version = "1.21"

[dependencies.rayon]
version = "1.10"

[dependencies.regex]
version = "1.11"

[dependencies.sha2]
version = "0.10"

[dependencies.tempfile]
version = "3.20"

[dependencies.thiserror]
version = "1.0"

[dependencies.tracing]
version = "0.1"

[dependencies.walkdir]
version = "2.5"

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

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

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

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

[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 = "0.5.0"

[[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 = "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 = "git_input"
path = "tests/git_input.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 = "summary_counts"
path = "tests/summary_counts.rs"