zsh-workers
 help / color / mirror / code / Atom feed
From: Cedric Ware <cedric.ware__bml@normalesup.org>
To: dana <dana@dana.is>
Cc: "zsh-workers@zsh.org" <zsh-workers@zsh.org>
Subject: Re: [PATCH] Enable sub-second timeout in zsystem flock
Date: Sat, 11 Jan 2020 16:41:43 +0100	[thread overview]
Message-ID: <20200111154143.fjtwgfnztqfmkyda@phare.normalesup.org> (raw)
In-Reply-To: <F61E41A1-9EF2-4A45-96C7-E7AF516AC763@dana.is>


dana (Monday 2020-01-06):
> Like i said, it doesn't seem to do much error-checking anywhere else, so i
> guess it's consistent... but if it were me i'd probably make any out-of-range
> value return an error, yeah.

Easy enough, except that producing a useful error message, with the
actual maximum value, is trickier than I'd expected.

zerrmsg() (and thus zwarnnam()) only supports displaying a long (%L)
if DEBUG is enabled (see "#ifdef DEBUG" lines 290 and 328 of
Src/utils.c), and no floating-point types.  Is this deliberate?
I can see why floats would be harder to support, but long seems
harmless.

If %L can be enabled in zerrmsg() then, getting back to zsystem/flock,
if there's an overflow on the value of the retry interval, it's easy to
display an error message saying that the value is limited to
LONG_MAX / 1000000L seconds (slightly underestimated for display
purposes).  As for an overflow on the (64-bit) timeout value, it's
harder to display the maximum value, but then users are less likely to
stumble into an overflow so I'd leave it silent and perhaps document it.

If not, there's always the possibility of displaying a generic "value
too large" message.


dana (Monday 2020-01-06):
> On 6 Jan 2020, at 11:30, Cedric Ware <cedric.ware__bml@normalesup.org> wrote:
> > Thanks for the pointer.  Yes, that could be done, though I don't have
> > the time right now.  What I actually had in mind was a test suite I
> > could run to check that I didn't break anything elsewhere.  Which is
> > "make test", I should have thought of it.  The current tests are still
> > successful with the patch.
> 
> I'm slightly busy again too but i could try to write a script for it later.

As I've never done this before, I'd feel more confident adding tests to
an existing script than trying to learn and write one from scratch.

					Thanks, best regards,
					Cedric Ware.

  reply	other threads:[~2020-01-11 15:42 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-29 20:35 Cedric Ware
2019-07-29 22:25 ` Bart Schaefer
2020-01-04 18:47   ` Cedric Ware
2020-01-05 18:42     ` dana
2020-01-05 21:49       ` dana
2020-01-06 17:30       ` Cedric Ware
2020-01-06 17:36         ` Peter Stephenson
2020-01-07  3:48         ` dana
2020-01-11 15:41           ` Cedric Ware [this message]
2020-01-11 19:36             ` dana
2020-01-12  4:25               ` dana
2020-03-08 18:39                 ` Cedric Ware
2020-03-12 18:46                   ` dana
2020-03-12 19:13                     ` dana
2020-03-14 21:04                     ` Cedric Ware
2020-03-15  0:50                       ` Daniel Shahaf
2020-03-15  1:04                         ` dana
2020-03-15 16:03                         ` Cedric Ware
2020-03-15 16:54                           ` Daniel Shahaf
2020-03-15 17:35                             ` Peter Stephenson
2020-03-15 18:36                             ` Cedric Ware
2020-03-15 19:13                               ` Daniel Shahaf
2020-04-13 21:34                             ` Cedric Ware
2020-04-14 11:47                               ` Daniel Shahaf
2020-04-14 20:21                                 ` Cedric Ware
2020-04-15  1:15                                   ` Daniel Shahaf
2020-04-15  2:05                                     ` dana
2020-04-16  4:24                                       ` Daniel Shahaf
2020-04-18 16:32                                         ` Cedric Ware
2020-04-20 17:28                                           ` dana
2020-04-20 22:17                                             ` Cedric Ware
2020-03-15  1:04                       ` Daniel Shahaf
2020-03-13 14:26                   ` dana

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=20200111154143.fjtwgfnztqfmkyda@phare.normalesup.org \
    --to=cedric.ware__bml@normalesup.org \
    --cc=dana@dana.is \
    --cc=zsh-workers@zsh.org \
    /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://git.vuxu.org/mirror/zsh/

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 NNTP newsgroup(s).