Thread (1 message) 1 message, 1 author, 2025-10-07

Re: [PATCH 00/13] refs: improvements and fixes for peeling tags

From: Junio C Hamano <hidden>
Date: 2025-10-07 23:01:37

Patrick Steinhardt [off-list ref] writes:
Hi,

originally, all I wanted to do was the last patch: a small performance
optimization that stops parsing objects in git-for-each-ref(1) unless we
really need to parse them. But that fix cause one specific test to fail,
and only with the reftable backend. So this led me down the rabbit hole
of tag peeling, ending up with this patch series.

The series is structured like follows:

  - Patches 1 to 7 refactor our codebase so that we don't have the
    `peel_iterated_object()` hack anymore. I just found it hard to
    follow and thought it shouldn't be too hard to get rid of it.
I've only read up to here, and found all of them welcome
improvements.  Will continue reading later.
  - Patches 8 and 9 remove infrastructure that we don't need anymore
    after the first couple of patches.
  - Patches 10 to 12 fix a couple of issues with peeled tags that I
    found. The underlying issue is that tags store both the tagged
    object and their type, but this information may not match. We never
    verify the actual object type though when allocating the tagged
    object, so this only blows up much later.

  - Patch 13 was my original motivation, a small performance
    optimization.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help