From: phillip.wood123@gmail.com Date: Wed, 08 May 2024 15:25:47 GMT Subject: Re: [PATCH 2/2] diff: fix --exit-code with external diff Message-ID: <539926ac-4274-4b4b-a2ee-aa48af791124@gmail.com> In-Reply-To: <4bf12c41-a6ea-4939-ba76-e2c784952eaa@web.de> Hi René On 06/05/2024 19:23, René Scharfe wrote: > Am 05.05.24 um 17:25 schrieb Phillip Wood: >> Merge strategies are expected to exit 0 on success, 1 when there are >> conflicts and another non-zero value for other errors - it would be >> nice to do something similar here where 1 means "there were >> differences" but it is probably too late to do that without a config >> value to indicate that we should trust the exit code. > Right, such a diff command protocol v2 would not need to pipe the > output through an inspection loop. Sounds like a good idea. It's > unfortunate that it would increase the configuration surface, which is > not in an acute need to expand. We could advertise the new option when > dying due to the unsupported combination of --exit-code and external > diff, but that's in equal parts helpful and obnoxious, I feel. Yes, diff dying would be annoying but the message would be useful. Thinking about the external diff and some of the other diff options I wonder what we should do when options like "--quiet" and "--name-only" are combined with an external diff (I haven't checked the current behavior). If we introduced a diff command protocol v2 we could include a way to pass through "--quiet" though maybe just redirecting the stdout of the external command to /dev/null and using the exit code would be sufficient. Best Wishes Phillip P.S. I haven't forgotten about our unit-test discussion but I'm afraid it will probably be the middle of next month before I have time to reply.