grep-printer
An implementation of the grep crate's Sink trait that provides standard printing of search results, similar to grep itself.
0.3.1
8.8M downloads/mo
#3338 most downloaded on crates.io
BurntSushi/ripgrep
What this package is like to depend on
Last release 10 months ago
22 Oct 2025
Release timing varies
gaps range from 2 weeks to 1.6 years
Some releases are documented
notes for 5 of 14 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
14 releases · first in 2018
2 releases in the last 12 months
see the full history below
Release timeline
14 releases · Aug 2018 to Oct 2025Releases
latest 14-
0.3.122 Oct 2025Release notes
Open source →Bug fixes:
- BUG #242:
ripgrep didn't respect
--colors foo:nonecorrectly. Now it does.
- BUG #242:
ripgrep didn't respect
-
0.3.016 Oct 2025Release notes
Open source →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/--regexpflag can no longer accept a pattern starting with a-. There are two work-arounds:rg -- -fooandrg [-]fooorrg -e [-]foowill all search for the same-foopattern. 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/--fileflag that causes ripgrep to read patterns from a file. - FEATURE #51:
Add a
--colorsflag that enables one to customize the colors used in ripgrep's output. - FEATURE #138:
Add a
--files-without-matchflag 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=alwayswill emit colors regardless of the current environment. - BUG #189:
Show less content when running
rg -h. The full help content can be accessed withrg --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-messageswas used.
-
0.2.209 Sep 2024Release notes
Open source →Packaging updates:
ripgrepis now in homebrew-core.brew install ripgrepwill do the trick on a Mac.ripgrepis now in the Archlinux community repository.pacman -S ripgrepwill do the trick on Archlinux.- Support has been discontinued for i686-darwin.
- Glob matching has been moved out into its own crate:
globset.
Feature enhancements:
- Added or improved file type filtering for CMake, config, Jinja, Markdown, Spark.
- FEATURE #109: Add a --max-depth flag for directory traversal.
- FEATURE #124: Add -s/--case-sensitive flag. Overrides --smart-case.
- FEATURE #139:
The
ripgreprepo is now a Homebrew tap. This is useful for installing SIMD accelerated binaries, which aren't available in homebrew-core.
Bug fixes:
- BUG #87, BUG #127, BUG #131: Various issues related to glob matching.
- BUG #116: --quiet should stop search after first match.
- BUG #121: --color always should show colors, even when --vimgrep is used.
- BUG #122: Colorize file path at beginning of line.
- BUG #134: Processing a large ignore file (thousands of globs) was very slow.
- BUG #137: Always follow symlinks when given as an explicit argument.
- BUG #147: Clarify documentation for --replace.
-
0.2.128 Nov 2023Release notes
Open source →Feature enhancements:
- Added or improved file type filtering for Clojure and SystemVerilog.
- FEATURE #89: Add a --null flag that outputs a NUL byte after every file path.
Bug fixes:
- BUG #98: Fix a bug in single threaded mode when if opening a file failed, ripgrep quit instead of continuing the search.
- BUG #99: Fix another bug in single threaded mode where empty lines were being printed by mistake.
- BUG #105: Fix an off-by-one error with --column.
- BUG #106: Fix a bug where a whitespace only line in a gitignore file caused ripgrep to panic (i.e., crash).
-
0.2.026 Nov 2023Release notes
Open source →Feature enhancements:
- Added or improved file type filtering for VB, R, F#, Swift, Nim, JavaScript, TypeScript
- FEATURE #20: Adds a --no-filename flag.
- FEATURE #26: Adds --files-with-matches flag. Like --count, but only prints file paths and doesn't need to count every match.
- FEATURE #40:
Switch from using
.rgignoreto.ignore. Note that.rgignoreis still supported, but deprecated. - FEATURE #68: Add --no-ignore-vcs flag that ignores .gitignore but not .ignore.
- FEATURE #70: Add -S/--smart-case flag (but is disabled by default).
- FEATURE #80:
Add support for
{foo,bar}globs.
Many many bug fixes. Thanks every for reporting these and helping make
ripgrepbetter! (Note that I haven't captured every tracking issue here, some were closed as duplicates.)- BUG #8: Don't use an intermediate buffer when --threads=1. (Permits constant memory usage.)
- BUG #15: Improves the documentation for --type-add.
- BUG #16, BUG #49, BUG #50, BUG #65: Some gitignore globs were being treated as anchored when they weren't.
- BUG #18: --vimgrep reported incorrect column number.
- BUG #19: ripgrep was hanging waiting on stdin in some Windows terminals. Note that this introduced a new bug: #94.
- BUG #21:
Removes leading
./when printing file paths. - BUG #22:
Running
rg --help | echocausedrgto panic. - BUG #24: Clarify the central purpose of rg in its usage message.
- BUG #25: Anchored gitignore globs weren't applied in subdirectories correctly.
- BUG #30:
Globs like
foo/**should match contents offoo, but notfooitself. - BUG #35,
BUG #81:
When automatically detecting stdin, only read if it's a file or a fifo.
i.e., ignore stdin in
rg foo < /dev/null. - BUG #36: Don't automatically pick memory maps on MacOS. Ever.
- BUG #38: Trailing whitespace in gitignore wasn't being ignored.
- BUG #43: --glob didn't work with directories.
- BUG #46: Use one fewer worker thread than what is provided on CLI.
- BUG #47: --help/--version now work even if other options are set.
- BUG #55: ripgrep was refusing to search /proc/cpuinfo. Fixed by disabling memory maps for files with zero size.
- BUG #64: The first path given with --files set was ignored.
- BUG #67:
Sometimes whitelist globs like
!/dirweren't interpreted as anchored. - BUG #77: When -q/--quiet flag was passed, ripgrep kept searching even after a match was found.
- BUG #90: Permit whitelisting hidden files.
- BUG #93: ripgrep was extracting an erroneous inner literal from a repeated pattern.
-
0.1.705 Jan 2023Nothing published for this version
-
0.1.612 Jun 2021Nothing published for this version
-
0.1.509 May 2020Nothing published for this version
-
0.1.416 Mar 2020Nothing published for this version
-
0.1.326 Jun 2019Nothing published for this version
-
0.1.215 Apr 2019Nothing published for this version
-
0.1.107 Sep 2018Nothing published for this version
-
0.1.020 Aug 2018Nothing published for this version
-
0.0.108 Aug 2018Nothing published for this version