summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-09-04changelog: assign feature idgrep-cli-0.1.0Andrew Gallant
2018-09-04windows: fix unused warnings on WindowsAndrew Gallant
2018-09-04ripgrep: add --pre-glob flagAndrew Gallant
The --pre-glob flag is like the --glob flag, except it applies to filtering files through the preprocessor instead of for search. This makes it possible to apply the preprocessor to only a small subset of files, which can greatly reduce the process overhead of using a preprocessor when searching large directories.
2018-09-04ripgrep: add --line-buffered and --block-bufferedAndrew Gallant
These flags provide granular control over ripgrep's buffering strategy. The --line-buffered flag can be genuinely useful in certain types of shell pipelines. The --block-buffered flag has a murkier use case, but we add it for completeness.
2018-09-04grep-cli: introduce new grep-cli crateAndrew Gallant
This commit moves a lot of "utility" code from ripgrep core into grep-cli. Any one of these things might not be worth creating a new crate, but combining everything together results in a fair number of a convenience routines that make up a decent sized crate. There is potentially more we could move into the crate, but much of what remains in ripgrep core is almost entirely dealing with the number of flags we support. In the course of doing moving things to the grep-cli crate, we clean up a lot of gunk and improve failure modes in a number of cases. In particular, we've fixed a bug where other processes could deadlock if they write too much to stderr. Fixes #990
2018-09-03ignore/types: add pascal typehelloer
PR #1036
2018-08-31doc: fix typosJakub Wilk
2018-08-30deps: update other cratesAndrew Gallant
2018-08-30deps: update termcolor for perf tweaksAndrew Gallant
2018-08-29changelog: fix typoAndrew Gallant
2018-08-29changelog: updateAndrew Gallant
This brings the changelog up to date with HEAD and rewords a few things.
2018-08-28ignore: add into_path for DirEntry (#1031)Aaron Power
This commit adds ignore::DirEntry::into_path to match the corresponding method on walkdir::DirEntry.
2018-08-27doc: clarify and fix typoAndrew Gallant
Clarify that --byte-offset may be wrong if the source isn't being read directly. Also tweak the README a bit. And remove a damned Oxford comma.
2018-08-27ripgrep: use 'ignore' for skipping stdoutAndrew Gallant
This removes ripgrep-specific code for filtering files that correspond to stdout and instead uses the 'ignore' crate's functionality for doing the same.
2018-08-27ignore: add 'stdout' skipping to the walkerAndrew Gallant
This commit adds a new 'skip_stdout' option to the directory walker. When enabled, it will skip yielding any directory entries that are believed to correspond to stdout for the current process. This is useful for filtering out 'results' in a command like 'grep -r foo > results' in order to avoid an unbounded feedback mechanism.
2018-08-27complete: don't complete bare pattern after -fdana
2018-08-26ripgrep: add --sort and --sortr flagsAndrew Gallant
These flags each accept one of five choices: none, path, modified, accessed or created. The value indicates how the results are sorted. For --sort, results are sorted in ascending order where as for --sortr, results are sorted in descending order. Closes #404
2018-08-26ignore: add sort_by_file_path builder methodAndrew Gallant
This permits callers to sort entries by their full file path, which makes it easy to query for various file statistics. It would have been better to provide a comparator on DirEntry itself, similar to how walkdir does it, but this seems to require quite a bit of work to make the types work out, assuming we want to continue to use walkdir's sorting support (we do).
2018-08-26ignore: add 'same_file_system' optionAndrew Gallant
This commit adds a 'same_file_system' option to the walk builder. For single threaded walking, it defers to the walkdir crate, which has the same option. The bulk of this commit implements this flag for the parallel walker. We add one very feeble test for this. The parallel walker is now officially a complete mess. Closes #321
2018-08-26deps: more updatesAndrew Gallant
2018-08-25ripgrep: use winapi-util for stdin_is_readableAndrew Gallant
2018-08-25deps: update various depsAndrew Gallant
This includes a new crate, winapi-util, that is now used in wincolor, walkdir and same-file.
2018-08-23changelog: fix typoTim Kilbourn
Fuchsia is a pain to spell. PR #1026
2018-08-23doc: clarify use of SIMD featuresAndrew Gallant
You need a nightly compiler. Ref #188
2018-08-23deps: update walkdir minimum versionAndrew Gallant
We'll want to be using the new `same_file_system` option soon.
2018-08-22deps: update dependenciesAndrew Gallant
This includes an update to walkdir 2.2.2, which includes a `same_file_system` option.
2018-08-21deps: update clapAndrew Gallant
Update clap to the latest version. Also, drop the ansi_term dependency by disabling color output in clap's error messages.
2018-08-21deps: various patch upgradesAndrew Gallant
2018-08-21ignore: fix false positive in path_is_symlinkAndrew Gallant
This commit fixes a bug where the first path always reported itself as as symlink via `path_is_symlink`. Part of this fix includes updating walkdir to 2.2.1, which also includes a corresponding bug fix. Fixes #984
2018-08-21release: better support for binary Debian packageAndrew Gallant
This commit beefs up the package metadata used by the 'cargo deb' tool to produce a binary dpkg. In particular, we now include ripgrep's man page. This commit includes a new script, 'ci/build_deb.sh', which will handle the build process for a dpkg, which has become a bit more nuanced than just running 'cargo deb'. We don't (yet) run this script in CI. Fixes #842
2018-08-21doc: update ripgrep's descriptionAndrew Gallant
This now mentions PCRE2 support.
2018-08-21grep-printer: fix bug in printing truncated linesAndrew Gallant
When emitting color, the printer wasn't checking whether the line exceeded the maximum allowed length.
2018-08-21tests: touch up tests on WindowsAndrew Gallant
This fixes warnings and adds an additional invalid UTF-8 test that will run on Windows.
2018-08-21ripgrep: remove workaround for std bugAndrew Gallant
This commit undoes a work-around for a bug in Rust's standard library that prevented correct file type detection on Windows in OneDrive directories. We remove the work-around because we are moving to a latest-stable Rust version policy, which has included this fix for a while now. ref #705, https://github.com/rust-lang/rust/issues/46484
2018-08-21ignore: clarify docs for DirEntry::errorAndrew Gallant
Fixes #953
2018-08-21ripgrep: move minimum version to Rust stableAndrew Gallant
This also updates some code to make use of our more liberal versioning requirement, including the use of crossbeam-channel instead of the MsQueue from the older an unmaintained crossbeam 0.3. This does regrettably add a sizable number of dependencies, however, compile times seem mostly unaffected. Closes #1019
2018-08-21ripgrep: make --no-pcre2-unicode the canonical flagAndrew Gallant
Previously, we used --pcre2-unicode as the canonical flag despite the fact that it is enabled by default, which is inconsistent with how we handle other similar flags. The reason why --pcre2-unicode was made the canonical flag was to make it easier to discover since it would be sorted near the --pcre2 flag. To solve that problem, we simply start a convention that lists related flags in the docs. Fixes #1022
2018-08-20doc: fix typoAndrew Gallant
2018-08-20doc: caveatsAndrew Gallant
2018-08-20ripgrep: small cleanupsgrep-search-0.1.0grep-regex-0.1.0grep-printer-0.1.0grep-pcre2-0.1.0grep-matcher-0.1.0grep-0.2.0Andrew Gallant
2018-08-20doc: add section on PCRE2 performanceAndrew Gallant
2018-08-20deps: update other dependencies to latestAndrew Gallant
2018-08-20deps: update libripgrep crate versionsAndrew Gallant
This prepares them for an initial 0.1.0 release.
2018-08-20ignore/types: add .mako and .mao for Mako templatesAndy Freeland
I've personally never seen `.mao`, but GitHub includes it in Linguist: https://github.com/github/linguist/blob/4f11062304ae28b09a9b90c4536a92a27e142dcb/lib/linguist/languages.yml#L2702-L2709
2018-08-20complete: add completion reference guidedana
2018-08-20ripgrep: add --no-multiline-dotalldana
2018-08-20ripgrep: fix typos in option descriptionsdana
2018-08-20complete: update wording, exclusion, &c.dana
2018-08-20test_complete: match certain long options in description bodiesdana
2018-08-20changelog: massive update for libripgrepAndrew Gallant
This commit updates the CHANGELOG to reflect all the work done to make libripgrep a reality. * Closes #162 (libripgrep) * Closes #176 (multiline search) * Closes #188 (opt-in PCRE2 support) * Closes #244 (JSON output) * Closes #416 (Windows CRLF support) * Closes #917 (trim prefix whitespace) * Closes #993 (add --null-data flag) * Closes #997 (--passthru works with --replace) * Fixes #2 (memory maps and context handling work) * Fixes #200 (ripgrep stops when pipe is closed) * Fixes #389 (more intuitive `-w/--word-regexp`) * Fixes #643 (detection of stdin on Windows is better) * Fixes #441, Fixes #690, Fixes #980 (empty matching lines are weird) * Fixes #764 (coalesce color escapes) * Fixes #922 (memory maps failing is no big deal) * Fixes #937 (color escapes no longer used for empty matches) * Fixes #940 (--passthru does not impact exit status) * Fixes #1013 (show runtime CPU features in --version output)