Thread (24 messages) 24 messages, 4 authors, 2020-02-05

Re: [PATCH 0/6] commit-graph: use 'struct object_directory *' everywhere

From: Derrick Stolee <hidden>
Date: 2020-01-31 13:22:45

On 1/31/2020 5:30 AM, Jeff King wrote:
On Thu, Jan 30, 2020 at 03:00:40PM -0800, Taylor Blau wrote:
quoted
This series became a little bit longer than I was expecting it to be, so
here is the high-level structure:

  - 1/6 fixes a bug in a test that would cause a subsequent failure if
    unaddressed.

  - 2/6 does the first half of the removal by using 'struct
    object_directory *'s within the 'commit_graph' structure.

  - 4/6 does the second half by removing 'char *object_dir' usage in the
    'write_commit_graph_context' structure.

  - 5/6 ties 2/6 and 4/6 together by removing all path normalization
    completely, fixing the uninitialized read bug.

  - And 6/6 cleans up.
With the exception of the patch-ordering discussion in the sub-thread
with Martin, this looks good to me.
I agree. Martin's comment is a good one. I can't find anything else
to improve the series.
Patch 3 is a change in user-visible behavior, as it restricts how
--object-dir can be used (it must be the main object-dir or an alternate
within the repository). I don't _think_ anybody would care, as the
semantics of those options seemed kind of ill-defined to me in the first
place. But it's worth calling out as a potential risk. I suppose the
alternative is to make a one-off fake "struct object_directory" within
the process that isn't connected to the repository. But if nobody cares,
I'd just as soon avoid that.
I think that this change of behavior is fine, especially because if
someone writes a commit-graph to an --object-dir that is not an
alternate, then that repo will not discover the new commit-graph
anyway.

I do like that you state a possible work-around in case someone shows
up with a legitimate use case for a non-alternate object-dir.

Thanks,
-Stolee
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help