Subject: Re: [PATCH v5 13/17] read-tree: show progress by default

From: Phillip Wood <[email-masked]>
Date: Thu, 24 Oct 2019 11:18:46 +0100

Hi Stolee

On 23/10/2019 13:50, Derrick Stolee wrote:
> On 10/22/2019 11:48 PM, Junio C Hamano wrote:
>> Derrick Stolee <[email-masked]> writes:
>>
>>>> I'm slightly wary of changing the output of plumbing commands
>>>> like this. If a script wants progress output it can already get
>>>> it by passing --verbose. With this change a script that does not
>>>> want that output now has to pass --no-verbose.
>>>
>>> If a script is calling this, then won't stderr not be a terminal window, and
>>> isatty(2) return 0?
>>
>> Unless the script tries to capture the error output and react
>> differently depending on the error message from the plumbing (which
>> is not localized), iow most of the time, standard error stream is
>> left unredirected and likely to be connected to the terminal if the
>> script is driven from a terminal command line.
>>
>>> Or, if the script is run with stderr passing through to
>>> a terminal, then the user would see progress while running the script, which
>>> seems like a side-effect but not one that will cause a broken script.
>>
>> It will show unwanted output to the end users, no?  That is the
>> complaint about having to pass --no-verbose, if I understand
>> correctly, if the script does not want to show the progress output.
> 
> I'm happy to have attempted the change and start this discussion. It
> sounds like this one patch could be ejected to no loss to the full
> series.

Thanks.  Enabling --verbose by default on a tty might have made sense
originally but I'm worried doing it now will lead to confusing output
where read-tree is a small part of a larger operation and the script was
written on the assumption that read-tree will be quiet.

Best Wishes

Phillip

> Thanks,
> -Stolee