Age | Commit message (Collapse) | Author |
|
|
|
|
|
Use `dyn` for trait objects and use `..=` for inclusive ranges.
|
|
In an effort to strip line terminators, we assumed their existence. But
a pattern file may not end with a line terminator, so we shouldn't
unconditionally strip them.
We fix this by moving to bstr's line handling, which does this for us
automatically.
|
|
|
|
|
|
This uses bstr in the unescaping logic. This lets us remove some platform
specific code, and also lets us remove a hacked UTF-8 decoder on raw
bytes.
|
|
Fixes #1099
|
|
We also increase the MSRV to 1.32, the current stable release, which sets
the stage for migrating to Rust 2018.
|
|
I don't think every change here is needed, but this ensures we're using
the latest version of every direct dependency.
|
|
|
|
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
|