Subject: Re: What's cooking in git.git (Jan 2025, #05; Fri, 17)

From: Junio C Hamano <[email-masked]>
Date: Tue, 21 Jan 2025 11:23:20 -0800

David Aguilar <[email-masked]> writes:

> (The text below is from the original thread; sorry I don't have it handy
> so I just replied here instead)
>
>> ... but would it be simpler if we made it an extended boolean, i.e.
>> 
>>     true, yes, on, 1  -> same as "immediate"
>>     false, no, off, 0 -> same as "never"
>>     immediate         -> same as what we currently do
>>     never             -> same as what we currently do
>>     prompt            -> same as what we currently do
>>     number            -> same as what we currently do
>
> I do think that, "0 -> same as never," makes a lot of sense from a
> usability perspective.

I obviously do not agree.  "Suggest the right spelling and let the
user decide without time-bomb" is a very useful and safe UI, and the
above summary was done by mistake.

> I would instead recommend that, "1 -> same as prompt," would be a safer
> and less surprising behavior. If the user wants "immediate" they can be
> explicit about it. "immediate" is the most dangerous of all of these
> options so adding ambiguous routes to it seems like a step backwards.

Thanks for raising your concern.

As somebody who does *not* use the time-bomb UI that makes me wait
when the heuristics guessed correctly and forces me to scramble to
hit \C-c when it didn't, I am not qualified to comment in favor of
such a huge behaviour change, so I won't, and let others discuss.

> I don't really think backwards-compatibility is much of a concern here
> at all. It *would* be a concern if we were moving from a safe behavior
> to a less-safe behavior (like this patch currently does) but not so in
> the other direction like I'm proposing by making "1" mean "prompt".