Easy to review? 29 patches? Are you kidding me?!
As noted in v1 (<[email protected]>;
https://public-inbox.org/git/[email protected]/)
these are all doc, test, refactoring etc. changes needed by the
subsequent "PCRE v2, PCRE v1 JIT, log -P & fixes" series.
Thanks a lot for the review everyone. This fixes all the issues
raised. Changes noted below, with names prefixed by the person who
raised the issue.
Ævar Arnfjörð Bjarmason (29):
Makefile & configure: reword inaccurate comment about PCRE
grep & rev-list doc: stop promising libpcre for --perl-regexp
test-lib: rename the LIBPCRE prerequisite to PCRE
No changes.
log: add exhaustive tests for pattern style options & config
Johannes: Now doesn't create a "(1|2)" tag, so should work on Windows
& beyond (wasn't needed, just created as a side-effect of test_commit)
Junio: Added comments for tricky basic/extended/perl
Junio: Moved all the 'test_have_prereq PCRE' test / test_cmp code
together, not apart as before.
grep: add a test asserting that --perl-regexp dies when !PCRE
grep: add a test for backreferences in PCRE patterns
No changes.
grep: change non-ASCII -i test to stop using --debug
Brandon: Removed stray leftover unused --debug
grep: add tests for --threads=N and grep.threads
Brandon: Amended commit message to clarify that this test doesn't need
a NO_PTHREADS prerequisite, and we actually get coverage out of
testing with --threads=N when not with threads, or at least it doesn't
harm anything.
grep: amend submodule recursion test for regex engine testing
Junio: Now "foo" -> "(1|2)" as the commit message claims, not ->
"(1|2)d".
grep: add tests for grep pattern types being passed to submodules
No changes.
grep: add a test helper function for less verbose -f \0 tests
Junio: "nul_match() {" -> "nul_match () {" & quote "$status" & don't
quote non-variable strings.
grep: prepare for testing binary regexes containing rx metacharacters
No changes.
grep: add tests to fix blind spots with \0 patterns
Junio: Also fixed quoted variable strings here as above.
perf: add a GIT_PERF_MAKE_COMMAND for when *_MAKE_OPTS won't do
perf: emit progress output when unpacking & building
No changes.
perf: add a performance comparison test of grep -G, -E and -P
All my multibyte performance tests were done with the string
'm(ú|u)ult.b(æ|y)te' which didn't match anything in the kernel, now
done with 'm(ú|u)lt.b(æ|y)te' instead.
I re-ran all the performance tests mentioned in the commit messages
where applicable.
perf: add a performance comparison of fixed-string grep
One test_cmp was run twice due to rebasing from the pcre1/pcre2 days
of this series. Fixed.
grep: catch a missing enum in switch statement
Stefan: Removed the comment about die(..BUG) & put the relevant detail
in the commit message instead.
grep: remove redundant regflags assignment under PCRE
grep: remove redundant `regflags &= ~REG_EXTENDED` assignments
No changes.
grep: factor test for \0 in grep patterns into a function
Brandon: Fix comment syntax creating the function, and move it to the
correct place now instead of later in the "move is_fixed()" commit.
grep: change the internal PCRE macro names to be PCRE1
grep: change internal *pcre* variable & function names to be *pcre1*
No changes.
grep: move is_fixed() earlier to avoid forward declaration
Brandon: Now just moves is_fixed() instead of is_fixed() & has_null()
test-lib: add a PTHREADS prerequisite
pack-objects & index-pack: add test for --threads warning
pack-objects: fix buggy warning about threads
No changes.
grep: given --threads with NO_PTHREADS=YesPlease, warn
Use Git standard comment syntax for TRANSLATORS comment.
grep: assert that threading is enabled when calling grep_{lock,unlock}
Documentation/git-grep.txt | 7 +-
Documentation/rev-list-options.txt | 8 +-
Makefile | 14 ++-
builtin/grep.c | 23 +++-
builtin/pack-objects.c | 4 +-
configure.ac | 12 ++-
grep.c | 108 ++++++++++---------
grep.h | 10 +-
t/README | 8 +-
t/perf/README | 19 +++-
t/perf/p7820-grep-engines.sh | 35 ++++++
t/perf/p7821-grep-engines-fixed.sh | 26 +++++
t/perf/run | 13 ++-
t/t4202-log.sh | 96 ++++++++++++++++-
t/t5300-pack-object.sh | 33 ++++++
t/t7008-grep-binary.sh | 135 +++++++++++++++++------
t/t7810-grep.sh | 81 +++++++++++---
t/t7812-grep-icase-non-ascii.sh | 29 ++---
t/t7813-grep-icase-iso.sh | 2 +-
t/t7814-grep-recurse-submodules.sh | 215 +++++++++++++++++++++++--------------
t/test-lib.sh | 3 +-
21 files changed, 646 insertions(+), 235 deletions(-)
create mode 100755 t/perf/p7820-grep-engines.sh
create mode 100755 t/perf/p7821-grep-engines-fixed.sh
--
2.11.0