From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>, "Jeff King" <peff@peff.net>,
"Jeffrey Walton" <noloader@gmail.com>,
"Michał Kiedrowicz" <michal.kiedrowicz@gmail.com>,
"J Smith" <dark.panda@gmail.com>,
"Victor Leschuk" <vleschuk@gmail.com>,
"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
"Fredrik Kuivinen" <frekui@gmail.com>,
"Brandon Williams" <bmwill@google.com>,
"Stefan Beller" <sbeller@google.com>,
"Johannes Schindelin" <johannes.schindelin@gmx.de>,
"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Subject: [PATCH v2 00/29] Easy to review grep & pre-PCRE changes
Date: Sat, 13 May 2017 23:14:40 +0000 [thread overview]
Message-ID: <20170513231509.7834-1-avarab@gmail.com> (raw)
Easy to review? 29 patches? Are you kidding me?!
As noted in v1 (<20170511091829.5634-1-avarab@gmail.com>;
https://public-inbox.org/git/20170511091829.5634-1-avarab@gmail.com/)
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
next reply other threads:[~2017-05-13 23:15 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-13 23:14 Ævar Arnfjörð Bjarmason [this message]
2017-05-13 23:14 ` [PATCH v2 01/29] Makefile & configure: reword inaccurate comment about PCRE Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 02/29] grep & rev-list doc: stop promising libpcre for --perl-regexp Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 03/29] test-lib: rename the LIBPCRE prerequisite to PCRE Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 04/29] log: add exhaustive tests for pattern style options & config Ævar Arnfjörð Bjarmason
2017-05-15 4:57 ` Junio C Hamano
2017-05-15 17:38 ` Ævar Arnfjörð Bjarmason
2017-05-16 0:50 ` Junio C Hamano
2017-05-13 23:14 ` [PATCH v2 05/29] grep: add a test asserting that --perl-regexp dies when !PCRE Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 06/29] grep: add a test for backreferences in PCRE patterns Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 07/29] grep: change non-ASCII -i test to stop using --debug Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 08/29] grep: add tests for --threads=N and grep.threads Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 09/29] grep: amend submodule recursion test for regex engine testing Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 10/29] grep: add tests for grep pattern types being passed to submodules Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 11/29] grep: add a test helper function for less verbose -f \0 tests Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 12/29] grep: prepare for testing binary regexes containing rx metacharacters Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 13/29] grep: add tests to fix blind spots with \0 patterns Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 14/29] perf: add a GIT_PERF_MAKE_COMMAND for when *_MAKE_OPTS won't do Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 15/29] perf: emit progress output when unpacking & building Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 16/29] perf: add a performance comparison test of grep -G, -E and -P Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 17/29] perf: add a performance comparison of fixed-string grep Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 18/29] grep: catch a missing enum in switch statement Ævar Arnfjörð Bjarmason
2017-05-15 5:50 ` Junio C Hamano
2017-05-15 17:39 ` Ævar Arnfjörð Bjarmason
2017-05-13 23:14 ` [PATCH v2 19/29] grep: remove redundant regflags assignment under PCRE Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 20/29] grep: remove redundant `regflags &= ~REG_EXTENDED` assignments Ævar Arnfjörð Bjarmason
2017-05-15 6:14 ` Junio C Hamano
2017-05-15 17:41 ` Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 21/29] grep: factor test for \0 in grep patterns into a function Ævar Arnfjörð Bjarmason
2017-05-15 6:24 ` Junio C Hamano
2017-05-15 18:07 ` Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 22/29] grep: change the internal PCRE macro names to be PCRE1 Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 23/29] grep: change internal *pcre* variable & function names to be *pcre1* Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 24/29] grep: move is_fixed() earlier to avoid forward declaration Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 25/29] test-lib: add a PTHREADS prerequisite Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 26/29] pack-objects & index-pack: add test for --threads warning Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 27/29] pack-objects: fix buggy warning about threads Ævar Arnfjörð Bjarmason
2017-05-15 8:59 ` Junio C Hamano
2017-05-15 17:16 ` Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 28/29] grep: given --threads with NO_PTHREADS=YesPlease, warn Ævar Arnfjörð Bjarmason
2017-05-13 23:15 ` [PATCH v2 29/29] grep: assert that threading is enabled when calling grep_{lock,unlock} Ævar Arnfjörð Bjarmason
2017-05-15 9:09 ` [PATCH v2 00/29] Easy to review grep & pre-PCRE changes Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170513231509.7834-1-avarab@gmail.com \
--to=avarab@gmail.com \
--cc=bmwill@google.com \
--cc=dark.panda@gmail.com \
--cc=frekui@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=johannes.schindelin@gmx.de \
--cc=michal.kiedrowicz@gmail.com \
--cc=noloader@gmail.com \
--cc=pclouds@gmail.com \
--cc=peff@peff.net \
--cc=sbeller@google.com \
--cc=vleschuk@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).