./textproc/ripgrep, Line-oriented search tool

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 12.1.1, Package name: ripgrep-12.1.1, Maintainer: maya

ripgrep is a line-oriented search tool that recursively searches
your current directory for a regex pattern while respecting your
gitignore rules.

Required to build:
[pkgtools/cwrappers] [lang/rust]

Master sites:

SHA1: 3ade4204760f518bb05f95ccf1fa84551f3e0c16
RMD160: 019d9dae8fa39cf7974df1af34e3c17fdee954b7
Filesize: 250.506 KB

Version history: (Expand)

CVS history: (Expand)

   2020-10-17 15:48:54 by Maya Rashish | Files touched by this commit (2) | Package updated
Log message:
ripgrep: update to 12.1.1, fix pkglint warning.

(Note: we are not including the docs. Maybe we should...)

ripgrep 12.1.1 is a patch release that fixes a couple small bugs. In
particular, the ripgrep 12.1.0 release did not tag new releases for all of its
in-tree dependencies. As a result, ripgrep built dependencies from crates.io
would produce a different build than compiling ripgrep from source on the
12.1.0 tag. Namely, some crates like grep-cli had unreleased changes.

    BUG #1581:
    Corrects some egregious markup output in --help.
    BUG #1591:
    Mention the special $0 capture group in docs for the -r/--replace flag.
    BUG #1602:
    Fix failing test resulting from out-of-sync dependencies.

ripgrep 12.1.0 is a small minor version release that mostly includes bug fixes
and documentation improvements. This release also contains some important
notices for downstream packagers.

Notices for downstream ripgrep package maintainers:

    Fish shell completions will be removed in the ripgrep 13 release.
    See #1577
    for more details.
    ripgrep has switched from a2x to asciidoctor to generate the man page.
    If asciidoctor is not present, then ripgrep will currently fall back to
    a2x. Support for a2x will be dropped in the ripgrep 13 release.
    See #1544
    for more details.

Feature enhancements:

    FEATURE #1547:
    Support decompressing .Z files via uncompress.

Bug fixes:

    BUG #1252:
    Add a section on the --pre flag to the GUIDE.
    BUG #1339:
    Improve error message when a pattern with invalid UTF-8 is provided.
    BUG #1524:
    Note how to escape a $ when using --replace.
    BUG #1537:
    Fix match bug caused by inner literal optimization.
    BUG #1544:
    ripgrep now uses asciidoctor instead of a2x to generate its man page.
    BUG #1550:
    Substantially reduce peak memory usage when searching wide directories.
    BUG #1571:
    Add note about configuration files in --type-{add,clear} docs.
    BUG #1573:
    Fix incorrect --count-matches output when using look-around.

ripgrep 12.0.1 is a small patch release that includes a minor bug fix relating
to superfluous error messages when searching git repositories with sub-modules.
This was a regression introduced in the 12.0.0 release.

Bug fixes:

    BUG #1520:
    Don't emit spurious error messages in git repositories with submodules.

ripgrep 12 is a new major version release of ripgrep that contains many bug
fixes, several important performance improvements and a few minor new features.

In a near future release, I am hoping to add an
indexing feature
to ripgrep, which will dramatically speed up searching by building an index.
Feedback would very much be appreciated, especially on the user experience
which will be difficult to get right.

This release has no known breaking changes.


    The --no-pcre2-unicode flag is deprecated. Instead, use the --no-unicode
    flag, which applies to both the default regex engine and PCRE2. For now,
    --no-pcre2-unicode and --pcre2-unicode are aliases to --no-unicode
    and --unicode, respectively. The --[no-]pcre2-unicode flags may be
    removed in a future release.
    The --auto-hybrid-regex flag is deprecated. Instead, use the new --engine
    flag with the auto value.

Performance improvements:

    PERF #1087:
    ripgrep is smarter when detected literals are whitespace.
    PERF #1381:
    Directory traversal is sped up with speculative ignore-file existence checks.
    PERF cd8ec38a:
    Improve inner literal detection to cover more cases more effectively.
    e.g., +Sherlock Holmes + now has Sherlock Holmes extracted instead
    of .
    PERF 6a0e0147:
    Improve literal detection when the -w/--word-regexp flag is used.
    PERF ad97e9c9:
    Improve overall performance of the -w/--word-regexp flag.

Feature enhancements:

    Added or improved file type filtering for erb, diff, Gradle, HAML, Org,
    Postscript, Skim, Slim, Slime, RPM Spec files, Typoscript, xml.
    FEATURE #1370:
    Add --include-zero flag that shows files searched without matches.
    FEATURE #1390:
    Add --no-context-separator flag that always hides context separators.
    FEATURE #1414:
    Add --no-require-git flag to allow ripgrep to respect gitignores anywhere.
    FEATURE #1420:
    Add --no-ignore-exclude to disregard rules in .git/info/exclude files.
    FEATURE #1466:
    Add --no-ignore-files flag to disable all --ignore-file flags.
    FEATURE #1488:
    Add '--engine' flag for easier switching between regex engines.
    FEATURE 75cbe88f:
    Add --no-unicode flag. This works on all supported regex engines.

Bug fixes:

    BUG #1291:
    ripgrep now works in non-existent directories.
    BUG #1319:
    Fix match bug due to errant literal detection.
    BUG #1335:
    Fixes a performance bug when searching plain text files with very long lines.
    This was a serious performance regression in some cases.
    BUG #1344:
    Document usage of --type all.
    BUG #1389:
    Fixes a bug where ripgrep would panic when searching a symlinked directory.
    BUG #1439:
    Improve documentation for ripgrep's automatic stdin detection.
    BUG #1441:
    Remove CPU features from man page.
    BUG #1442,
    BUG #1478:
    Improve documentation of the -g/--glob flag.
    BUG #1445:
    ripgrep now respects ignore rules from .git/info/exclude in worktrees.
    BUG #1485:
    Fish shell completions from the release Debian package are now installed to
   2020-08-14 22:50:22 by Tobias Nygren | Files touched by this commit (7)
Log message:
cargo users: drop do-build target where redundant
   2020-08-14 13:05:00 by Tobias Nygren | Files touched by this commit (7)
Log message:
rust/cargo: replace "--frozen --locked" with "--offline" in \ 
various places

The intent of "--frozen --locked" was to not use the network, but the new
"--offline" option is better suited for this purpose.
It for example allows us to patch Cargo.toml if necessary without having
to regen checksums.
   2020-01-19 19:20:46 by Maya Rashish | Files touched by this commit (6)
Log message:
Rename EFFECTIVE_MAKE_JOBS -> _MAKE_JOBS_N, suggested by gdt.

I am under the impression we use _THING to mean "defined by the
implementation", which would be similar to the C meaning of __ prefix,
rather than "private to this file".
   2020-01-19 17:52:47 by Maya Rashish | Files touched by this commit (8)
Log message:
Make cargo packages respect MAKE_JOBS
   2019-12-03 17:34:29 by Min Sik Kim | Files touched by this commit (2) | Package updated
Log message:
textproc/ripgrep: Update to 11.0.2

Breaking changes since 0.10.0:

- ripgrep has tweaked its exit status codes to be more like GNU
  grep's. Namely, if a non-fatal error occurs during a search, then
  ripgrep will now always emit a 2 exit status code, regardless of
  whether a match is found or not.  Previously, ripgrep would only
  emit a 2 exit status code for a catastrophic error (e.g., regex
  syntax error). One exception to this is if ripgrep is run with
  -q/--quiet. In that case, if an error occurs and a match is found,
  then ripgrep will exit with a 0 exit status code.

- Supplying the -u/--unrestricted flag three times is now equivalent
  to supplying --no-ignore --hidden --binary. Previously, -uuu was
  equivalent to --no-ignore --hidden --text. The difference is that
  --binary disables binary file filtering without potentially dumping
  binary data into your terminal. That is, rg -uuu foo should now be
  equivalent to grep -r foo.

- The avx-accel feature of ripgrep has been removed since it is no
  longer necessary. All uses of AVX in ripgrep are now enabled
  automatically via runtime CPU feature detection. The simd-accel
  feature does remain available (only for enabling SIMD for
  transcoding), however, it does increase compilation times
  substantially at the moment.

See the release announcement for the complete list.

   2019-04-12 10:08:49 by Maya Rashish | Files touched by this commit (2) | Package updated
Log message:
ripgrep: update to 0.10.0

ripgrep 0.10.0:

This is a new minor version release of ripgrep that contains some major new
features, a huge number of bug fixes, and is the first release based on
libripgrep. The entirety of ripgrep's core search and printing code has been
rewritten and generalized so that anyone can make use of it.

Major new features include PCRE2 support, multi-line search and a JSON output


    The minimum version required to compile Rust has now changed to track the
    latest stable version of Rust. Patch releases will continue to compile with
    the same version of Rust as the previous patch release, but new minor
    versions will use the current stable version of the Rust compile as its
    minimum supported version.
    The match semantics of -w/--word-regexp have changed slightly. They used
    to be \b(?:<your pattern>)\b, but now it's
    (?:^|\W)(?:<your pattern>)(?:$|\W). This matches the behavior of GNU grep
    and is believed to be closer to the intended semantics of the flag. See
    #389 for more details.

Feature enhancements:

    FEATURE #162:
    libripgrep is now a thing. The primary crate is
    FEATURE #176:
    Add -U/--multiline flag that permits matching over multiple lines.
    FEATURE #188:
    Add -P/--pcre2 flag that gives support for look-around and backreferences.
    FEATURE #244:
    Add --json flag that prints results in a JSON Lines format.
    FEATURE #321:
    Add --one-file-system flag to skip directories on different file systems.
    FEATURE #404:
    Add --sort and --sortr flag for more sorting. Deprecate --sort-files.
    FEATURE #416:
    Add --crlf flag to permit $ to work with carriage returns on Windows.
    FEATURE #917:
    The --trim flag strips prefix whitespace from all lines printed.
    FEATURE #993:
    Add --null-data flag, which makes ripgrep use NUL as a line terminator.
    FEATURE #997:
    The --passthru flag now works with the --replace flag.
    FEATURE #1038-1:
    Add --line-buffered and --block-buffered for forcing a buffer strategy.
    FEATURE #1038-2:
    Add --pre-glob for filtering files through the --pre flag.

Bug fixes:

    BUG #2:
    Searching with non-zero context can now use memory maps if appropriate.
    BUG #200:
    ripgrep will now stop correctly when its output pipe is closed.
    BUG #389:
    The -w/--word-regexp flag now works more intuitively.
    BUG #643:
    Detection of readable stdin has improved on Windows.
    BUG #441,
    BUG #690,
    BUG #980:
    Matching empty lines now works correctly in several corner cases.
    BUG #764:
    Color escape sequences now coalesce, which reduces output size.
    BUG #842:
    Add man page to binary Debian package.
    BUG #922:
    ripgrep is now more robust with respect to memory maps failing.
    BUG #937:
    Color escape sequences are no longer emitted for empty matches.
    BUG #940:
    Context from the --passthru flag should not impact process exit status.
    BUG #984:
    Fixes bug in ignore crate where first path was always treated as a symlink.
    BUG #990:
    Read stderr asynchronously when running a process.
    BUG #1013:
    Add compile time and runtime CPU features to --version output.
    BUG #1028:
    Don't complete bare pattern after -f in zsh.

ripgrep 0.9.0:


    When --count and --only-matching are provided simultaneously, the
    behavior of ripgrep is as if the --count-matches flag was given. That is,
    the total number of matches is reported, where there may be multiple matches
    per line. Previously, the behavior of ripgrep was to report the total number
    of matching lines. (Note that this behavior diverges from the behavior of
    GNU grep.)
    Octal syntax is no longer supported. ripgrep previously accepted expressions
    like \1 as syntax for matching U+0001, but ripgrep will now report an
    error instead.
    The --line-number-width flag has been removed. Its functionality was not
    carefully considered with all ripgrep output formats.
    See #795 for more

Feature enhancements:

    Added or improved file type filtering for Android, Bazel, Fuschia, Haskell,
    Java and Puppet.
    FEATURE #411:
    Add a --stats flag, which emits aggregate statistics after search results.
    FEATURE #646:
    Add a --no-ignore-messages flag, which suppresses parse errors from reading
    .ignore and .gitignore files.
    FEATURE #702:
    Support \u{..} Unicode escape sequences.
    FEATURE #812:
    Add -b/--byte-offset flag that shows the byte offset of each matching line.
    FEATURE #814:
    Add --count-matches flag, which is like --count, but for each match.
    FEATURE #880:
    Add a --no-column flag, which disables column numbers in the output.
    FEATURE #898:
    Add support for lz4 when using the -z/--search-zip flag.
    FEATURE #924:
    termcolor has moved to its own repository:
    FEATURE #934:
    Add a new flag, --no-ignore-global, that permits disabling global
    FEATURE #967:
    Rename --maxdepth to --max-depth for consistency. Keep --maxdepth for
    backwards compatibility.
    FEATURE #978:
    Add a --pre option to filter inputs with an arbitrary program.
    FEATURE fca9709d:
    Improve zsh completion.

Bug fixes:

    BUG #135:
    Release portable binaries that conditionally use SSSE3, AVX2, etc., at
    BUG #268:
    Print descriptive error message when trying to use look-around or
    BUG #395:
    Show comprehensible error messages for regexes like \s*{.
    BUG #526:
    Support backslash escapes in globs.
    BUG #795:
    Fix problems with --line-number-width by removing it.
    BUG #832:
    Clarify usage instructions for -f/--file flag.
    BUG #835:
    Fix small performance regression while crawling very large directory trees.
    BUG #851:
    Fix -S/--smart-case detection once and for all.
    BUG #852:
    Be robust with respect to ENOMEM errors returned by mmap.
    BUG #853:
    Upgrade grep crate to regex-syntax 0.6.0.
    BUG #893:
    Improve support for git submodules.
    BUG #900:
    When no patterns are given, ripgrep should never match anything.
    BUG #907:
    ripgrep will now stop traversing after the first file when --quiet --files
    is used.
    BUG #918:
    Don't skip tar archives when -z/--search-zip is used.
    BUG #934:
    Don't respect gitignore files when searching outside git repositories.
    BUG #948:
    Use exit code 2 to indicate error, and use exit code 1 to indicate no
    BUG #951:
    Add stdin example to ripgrep usage documentation.
    BUG #955:
    Use buffered writing when not printing to a tty, which fixes a performance
    BUG #957:
    Improve the error message shown for --path separator / in some Windows
    BUG #964:
    Add a --no-fixed-strings flag to disable -F/--fixed-strings.
    BUG #988:
    Fix a bug in the ignore crate that prevented the use of explicit ignore
    files after disabling all other ignore rules.
    BUG #995:
    Respect $XDG_CONFIG_DIR/git/config for detecting core.excludesFile.
   2019-01-05 03:58:54 by Tobias Nygren | Files touched by this commit (1)
Log message:
ripgrep: use ${INSTALL_PROGRAM} instead of "cargo install"

This will make it respect pkgsrc strip(1) settings and also avoids
"cargo install" which can query the creates.io repo and break offline \