"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

From:
Stefan Sperling <stsp@stsp.name>
Subject:
Re: diff: Allow diffing three or more paths at once
To:
gameoftrees@openbsd.org
Date:
Thu, 1 Apr 2021 22:25:50 +0200

Download raw body.

Thread
On Thu, Apr 01, 2021 at 07:52:00PM +0200, Klemens Nanni wrote:
> Do not special-case `argc == 1' any longer and handle argv[] at once.
> 
> This is the first step towards diffing an arbitrary number of paths and
> automatically falling back to interpreting arguments as objects iff exactly
> two were given and one of them is not a valid path.
> 
> Diffing two paths (not objects) is still not possible and will be handled
> later;  this commit is to reduce churn and ease review.

I don't see any errors in your patch. However, for the main branch,
I would rather have a diff (or a series of diffs) which supports two paths
as well as two object arguments, and supports an option similar to
'got cat -P' to handle ambiguous cases, and adds regression tests or
tweaks existing tests to cover new or changed behaviour.

The reason is simply that I wouldn't consider this intermediate state
ready to be released. If something else important comes up out of the
blue I'd rather not be blocked from releasing a new version immediately
because an incomplete feature implementation sits on the main branch.

That said, there's no reason to delete your diff. It is a good start and
I'd be happy to keep reviewing additional diffs that apply on top of it,
even in case you yourself feel that it's not quite ready and would like
feedback to help with making progress.

I've certainly been guilty of committing work-in-progress stuff in the past.
These days I try to keep my development state on local branches and commit
to the main repo only if I am confident that the current state could be
shipped in a release (my recent deltify commits for example were originally
a much longer local series of patches).