From: phillip.wood123@gmail.com Date: Thu, 25 Apr 2024 08:53:20 GMT Subject: Re: [PATCH v4] add-patch: response to unknown command Message-ID: <02440375-2514-48a3-8f94-11d853f00caa@gmail.com> In-Reply-To: <20240425014432.GA1768914@coredump.intra.peff.net> Hi Peff On 25/04/2024 02:44, Jeff King wrote: > On Sun, Apr 21, 2024 at 11:52:33PM +0200, Rubén Justo wrote: > >> +test_expect_success 'unknown command' ' >> + test_when_finished "git reset --hard; rm -f command" && >> + echo W >command && >> + git add -N command && >> + git diff command >expect && >> + cat >>expect <<-EOF && >> + (1/1) Stage addition [y,n,q,a,d,e,p,?]? Unknown command ${SQ}W${SQ} (use ${SQ}?${SQ} for help) >> + (1/1) Stage addition [y,n,q,a,d,e,p,?]?$SP >> + EOF >> + git add -p -- command actual 2>&1 && >> + test_cmp expect actual >> +' > > I got a test failure on Windows CI from this. The test_cmp output looks > like this: > > -(1/1) Stage addition [y,n,q,a,d,e,p,?]? Unknown command 'W' (use '?' for help) > -(1/1) Stage addition [y,n,q,a,d,e,p,?]? > +(1/1) Stage addition [y,n,q,a,d,e,p,?]? (1/1) Stage addition [y,n,q,a,d,e,p,?]? > +Unknown command 'W' (use '?' for help) > > which makes me suspect a race. Perhaps because the prompt is going to > stdout, but the "Unknown command" message goes to stderr? Maybe we > should keep stdout and stderr separate and check them independently. Can we change err() to print to stdout? I can't really see the advantage of separating "normal output" and "error messages" for an interactive program like this. Best Wishes Phillip