git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: John Keeping <john@keeping.me.uk>
To: Junio C Hamano <gitster@pobox.com>
Cc: "Tom Tanner (BLOOMBERG/ LONDON)" <ttanner2@bloomberg.net>,
	davvid@gmail.com, git@vger.kernel.org
Subject: Re: [PATCH] difftool: always honor "command not found" exit code
Date: Mon, 15 Aug 2016 22:35:26 +0100	[thread overview]
Message-ID: <20160815213526.6m7gu2v3fhtmx6wj@john.keeping.me.uk> (raw)
In-Reply-To: <xmqqa8gdhjgd.fsf@gitster.mtv.corp.google.com>

On Mon, Aug 15, 2016 at 01:21:22PM -0700, Junio C Hamano wrote:
> "Tom Tanner (BLOOMBERG/ LONDON)" <ttanner2@bloomberg.net> writes:
> 
> > 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.

Reading further in POSIX:

	The exit status of a command that terminated because it received
	a signal shall be reported as greater than 128.

I think if we accept the argument above about diff utilities generally
using low numbers for the status values we're ignoring intentionally,
then we can just treat any value above 125 as a fatal error.

  reply	other threads:[~2016-08-15 21:35 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-15 10:38 [PATCH] difftool: always honor "command not found" exit code Tom Tanner (BLOOMBERG/ LONDON)
2016-08-15 20:21 ` Junio C Hamano
2016-08-15 21:35   ` John Keeping [this message]
2016-08-15 21:54     ` [PATCH v2] difftool: always honor fatal error exit codes John Keeping
2016-08-15 22:26       ` Junio C Hamano
  -- strict thread matches above, loose matches on Subject: below --
2016-08-12  7:13 git difftool and git mergetool aren't returning errors when the tool has issues Tom Tanner (BLOOMBERG/ LONDON)
2016-08-13 10:36 ` John Keeping
2016-08-13 11:30   ` [PATCH] difftool: always honor "command not found" exit code John Keeping
2016-08-13 22:59     ` David Aguilar
2016-08-14  3:21     ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160815213526.6m7gu2v3fhtmx6wj@john.keeping.me.uk \
    --to=john@keeping.me.uk \
    --cc=davvid@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=ttanner2@bloomberg.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).