On Fri, Nov 22, 2024 at 10:41:16AM -0500, Jeff King wrote: > > A possible alternative "fix" for this typo could be to unify these > > {type}_objects members into a single .non_commit_objects member in > > the rev_info structure; given that we (as far as I remember) never > > utilized the "feature" that, say, we can ask only for trees but not > > blobs for the past ~20 years, nobody knows if the apparent "support" > > for that feature is subtly broken in multiple ways (and one of them > > you just fixed with this patch) and the "feature" may not be worth > > keeping. > > I have been tempted to do that, too. But FWIW, I do remember > implementing something that set some but not all of the fields in a > series. Digging in my old branches, I think it may have been for a > reachability check for remote git-archive, where we want to dig only as > deep as the object we are looking for (so if we are finding out if a > tree is reachable, we do not need to ask about blobs, and looking for a > tag needs neither trees nor blobs). > > If no such code made it into the project in those 20 years, it may not > worth worrying about too much. But I wanted to point it out as a > plausible use case. There are also two curious cases added by f18b512bbb (bundle: create filtered bundles, 2022-03-09) that set tree/blob, but not "tag". Not sure if that is a bug or not. -Peff