mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2024-12-02 02:56:32 +02:00
e9abbc1a02
This feature causes nothing but problems and is frequently broken. The only optimization it was enabling were SIMD optimizations for transcoding. In particular, for UTF-16 transcoding. This is performed by the [`encoding_rs`](https://github.com/hsivonen/encoding_rs) crate, which specifically uses unstable portable SIMD APIs instead of the stable non-portable SIMD APIs. SIMD optimizations that apply to search have long been making use of stable APIs, and are automatically enabled when your target supports them. This is, IMO, the correct user experience and one that `encoding_rs` refuses to support. I'm done dealing with it, so transcoding will only use scalar code until the SIMD optimizations in `encoding_rs` work on stable. (This doesn't mean that `encoding_rs` has to change. This could also be fixed by stabilizing `std::simd`.) Fixes #2748
121 lines
3.3 KiB
TOML
121 lines
3.3 KiB
TOML
[package]
|
|
name = "ripgrep"
|
|
version = "14.1.0" #:version
|
|
authors = ["Andrew Gallant <jamslam@gmail.com>"]
|
|
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.
|
|
"""
|