[package] name = "ripgrep" version = "14.1.0" #:version authors = ["Andrew Gallant "] description = """ ripgrep is a line-oriented search tool that recursively searches the current directory for a regex pattern while respecting gitignore rules. ripgrep has first class support on Windows, macOS and Linux. """ documentation = "https://github.com/BurntSushi/ripgrep" homepage = "https://github.com/BurntSushi/ripgrep" repository = "https://github.com/BurntSushi/ripgrep" keywords = ["regex", "grep", "egrep", "search", "pattern"] categories = ["command-line-utilities", "text-processing"] license = "Unlicense OR MIT" exclude = [ "HomebrewFormula", "/.github/", "/ci/", "/pkg/brew", "/benchsuite/", "/scripts/", ] build = "build.rs" autotests = false edition = "2021" rust-version = "1.72" [[bin]] bench = false path = "crates/core/main.rs" name = "rg" [[test]] name = "integration" path = "tests/tests.rs" [workspace] members = [ "crates/globset", "crates/grep", "crates/cli", "crates/matcher", "crates/pcre2", "crates/printer", "crates/regex", "crates/searcher", "crates/ignore", ] [dependencies] anyhow = "1.0.75" bstr = "1.7.0" grep = { version = "0.3.1", path = "crates/grep" } ignore = { version = "0.4.22", path = "crates/ignore" } lexopt = "0.3.0" log = "0.4.5" serde_json = "1.0.23" termcolor = "1.1.0" textwrap = { version = "0.16.0", default-features = false } [target.'cfg(all(target_env = "musl", target_pointer_width = "64"))'.dependencies.jemallocator] version = "0.5.0" [dev-dependencies] serde = "1.0.77" serde_derive = "1.0.77" walkdir = "2" [features] pcre2 = ["grep/pcre2"] [profile.release] debug = 1 [profile.release-lto] inherits = "release" opt-level = 3 debug = "none" strip = "symbols" debug-assertions = false overflow-checks = false lto = "fat" panic = "abort" incremental = false codegen-units = 1 # This is the main way to strip binaries in the deb package created by # 'cargo deb'. For other release binaries, we (currently) call 'strip' # explicitly in the release process. [profile.deb] inherits = "release" debug = false [package.metadata.deb] features = ["pcre2"] section = "utils" assets = [ ["target/release/rg", "usr/bin/", "755"], ["COPYING", "usr/share/doc/ripgrep/", "644"], ["LICENSE-MIT", "usr/share/doc/ripgrep/", "644"], ["UNLICENSE", "usr/share/doc/ripgrep/", "644"], ["CHANGELOG.md", "usr/share/doc/ripgrep/CHANGELOG", "644"], ["README.md", "usr/share/doc/ripgrep/README", "644"], ["FAQ.md", "usr/share/doc/ripgrep/FAQ", "644"], # The man page is automatically generated by ripgrep's build process, so # this file isn't actually committed. Instead, to create a dpkg, either # create a deployment/deb directory and copy the man page to it, or use the # 'ci/build-deb' script. ["deployment/deb/rg.1", "usr/share/man/man1/rg.1", "644"], # Similarly for shell completions. ["deployment/deb/rg.bash", "usr/share/bash-completion/completions/rg", "644"], ["deployment/deb/rg.fish", "usr/share/fish/vendor_completions.d/rg.fish", "644"], ["deployment/deb/_rg", "usr/share/zsh/vendor-completions/", "644"], ] extended-description = """\ ripgrep (rg) recursively searches your current directory for a regex pattern. By default, ripgrep will respect your .gitignore and automatically skip hidden files/directories and binary files. """