[package]
edition = "2024"
rust-version = "1.92"
name = "fastgrep"
version = "0.1.7"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Fast parallel grep with SIMD-accelerated search and trigram indexing"
readme = "README.md"
keywords = [
"grep",
"search",
"parallel",
"simd",
"cli",
]
categories = [
"command-line-utilities",
"text-processing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/awnion/fastgrep"
[features]
baseline = []
[lib]
name = "fastgrep"
path = "src/lib.rs"
[[bin]]
name = "grep"
path = "src/bin/grep.rs"
[[test]]
name = "basic_matching"
path = "tests/basic_matching.rs"
[[test]]
name = "binary"
path = "tests/binary.rs"
[[test]]
name = "context"
path = "tests/context.rs"
[[test]]
name = "edge_cases"
path = "tests/edge_cases.rs"
[[test]]
name = "files_recursive"
path = "tests/files_recursive.rs"
[[test]]
name = "flags"
path = "tests/flags.rs"
[[test]]
name = "json"
path = "tests/json.rs"
[[test]]
name = "only_matching"
path = "tests/only_matching.rs"
[[test]]
name = "regression"
path = "tests/regression.rs"
[[test]]
name = "stdin"
path = "tests/stdin.rs"
[[bench]]
name = "baseline_bench"
path = "bench_baseline/baseline_bench.rs"
harness = false
required-features = ["baseline"]
[[bench]]
name = "corpus"
path = "benches/corpus.rs"
[[bench]]
name = "grep_bench"
path = "benches/grep_bench.rs"
harness = false
[dependencies.bitcode]
version = "0.6"
features = ["serde"]
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.dirs]
version = "6"
[dependencies.itoa]
version = "1"
[dependencies.kanal]
version = "0.1"
[dependencies.memchr]
version = "2"
[dependencies.memmap2]
version = "0.9"
[dependencies.regex]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.rstest]
version = "0.26"
[dev-dependencies.tempfile]
version = "3"
[profile.release]
opt-level = "s"
lto = true
codegen-units = 1
panic = "abort"
strip = true