From: Patrick Steinhardt Date: Tue, 24 Feb 2026 08:41:06 GMT Subject: Re: [PATCH 00/17] odb: make object database sources pluggable Message-ID: In-Reply-To: On Mon, Feb 23, 2026 at 01:59:51PM -0800, Junio C Hamano wrote: > Patrick Steinhardt writes: > > > I forgot to note that this series is based on top of 7c02d39fc2 (The 6th > > batch, 2026-02-20) with the following two series merged into it: > > > > - ps/odb-for-each-object at 3565faf28c (odb: drop unused > > `for_each_{loose,packed}_object()` functions, 2026-01-26) > > > > - ps/object-info-bits-cleanup at 732ec9b17b (odb: convert > > `odb_has_object()` flags into an enum, 2026-02-12) > > With the above base, [09/17] fails to apply, as the function > signature of odb_source_loose_read_object_info() no longer has > "unsigned flags" after "int flags" turns into "enum > object_info_flags flags" in f6516a5241 (odb: convert object info > flags into an enum, 2026-02-12). Indeed. It seems like I mis-resolved the conflict that happens when those two patch series are merged together. I properly resolved it in the header, but not in the implementation. The fun part is that this compiles cleanly with Clang 20. I would have expected a warning here that the function signatures are different. I tried to play around with -Weverything, but couldn't get it to produce the expected warning. Oh, well... > +++ b/object-file.c > @@ -543,9 +543,19 @@ static int read_object_info_from_path(struct odb_source *source, > int odb_source_loose_read_object_info(struct odb_source *source, > const struct object_id *oid, > struct object_info *oi, > - unsigned flags) > + enum object_info_flags flags) > > Tweaking the patch (e.g., "unsigned" -> "enum object_info_flags") to > make it apply was trivial, so there is no need to resend. Hopefully > there is no semantic conflicts due to confused bases (the result > compiled and linked fine). Yeah. I'll rebuild my patch series on top of the base that you have constructed. Thanks! Patrick