git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] difftool: always honor "command not found" exit code

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 15, 2016, 20:21 UTC
Message-ID
<xmqqa8gdhjgd.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<57B19B9F0205070000390238_0_29566@p057>
"Tom Tanner (BLOOMBERG/ LONDON)" <ttanner2@bloomberg.net> writes:
Show 16 quoted lines
> From: gitster@pobox.com
> To: john@keeping.me.uk
> Cc: Tom Tanner (BLOOMBERG/ LONDON), davvid@gmail.com, git@vger.kernel.org
> At: 08/14/16 04:21:18
>
> John Keeping <john@keeping.me.uk> writes:
> ...
>> POSIX specifies 127 as the exit status for "command not found" and 126
>> for "command found but is not executable" [1] and at least bash and dash
>> follow this specification, while diff utilities generally use "1" for
>> the exit status we want to ignore.
>>
>> Handle 126 and 127 as special values, assuming that they always mean
>> that the command could not be executed.
>
> Sounds like a reasonable thing to do.  Will queue; thanks.
> Would it be possible to also treat signals (128 and above) as
> 'special' values as well (as I've seen some merge tools self
> destruct like that from time to time)

Certainly, it feels safer to notice an unusual exit status code and error out to force the user to take notice, but that reasoning assumes that "128 and above" are noteworthy exceptions.

I do not have a strong opinion on that part.
Previous: Tom Tanner (BLOOMBERG/ LONDON)Next: John Keeping
Message 2 of 5 in “Re: [PATCH] difftool: always honor "command not found" exit code”
  1. Tom Tanner (BLOOMBERG/ LONDON)Aug 15, 2016
  2. Junio C HamanoAug 15, 2016
  3. John KeepingAug 15, 2016
  4. difftool: always honor fatal error exit codesJohn Keeping, Aug 15, 2016
  5. Junio C HamanoAug 15, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.