[RFC/PATCH 4/4] t4203: consolidate test-repository setup

2013-07-10 Thread Eric Sunshine
of this seven-commit repository into a single repository-setup function. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- The code near the top of the file which creates two commits, and the code later which creates five commits have been consolidated into a single repository-setup function

Re: [RFC/PATCH 1/4] builtin: add git-check-mailmap command

2013-07-10 Thread Eric Sunshine
On Wed, Jul 10, 2013 at 10:31 PM, Duy Nguyen pclo...@gmail.com wrote: On Thu, Jul 11, 2013 at 2:03 AM, Eric Sunshine sunsh...@sunshineco.com wrote: +static const struct option check_mailmap_options[] = { + OPT_BOOLEAN(0, stdin, use_stdin, + N_(also read contacts from

Re: [RFC/PATCH 1/4] builtin: add git-check-mailmap command

2013-07-11 Thread Eric Sunshine
On Thu, Jul 11, 2013 at 2:45 AM, Antoine Pelisse apeli...@gmail.com wrote: On Wed, Jul 10, 2013 at 9:03 PM, Eric Sunshine sunsh...@sunshineco.com wrote: +static void check_mailmap(struct string_list *mailmap, const char *contact) +{ + const char *name, *mail; + size_t namelen

[PATCH v2 1/4] builtin: add git-check-mailmap command

2013-07-11 Thread Eric Sunshine
. Consequently, script authors need not re-implement .mailmap functionality manually, thus avoiding potential quirks and behavioral differences. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- .gitignore | 1 + Documentation/git-check-mailmap.txt| 55

[PATCH v2 3/4] t4203: test mailmap functionality directly rather than indirectly

2013-07-11 Thread Eric Sunshine
With the introduction of check-mailmap, it is now possible to check .mailmap functionality directly rather than indirectly as a side-effect of other commands (such as git-shortlog), therefore, do so. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4203-mailmap.sh | 133

[PATCH v2 2/4] t4203: test check-mailmap command invocation

2013-07-11 Thread Eric Sunshine
Test the command-line interface of check-mailmap. (Actual .mailmap functionality is already covered by existing tests.) Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4203-mailmap.sh | 50 ++ 1 file changed, 50 insertions(+) diff

[PATCH v2 4/4] t4203: consolidate test-repository setup

2013-07-11 Thread Eric Sunshine
of this seven-commit repository into a single setup function. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4203-mailmap.sh | 53 +++-- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/t/t4203-mailmap.sh b/t/t4203-mailmap.sh index

[PATCH v2 0/4] add git-check-mailmap command

2013-07-11 Thread Eric Sunshine
which outputs normalized contact. * Settle on stdout as argument to maybe_flush_or_die(). * Eliminate diff noise from patch 4/4. [1]: http://thread.gmane.org/gmane.comp.version-control.git/230068/ [2]: http://thread.gmane.org/gmane.comp.version-control.git/229533/ Eric Sunshine (4): builtin: add

Re: [PATCH v2 3/4] t4203: test mailmap functionality directly rather than indirectly

2013-07-11 Thread Eric Sunshine
On Thu, Jul 11, 2013 at 3:07 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: With the introduction of check-mailmap, it is now possible to check .mailmap functionality directly rather than indirectly as a side-effect of other commands (such as git

Re: [PATCH v2 3/4] t4203: test mailmap functionality directly rather than indirectly

2013-07-11 Thread Eric Sunshine
On Thu, Jul 11, 2013 at 8:55 PM, Jonathan Nieder jrnie...@gmail.com wrote: Eric Sunshine wrote: On Thu, Jul 11, 2013 at 3:07 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: With the introduction of check-mailmap, it is now possible to check .mailmap

Re: [PATCH v2 1/4] builtin: add git-check-mailmap command

2013-07-11 Thread Eric Sunshine
On Thu, Jul 11, 2013 at 3:04 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: +DESCRIPTION +--- + +For each ``Name $$email@address$$'' or ``$$email@address$$'' provided on +the command-line or standard input (when using `--stdin`), prints

Re: [PATCH v2 3/4] t4203: test mailmap functionality directly rather than indirectly

2013-07-12 Thread Eric Sunshine
On Fri, Jul 12, 2013 at 1:48 AM, Junio C Hamano gits...@pobox.com wrote: Jonathan Nieder jrnie...@gmail.com writes: My current thinking is no --- the patch has as a justification Now we can test these aspects of .mailmap handling directly with a low-level tool instead of using the tool most

Re: [PATCH v2 1/4] builtin: add git-check-mailmap command

2013-07-12 Thread Eric Sunshine
On Fri, Jul 12, 2013 at 1:47 AM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: For each contact information (either in the form of ``Name user@host'' or ...) in order to clarify that the two forms of input is what you call contact

Re: [PATCH v2 1/4] builtin: add git-check-mailmap command

2013-07-12 Thread Eric Sunshine
On Fri, Jul 12, 2013 at 2:34 AM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: ... Is it desirable to do so or should the user have more fine-grained control? (xargs -0 comes to mind when thinking of a null-termination input switch.) For the purposes

Re: [PATCH 0/4] Make check-{attr,ignore} -z consistent

2013-07-12 Thread Eric Sunshine
unambiguously for an input that requires -z. FWIW, applying to the entire series: Reviewed-by: Eric Sunshine sunsh...@sunshineco.com Unfortunately, git check-attr -z was broken and ignored the option on the output side. This is a backward-incompatible fix, so we may need to add a checkAttr.brokenZ

Re: [PATCH 4/4] add a testcase for checking case insensitivity of mailmap

2013-07-12 Thread Eric Sunshine
On Fri, Jul 12, 2013 at 5:38 PM, Junio C Hamano gits...@pobox.com wrote: From: Stefan Beller stefanbel...@googlemail.com Signed-off-by: Stefan Beller stefanbel...@googlemail.com Signed-off-by: Junio C Hamano gits...@pobox.com --- t/t4203-mailmap.sh | 33 + 1

Re: [PATCH 4/4] add a testcase for checking case insensitivity of mailmap

2013-07-12 Thread Eric Sunshine
On Fri, Jul 12, 2013 at 5:38 PM, Junio C Hamano gits...@pobox.com wrote: From: Stefan Beller stefanbel...@googlemail.com Signed-off-by: Stefan Beller stefanbel...@googlemail.com Signed-off-by: Junio C Hamano gits...@pobox.com --- t/t4203-mailmap.sh | 33 + 1

[PATCH] t4203: fix checks for email address remapping

2013-07-12 Thread Eric Sunshine
option instructing it to show email addresses, hence the tests do not actually prove that address remapping succeeded. Fix this by instructing git-shortlog to output email addresses as well. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- The very last git-shortlog complex test

[PATCH v3 1/2] builtin: add git-check-mailmap command

2013-07-12 Thread Eric Sunshine
. Consequently, script authors need not re-implement .mailmap functionality manually, thus avoiding potential quirks and behavioral differences. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- .gitignore | 1 + Documentation/git-check-mailmap.txt| 47

[PATCH v3 2/2] t4203: test check-mailmap command invocation

2013-07-12 Thread Eric Sunshine
Test the command-line interface of check-mailmap. (Actual .mailmap functionality is already covered by existing tests.) Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4203-mailmap.sh | 43 +++ 1 file changed, 43 insertions(+) diff --git a/t

[PATCH v3 0/2] add git-check-mailmap command

2013-07-12 Thread Eric Sunshine
://thread.gmane.org/gmane.comp.version-control.git/229533/ Eric Sunshine (2): builtin: add git-check-mailmap command t4203: test check-mailmap command invocation .gitignore | 1 + Documentation/git-check-mailmap.txt| 47 Makefile

Re: [PATCH] mailmap: Testing the single letter name case.

2013-07-13 Thread Eric Sunshine
On Sat, Jul 13, 2013 at 3:20 AM, Stefan Beller stefanbel...@googlemail.com wrote: This is a regression test for a66e77eab70a08938fdc2227b7ada0f0465c6991 Signed-off-by: Stefan Beller stefanbel...@googlemail.com --- t/t4203-mailmap.sh | 41 + 1 file

Re: [PATCH v2 46/46] parse_pathspec: accept :(icase)path syntax

2013-07-14 Thread Eric Sunshine
On Sun, Jul 14, 2013 at 4:36 AM, Nguyễn Thái Ngọc Duy pclo...@gmail.com wrote: diff --git a/Documentation/git.txt b/Documentation/git.txt index 3571a1b..546eea4 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -879,6 +883,10 @@ GIT_NOGLOB_PATHSPECS:: Setting this

Re: [PATCH] mailmap: Testing the single letter name case.

2013-07-14 Thread Eric Sunshine
On Sat, Jul 13, 2013 at 4:20 PM, Junio C Hamano gits...@pobox.com wrote: Stefan Beller stefanbel...@googlemail.com writes: Indeed the patch tests for both bugs unintentionally. I was puzzled because I do not think that is what is happening with the posted patch. The off-by-one fix seems to

[PATCH v2 1/9] t4203: demonstrate loss of single-character name in mailmap entry

2013-07-15 Thread Eric Sunshine
A bug in mailmap.c:parse_name_and_email() causes it to overlook the single-character name in A user@host and parse it only as user@host. Demonstrate this problem. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4203-mailmap.sh | 9 + 1 file changed, 9 insertions(+) diff

[PATCH v2 7/9] mailmap: debug: eliminate -Wformat field precision type warning

2013-07-15 Thread Eric Sunshine
The compiler complains that '*' in fprintf() format directive %.*s should have type int, but we pass size_t. Fix this. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mailmap.c b/mailmap.c index 62d998a

[PATCH v2 9/9] mailmap: style fixes

2013-07-15 Thread Eric Sunshine
From: Junio C Hamano gits...@pobox.com Wrap overlong lines and format the multi-line comments to match our coding style. Signed-off-by: Junio C Hamano gits...@pobox.com Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 42 +++--- 1 file

[PATCH v2 6/9] mailmap: debug: fix malformed fprintf() format directive

2013-07-15 Thread Eric Sunshine
Resolve segmentation fault due to size_t variable being consumed by '%s'. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mailmap.c b/mailmap.c index 0516354..62d998a 100644 --- a/mailmap.c +++ b/mailmap.c

[PATCH v2 8/9] mailmap: debug: avoid passing NULL to fprintf() '%s' directive

2013-07-15 Thread Eric Sunshine
pointer, and make it a bit more descriptive: (none) Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 15 +-- 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/mailmap.c b/mailmap.c index 4cc6e81..928e6e5 100644 --- a/mailmap.c +++ b/mailmap.c @@ -5,8 +5,10

[PATCH v2 2/9] mailmap: do not lose single-letter names

2013-07-15 Thread Eric Sunshine
to pick up the name, which makes the entry equivalent to a...@example.org old@x.z without the name. Signed-off-by: Junio C Hamano gits...@pobox.com Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 2 +- t/t4203-mailmap.sh | 2 +- 2 files changed, 2 insertions

[PATCH v2 4/9] mailmap: do not downcase mailmap entries

2013-07-15 Thread Eric Sunshine
match). Signed-off-by: Junio C Hamano gits...@pobox.com Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 20 t/t4203-mailmap.sh | 2 +- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/mailmap.c b/mailmap.c index 418081e..a7e92db

[PATCH v2 3/9] t4203: demonstrate loss of uppercase characters in canonical email

2013-07-15 Thread Eric Sunshine
The email addresses read from .mailmap are downcased before being inserted into the mailmap data structure, which undesirably loses information. It is impossible, for instance, to map first.last@host to First.Last@host. Demonstrate this problem. Signed-off-by: Eric Sunshine sunsh

[PATCH v2 5/9] mailmap: debug: fix out-of-order fprintf() arguments

2013-07-15 Thread Eric Sunshine
Resolve segmentation fault due to arguments passed in wrong order. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- mailmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mailmap.c b/mailmap.c index a7e92db..0516354 100644 --- a/mailmap.c +++ b/mailmap.c @@ -309,7

Re: [PATCH] t4203: fix checks for email address remapping

2013-07-15 Thread Eric Sunshine
On Sat, Jul 13, 2013 at 2:29 AM, Stefan Beller stefanbel...@googlemail.com wrote: On 07/13/2013 02:35 AM, Eric Sunshine wrote: Two tests in t4203-mailmap.sh set up the mapping b...@company.xx = b...@company.xy in an apparent attempt to check that email address remapping works as expected

Re: [PATCH v5 4/5] config: improve support for http.url.* settings

2013-07-15 Thread Eric Sunshine
On Mon, Jul 15, 2013 at 5:51 AM, Kyle J. McKay mack...@gmail.com wrote: Improve on the http.url.* url matching behavior by first normalizing the urls before they are compared. diff --git a/http.c b/http.c index 758e5b1..d04386e 100644 --- a/http.c +++ b/http.c @@ -169,6 +169,210 @@ static

[PATCH] git-log.txt: fix typesetting of example git-log -L invocation

2013-07-15 Thread Eric Sunshine
All surrounding examples are typeset as monospaced text. Follow suit. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/git-log.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt index 2ea79ba

Re: [PATCH v5 4/5] config: improve support for http.url.* settings

2013-07-16 Thread Eric Sunshine
On Tue, Jul 16, 2013 at 5:53 AM, Kyle J. McKay mack...@gmail.com wrote: On Jul 15, 2013, at 16:12, Eric Sunshine wrote: On Mon, Jul 15, 2013 at 5:51 AM, Kyle J. McKay mack...@gmail.com wrote: +static int append_normalized_escapes(struct strbuf *buf, +const

[PATCH 0/6] fix blame -L regression; add tests

2013-07-17 Thread Eric Sunshine
pace without being tied to git log -L. [1]: http://thread.gmane.org/gmane.comp.version-control.git/229755/ Eric Sunshine (6): line-range: fix blame -L X,-N regression t8001/t8002 (blame): modernize style t8001/t8002 (blame): add blame -L tests t8001/t8002 (blame): add blame -L :funcname

[PATCH 4/6] t8001/t8002 (blame): add blame -L :funcname tests

2013-07-17 Thread Eric Sunshine
git-blame inherited -L :funcname support when -L :funcname:file was implemented for git-log. Add tests. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 48 ++-- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git

[PATCH 2/6] t8001/t8002 (blame): modernize style

2013-07-17 Thread Eric Sunshine
In particular, - indent with tabs - cuddle test description and opening body quote with test_expect_foo - normalize test descriptions and case - remove whitepsace following redirection operator - use standardized filenames (such as actual, expected) Signed-off-by: Eric Sunshine sunsh

[PATCH 5/6] blame-options.txt: place each -L option variation on its own line

2013-07-17 Thread Eric Sunshine
since the comma separating them is typeset the same as the comma in start,end. Fix this by placing each variation on its own line. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/blame-options.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git

[PATCH 3/6] t8001/t8002 (blame): add blame -L tests

2013-07-17 Thread Eric Sunshine
With the exception of a couple corner case checks in t8003 (and some indirect tests in t4211 of -L parsing code shared by log -L), there is no systematic checking of blame -L. Add tests to check blame -L directly. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh

[PATCH 6/6] blame-options.txt: explain that -L start and end are optional

2013-07-17 Thread Eric Sunshine
The ability to omit either end of the -L range is a handy but undocumented shortcut, and is thus not easily discovered. Fix this shortcoming. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/blame-options.txt | 7 +-- 1 file changed, 5 insertions(+), 2 deletions

[PATCH 1/6] line-range: fix blame -L X,-N regression

2013-07-17 Thread Eric Sunshine
to add it to line-range.c along with other code relocated from blame.c. Thus, such a range is effectively treated as empty. Fix this regression. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- line-range.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/line-range.c b/line

Re: [PATCH v2] pull: require choice between rebase/merge on non-fast-forward pull

2013-07-18 Thread Eric Sunshine
On Thu, Jul 18, 2013 at 3:35 PM, Junio C Hamano gits...@pobox.com wrote: Add a safety valve to fail git pull that does not explicitly specify what branch from which repository to integrate your history with, when it is neither a fast-forward or already up-to-date, until/unless the user

Re: [PATCH v2] pull: require choice between rebase/merge on non-fast-forward pull

2013-07-19 Thread Eric Sunshine
On Fri, Jul 19, 2013 at 12:22 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: +When `git pull` that does not explicitly specify what branch from +which repository is to be integrated with your history on the +command line, recent Git will refuse

Re: [PATCH v2] pull: require choice between rebase/merge on non-fast-forward pull

2013-07-19 Thread Eric Sunshine
On Fri, Jul 19, 2013 at 6:20 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: Dropping the parenthetical comment might improve flow slightly: Without repository or branch on the command line, `git pull` needs to be told how to integrate

[PATCH v3 3/5] contrib: contacts: interpret committish akin to format-patch

2013-07-21 Thread Eric Sunshine
As a convenience, accept the same style since committish as accepted by git-format-patch. For example: % git contacts origin will consider commits in the current branch built atop 'origin', just as git format-patch origin will format commits built atop 'origin'. Signed-off-by: Eric Sunshine

[PATCH v3 5/5] contrib: contacts: add documentation

2013-07-21 Thread Eric Sunshine
Assuming that git-contacts may some day be promoted to a core git command, the documentation is written and formatted as if it already belongs in Documentation/ even though it presently resides in contrib/contacts. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- contrib/contacts/git

[PATCH v3 2/5] contrib: contacts: add ability to parse from committish

2013-07-21 Thread Eric Sunshine
For example: % git contacts R1..R2 Committishes and patch files can be mentioned in the same invocation: % git contacts R1..R2 extra/*.patch Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- contrib/contacts/git-contacts | 38 -- 1 file changed

[PATCH v3 1/5] contrib: add git-contacts helper

2013-07-21 Thread Eric Sunshine
' git-related patch series[1] written in Ruby. [1]: http://thread.gmane.org/gmane.comp.version-control.git/226065/ Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- contrib/contacts/git-contacts | 127 ++ 1 file changed, 127 insertions(+) create mode

[PATCH v3 4/5] contrib: contacts: add mailmap support

2013-07-21 Thread Eric Sunshine
email addresses in the computed list rather than potentially outdated ones recorded with commits. Apply git's mailmap functionality to the retrieved contacts in order to achieve this goal. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- contrib/contacts/git-contacts | 18

[PATCH v3 0/5] add git-contacts helper

2013-07-21 Thread Eric Sunshine
/226065/ [2]: http://thread.gmane.org/gmane.comp.version-control.git/229533/ [3]: http://git.661346.n2.nabble.com/PATCH-v3-0-2-add-git-check-mailmap-command-td7591791.html Eric Sunshine (5): contrib: add git-contacts helper contrib: contacts: add ability to parse from committish contrib

Re: What's cooking in git.git (Jul 2013, #07; Sun, 21)

2013-07-22 Thread Eric Sunshine
On Mon, Jul 22, 2013 at 2:57 AM, Junio C Hamano gits...@pobox.com wrote: * es/contacts (2013-07-21) 5 commits - contrib: contacts: add documentation - contrib: contacts: add mailmap support - contrib: contacts: interpret committish akin to format-patch - contrib: contacts: add ability to

Re: [PATCH/RFC] blame: accept multiple -L ranges

2013-07-22 Thread Eric Sunshine
On Tue, Jul 9, 2013 at 4:25 PM, Junio C Hamano gits...@pobox.com wrote: Michael Haggerty mhag...@alum.mit.edu writes: It would be more general to support follow the second match to /A/ *independent* of whether the first match is also followed. I think your proposal only allows the second to

[PATCH 1/5] range-set: fix sort_and_merge_range_set() corner case bug

2013-07-23 Thread Eric Sunshine
When handed an empty range_set (range_set.nr == 0), sort_and_merge_range_set() incorrectly sets range_set.nr to 1 at exit. Subsequent range_set functions then access the bogus range at element zero and crash or throw an assertion failure. Fix this bug. Signed-off-by: Eric Sunshine sunsh

[PATCH 4/5] t4211: demonstrate crash when first -L encountered is empty range

2013-07-23 Thread Eric Sunshine
Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4211-line-log.sh | 5 + 1 file changed, 5 insertions(+) diff --git a/t/t4211-line-log.sh b/t/t4211-line-log.sh index 12814c0..7616365 100755 --- a/t/t4211-line-log.sh +++ b/t/t4211-line-log.sh @@ -72,4 +72,9 @@ test_expect_success

[PATCH 2/5] t4211: demonstrate empty -L range crash

2013-07-23 Thread Eric Sunshine
Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4211-line-log.sh | 8 1 file changed, 8 insertions(+) diff --git a/t/t4211-line-log.sh b/t/t4211-line-log.sh index 7776f93..1db1edd 100755 --- a/t/t4211-line-log.sh +++ b/t/t4211-line-log.sh @@ -64,4 +64,12 @@ test_bad_opts -L

[PATCH 3/5] range-set: satisfy non-empty ranges invariant

2013-07-23 Thread Eric Sunshine
empty ranges. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- line-log.c | 2 ++ t/t4211-line-log.sh | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/line-log.c b/line-log.c index 5234879..6f94d56 100644 --- a/line-log.c +++ b/line-log.c @@ -115,6 +115,8

[PATCH 5/5] line-log: fix log -LN crash when N is last line of file

2013-07-23 Thread Eric Sunshine
, line_log_data_insert() assigns the empty range to a new line_log_data record without taking any action to ensure that the empty range is eventually folded out. Subsequent range-set functions crash or throw an assertion failure upon encountering such an anomaly. Fix this bug. Signed-off-by: Eric

Re: [PATCH 2/5] t4211: demonstrate empty -L range crash

2013-07-23 Thread Eric Sunshine
On Tue, Jul 23, 2013 at 3:03 PM, Junio C Hamano gits...@pobox.com wrote: SZEDER Gábor sze...@ira.uka.de writes: You could avoid the 'cat' here and patch in 4/5 by doing $(wc -l b.c). Correct. Thanks, I like that better. Unfortunately, what actually got queued on 'next', after applying this

Re: [PATCH v3 0/6]

2013-07-23 Thread Eric Sunshine
On Tue, Jul 23, 2013 at 5:26 PM, Philip Oakley philipoak...@iee.org wrote: From: Junio C Hamano gits...@pobox.com Sent: Tuesday, July 23, 2013 7:26 PM Jakub Narebski jna...@gmail.com writes: Junio C Hamano gitster at pobox.com writes: This is mostly unchanged since the previous round, except

Re: [PATCH 2/5] t4211: demonstrate empty -L range crash

2013-07-24 Thread Eric Sunshine
On Wed, Jul 24, 2013 at 11:10 AM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: On Tue, Jul 23, 2013 at 3:03 PM, Junio C Hamano gits...@pobox.com wrote: SZEDER Gábor sze...@ira.uka.de writes: You could avoid the 'cat' here and patch in 4/5 by doing $(wc

Re: [PATCH 0/5] range-set and line-log bug fixes

2013-07-25 Thread Eric Sunshine
On Tue, Jul 23, 2013 at 10:28 AM, Eric Sunshine sunsh...@sunshineco.com wrote: While implementing multiple -L support for git-blame, I encountered several bugs in range-set and line-log resulting in crashes. This series fixes those bugs. Eric Sunshine (5): range-set: fix

Re: [PATCH 0/5] range-set and line-log bug fixes

2013-07-25 Thread Eric Sunshine
On Thu, Jul 25, 2013 at 5:12 AM, Johannes Sixt j.s...@viscovery.net wrote: Am 7/25/2013 10:03, schrieb Eric Sunshine: The tests in this series identify real bugs in dealing with empty ranges, which the subsequent patches fix. The test are possible because one can specify an empty range via

Re: [PATCH] builtins: search builtin commands via binary search.

2013-07-26 Thread Eric Sunshine
On Fri, Jul 26, 2013 at 4:50 PM, Stefan Beller stefanbel...@googlemail.com wrote: There are currently 115 commands built into the git executable. Before this commit, it was iterated over these commands in a linear order, i.e. each command was checked. As it turns out the commands are already

Re: [PATCH] sha1_file: introduce close_one_pack() to close packs on fd pressure

2013-07-30 Thread Eric Sunshine
On Tue, Jul 30, 2013 at 12:05 AM, Brandon Casey bca...@nvidia.com wrote: When the number of open packs exceeds pack_max_fds, unuse_one_window() is called repeatedly to attempt to release the least-recently-used pack windows, which, as a side-effect, will also close a pack file after closing

[PATCH 04/11] blame: fix -L bounds checking bug

2013-07-31 Thread Eric Sunshine
to avoid regressing blame foo when foo is an empty file, the fix is slightly more complicated than changing '' to '='. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- builtin/blame.c | 4 ++-- t/annotate-tests.sh | 8 2 files changed, 6 insertions(+), 6 deletions(-) diff --git

[PATCH 03/11] t8001/t8002: blame: add empty file partial-line tests

2013-07-31 Thread Eric Sunshine
patch fixing an off-by-one bug which incorrectly accepts -LX where X is one past end-of-file. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 72 + 1 file changed, 72 insertions(+) diff --git a/t/annotate-tests.sh b

[PATCH 01/11] t8001/t8002: blame: decompose overly-large test

2013-07-31 Thread Eric Sunshine
Checking all bogus -L syntax forms in a single test makes it difficult to identify the offender when one case fails. Decompose this conglomerate test in order to check each bad syntax case separately. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 32

[PATCH 00/11] blame/log -L: additional tests and bug fixes

2013-07-31 Thread Eric Sunshine
-control.git/231035 Eric Sunshine (11): t8001/t8002: blame: decompose overly-large test t8001/t8002: blame: demonstrate -L bounds checking bug t8001/t8002: blame: add empty file partial-line tests blame: fix -L bounds checking bug t4211: log: demonstrate -L bounds checking bug t4211: retire

[PATCH 09/11] blame: reject empty ranges -LX,+0 and -LX,-0

2013-07-31 Thread Eric Sunshine
Empty ranges -LX,+0 and -LX,-0 are nonsensical in the context of blame yet they are accepted (in fact, both are interpreted as -LX,+2). Report them as invalid. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- line-range.c| 2 ++ t/annotate-tests.sh | 4 ++-- 2 files changed, 4

[PATCH 07/11] log: fix -L bounds checking bug

2013-07-31 Thread Eric Sunshine
When 12da1d1f added -L support to git-log, a broken bounds check was copied from git-blame -L which incorrectly allows -LX to extend one line past end of file without reporting an error. Instead, it generates an empty range. Fix this bug. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com

[PATCH 08/11] t8001/t8002: blame: demonstrate acceptance of bogus -LX,+0 and -LX,-0

2013-07-31 Thread Eric Sunshine
Empty ranges -LX,+0 and -LX,-0 are nonsensical in the context of blame yet they are accepted. They should be errors. Demonstrate this shortcoming. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 8 1 file changed, 8 insertions(+) diff --git a/t/annotate

[PATCH 11/11] blame: reject empty ranges -L,+0 and -L,-0

2013-07-31 Thread Eric Sunshine
Empty ranges -L,+0 and -L,-0 are nonsensical in the context of blame yet they are accepted (in fact, both are interpreted as -L1,Y where Y is end-of-file). Report them as invalid. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- line-range.c| 2 +- t/annotate-tests.sh | 4 ++-- 2

[PATCH 05/11] t4211: log: demonstrate -L bounds checking bug

2013-07-31 Thread Eric Sunshine
at and in the vicinity of end-of-file. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4211-line-log.sh | 30 ++ 1 file changed, 30 insertions(+) diff --git a/t/t4211-line-log.sh b/t/t4211-line-log.sh index 7665d67..f98275c 100755 --- a/t/t4211-line-log.sh +++ b/t/t4211-line

[PATCH 10/11] t8001/t8002: blame: demonstrate acceptance of bogus -L,+0 and -L,-0

2013-07-31 Thread Eric Sunshine
Empty ranges -L,+0 and -L,-0 are nonsensical in the context of blame yet they are accepted. They should be errors. Demonstrate this shortcoming. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 8 1 file changed, 8 insertions(+) diff --git a/t/annotate

[PATCH 02/11] t8001/t8002: blame: demonstrate -L bounds checking bug

2013-07-31 Thread Eric Sunshine
at and in the vicinity of end-of-file. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 22 ++ 1 file changed, 22 insertions(+) diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh index 3524eaf..02fbbf1 100644 --- a/t/annotate-tests.sh +++ b/t/annotate-tests.sh

[PATCH 06/11] t4211: retire soon-to-be unimplementable tests

2013-07-31 Thread Eric Sunshine
the command-line. APIs of both facilities are private (file static) so there likewise is no way to test their behaviors programmatically. Consequently, retire these two tests. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/t4211-line-log.sh | 13 - 1 file changed, 13

Re: [PATCHv2 3/9] log, format-patch: parsing uses OPT__QUIET

2013-07-31 Thread Eric Sunshine
On Wed, Jul 31, 2013 at 12:28 PM, Stefan Beller stefanbel...@googlemail.com wrote: This patch allows users to use the short form -q on log and format-patch, which was non possible before. It would make sense for documentation updates to accompany these changes. Signed-off-by: Stefan Beller

Re: [PATCHv2 6/9] hash-object: Replace stdin parsing OPT_BOOLEAN by OPT_COUNTUP

2013-07-31 Thread Eric Sunshine
On Wed, Jul 31, 2013 at 12:28 PM, Stefan Beller stefanbel...@googlemail.com wrote: This task emerged from b04ba2bb (parse-options: deprecate OPT_BOOLEAN, 2011-09-27). hash-object is a plumbing layer command, so better not change the input/output behavior for now. Unfortunately we have these

Re: [PATCHv2 8/9] checkout-index: Fix negations of even numbers of -n

2013-07-31 Thread Eric Sunshine
On Wed, Jul 31, 2013 at 12:28 PM, Stefan Beller stefanbel...@googlemail.com wrote: The --no-create was parsed with OPT_BOOLEAN, which has a counting up logic implemented. Since b04ba2bb (parse-options: deprecate OPT_BOOLEAN, 2011-09-27) the OPT_BOOLEAN is deprecated and is only a define:

Re: [PATCHv2 8/9] checkout-index: Fix negations of even numbers of -n

2013-07-31 Thread Eric Sunshine
On Wed, Jul 31, 2013 at 12:28 PM, Stefan Beller stefanbel...@googlemail.com wrote: The --no-create was parsed with OPT_BOOLEAN, which has a counting up logic implemented. Since b04ba2bb (parse-options: deprecate OPT_BOOLEAN, 2011-09-27) the OPT_BOOLEAN is deprecated and is only a define:

Re: [PATCH] t8001, t8002: fix blame -L :literal test on NetBSD

2013-08-05 Thread Eric Sunshine
hello.orig - sed -e /}/i\\ - Qputs(\goodbye\); hello.orig | tr Q \\t hello.c + sed -e /}/ {x; s/$/Qputs(\goodbye\);/; G;} hello.orig | + tr Q \\t hello.c Thanks. Acked-by: Eric Sunshine sunsh...@sunshineco.com GIT_AUTHOR_NAME=G GIT_AUTHOR_EMAIL=g...@test.git

Re: [PATCH 02/11] t8001/t8002: blame: demonstrate -L bounds checking bug

2013-08-05 Thread Eric Sunshine
On Mon, Aug 5, 2013 at 3:29 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: A bounds checking bug allows the X in -LX to extend one line past the end of file. For example, given a file with 5 lines, -L6 is accepted as valid. Demonstrate this problem

Re: [PATCH 02/11] t8001/t8002: blame: demonstrate -L bounds checking bug

2013-08-05 Thread Eric Sunshine
On Mon, Aug 5, 2013 at 3:35 PM, Eric Sunshine sunsh...@sunshineco.com wrote: On Mon, Aug 5, 2013 at 3:29 PM, Junio C Hamano gits...@pobox.com wrote: Eric Sunshine sunsh...@sunshineco.com writes: A bounds checking bug allows the X in -LX to extend one line past the end of file. For example

[PATCH v2 00/16] blame: accept multiple -L ranges

2013-08-06 Thread Eric Sunshine
.661346.n2.nabble.com/PATCH-0-6-fix-blame-L-regression-add-tests-tp7592174.html [5]: http://thread.gmane.org/gmane.comp.version-control.git/231035 [6]: http://thread.gmane.org/gmane.comp.version-control.git/231412 [7]: http://article.gmane.org/gmane.comp.version-control.git/229966 Eric Sunshine (16

[PATCH v2 01/16] git-log.txt: place each -L option variation on its own line

2013-08-06 Thread Eric Sunshine
confusing since the comma separating them is typeset the same as the comma in start,end. Fix this by placing each variation on its own line. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/git-log.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git

[PATCH v2 08/16] line-range: teach -L/RE/ to search relative to anchor point

2013-08-06 Thread Eric Sunshine
and log's -L options to accept a start point for -L/RE/ searches. Follow-up patches will upgrade blame and log to take advantage of this ability. [1]: http://thread.gmane.org/gmane.comp.version-control.git/229755/focus=229966 Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- builtin

[PATCH v2 12/16] line-range: teach -L^/RE/ to search from start of file

2013-08-06 Thread Eric Sunshine
. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/line-range-format.txt | 1 + line-range.c| 10 -- t/annotate-tests.sh | 21 + 3 files changed, 30 insertions(+), 2 deletions(-) diff --git a/Documentation/line

[PATCH v2 13/16] line-range: teach -L:RE to search from end of previous -L range

2013-08-06 Thread Eric Sunshine
to override the default relative search behavior. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/line-range-format.txt | 3 ++- line-range.c| 12 +++- t/annotate-tests.sh | 16 t/t4211-line-log.sh | 1

[PATCH v2 16/16] line-range: reject -L line numbers less than 1

2013-08-06 Thread Eric Sunshine
Since inception, git-blame -L has been documented as accepting 1-based line numbers. When handed a line number less than 1, -L's behavior is undocumented and undefined; it's also nonsensical and should be diagnosed as an error. Do so. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- line

[PATCH v2 02/16] line-range-format.txt: clarify -L:regex usage form

2013-08-06 Thread Eric Sunshine
be -L's lone argument. Clarify by discussing :regex at the same indentation level as start and end...: -Lstart,end -L:regex start and end can take one of these forms: * number * /regex/ * +offset or -offset If :regex is given in place of start and end ... Signed-off-by: Eric

[PATCH v2 06/16] t8001/t8002: blame: add tests of multiple -L options

2013-08-06 Thread Eric Sunshine
Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- t/annotate-tests.sh | 32 1 file changed, 32 insertions(+) diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh index ce5b8ed..77083d9 100644 --- a/t/annotate-tests.sh +++ b/t/annotate-tests.sh @@ -271,6

[PATCH v2 03/16] range-set: publish API for re-use by git-blame -L

2013-08-06 Thread Eric Sunshine
git-blame is slated to accept multiple -L ranges. git-log already accepts multiple -L's but its implementation of range-set, which organizes and normalizes -L ranges, is private. Publish the small subset of range-set API which is needed for git-blame multiple -L support. Signed-off-by: Eric

[PATCH v2 10/16] log: teach -L/RE/ to search from end of previous -L range

2013-08-06 Thread Eric Sunshine
to instead store each file's set of -L ranges verbatim, and then coalesce the ranges in a post-processing step. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- line-log.c | 15 --- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/line-log.c b/line-log.c index

[PATCH v2 14/16] line-range: teach -L^:RE to search from start of file

2013-08-06 Thread Eric Sunshine
The -L:RE option of blame/log searches from the end of the previous -L range, if any. Add new notation -L^:RE to override this behavior and search from start of file. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/line-range-format.txt | 1 + line-range.c

[PATCH v2 07/16] blame: document multiple -L support

2013-08-06 Thread Eric Sunshine
Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/blame-options.txt | 8 +--- Documentation/git-blame.txt | 10 +++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/Documentation/blame-options.txt b/Documentation/blame-options.txt index 489032c

[PATCH v2 11/16] line-range-format.txt: document -L/RE/ relative search

2013-08-06 Thread Eric Sunshine
Option -L/RE/ of blame/log now searches relative to the previous -L range, if any. Document this. Signed-off-by: Eric Sunshine sunsh...@sunshineco.com --- Documentation/line-range-format.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/line-range

[PATCH v2 05/16] blame: accept multiple -L ranges

2013-08-06 Thread Eric Sunshine
-blame to accept multiple -L ranges. Overlapping and out-of-order ranges are accepted. In this patch, the X in -LX,Y is absolute (for instance, /RE/ patterns search from line 1), and Y is relative to X. Follow-up patches provide more flexibility over how X is anchored. Signed-off-by: Eric Sunshine

<    1   2   3   4   5   6   7   8   9   10   >