./sysutils/p5-Sys-SigAction, Perl extension for Consistent Signal Handling

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 0.23nb2, Package name: p5-Sys-SigAction-0.23nb2, Maintainer: pkgsrc-users

This module implements set_sig_handler(), which sets up a signal handler and
(optionally) returns an object which causes the signal handler to be reset
to the previous value, when it goes out of scope.

Also implemented is timeout_call() which takes a timeout value and a code
reference, and executes the code reference wrapped with an alarm timeout.

Finally, two convenience routines are defined which allow one to get the
signal name from the number -- sig_name(), and get the signal number from
the name -- sig_number().

Required to run:

Required to build:

Master sites: (Expand)

SHA1: 451c7c986a905d215a6517cf8fb85b4223e0b0ff
RMD160: bf73dcb452beb0eea87ac71b77027d360b65aed7
Filesize: 25.021 KB

Version history: (Expand)

CVS history: (Expand)

   2019-08-11 15:25:21 by Thomas Klausner | Files touched by this commit (3557) | Package updated
Log message:
Bump PKGREVISIONs for perl 5.30.0
   2019-06-30 22:17:50 by Nia Alarie | Files touched by this commit (1816) | Package updated
Log message:
Update packages using a search.cpan.org HOMEPAGE to metacpan.org.

The former now redirects to the latter.

This covers the most simple cases where http://search.cpan.org/dist/name
can be changed to https://metacpan.org/release/name.

Reviewed by hand to hopefully make sure no unwanted changes sneak in.
   2018-08-22 11:48:07 by Thomas Klausner | Files touched by this commit (3558)
Log message:
Recursive bump for perl5-5.28.0
   2017-09-18 13:55:26 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
p5-Sys-SigAction: update to 0.23.

Changes in Sys::SigAction 0.23  10 September 2016

Responding to Bug: https://rt.cpan.org/Public/Bug/Display.html?id=105091

Renamed t/nested.t to t/inline_nested.t (don't execute this on arm platforms
arm perl port appear to be at fault.  See t/inline_nested.t

create new tests:


Allow arm platforms, but skip t/inline_nested.t with a warning
on arm platforms.

Desupport perl 5.5 (that was soooo long ago > 12 years)... This
allows me to turn on use warnings everywhere: Prompted by the Kwalitee
folks who noticed it was not used.

Set MIN_PERL_VERSION => 5.6.0 in Makefile.PL.

Referenced the new github repository in the generated META.* files.
   2017-06-05 16:25:36 by Ryo ONODERA | Files touched by this commit (2298)
Log message:
Recursive revbump from lang/perl5 5.26.0
   2016-08-16 02:23:23 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 0.22

Upstream changes:
Changes in Sys::SigAction 0.22 20 Nov 2013

Fix lack of interpolation in Makefile.PL for unsupported MSWin OS.
   2016-06-08 21:25:20 by Thomas Klausner | Files touched by this commit (2236) | Package updated
Log message:
Bump PKGREVISION for perl-5.24.
   2016-02-09 15:13:18 by Makoto Fujiwara | Files touched by this commit (2) | Package updated
Log message:
Update 0.15 to 0.21
  Changes in Sys::SigAction 0.21  20 Nov 2013
    Remove erroneous note at the end of the POD related to references to
    this module in DBD:Oracle. In reality the reference was in DBI, and
    it is still there.

    Close pod error bug (which referred to the above paragraph)
    submitted by the Debian Packaging team.

  Changes in Sys::SigAction 0.20  4 Aug 2013
    Even if "Time::HiRes::ualarm()" exists, it may not necessarily
    work. (There were way too many broken smoke tests which might have
    been the result of this). One reason for this may also bave been
    that the test was looking for too small an interval in the
    sub-second timeout tests. On busy systems, this may also have been
    causing tests to fail.

    This version got rid of the attempt at tracking broken environments
    in timeout.t (the hash structure mentioned in the previous change).

    The sub-second timer tests now set a timeout at 0.1 seconds, and
    check for a delta time that is less than 0.8 seconds. Proving that
    they completed in under 1 second. This provides a 0.7 second range
    of execution time to account for busy systems.  Previous tests, only
    allowed for something less than 0.1 second.

    Makefile.PL now looks for "Time::HiRes::ualarm()", and tests it. If
    it works, high resolution timeouts are enabled.  Makefile.PL reports
    what it finds, and t/timeout.t reports when high resolution tests
    are disabled, but timeout.t should not fail because of this... it
    will just run fewer tests.

  Changes in Sys::SigAction 0.19  27 Jul 2013
    Change sig_alarm() to use HiRes::ualarm() instead of
    HiRes::alarm(). Hoping to fix hires test failures on some platforms.

    Build a hash structure in timeout.t to disable the HiRes tests on
    certain platforms where these functions may to be consistently
    broken, but disable them for at least another round, hoping that the
    change to using HiRes::ualarm() solves the problem.

    Also, restructure timeout.t to hardcode the number of tests
    run. Apparently Test::More on perl 5.8.x insisteds on getting the
    plan before ANY tests are run.

    Build similar structure in mask.t to disable the test on certain
    platforms were signal masking appears to be broken. Currently this
    is set to

       my $mask_broken_platforms = {
           'archname' => { 'i686-cygwin-thread-multi-64int' => 1
          ,'perlver' =>  { 'v5.10.1' => 1

    Update Makefile.PL to note the fact the HiRes timeouts may broken on
    some platforms.

  Changes in Sys::SigAction 0.18  24 Jul 2013
    Fix "bareword" error on some platforms at least, by explicitly
    importing INT_MAX from POSIX module.

    Fix Changes file which listed verson 0.16 twice when it should have
    list version 0.17 for the more recent changes.

  Changes in Sys::SigAction 0.17  22 Jul 2013
    Fix timeout.t to use POSIX::pause() instead of select(), which was
    used to optimized the while ( 1 ) loop in the forever function. This
    caused failures on some platforms. pause() is right solution --
    thanks (again) to Carsten Gaebler and for the suggestion for
    handling the Time::HiRes request.  Update Makefile.PL to note the
    fact the HiRes timeouts may broken on some platforms.

    More double eval documentation cleanup that had not been previously
    caught in the POD. (bug #79130).

    When Time::HiRes is present, allow for long timeouts longer than the
    POSIX::INT_MAX microseconds when Time::HiRes is present.  Just call
    call alarm() instead of ualarm() in the case where input argument
    would result in a msecs value in an argument to ualarm which is
    larger than POSIX::INT_MAX (and, of course, add a test for this in
    timeout.t). (bug/enhancement request #75784)

    Fix typos in dbd-oracle-timeout.POD (bug #87141). It appears that
    the DBD:oracle module may now have internal handling for this
    problem (DBD::oracle not longer references Sys::SigAction).

  Changes in Sys::SigAction 0.16  21 Jul 2013
    Thanks to excellent patches from Carsten Gaebler (contact me if you
    want to contact him), timeout_call() now supports passing an array
    of arguments which it will pass to the code it executes.

    Minor tweak to POD.