Subject: CVS commit: pkgsrc/textproc/ripgrep
From: Maya Rashish
Date: 2019-04-12 10:08:49
Message id: 20190412080849.2110AFB16@cvs.NetBSD.org

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
format.

BREAKING CHANGES:

    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
    grep.
    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:

BREAKING CHANGES:

    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
    details.

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:
    https://github.com/BurntSushi/termcolor
    FEATURE #934:
    Add a new flag, --no-ignore-global, that permits disabling global
    gitignores.
    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
    runtime.
    BUG #268:
    Print descriptive error message when trying to use look-around or
    backreferences.
    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
    matches.
    BUG #951:
    Add stdin example to ripgrep usage documentation.
    BUG #955:
    Use buffered writing when not printing to a tty, which fixes a performance
    regression.
    BUG #957:
    Improve the error message shown for --path separator / in some Windows
    shells.
    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.

Files:
RevisionActionfile
1.5modifypkgsrc/textproc/ripgrep/Makefile
1.2modifypkgsrc/textproc/ripgrep/distinfo