Andrew Gallant
f7ee914dd3
Add support for searching multiple patterns with -e.
...
Also, change -Q/--literal to -F/--fixed-strings because compatibility
with grep is probably better.
2016-09-17 16:55:58 -04:00
Andrew Gallant
0a63158a61
Fix error handling bug.
2016-09-17 15:17:48 -04:00
Andrew Gallant
6cb604f38f
0.1.3
2016-09-17 12:55:09 -04:00
Andrew Gallant
bfbbfbf979
fix windows build
...
Why isn't CI running on each push? It seems to only be running on tagged
commits.
2016-09-17 12:54:46 -04:00
Andrew Gallant
403ba5fdc8
Add Ubuntu 16.04 benchmark runs
2016-09-17 12:41:10 -04:00
Andrew Gallant
8f87a4e8ac
0.1.2
2016-09-17 11:36:11 -04:00
Andrew Gallant
d27d3e675f
bump grep
2016-09-17 11:34:27 -04:00
Andrew Gallant
bf5d873099
grep 0.1.1
2016-09-17 11:32:47 -04:00
Andrew Gallant
bc9d12c4c8
Improve ergonomics of benchsuite.
...
The runner now detects if commands exist and permits running incomplete
benchmarks.
Also, explicitly use Python 3 since that's what default Ubuntu 16.04 seems
to want.
2016-09-17 11:30:01 -04:00
Andrew Gallant
5a0c873f61
Fixing, polishing and adding benchmarks.
2016-09-16 21:02:46 -04:00
Andrew Gallant
65fec147d6
rename
2016-09-16 18:27:34 -04:00
Andrew Gallant
7fbf2f014c
Reorganize some files.
2016-09-16 18:22:35 -04:00
Andrew Gallant
d22a3ca3e5
Improve the "bad literal" error message.
...
Incidentally, this was done by using the Debug impl for `char` instead
of the Display impl. Cute.
Fixes #5 .
2016-09-16 18:12:00 -04:00
Andrew Gallant
e9ec52b7f9
Update walkdir
2016-09-16 17:56:44 -04:00
Andrew Gallant
0d14c74e63
Some minor performance tweaks.
...
This includes moving basename-only globs into separate regexes. The hope
is that if the regex processes less input, it will be faster.
2016-09-16 16:13:28 -04:00
Andrew Gallant
1c5884b2f9
try again...
2016-09-16 07:12:06 -04:00
Andrew Gallant
8203a80ac7
fix tests
2016-09-16 06:58:10 -04:00
Andrew Gallant
0e46171e3b
Rework glob sets.
...
We try to reduce the pressure on regexes and offload some of it to
Aho-Corasick or exact lookups.
2016-09-15 22:06:04 -04:00
Andrew Gallant
f5c85827ce
Don't traverse directory stack if we don't need to.
2016-09-15 12:40:28 -04:00
Andrew Gallant
7cefc55238
Remove .agignore from ignore file list.
2016-09-15 12:40:08 -04:00
Andrew Gallant
92c918ebd9
--no-ignore implies --no-ignore-parent
2016-09-14 14:33:37 -04:00
Andrew Gallant
c24f8fd50f
Replace crossbeam with deque.
...
deque appears faster.
2016-09-14 07:40:46 -04:00
Andrew Gallant
73272cf8a6
notice
2016-09-13 21:23:22 -04:00
Andrew Gallant
4212a8b9cb
0.1.1
2016-09-13 21:21:45 -04:00
Andrew Gallant
983c7fd6f9
We don't use thread_local any more, so remove it.
2016-09-13 21:21:36 -04:00
Andrew Gallant
7cd02e9b7e
update Cargo.toml description
2016-09-13 21:16:29 -04:00
Andrew Gallant
5fdfae2f15
add readme
2016-09-13 21:15:10 -04:00
Andrew Gallant
7057ee91de
update grep Cargo.toml
2016-09-13 21:13:33 -04:00
Andrew Gallant
fdca74148d
Stream results when feasible.
...
For example, when only a single file (or stdin) is being searched, then we
should be able to print directly to the terminal instead of intermediate
buffers. (The buffers are only necessary for parallelism.)
Closes #4 .
2016-09-13 21:11:46 -04:00
Andrew Gallant
f11d9fb922
Add a word benchmark.
...
Add ag to case insensitive benchmark.
2016-09-12 19:35:59 -04:00
Andrew Gallant
1115c23a4c
fix typos
2016-09-11 19:50:16 -04:00
Andrew Gallant
8c5eaa40b2
teaser
2016-09-11 19:27:50 -04:00
Andrew Gallant
3c05954c86
initial set of benchmarks
2016-09-11 19:06:16 -04:00
Andrew Gallant
cf3a33cea7
commit Cargo.lock
2016-09-11 19:06:05 -04:00
Andrew Gallant
8aa2ba3eb1
update gitignore
2016-09-11 19:05:53 -04:00
Andrew Gallant
466cd70a8e
More benchmarks for subtitle corpus.
2016-09-11 18:52:53 -04:00
Andrew Gallant
954fbeb1d8
Update regex.
2016-09-11 18:52:42 -04:00
Andrew Gallant
68fa50709e
Don't skip the first arg.
...
Docopt will do it for us.
2016-09-11 13:33:25 -04:00
Andrew Gallant
ab91e4b874
Don't panic when an argument is invalid UTF-8.
...
Suggest a workaround.
2016-09-11 13:27:08 -04:00
Andrew Gallant
2b943eda47
Make file type filtering a lot faster.
...
We do this by avoiding using a RegexSet (*sigh*). In particular, file
type matching has much simpler semantics than gitignore files, so we don't
actually need to care which file type matched. Therefore, we can get away
with a single regex with a giant alternation.
2016-09-11 13:26:53 -04:00
Andrew Gallant
37544c092f
We don't need regex-syntax directly in ripgrep.
2016-09-11 13:25:37 -04:00
Andrew Gallant
9bf7696ec8
Initial cut at a benchmark suite for CLI search tools.
2016-09-11 01:05:36 -04:00
Andrew Gallant
cb0f8fd2fa
Bump default thread count to 8.
2016-09-11 00:42:39 -04:00
Andrew Gallant
fa8112ec34
Add alternative compile strategy (in a comment).
2016-09-11 00:42:30 -04:00
Andrew Gallant
cf21b4a97e
Add doc.
2016-09-11 00:42:19 -04:00
Andrew Gallant
19615245cd
Make line counting much faster.
2016-09-10 01:35:44 -04:00
Andrew Gallant
98a48b44bc
Fix off-by-one bug in searcher.
2016-09-10 01:35:30 -04:00
Andrew Gallant
e3da726836
Rename search module to search_stream.
...
The name better reflects the difference between it and the search_buffer
module.
2016-09-10 00:08:42 -04:00
Andrew Gallant
5b36c86c15
Rejigger the atty detection stuff.
2016-09-10 00:05:20 -04:00
Andrew Gallant
76331e5fec
Fix test that relied on non-deterministic order of results.
2016-09-09 23:24:01 -04:00