All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Tan <jonathantanmy@google.com>
To: gitster@pobox.com
Cc: jonathantanmy@google.com, git@vger.kernel.org,
	jrnieder@gmail.com, nmulcahey@google.com
Subject: Re: [PATCH] fetch-pack: do not mix --pack_header and packfile uri
Date: Fri,  5 Mar 2021 14:59:53 -0800	[thread overview]
Message-ID: <20210305225953.739816-1-jonathantanmy@google.com> (raw)
In-Reply-To: <xmqqzgzha0z5.fsf@gitster.c.googlers.com>

> Jonathan Tan <jonathantanmy@google.com> writes:
> 
> > When fetching (as opposed to cloning) from a repository with packfile
> > URIs enabled, an error like this may occur:
> >
> >  fatal: pack has bad object at offset 12: unknown object type 5
> >  fatal: finish_http_pack_request gave result -1
> >  fatal: fetch-pack: expected keep then TAB at start of http-fetch output
> >
> > This bug was introduced in b664e9ffa1 ("fetch-pack: with packfile URIs,
> > use index-pack arg", 2021-02-22), when the index-pack args used when
> > processing the inline packfile of a fetch response and when processing
> > packfile URIs were unified.
> 
> > This bug happens because fetch, by default, partially reads (and
> > consumes) the header of the inline packfile to determine if it should
> > store the downloaded objects as a packfile or loose objects, and thus
> > passes --pack_header=<...> to index-pack to inform it that some bytes
> > are missing. 
> 
> ... and what the values in them are.

Ah, that's true.

> > However, when it subsequently fetches the additional
> > packfiles linked by URIs, it reuses the same index-pack arguments, thus
> > wrongly passing --index-pack-arg=--pack_header=<...> when no bytes are
> > missing.
> >
> > This does not happen when cloning because "git clone" always passes
> > do_keep, which instructs the fetch mechanism to always retain the
> > packfile, eliminating the need to read the header.
> >
> > There are a few ways to fix this, including filtering out pack_header
> > arguments when downloading the additional packfiles, but ...
> 
> Avoiding the condition that exhibits the breakage is possible, and I
> think it is what is done here, but I actually think that the only
> right fix is to pass correct argument to commands we invoke in the
> first place.  Why are we reusing the same argument array to begin
> with?
> 
>     ... goes back and reads the offending commit ...
> 
> commit b664e9ffa153189dae9b88f32d1c5fedcf85056a
> Author: Jonathan Tan <jonathantanmy@google.com>
> Date:   Mon Feb 22 11:20:08 2021 -0800
> 
>     fetch-pack: with packfile URIs, use index-pack arg
>     
>     Unify the index-pack arguments used when processing the inline pack and
>     when downloading packfiles referenced by URIs. This is done by teaching
>     get_pack() to also store the index-pack arguments whenever at least one
>     packfile URI is given, and then when processing the packfile URI(s),
>     using the stored arguments.
> 
> THis makes it sound like the entire idea of this offending commit
> was wrong, and before it, the codepath that processed the packfile
> fetched from the packfile URI were using the index-pack correctly
> by using index-pack arguments that are independent from the one that
> is used to process the packfile given in-stream.  Why isn't the fix
> just a straight revert of the commit???

I should probably have written more in the commit message to justify the
unification, but it is also part of a bug fix (in particular,
--fsck-objects wasn't being passed to the index-pack that indexed the
packfiles linked by URI) and for code health purposes (to prevent future
bugs by eliminating the divergence). So reverting that commit would
reintroduce another bug.

> > @@ -885,7 +885,7 @@ static int get_pack(struct fetch_pack_args *args,
> >  			strvec_push(&cmd.args, "-v");
> >  		if (args->use_thin_pack)
> >  			strvec_push(&cmd.args, "--fix-thin");
> > -		if (do_keep && (args->lock_pack || unpack_limit)) {
> > +		if ((do_keep || index_pack_args) && (args->lock_pack || unpack_limit)) {
> >  			char hostname[HOST_NAME_MAX + 1];
> >  			if (xgethostname(hostname, sizeof(hostname)))
> >  				xsnprintf(hostname, sizeof(hostname), "localhost");
> 
> I do not quite get what this hunk is doing.  Care to explain?

The "do_keep" part was unnecessarily restrictive and I used a band-aid
solution to loosen it. I think this started from 88e2f9ed8e ("introduce
fetch-object: fetch one promisor object", 2017-12-05) where I might have
misunderstood what do_keep was meant to do, and taught fetch-pack to use
"index-pack" if do_keep is true or args->from_promisor is true. What I
should have done is to set do_keep to true if args->from_promisor is
true. Future commits continued to do that with fsck_objects and
index_pack_args.

Maybe what I can do is to refactor get_pack() so that do_keep retains
its original meaning of whether to use "index-pack" or "unpack-objects",
and then we wouldn't need this line. What do you think (code-wise and
whether this fits in with the release schedule, if we want to get this
in before release)?

  parent reply	other threads:[~2021-03-05 23:00 UTC|newest]

Thread overview: 229+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-15 23:43 RFC on packfile URIs and .gitmodules check Jonathan Tan
2021-01-16  0:30 ` Junio C Hamano
2021-01-16  3:22   ` Taylor Blau
2021-01-19 12:56     ` Derrick Stolee
2021-01-19 19:13       ` Jonathan Tan
2021-01-20  1:04         ` Junio C Hamano
2021-01-19 19:02     ` Jonathan Tan
2021-01-20  8:07 ` Ævar Arnfjörð Bjarmason
2021-01-20 19:30   ` Jonathan Tan
2021-01-21  3:06     ` Junio C Hamano
2021-01-21 18:32       ` Jonathan Tan
2021-01-21 18:39         ` Junio C Hamano
2021-01-20 19:36   ` [PATCH] Doc: clarify contents of packfile sent as URI Jonathan Tan
2021-01-24  2:34 ` [PATCH 0/4] Check .gitmodules when using packfile URIs Jonathan Tan
2021-01-24  2:34   ` [PATCH 1/4] http: allow custom index-pack args Jonathan Tan
2021-01-24  2:34   ` [PATCH 2/4] http-fetch: " Jonathan Tan
2021-01-24 11:52     ` Ævar Arnfjörð Bjarmason
2021-01-28  0:32       ` Jonathan Tan
2021-02-16 20:49     ` Josh Steadmon
2021-02-16 22:57       ` Junio C Hamano
2021-02-17 19:46         ` Jonathan Tan
2021-01-24  2:34   ` [PATCH 3/4] fetch-pack: with packfile URIs, use index-pack arg Jonathan Tan
2021-01-24  2:34   ` [PATCH 4/4] fetch-pack: print and use dangling .gitmodules Jonathan Tan
2021-01-24  7:56     ` Junio C Hamano
2021-01-26  1:57       ` Junio C Hamano
2021-01-28  1:04         ` Jonathan Tan
2021-01-24 12:18     ` Ævar Arnfjörð Bjarmason
2021-01-28  1:03       ` Jonathan Tan
2021-02-17  1:48         ` Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 00/14] fsck: API improvements Ævar Arnfjörð Bjarmason
2021-02-17 21:02             ` Junio C Hamano
2021-02-18  0:00               ` Ævar Arnfjörð Bjarmason
2021-02-18 19:12                 ` Junio C Hamano
2021-02-18 19:57                   ` Jeff King
2021-02-18 20:27                     ` Junio C Hamano
2021-02-19  0:54                       ` Ævar Arnfjörð Bjarmason
2021-02-18 22:36                     ` Junio C Hamano
2021-02-18 10:58             ` [PATCH v2 00/10] fsck: API improvements (no conflicts with 'seen') Ævar Arnfjörð Bjarmason
2021-02-18 22:19               ` Junio C Hamano
2021-03-06 11:04               ` [PATCH v3 00/22] fsck: API improvements Ævar Arnfjörð Bjarmason
2021-03-07 23:04                 ` Junio C Hamano
2021-03-08  9:16                   ` Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 " Ævar Arnfjörð Bjarmason
2021-03-16 19:35                   ` Derrick Stolee
2021-03-17 18:20                   ` [PATCH v5 00/19] " Ævar Arnfjörð Bjarmason
2021-03-17 20:30                     ` Derrick Stolee
2021-03-17 21:06                     ` Junio C Hamano
2021-03-28 13:15                     ` [PATCH v6 " Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 01/19] fsck.c: refactor and rename common config callback Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 02/19] fsck.h: use designed initializers for FSCK_OPTIONS_{DEFAULT,STRICT} Ævar Arnfjörð Bjarmason
2021-03-28 17:15                         ` Ramsay Jones
2021-03-29  2:04                           ` Junio C Hamano
2021-03-28 13:15                       ` [PATCH v6 03/19] fsck.h: use "enum object_type" instead of "int" Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 04/19] fsck.c: rename variables in fsck_set_msg_type() for less confusion Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 05/19] fsck.c: remove (mostly) redundant append_msg_id() function Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 06/19] fsck.c: rename remaining fsck_msg_id "id" to "msg_id" Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 07/19] fsck.c: refactor fsck_msg_type() to limit scope of "int msg_type" Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 08/19] fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 09/19] fsck.h: re-order and re-assign "enum fsck_msg_type" Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 10/19] fsck.c: call parse_msg_type() early in fsck_set_msg_type() Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 11/19] fsck.c: undefine temporary STR macro after use Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 12/19] fsck.c: give "FOREACH_MSG_ID" a more specific name Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 13/19] fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 14/19] fsck.c: pass along the fsck_msg_id in the fsck_error callback Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 15/19] fsck.c: add an fsck_set_msg_type() API that takes enums Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 16/19] fsck.c: move gitmodules_{found,done} into fsck_options Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 17/19] fetch-pack: don't needlessly copy fsck_options Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 18/19] fetch-pack: use file-scope static struct for fsck_options Ævar Arnfjörð Bjarmason
2021-03-28 13:15                       ` [PATCH v6 19/19] fetch-pack: use new fsck API to printing dangling submodules Ævar Arnfjörð Bjarmason
2021-03-29  2:06                       ` [PATCH v6 00/19] fsck: API improvements Junio C Hamano
2021-03-17 18:20                   ` [PATCH v5 01/19] fsck.c: refactor and rename common config callback Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 02/19] fsck.h: use designed initializers for FSCK_OPTIONS_{DEFAULT,STRICT} Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 03/19] fsck.h: use "enum object_type" instead of "int" Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 04/19] fsck.c: rename variables in fsck_set_msg_type() for less confusion Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 05/19] fsck.c: move definition of msg_id into append_msg_id() Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 06/19] fsck.c: rename remaining fsck_msg_id "id" to "msg_id" Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 07/19] fsck.c: refactor fsck_msg_type() to limit scope of "int msg_type" Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 08/19] fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 09/19] fsck.h: re-order and re-assign "enum fsck_msg_type" Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 10/19] fsck.c: call parse_msg_type() early in fsck_set_msg_type() Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 11/19] fsck.c: undefine temporary STR macro after use Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 12/19] fsck.c: give "FOREACH_MSG_ID" a more specific name Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 13/19] fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 14/19] fsck.c: pass along the fsck_msg_id in the fsck_error callback Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 15/19] fsck.c: add an fsck_set_msg_type() API that takes enums Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 16/19] fsck.c: move gitmodules_{found,done} into fsck_options Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 17/19] fetch-pack: don't needlessly copy fsck_options Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 18/19] fetch-pack: use file-scope static struct for fsck_options Ævar Arnfjörð Bjarmason
2021-03-17 18:20                   ` [PATCH v5 19/19] fetch-pack: use new fsck API to printing dangling submodules Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 01/22] fsck.h: update FSCK_OPTIONS_* for object_name Ævar Arnfjörð Bjarmason
2021-03-17 18:35                   ` Junio C Hamano
2021-03-19 14:43                   ` Johannes Schindelin
2021-03-20  9:16                     ` Ævar Arnfjörð Bjarmason
2021-03-20 20:04                       ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 02/22] fsck.h: use designed initializers for FSCK_OPTIONS_{DEFAULT,STRICT} Ævar Arnfjörð Bjarmason
2021-03-16 18:59                   ` Derrick Stolee
2021-03-17 18:38                   ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 03/22] fsck.h: reduce duplication between FSCK_OPTIONS_{DEFAULT,STRICT} Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 04/22] fsck.h: add a FSCK_OPTIONS_COMMON_ERROR_FUNC macro Ævar Arnfjörð Bjarmason
2021-03-16 19:06                   ` Derrick Stolee
2021-03-16 16:17                 ` [PATCH v4 05/22] fsck.h: indent arguments to of fsck_set_msg_type Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 06/22] fsck.h: use "enum object_type" instead of "int" Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 07/22] fsck.c: rename variables in fsck_set_msg_type() for less confusion Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 08/22] fsck.c: move definition of msg_id into append_msg_id() Ævar Arnfjörð Bjarmason
2021-03-17 18:45                   ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 09/22] fsck.c: rename remaining fsck_msg_id "id" to "msg_id" Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 10/22] fsck.c: refactor fsck_msg_type() to limit scope of "int msg_type" Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 11/22] fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum Ævar Arnfjörð Bjarmason
2021-03-17 18:48                   ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 12/22] fsck.h: re-order and re-assign "enum fsck_msg_type" Ævar Arnfjörð Bjarmason
2021-03-17 18:50                   ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 13/22] fsck.c: call parse_msg_type() early in fsck_set_msg_type() Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 14/22] fsck.c: undefine temporary STR macro after use Ævar Arnfjörð Bjarmason
2021-03-17 18:57                   ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 15/22] fsck.c: give "FOREACH_MSG_ID" a more specific name Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 16/22] fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 17/22] fsck.c: pass along the fsck_msg_id in the fsck_error callback Ævar Arnfjörð Bjarmason
2021-03-17 19:01                   ` Junio C Hamano
2021-03-16 16:17                 ` [PATCH v4 18/22] fsck.c: add an fsck_set_msg_type() API that takes enums Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 19/22] fsck.c: move gitmodules_{found,done} into fsck_options Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 20/22] fetch-pack: don't needlessly copy fsck_options Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 21/22] fetch-pack: use file-scope static struct for fsck_options Ævar Arnfjörð Bjarmason
2021-03-16 16:17                 ` [PATCH v4 22/22] fetch-pack: use new fsck API to printing dangling submodules Ævar Arnfjörð Bjarmason
2021-03-16 19:32                   ` Derrick Stolee
2021-03-17 13:47                     ` Ævar Arnfjörð Bjarmason
2021-03-17 20:27                       ` Derrick Stolee
2021-03-17 19:12                   ` Junio C Hamano
2021-03-06 11:04               ` [PATCH v3 01/22] fsck.h: update FSCK_OPTIONS_* for object_name Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 02/22] fsck.h: use designed initializers for FSCK_OPTIONS_{DEFAULT,STRICT} Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 03/22] fsck.h: reduce duplication between FSCK_OPTIONS_{DEFAULT,STRICT} Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 04/22] fsck.h: add a FSCK_OPTIONS_COMMON_ERROR_FUNC macro Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 05/22] fsck.h: indent arguments to of fsck_set_msg_type Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 06/22] fsck.h: use "enum object_type" instead of "int" Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 07/22] fsck.c: rename variables in fsck_set_msg_type() for less confusion Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 08/22] fsck.c: move definition of msg_id into append_msg_id() Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 09/22] fsck.c: rename remaining fsck_msg_id "id" to "msg_id" Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 10/22] fsck.c: refactor fsck_msg_type() to limit scope of "int msg_type" Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 11/22] fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 12/22] fsck.h: re-order and re-assign "enum fsck_msg_type" Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 13/22] fsck.c: call parse_msg_type() early in fsck_set_msg_type() Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 14/22] fsck.c: undefine temporary STR macro after use Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 15/22] fsck.c: give "FOREACH_MSG_ID" a more specific name Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 16/22] fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 17/22] fsck.c: pass along the fsck_msg_id in the fsck_error callback Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 18/22] fsck.c: add an fsck_set_msg_type() API that takes enums Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 19/22] fsck.c: move gitmodules_{found,done} into fsck_options Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 20/22] fetch-pack: don't needlessly copy fsck_options Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 21/22] fetch-pack: use file-scope static struct for fsck_options Ævar Arnfjörð Bjarmason
2021-03-06 11:04               ` [PATCH v3 22/22] fetch-pack: use new fsck API to printing dangling submodules Ævar Arnfjörð Bjarmason
2021-02-18 10:58             ` [PATCH v2 01/10] fsck.h: indent arguments to of fsck_set_msg_type Ævar Arnfjörð Bjarmason
2021-02-18 10:58             ` [PATCH v2 02/10] fsck.h: use "enum object_type" instead of "int" Ævar Arnfjörð Bjarmason
2021-02-18 10:58             ` [PATCH v2 03/10] fsck.c: rename variables in fsck_set_msg_type() for less confusion Ævar Arnfjörð Bjarmason
2021-02-18 19:45               ` Jeff King
2021-02-18 10:58             ` [PATCH v2 04/10] fsck.c: move definition of msg_id into append_msg_id() Ævar Arnfjörð Bjarmason
2021-02-18 10:58             ` [PATCH v2 05/10] fsck.c: rename remaining fsck_msg_id "id" to "msg_id" Ævar Arnfjörð Bjarmason
2021-02-18 22:23               ` Junio C Hamano
2021-02-18 10:58             ` [PATCH v2 06/10] fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum Ævar Arnfjörð Bjarmason
2021-02-18 19:52               ` Jeff King
2021-02-18 22:27                 ` Junio C Hamano
2021-02-18 10:58             ` [PATCH v2 07/10] fsck.c: call parse_msg_type() early in fsck_set_msg_type() Ævar Arnfjörð Bjarmason
2021-02-18 22:29               ` Junio C Hamano
2021-02-18 10:58             ` [PATCH v2 08/10] fsck.c: undefine temporary STR macro after use Ævar Arnfjörð Bjarmason
2021-02-18 22:30               ` Junio C Hamano
2021-02-18 10:58             ` [PATCH v2 09/10] fsck.c: give "FOREACH_MSG_ID" a more specific name Ævar Arnfjörð Bjarmason
2021-02-18 19:56               ` Jeff King
2021-02-18 10:58             ` [PATCH v2 10/10] fsck.h: update FSCK_OPTIONS_* for object_name Ævar Arnfjörð Bjarmason
2021-02-18 19:56               ` Jeff King
2021-02-18 22:33                 ` Junio C Hamano
2021-02-18 22:32               ` Junio C Hamano
2021-02-17 19:42           ` [PATCH 01/14] fsck.h: indent arguments to of fsck_set_msg_type Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 02/14] fsck.h: use use "enum object_type" instead of "int" Ævar Arnfjörð Bjarmason
2021-02-17 23:40             ` Junio C Hamano
2021-02-17 19:42           ` [PATCH 03/14] fsck.c: rename variables in fsck_set_msg_type() for less confusion Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 04/14] fsck.c: move definition of msg_id into append_msg_id() Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 05/14] fsck.c: rename remaining fsck_msg_id "id" to "msg_id" Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 06/14] fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 07/14] fsck.c: call parse_msg_type() early in fsck_set_msg_type() Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 08/14] fsck.c: undefine temporary STR macro after use Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 09/14] fsck.c: give "FOREACH_MSG_ID" a more specific name Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 10/14] fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 11/14] fsck.c: pass along the fsck_msg_id in the fsck_error callback Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 12/14] fsck.c: add an fsck_set_msg_type() API that takes enums Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 13/14] fsck.h: update FSCK_OPTIONS_* for object_name Ævar Arnfjörð Bjarmason
2021-02-17 19:42           ` [PATCH 14/14] fsck.c: move gitmodules_{found,done} into fsck_options Ævar Arnfjörð Bjarmason
2021-02-17 20:05           ` [PATCH 4/4] fetch-pack: print and use dangling .gitmodules Jonathan Tan
2021-01-24 12:30     ` Ævar Arnfjörð Bjarmason
2021-01-28  1:15       ` Jonathan Tan
2021-02-17  2:10         ` Ævar Arnfjörð Bjarmason
2021-02-17 20:10           ` Jonathan Tan
2021-02-18 12:07             ` Ævar Arnfjörð Bjarmason
2021-02-17 19:27     ` Ævar Arnfjörð Bjarmason
2021-02-17 20:11       ` Jonathan Tan
2021-01-24  6:29   ` [PATCH 0/4] Check .gitmodules when using packfile URIs Junio C Hamano
2021-01-28  0:35     ` Jonathan Tan
2021-02-18 11:31       ` Ævar Arnfjörð Bjarmason
2021-02-18 23:34   ` Junio C Hamano
2021-02-19  0:46     ` Jonathan Tan
2021-02-20  3:31       ` Junio C Hamano
2021-02-19  1:08     ` Ævar Arnfjörð Bjarmason
2021-02-20  3:29       ` Junio C Hamano
2021-02-22 19:20 ` [PATCH v2 " Jonathan Tan
2021-02-22 19:20   ` [PATCH v2 1/4] http: allow custom index-pack args Jonathan Tan
2021-02-22 19:20   ` [PATCH v2 2/4] http-fetch: " Jonathan Tan
2021-02-23 13:17     ` Ævar Arnfjörð Bjarmason
2021-02-23 16:51       ` Jonathan Tan
2021-03-05  0:19     ` Jonathan Nieder
2021-03-05  1:16       ` [PATCH] fetch-pack: do not mix --pack_header and packfile uri Jonathan Tan
2021-03-05  1:52         ` Junio C Hamano
2021-03-05 18:50         ` Junio C Hamano
2021-03-05 19:46           ` Junio C Hamano
2021-03-05 23:11             ` Jonathan Tan
2021-03-05 23:20             ` Junio C Hamano
2021-03-05 22:59           ` Jonathan Tan [this message]
2021-03-05 23:18             ` Junio C Hamano
2021-03-08 19:14               ` Jonathan Tan
2021-03-08 19:34                 ` Junio C Hamano
2021-03-09 19:13                   ` Junio C Hamano
2021-03-10  5:24                     ` Junio C Hamano
2021-03-10 16:57                     ` Jonathan Tan
2021-03-10 18:30                       ` Junio C Hamano
2021-03-10 19:56                         ` Junio C Hamano
2021-03-10 23:29                           ` Jonathan Tan
2021-03-11  0:59                             ` Junio C Hamano
2021-03-11  1:41                             ` Junio C Hamano
2021-03-11 17:22                               ` Jonathan Tan
2021-03-11 21:21                                 ` Junio C Hamano
2021-02-22 19:20   ` [PATCH v2 3/4] fetch-pack: with packfile URIs, use index-pack arg Jonathan Tan
2021-02-22 19:20   ` [PATCH v2 4/4] fetch-pack: print and use dangling .gitmodules Jonathan Tan
2021-02-22 20:12   ` [PATCH v2 0/4] Check .gitmodules when using packfile URIs 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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210305225953.739816-1-jonathantanmy@google.com \
    --to=jonathantanmy@google.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jrnieder@gmail.com \
    --cc=nmulcahey@google.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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.