git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Jeff King <peff@peff.net>
Cc: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
	git@vger.kernel.org, "Johannes Sixt" <j6t@kdbg.org>,
	"Jonathan Nieder" <jrnieder@gmail.com>,
	"Philippe Blain" <levraiphilippeblain@gmail.com>,
	"Adam Spiers" <git@adamspiers.org>,
	"Eric Sunshine" <sunshine@sunshineco.com>,
	"Chris Torek" <chris.torek@gmail.com>
Subject: Re: [PATCH v4 05/10] userdiff: add and use for_each_userdiff_driver()
Date: Wed, 24 Mar 2021 12:57:15 -0700	[thread overview]
Message-ID: <xmqqsg4kxr38.fsf@gitster.g> (raw)
In-Reply-To: <YFuPMMMYicFK6A/S@coredump.intra.peff.net> (Jeff King's message of "Wed, 24 Mar 2021 15:12:48 -0400")

Jeff King <peff@peff.net> writes:

> Our callback function does _one_ type of selection (based on a "type"
> parameter), but not another (based on the name). That feels
> inconsistent, but is also the reason we have this awkward struct.

I wrote a very similar review but did not send it out, as I couldn't
pinpoint where the awkwardness come from exactly.

> Part
> of my confusion is the name: this is not something to be generically
> used with for_each_userdiff_driver(), but rather a type unique to
> find_by_namelen() to be passed through the opaque void pointer.
>
> So "struct find_by_namelen_data" would have been a lot more
> enlightening.

Yes.  The callback parameter being "void *" is the API, and it is
just this user that uses this particular structure.

And while "type" could also be made a part of this structure and
have the API always iterate over all entries regardless of "type",
i.e. the callback function could be the one responsible for finding
the entries in the table for one particular type, it is understandable
that potential callers can be helped by having the pre-filtering
based on the "type" thing on the API side.

>> +	if (!strncmp(driver->name, cb_data->k, cb_data->len) &&
>> +	    !driver->name[cb_data->len]) {
>> +		cb_data->driver = driver;
>> +		return -1; /* found it! */
>>  	}
>
> This "return -1" took me a while to grok, and the comment didn't help
> all that much. The point is to stop traversing the list, but "-1" to me
> signals error. I think returning "1" might be a bit more idiomatic, but
> also a comment that says "tell the caller to stop iterating" would have
> been more clear.

And the fact that it becomes the return value of "for_each_()" iterator
does not quite help to use a negative value, implying there was some
error condition X-<.

> Perhaps it would make more sense as:
>
>   USERDIFF_DRIVER_TYPE_BUILTIN = 1<<0,
>   USERDIFF_DRIVER_TYPE_CUSTOM = 1<<0,
>   USERDIFF_DRIVER_TYPE_ALL = USERDIFF_DRIVER_TYPE_BUILTIN | USERDIFF_DRIVER_TYPE_CUSTOM
>
> Or the one caller who wants "ALL" could even do the OR themselves.

Great minds think alike ;-)

> I do kind of wonder if there's much value in having a single function
> with a type field at all, though, given that there's no overlap in the
> implementation. Would separate "for_each_custom" and "for_each_builtin"
> functions make sense? And then the existing caller would just call them
> sequentially.

Or a single for_each_driver() that gives <name, length, type> tuple
to the callback function, iterating over all drivers regardless of
the type.


  reply	other threads:[~2021-03-24 19:58 UTC|newest]

Thread overview: 192+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-13 19:24 [PATCH] userdiff: add support for Emacs Lisp Adam Spiers
2021-02-14  1:41 ` Ævar Arnfjörð Bjarmason
2021-02-14  8:12   ` Johannes Sixt
2021-02-14 11:10     ` Johannes Sixt
2021-02-14 18:25     ` Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 00/20] userdiff: refactor + test + doc + misc improvements Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 00/27] " Ævar Arnfjörð Bjarmason
2021-02-15 15:50           ` [PATCH 0/2] diff: do not display hunk context under -W Ævar Arnfjörð Bjarmason
2021-02-15 15:50           ` [PATCH 1/2] " Ævar Arnfjörð Bjarmason
2021-02-15 18:47             ` René Scharfe.
2021-02-15 19:24               ` Ævar Arnfjörð Bjarmason
2021-02-15 21:17                 ` René Scharfe.
2021-02-16  1:30             ` Junio C Hamano
2021-02-16  1:37               ` Junio C Hamano
2021-02-16  7:20               ` Johannes Sixt
2021-02-16 17:51                 ` Junio C Hamano
2021-02-15 15:50           ` [PATCH 2/2] diff: test and document -W interaction with -U<n> Ævar Arnfjörð Bjarmason
2021-02-16  7:26             ` Johannes Sixt
2021-02-15 17:45           ` [PATCH v2 00/27] userdiff: refactor + test + doc + misc improvements Eric Sunshine
2021-02-15 20:03           ` Johannes Sixt
2021-02-24 19:50           ` [PATCH v3 00/35] 20210215154427.32693-1-avarab@gmail.com Ævar Arnfjörð Bjarmason
2021-02-27  7:47             ` Johannes Sixt
2021-02-28 11:04               ` Johannes Sixt
2021-02-28 16:07                 ` Ævar Arnfjörð Bjarmason
2021-03-01  7:10                   ` Johannes Sixt
2021-03-24  1:48             ` [PATCH v4 00/10] userdiff: refactor + test improvements Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 01/10] userdiff: refactor away the parse_bool() function Ævar Arnfjörð Bjarmason
2021-03-24 18:47                 ` Jeff King
2021-03-24  1:48               ` [PATCH v4 02/10] userdiff style: re-order drivers in alphabetical order Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 03/10] userdiff style: declare patterns with consistent style Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 04/10] userdiff style: normalize pascal regex declaration Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 05/10] userdiff: add and use for_each_userdiff_driver() Ævar Arnfjörð Bjarmason
2021-03-24  4:50                 ` Junio C Hamano
2021-03-24 19:12                 ` Jeff King
2021-03-24 19:57                   ` Junio C Hamano [this message]
2021-03-24 20:43                     ` Jeff King
2021-03-24 23:05                   ` Ævar Arnfjörð Bjarmason
2021-03-25  0:33                     ` Jeff King
2021-03-25  1:26                       ` Ævar Arnfjörð Bjarmason
2021-03-26  3:27                         ` Jeff King
2021-04-09 19:44                           ` Ævar Arnfjörð Bjarmason
2021-04-09 20:11                             ` Jeff King
2021-04-09 22:37                               ` Junio C Hamano
2021-04-10 12:30                                 ` Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 06/10] userdiff tests: explicitly test "default" pattern Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 07/10] userdiff tests: list builtin drivers via test-tool Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 08/10] userdiff: remove support for "broken" tests Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 09/10] blame tests: don't rely on t/t4018/ directory Ævar Arnfjörð Bjarmason
2021-03-24  1:48               ` [PATCH v4 10/10] blame tests: simplify userdiff driver test Ævar Arnfjörð Bjarmason
2021-03-24 17:19               ` [PATCH v4 00/10] userdiff: refactor + test improvements Johannes Sixt
2021-03-24 19:02                 ` Junio C Hamano
2021-03-24 19:14                   ` Jeff King
2021-04-08 15:04               ` [PATCH v5 0/9] " Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 1/9] userdiff style: re-order drivers in alphabetical order Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 2/9] userdiff style: declare patterns with consistent style Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 3/9] userdiff style: normalize pascal regex declaration Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 4/9] userdiff: add and use for_each_userdiff_driver() Ævar Arnfjörð Bjarmason
2021-04-08 19:29                   ` Junio C Hamano
2021-04-08 15:04                 ` [PATCH v5 5/9] userdiff tests: explicitly test "default" pattern Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 6/9] userdiff tests: list builtin drivers via test-tool Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 7/9] userdiff: remove support for "broken" tests Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 8/9] blame tests: don't rely on t/t4018/ directory Ævar Arnfjörð Bjarmason
2021-04-08 15:04                 ` [PATCH v5 9/9] blame tests: simplify userdiff driver test Ævar Arnfjörð Bjarmason
2021-02-24 19:50           ` [PATCH v3 01/35] userdiff: refactor away the parse_bool() function Ævar Arnfjörð Bjarmason
2021-02-24 19:50           ` [PATCH v3 02/35] userdiff style: re-order drivers in alphabetical order Ævar Arnfjörð Bjarmason
2021-02-24 19:50           ` [PATCH v3 03/35] userdiff style: declare patterns with consistent style Ævar Arnfjörð Bjarmason
2021-02-24 19:50           ` [PATCH v3 04/35] userdiff style: normalize pascal regex declaration Ævar Arnfjörð Bjarmason
2021-02-24 19:50           ` [PATCH v3 05/35] userdiff: add and use for_each_userdiff_driver() Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 06/35] userdiff tests: explicitly test "default" pattern Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 07/35] userdiff tests: list builtin drivers via test-tool Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 08/35] userdiff: remove support for "broken" tests Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 09/35] blame tests: don't rely on t/t4018/ directory Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 10/35] blame tests: simplify userdiff driver test Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 11/35] userdiff tests: match full hunk headers Ævar Arnfjörð Bjarmason
2021-02-25  2:47             ` Junio C Hamano
2021-02-24 19:51           ` [PATCH v3 12/35] userdiff tests: change setup loop to individual test setup Ævar Arnfjörð Bjarmason
2021-02-25  2:52             ` Junio C Hamano
2021-02-25 18:28               ` Johannes Sixt
2021-02-25 19:06                 ` Junio C Hamano
2021-02-24 19:51           ` [PATCH v3 13/35] userdiff tests: factor out test_diff_funcname() logic Ævar Arnfjörð Bjarmason
2021-02-25  2:57             ` Junio C Hamano
2021-02-24 19:51           ` [PATCH v3 14/35] userdiff tests: add alternative hunk header test infrastructure Ævar Arnfjörð Bjarmason
2021-02-28 11:12             ` Johannes Sixt
2021-02-24 19:51           ` [PATCH v3 15/35] userdiff tests: add a test with multiple tests in a LANG file Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 16/35] userdiff tests: do config teardown in test_diff_funcname() Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 17/35] userdiff tests: move custom patterns into one test file Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 18/35] userdiff tests: remove hack for "RIGHT" token Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 19/35] userdiff tests: do not do compile tests on "custom" pattern Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 20/35] userdiff tests: assert that new built-in drivers have tests Ævar Arnfjörð Bjarmason
2021-02-28 10:34             ` Johannes Sixt
2021-02-28 15:51               ` Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 21/35] userdiff tests + docs: document & test "diff.<driver>.x?funcname" Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 22/35] gitattributes doc: reword discussion of built-in userdiff patterns Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 23/35] userdiff tests: move perl tests to perl.sh Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 24/35] userdiff tests: move away from "RIGHT" in perl.sh Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 25/35] gitattributes doc: document multi-line userdiff patterns Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 26/35] userdiff tests: switch to -U0 by default Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 27/35] userdiff tests: remove "funcname" from custom3 test Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 28/35] userdiff tests: assert empty hunk header context on -U<large> Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 29/35] userdiff tests: test for a bug in 1dbf0c0ad6c Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 30/35] userdiff golang: simplify and correct matching regex Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 31/35] userdiff golang: don't over-match intented constructs Ævar Arnfjörð Bjarmason
2021-02-26  7:59             ` Johannes Sixt
2021-02-24 19:51           ` [PATCH v3 32/35] userdiff golang: add a rule to match "package" Ævar Arnfjörð Bjarmason
2021-02-26  8:03             ` Johannes Sixt
2021-02-24 19:51           ` [PATCH v3 33/35] userdiff golang: match multi-line "const" and "import" Ævar Arnfjörð Bjarmason
2021-02-24 19:51           ` [PATCH v3 34/35] userdiff tests: add basic test for ada Ævar Arnfjörð Bjarmason
2021-02-27  7:26             ` Johannes Sixt
2021-02-24 19:51           ` [PATCH v3 35/35] userdiff tests: add basic test for ruby Ævar Arnfjörð Bjarmason
2021-02-27  7:30             ` Johannes Sixt
2021-02-15 15:44         ` [PATCH v2 01/27] userdiff: refactor away the parse_bool() function Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 02/27] userdiff style: re-order drivers in alphabetical order Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 03/27] userdiff style: declare patterns with consistent style Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 04/27] userdiff style: normalize pascal regex declaration Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 05/27] userdiff: add and use for_each_userdiff_driver() Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 06/27] userdiff tests: explicitly test "default" pattern Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 07/27] userdiff tests: list builtin drivers via test-tool Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 08/27] userdiff: remove support for "broken" tests Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 09/27] userdiff tests: match full hunk headers Ævar Arnfjörð Bjarmason
2021-02-15 17:13           ` Johannes Sixt
2021-02-15 18:48             ` Ævar Arnfjörð Bjarmason
2021-02-16 18:32             ` Junio C Hamano
2021-02-16 21:45               ` Johannes Sixt
2021-02-17  1:27                 ` Ævar Arnfjörð Bjarmason
2021-02-17 19:01                   ` Junio C Hamano
2021-02-23 13:11                     ` Ævar Arnfjörð Bjarmason
2021-02-23 21:02                       ` Johannes Sixt
2021-02-24 11:12                         ` Ævar Arnfjörð Bjarmason
2021-02-24 17:13                           ` Johannes Sixt
2021-02-17  2:03               ` Junio C Hamano
2021-02-17  2:13                 ` Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 10/27] blame tests: don't rely on t/t4018/ directory Ævar Arnfjörð Bjarmason
2021-02-16 23:49           ` Junio C Hamano
2021-02-15 15:44         ` [PATCH v2 11/27] blame tests: simplify userdiff driver test Ævar Arnfjörð Bjarmason
2021-02-15 17:23           ` Johannes Sixt
2021-02-17  1:33             ` Ævar Arnfjörð Bjarmason
2021-02-17  1:40               ` Junio C Hamano
2021-02-17  7:10               ` Johannes Sixt
2021-02-15 15:44         ` [PATCH v2 12/27] userdiff tests: rewrite hunk header test infrastructure Ævar Arnfjörð Bjarmason
2021-02-15 17:53           ` Johannes Sixt
2021-02-15 20:06             ` Ævar Arnfjörð Bjarmason
2021-02-15 20:29               ` Johannes Sixt
2021-02-16 18:35           ` Junio C Hamano
2021-02-15 15:44         ` [PATCH v2 13/27] userdiff tests: do config teardown in test_diff_funcname() Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 14/27] userdiff tests: move custom patterns into one test file Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 15/27] userdiff tests: remove hack for "RIGHT" token Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 16/27] userdiff tests: do not do compile tests on "custom" pattern Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 17/27] userdiff tests + docs: document & test "diff.<driver>.x?funcname" Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 18/27] gitattributes doc: reword discussion of built-in userdiff patterns Ævar Arnfjörð Bjarmason
2021-02-16 23:57           ` Junio C Hamano
2021-02-15 15:44         ` [PATCH v2 19/27] gitattributes doc: document multi-line " Ævar Arnfjörð Bjarmason
2021-02-15 18:18           ` Johannes Sixt
2021-02-15 19:01             ` Ævar Arnfjörð Bjarmason
2021-02-17  0:03           ` Junio C Hamano
2021-02-15 15:44         ` [PATCH v2 20/27] userdiff tests: remove "funcname" from custom3 test Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 21/27] userdiff tests: factor out test_diff_funcname() logic Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 22/27] userdiff tests: test hunk headers on accumulated files Ævar Arnfjörð Bjarmason
2021-02-15 18:29           ` Johannes Sixt
2021-02-15 15:44         ` [PATCH v2 23/27] userdiff tests: test hunk header selection with -U0 Ævar Arnfjörð Bjarmason
2021-02-15 19:09           ` Johannes Sixt
2021-02-15 15:44         ` [PATCH v2 24/27] userdiff tests: assert empty hunk header context on -U<large> Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 25/27] userdiff: match "package" in diff=golang Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 26/27] userdiff tests: add basic test for ada Ævar Arnfjörð Bjarmason
2021-02-15 15:44         ` [PATCH v2 27/27] userdiff tests: add basic test for ruby Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 01/20] userdiff: refactor away the parse_bool() function Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 02/20] userdiff: re-order builtin drivers in alphabetical order Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 03/20] userdiff: add and use for_each_userdiff_driver() Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 04/20] userdiff tests: explicitly test "default" pattern Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 05/20] userdiff tests: list builtin drivers via test-tool Ævar Arnfjörð Bjarmason
2021-02-15  1:24         ` Eric Sunshine
2021-02-15  0:52       ` [PATCH 06/20] userdiff: remove support for "broken" tests Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 07/20] userdiff tests: match full hunk headers Ævar Arnfjörð Bjarmason
2021-02-15  1:35         ` Eric Sunshine
2021-02-15  0:52       ` [PATCH 08/20] userdiff tests: rewrite hunk header test infrastructure Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 09/20] blame tests: don't rely on t/t4018/ directory Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 10/20] userdiff tests: move custom patterns into one test file Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 11/20] userdiff tests: remove hack for "RIGHT" token Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 12/20] userdiff: match "package" in diff=golang Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 13/20] userdiff tests + docs: document & test "diff.<driver>.x?funcname" Ævar Arnfjörð Bjarmason
2021-02-15  3:16         ` Eric Sunshine
2021-02-15  0:52       ` [PATCH 14/20] gitattributes doc: reword discussion of built-in userdiff patterns Ævar Arnfjörð Bjarmason
2021-02-15  3:26         ` Eric Sunshine
2021-02-15  0:52       ` [PATCH 15/20] gitattributes doc: document multi-line " Ævar Arnfjörð Bjarmason
2021-02-15  3:16         ` Chris Torek
2021-02-15  3:36         ` Eric Sunshine
2021-02-15  0:52       ` [PATCH 16/20] userdiff tests: remove "funcname" from custom3 test Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 17/20] userdiff tests: factor out test_diff_funcname() logic Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 18/20] userdiff tests: test hunk headers on accumulated files Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 19/20] userdiff tests: test hunk header selection with -U0 Ævar Arnfjörð Bjarmason
2021-02-15  0:52       ` [PATCH 20/20] userdiff tests: assert empty hunk header context on -U<large> Ævar Arnfjörð Bjarmason
2021-02-16  8:26       ` [PATCH] userdiff: add support for Emacs Lisp Protesilaos Stavrou
2021-02-16 11:13         ` Ævar Arnfjörð Bjarmason

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=xmqqsg4kxr38.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=avarab@gmail.com \
    --cc=chris.torek@gmail.com \
    --cc=git@adamspiers.org \
    --cc=git@vger.kernel.org \
    --cc=j6t@kdbg.org \
    --cc=jrnieder@gmail.com \
    --cc=levraiphilippeblain@gmail.com \
    --cc=peff@peff.net \
    --cc=sunshine@sunshineco.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).