Subject: Re: [PATCH v4 00/22] fsck: API improvements

From: Derrick Stolee <[email-masked]>
Date: Tue, 16 Mar 2021 15:35:20 -0400

On 3/16/2021 12:17 PM, Ævar Arnfjörð Bjarmason wrote:
> A re-send of a rebased v3, which I sent at:
> http://lore.kernel.org/git/[email-masked] as
> seen in the range-diff there are no changes since v3. I'm just sending
> this as a post-release bump of this, per
> https://lore.kernel.org/git/[email-masked]/
> 
> Ævar Arnfjörð Bjarmason (22):
>   fsck.h: update FSCK_OPTIONS_* for object_name
>   fsck.h: use designed initializers for FSCK_OPTIONS_{DEFAULT,STRICT}
>   fsck.h: reduce duplication between FSCK_OPTIONS_{DEFAULT,STRICT}
>   fsck.h: add a FSCK_OPTIONS_COMMON_ERROR_FUNC macro
>   fsck.h: indent arguments to of fsck_set_msg_type
>   fsck.h: use "enum object_type" instead of "int"
>   fsck.c: rename variables in fsck_set_msg_type() for less confusion
>   fsck.c: move definition of msg_id into append_msg_id()
>   fsck.c: rename remaining fsck_msg_id "id" to "msg_id"
>   fsck.c: refactor fsck_msg_type() to limit scope of "int msg_type"
>   fsck.h: move FSCK_{FATAL,INFO,ERROR,WARN,IGNORE} into an enum
>   fsck.h: re-order and re-assign "enum fsck_msg_type"
>   fsck.c: call parse_msg_type() early in fsck_set_msg_type()
>   fsck.c: undefine temporary STR macro after use
>   fsck.c: give "FOREACH_MSG_ID" a more specific name
>   fsck.[ch]: move FOREACH_FSCK_MSG_ID & fsck_msg_id from *.c to *.h
>   fsck.c: pass along the fsck_msg_id in the fsck_error callback
>   fsck.c: add an fsck_set_msg_type() API that takes enums
>   fsck.c: move gitmodules_{found,done} into fsck_options
>   fetch-pack: don't needlessly copy fsck_options
>   fetch-pack: use file-scope static struct for fsck_options
>   fetch-pack: use new fsck API to printing dangling submodules

This series is carefully organized and motivated. It was quite
easy to read.

My complaints were minor. One was that patches 1-4 seemed to be
unnecessarily granular. I'm not sure that having four patches
like that will be more helpful for inspecting the history in
the future. But, I don't care enough to say this should be
re-rolled.

Finally, the last issue is that fsck-cb.c is loosely justified
with only one method inside. If you have plans in the near
future to add similar methods there, then I think that is fine.
Otherwise, it would be simpler to avoid the extra file and
code move.

Thanks,
-Stolee