On Mon Oct 28, 2024 at 12:08 PM CDT, Taylor Blau wrote: > OK, I think the mistake here is mine. I did not see > > https://lore.kernel.org/git/xmqqfrp4onjd.fsf@gitster.g/ > > when triaging the list after Junio went offline for vacation. Had I not > lost that email, I would not have merged the earlier round without more > discussion. > > That being said, it is still greatly appreciated when contributors can > follow the WC reports when they have patches that are moving through the > various integration branches. That way you can see my "Will merge to > 'next'" comment and say "please hold, I am working on a new round that > is substantially different / uncovers some backwards incompatibility / > etc." and we can wait appropriately. > > Now we are in the rather unfortunate situation of having merged > something to 'master' that (with the additional information that I > missed earlier) it is not clear that I would have merged in its existing > form at the time. > > But that's OK, and we can figure out a path forward here. I am just > trying to say that this highlights the importance of following the WC > reports regularly to catch cases where the maintainer missed some > important piece of information. My apologies, this was my first patch submission to Git and I was not exactly the process by which topics progressed from `seen` to `next` to `master`. I will be sure to follow the reports more closely in the future. >> Adding the extension was the direction suggested by Junio in the >> previous round. Git did not account for the possibility of the linking >> files containing relative paths, so there's really no way to make this >> change without breaking compatibility with older versions of Git. Git >> had to be taught how to handle files that could contain either absolute >> or relative paths. > > Yep, that makes sense. My preference here would be to make the new > behavior opt *in*, rather than opt-out, so that: > > - Users who do not experience problems with writing worktrees that > have absolute paths can continue to do so without any changes. > > - Users who use worktrees *and* do not write relative paths can > upgrade between successive versions without requiring a new > repository extension that would break older Git versions. > > - That we only add that extension to the repository's configuration if > and when the user has opted into the new behavior. > > Reading this new series, I *think* that is the behavior that you settled > on, which seems quite reasonable to me. Can you confirm that I'm reading > this all correctly? Assuming so, I think that we are in a reasonable > position[^1] to review this series instead of having to back out the new > behavior. Yes this is correct. The new behavior is opt-in and the extension is only added to the repository configuration if the user creates a worktree with relative paths. > Thanks for bearing with me here, I am quite embarrassed to have missed > Junio's mail that I mentioned earlier, but I appreciate your patience > while we sort this out together. No worries! I appreciate your feedback and I'm glad we're able to sort this out. Best, Caleb