From: Andreas Ericsson <ae@op5.se>
To: Jeff King <peff@peff.net>
Cc: Thomas Rast <trast@student.ethz.ch>,
Junio C Hamano <gitster@pobox.com>,
git@vger.kernel.org, Johannes Sixt <j6t@kdbg.org>,
Alexander Potashev <aspotashev@gmail.com>
Subject: Re: [PATCH v3 1/3] Introduce die_errno() that appends strerror(errno) to die()
Date: Tue, 09 Jun 2009 11:29:51 +0200 [thread overview]
Message-ID: <4A2E2B8F.3020005@op5.se> (raw)
In-Reply-To: <20090609085328.GA25721@coredump.intra.peff.net>
Jeff King wrote:
> On Tue, Jun 09, 2009 at 10:22:30AM +0200, Thomas Rast wrote:
>
>>> Aren't you assuming that strerror(errno) has no '%'-signs here, which is
>>> what kicked off the whole discussion?
>> True, of course. Hrm.
>>
>> So do we go back to v2 (for 1/3) and ask future callers to never use
>> custom formats with die_errno, or should I write a version that
>> doubles the % characters while tacking the error message onto the
>> format?
>
> Personally, I think it is fine to assume that the format and arguments
> to die(), die_errno(), and to the die_routine() are all
> printf-compatible. That is how it has always been until now, and I don't
> see any callers who would want to change that.
>
> This is all internal to git. It's not as if we are talking about a
> library being called by arbitrary code, and we want to leave doors open
> for arbitrary clients. libgit2 would probably take a different approach
> (though I imagine their general strategy is never to die(), but to
> always return an error condition, anyway).
>
Yup. libgit2 sets an internal git_errno variable and returns an error
code for each error it encounters, and we're referring callers to
regular "errno" to find out more about *why* a particular git_errno
condition was encountered.
We might want to give applications an easy way to die with a sensible
error message, but that's so far in the future that it's not worth
bothering with.
--
Andreas Ericsson andreas.ericsson@op5.se
OP5 AB www.op5.se
Tel: +46 8-230225 Fax: +46 8-230231
Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
next prev parent reply other threads:[~2009-06-09 9:30 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-02 21:34 [PATCH] add strerror(errno) to die() calls where applicable Thomas Rast
2009-06-03 1:55 ` Jeff King
[not found] ` <2325a7950906031855t1977448lbb1c8aa671c72f3d@mail.gmail.com>
2009-06-04 1:58 ` Alexander Potashev
2009-06-04 20:32 ` Jeff King
2009-06-04 2:05 ` [PATCH] diesys calls die and also reports strerror(errno) Alexander Potashev
2009-06-04 20:50 ` Jeff King
2009-06-04 21:13 ` Junio C Hamano
2009-06-05 6:25 ` Johannes Sixt
2009-06-05 7:12 ` Junio C Hamano
2009-06-06 22:09 ` Jeff King
2009-06-06 13:09 ` [PATCH] add strerror(errno) to die() calls where applicable Thomas Rast
2009-06-06 14:44 ` [PATCH v2 0/3] Thomas Rast <trast@student.ethz.ch> Thomas Rast
2009-06-06 14:44 ` [PATCH v2 1/3] Introduce die_errno() that appends strerror(errno) to die() Thomas Rast
2009-06-06 20:36 ` Johannes Sixt
2009-06-06 20:56 ` Thomas Rast
2009-06-06 21:17 ` Johannes Sixt
2009-06-06 22:47 ` Jeff King
2009-06-06 22:13 ` Jeff King
2009-06-07 11:12 ` Alexander Potashev
2009-06-07 16:57 ` Junio C Hamano
2009-06-08 12:36 ` Jeff King
2009-06-08 15:35 ` Alexander Potashev
2009-06-08 22:04 ` Jeff King
2009-06-06 14:44 ` [PATCH v2 2/3] Convert existing die(..., strerror(errno)) to die_errno() Thomas Rast
2009-06-06 20:31 ` Johannes Sixt
2009-06-06 14:44 ` [PATCH v2 3/3] Use die_errno() instead of die() when checking syscalls Thomas Rast
2009-06-06 21:02 ` Johannes Sixt
2009-06-06 22:27 ` Thomas Rast
2009-06-08 21:02 ` [PATCH v3 0/3] die_errno() Thomas Rast
2009-06-08 21:02 ` [PATCH v3 1/3] Introduce die_errno() that appends strerror(errno) to die() Thomas Rast
2009-06-08 22:07 ` Jeff King
2009-06-09 8:22 ` Thomas Rast
2009-06-09 8:53 ` Jeff King
2009-06-09 9:29 ` Andreas Ericsson [this message]
2009-06-08 21:02 ` [PATCH v3 2/3] Convert existing die(..., strerror(errno)) to die_errno() Thomas Rast
2009-06-08 21:02 ` [PATCH v3 3/3] Use die_errno() instead of die() when checking syscalls Thomas Rast
2009-06-27 15:58 ` [PATCH v4 0/4] die_errno() Thomas Rast
2009-06-27 15:58 ` [PATCH v4 1/4] Introduce die_errno() that appends strerror(errno) to die() Thomas Rast
2009-06-27 15:58 ` [PATCH v4 2/4] die_errno(): double % in strerror() output just in case Thomas Rast
2009-06-27 15:58 ` [PATCH v4 3/4] Convert existing die(..., strerror(errno)) to die_errno() Thomas Rast
2009-06-27 15:58 ` [PATCH v4 4/4] Use die_errno() instead of die() when checking syscalls Thomas Rast
2009-06-27 18:38 ` [PATCH v4 0/4] die_errno() 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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A2E2B8F.3020005@op5.se \
--to=ae@op5.se \
--cc=aspotashev@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j6t@kdbg.org \
--cc=peff@peff.net \
--cc=trast@student.ethz.ch \
/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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.