Re: What's cooking extra
- From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
- Date
- May 22, 2010, 21:24 UTC
- Message-ID
- <4BF84B9E.7060009@lsrfire.ath.cx>
- In-Reply-To
- <7vsk5o9d1f.fsf@alter.siamese.dyndns.org>
Am 19.05.2010 16:33, schrieb Junio C Hamano:
Show 5 quoted lines
> I am aware of the following topics, that are probably all worthy of > inclusion at some point, but am unclear in what status their discussions > are. I'd appreciate it if people can help me come up with a list of > topics that are fully discussed, and if patch submitters of these topics > can re-send the final "to apply" copy.
> * (Rene) grep on binary files
There was one helpful comment from Dmitry, which I addressed in a follow-up patch. No reply from Phil, the one who started the topic, though.
I'll send an updated round as replies to this message:
[PATCH 1/8] grep: add test script for binary file handling
Adds a simple test script documenting what git grep can do with binary files. New: tests for -L and -q.
[PATCH 2/8] grep: grep: refactor handling of binary mode options
Cleanup patch; unchanged.
[PATCH 3/8] grep: --count over binary [PATCH 4/8] grep: --name-only over binary
Correctness patches for handling of the options --count and --name-only in connection with binary files. The first one was reimplemented and the second one is new.
[PATCH 5/8] grep: use memmem() for fixed string search [PATCH 6/8] grep: continue case insensitive fixed string search after NUL chars
These two patches make git grep -F work on binary files. They have been rebased against the preceding changed patches but are unchanged otherwise.
[PATCH 7/8] grep: use REG_STARTEND for all matching if available
This make git grep work on binary files if the platform's regexec() supports the flag REG_STARTEND. Our own version in compat/ doesn't, unfortunately. In the first round it consisted of two patches, which have been squashed and rebased.
[PATCH 8/8] grep: support NUL chars in search strings for -F
New patch, adds support for NUL in patterns, but only for git grep -F (not -Fi). It's main value is the addition of tests to show the current limitations regarding searching for NULs.
builtin/grep.c | 8 +++- grep.c | 98 +++++++++++++++++++++++++++------------------ grep.h | 2 + t/t7008-grep-binary.sh | 102 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 169 insertions(+), 41 deletions(-)