mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2025-07-31 04:02:00 -07:00
It turns out that musl's allocator is slow enough to cause a fairly noticeable performance regression when ripgrep is built as a static binary with musl. We fix this by using jemalloc when building with musl. We continue to use the default system allocator in all other scenarios. Namely, glibc's allocator doesn't noticeably regress performance compared to jemalloc. But we could add more targets to this logic if other system allocators (macOS, Windows) prove to be slow. This wasn't necessary before because rustc recently stopped using jemalloc by default. Fixes #1268
112 lines
3.0 KiB
TOML
112 lines
3.0 KiB
TOML
[package]
|
|
name = "ripgrep"
|
|
version = "11.0.1" #:version
|
|
authors = ["Andrew Gallant <jamslam@gmail.com>"]
|
|
description = """
|
|
ripgrep is a line-oriented search tool that recursively searches your current
|
|
directory for a regex pattern while respecting your 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"
|
|
readme = "README.md"
|
|
keywords = ["regex", "grep", "egrep", "search", "pattern"]
|
|
categories = ["command-line-utilities", "text-processing"]
|
|
license = "Unlicense OR MIT"
|
|
exclude = ["HomebrewFormula"]
|
|
build = "build.rs"
|
|
autotests = false
|
|
edition = "2018"
|
|
|
|
[badges]
|
|
travis-ci = { repository = "BurntSushi/ripgrep" }
|
|
appveyor = { repository = "BurntSushi/ripgrep" }
|
|
|
|
[[bin]]
|
|
bench = false
|
|
path = "src/main.rs"
|
|
name = "rg"
|
|
|
|
[[test]]
|
|
name = "integration"
|
|
path = "tests/tests.rs"
|
|
|
|
[workspace]
|
|
members = [
|
|
"globset",
|
|
"grep",
|
|
"grep-cli",
|
|
"grep-matcher",
|
|
"grep-pcre2",
|
|
"grep-printer",
|
|
"grep-regex",
|
|
"grep-searcher",
|
|
"ignore",
|
|
]
|
|
|
|
[dependencies]
|
|
bstr = "0.1.2"
|
|
grep = { version = "0.2.4", path = "grep" }
|
|
ignore = { version = "0.4.7", path = "ignore" }
|
|
lazy_static = "1.1.0"
|
|
log = "0.4.5"
|
|
num_cpus = "1.8.0"
|
|
regex = "1.0.5"
|
|
serde_json = "1.0.23"
|
|
termcolor = "1.0.3"
|
|
|
|
[dependencies.clap]
|
|
version = "2.32.0"
|
|
default-features = false
|
|
features = ["suggestions"]
|
|
|
|
[target.'cfg(target_env = "musl")'.dependencies.jemallocator]
|
|
version = "0.3.0"
|
|
|
|
[build-dependencies]
|
|
lazy_static = "1.1.0"
|
|
|
|
[build-dependencies.clap]
|
|
version = "2.32.0"
|
|
default-features = false
|
|
features = ["suggestions"]
|
|
|
|
[dev-dependencies]
|
|
serde = "1.0.77"
|
|
serde_derive = "1.0.77"
|
|
|
|
[features]
|
|
simd-accel = ["grep/simd-accel"]
|
|
pcre2 = ["grep/pcre2"]
|
|
|
|
[profile.release]
|
|
debug = 1
|
|
|
|
[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 commited. Instead, to create a dpkg, either
|
|
# create a deployment/deb directory and copy the man page to it, or use the
|
|
# 'ci/build_deb.sh' 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/completions/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.
|
|
"""
|