Skip to content

Releases: BurntSushi/ripgrep

0.6.0 (2017-08-23)

24 Aug 00:06
0.6.0
8b6a3bc
Compare
Choose a tag to compare

This is a new minor version release of ripgrep that includes many bug fixes
and a few new features such as --iglob and -x/--line-regexp.

Note that this release increases the minimum supported Rust version from 1.12
to 1.17.

Feature enhancements:

  • Added or improved file type filtering for BitBake, C++, Cabal, cshtml, Julia,
    Make, msbuild, QMake, Yocto
  • FEATURE #163:
    Add an --iglob flag that is like -g/--glob, but matches globs
    case insensitively.
  • FEATURE #520:
    Add -x/--line-regexp flag, which requires a match to span an entire line.
  • FEATURE #551,
    FEATURE #554:
    ignore: add new matched_path_or_any_parents method.

Bug fixes:

  • BUG #342:
    Fix invisible text in some PowerShell environments by changing the
    default color scheme on Windows.
  • BUG #413:
    Release binaries on Unix are now strip'd by default. This decreases
    binary size by an order of magnitude.
  • BUG #483:
    When --quiet is passed, --files should be quiet.
  • BUG #488:
    When --vimgrep is passed, --with-filename should be enabled
    automatically.
  • BUG #493:
    Fix another bug in the implementation of the -o/--only-matching
    flag.
  • BUG #499:
    Permit certain flags to override others.
  • BUG #523:
    wincolor: Re-fetch Windows console on all calls.
  • BUG #523:
    --version now shows enabled compile-time features.
  • BUG #532,
    BUG #536,
    BUG #538,
    BUG #540,
    BUG #560,
    BUG #565:
    Improve zsh completion.
  • BUG #578:
    Enable SIMD for encoding_rs when appropriate.
  • BUG #580:
    Fix -w/--word-regexp in the presence of capturing groups.
  • BUG #581:
    Document that ripgrep may terminate unexpectedly when searching via
    memory maps (which can happen using default settings).

Friends of ripgrep:

I'd like to give a big Thank You to @okdana for their recent hard work on
ripgrep. This includes new features like --line-regexp, heroic effort on
zsh auto-completion and thinking through some thorny argv issues with me.

I'd also like to thank @ericbn for their work on improving ripgrep's argv
parsing by allowing some flags to override others.

Thanks @okdana and @ericbn!

0.5.2 (2017-05-11)

11 May 23:29
0.5.2
5a666b0
Compare
Choose a tag to compare

Feature enhancements:

  • Added or improved file type filtering for Nix.
  • FEATURE #362:
    Add --regex-size-limit and --dfa-size-limit flags.
  • FEATURE #444:
    Improve error messages for invalid globs.

Bug fixes:

  • BUG #442:
    Fix line wrapping in --help output.
  • BUG #451:
    Fix bug with duplicate output when using -o/--only-matching flag.

0.5.1 (2017-04-09)

09 Apr 13:54
Compare
Choose a tag to compare

Feature enhancements:

  • Added or improved file type filtering for vim.
  • FEATURE #34:
    Add a -o/--only-matching flag.
  • FEATURE #377:
    Column numbers can now be customized with a color. (The default is
    no color.)
  • FEATURE #419:
    Added -0 short flag option for --null.

Bug fixes:

0.5.0

13 Mar 03:02
Compare
Choose a tag to compare

This is a new minor version release of ripgrep that includes one minor breaking
change, bug fixes and several new features including support for text encodings
other than UTF-8.

A notable accomplishment with respect to Rust is that ripgrep proper now only
contains a single unsafe use (for accessing the contents of a memory map).

The breaking change is:

  • FEATURE #380:
    Line numbers are now hidden by default when ripgrep is printing to a tty
    and the only thing searched is stdin.

Feature enhancements:

  • Added or improved file type filtering for Ceylon, CSS, Elixir, HTML, log,
    SASS, SVG, Twig
  • FEATURE #1:
    Add support for additional text encodings, including automatic detection for
    UTF-16 via BOM sniffing. Explicit text encoding support with the
    -E/--encoding flag was also added for latin-1, GBK, EUC-JP
    and Shift_JIS, among others. The full list can be found here:
    https://encoding.spec.whatwg.org/#concept-encoding-get
  • FEATURE #129:
    Add a new -M/--max-columns flag that omits lines longer than the given
    number of bytes. (Disabled by default!)
  • FEATURE #369:
    A new flag, --max-filesize, was added for limiting searches to files with
    a maximum file size.

Bug fixes:

  • BUG #52,
    BUG #311:
    Tweak how binary files are detected and handled. (We are slightly less
    conservative and will no longer use memory without bound.)
  • BUG #326:
    When --files flag is given, we should never attempt to parse positional
    arguments as regexes.
  • BUG #327:
    Permit the --heading flag to override the --no-heading flag.
  • BUG #340:
    Clarify that the -u/--unrestricted flags are aliases.
  • BUG #343:
    Global git ignore config should use $HOME/.config/git/ignore and not
    $HOME/git/ignore.
  • BUG #345:
    Clarify docs for -g/--glob flag.
  • BUG #381:
    Add license files to each sub-crate.
  • BUG #383:
    Use latest version of clap (for argv parsing).
  • BUG #392:
    Fix translation of set globs (e.g., {foo,bar,quux}) to regexes.
  • BUG #401:
    Add PowerShell completion file to Windows release.
  • BUG #405:
    Fix bug when excluding absolute paths with the -g/--glob flag.

0.4.0

14 Jan 04:56
Compare
Choose a tag to compare

This is a new minor version release of ripgrep that includes a couple very
minor breaking changes, a few new features and lots of bug fixes.

This version of ripgrep upgrades its regex dependency from 0.1 to 0.2,
which includes a few minor syntax changes:

  • POSIX character classes now require double bracketing. Previously, the regex
    [:upper:] would parse as the upper POSIX character class. Now it parses
    as the character class containing the characters :upper:. The fix to this
    change is to use [[:upper:]] instead. Note that variants like
    [[:upper:][:blank:]] continue to work.
  • The character [ must always be escaped inside a character class.
  • The characters &, - and ~ must be escaped if any one of them are
    repeated consecutively. For example, [&], [\&], [\&\&], [&-&] are all
    equivalent while [&&] is illegal. (The motivation for this and the prior
    change is to provide a backwards compatible path for adding character class
    set notation.)

Feature enhancements:

  • Added or improved file type filtering for Crystal, Kotlin, Perl, PowerShell,
    Ruby, Swig
  • FEATURE #83:
    Type definitions can now include other type definitions.
  • FEATURE #243:
    BREAKING CHANGE: The --column flag now implies --line-number.
  • FEATURE #263:
    Add a new --sort-files flag.
  • FEATURE #275:
    Add a new --path-separator flag. Useful in cygwin.

Bug fixes:

  • BUG #182:
    Redux: use more portable ANSI color escape sequences when possible.
  • BUG #258:
    Fix bug that caused ripgrep's parallel iterator to spin and burn CPU.
  • BUG #262:
    Document how to install shell completion files.
  • BUG #268:
    Make lack of backreference support more explicit.
  • BUG #271:
    Remove ~ dependency on clap.
  • BUG #277:
    Fix cosmetic issue in globset crate docs.
  • BUG #279:
    ripgrep did not terminate when -q/--quiet was given.
  • BUG #281:
    BREAKING CHANGE: Completely remove ^C handling from ripgrep.
  • BUG #284:
    Make docs for -g/--glob clearer.
  • BUG #286:
    When stdout is redirected to a file, don't search that file.
  • BUG #287:
    Fix ZSH completions.
  • BUG #295:
    Remove superfluous memmap dependency in grep crate.
  • BUG #308:
    Improve docs for -r/--replace.
  • BUG #313:
    Update bytecount dep to latest version.
  • BUG #318:
    Fix invalid UTF-8 output bug in Windows consoles.

0.3.2

07 Dec 16:15
Compare
Choose a tag to compare

Feature enhancements:

  • Added or improved file type filtering for Less, Sass, stylus, Zsh

Bug fixes:

  • BUG #229:
    Make smart case slightly less conservative.
  • BUG #247:
    Clarify use of --heading/--no-heading.
  • BUG #251,
    BUG #264,
    BUG #267:
    Fix matching bug caused by literal optimizations.
  • BUG #256:
    Fix bug that caused rg foo and rg foo/ to have different behavior
    when foo was a symlink.
  • BUG #270:
    Fix bug where patterns starting with a - couldn't be used with the
    -e/--regexp flag. (This resolves a regression that was introduced in
    ripgrep 0.3.0.)

0.3.1

22 Nov 02:04
Compare
Choose a tag to compare

Bug fixes:

  • BUG #242:
    ripgrep didn't respect --colors foo:none correctly. Now it does.

0.3.0

20 Nov 23:10
Compare
Choose a tag to compare

This is a new minor version release of ripgrep that includes two breaking
changes with lots of bug fixes and some new features and performance
improvements. Notably, if you had a problem with colors or piping on Windows
before, then that should now be fixed in this release.

BREAKING CHANGES:

  • ripgrep now requires Rust 1.11 to compile. Previously, it could build on
    Rust 1.9. The cause of this was the move from
    Docopt to Clap
    for argument parsing.
  • The -e/--regexp flag can no longer accept a pattern starting with a -.
    There are two work-arounds: rg -- -foo and rg [-]foo or rg -e [-]foo
    will all search for the same -foo pattern. The cause of this was the move
    from Docopt to Clap
    for argument parsing.
    This may get fixed in the
    future.
    .

Performance improvements:

  • PERF #33:
    ripgrep now performs similar to GNU grep on small corpora.
  • PERF #136:
    ripgrep no longer slows down because of argument parsing when given a large
    argument list.

Feature enhancements:

  • Added or improved file type filtering for Elixir.
  • FEATURE #7:
    Add a -f/--file flag that causes ripgrep to read patterns from a file.
  • FEATURE #51:
    Add a --colors flag that enables one to customize the colors used in
    ripgrep's output.
  • FEATURE #138:
    Add a --files-without-match flag that shows only file paths that contain
    zero matches.
  • FEATURE #230:
    Add completion files to the release (Bash, Fish and PowerShell).

Bug fixes:

  • BUG #37:
    Use correct ANSI escape sequences when TERM=screen.linux.
  • BUG #94:
    ripgrep now detects stdin on Windows automatically.
  • BUG #117:
    Colors should now work correctly and automatically inside mintty.
  • BUG #182:
    Colors should now work within Emacs. In particular, --color=always will
    emit colors regardless of the current environment.
  • BUG #189:
    Show less content when running rg -h. The full help content can be
    accessed with rg --help.
  • BUG #210:
    Support non-UTF-8 file names on Unix platforms.
  • BUG #231:
    Switch from block buffering to line buffering.
  • BUG #241:
    Some error messages weren't suppressed when --no-messages was used.

0.2.9

10 Nov 01:46
Compare
Choose a tag to compare
0.2.9

0.2.8

06 Nov 21:25
Compare
Choose a tag to compare
0.2.8