Revision history for the Perl extension Time::HiRes.

1.9724 [2011-06-09]

1.9723 [2011-06-07]

1.9722 [2011-05-18]

1.9721 [2010-03-17]

1.9720 [2010-02-14]

1.9719 [2009-01-04]

1.9718 [2008-12-31]

1.9717 [2008-12-30]

1.9716 [2008-12-26]

1.9715 [2008-04-08]

1.9714 [2008-04-07]

1.9713 [2008-04-04]

1.9712 [2008-02-09]

1.9711 [2007-11-29]

1.9710 [2007-11-29]

1.9709 [2007-11-28]

1.9708 [2007-10-05]

1.9707 [2007-02-27]

1.9706 [2007-02-25]

1.9705 [2007-02-06]

1.9704 [2007-01-01]

1.9703 [2006-12-08]

1.9702 [2006-12-06]

1.9701 [2006-12-04]

1.97 [2006-11-30]

1.96 [2006-11-30]

1.95 [2006-11-29]

1.94 [2006-10-16]

1.93 [2006-10-15]

1.92 [2006-10-13]

            use Time::HiRes;
            my @stat = Time::HiRes::stat();

          or even override the standard stat():
      
            use Time::HiRes qw(stat);

          to get the stat() timestamps

            my ($atime, $mtime, $ctime) = @stat[8, 9, 10];

          with subsecond resolution (assuming both the operating
          system and the filesystem support that kind of thing).

          Contributions for more systems (especially non-UNIX,
          e.g. but not limited to: Win32, VMS, OS/2) gladly accepted.
          (also more UNIX variants welcome: HP-UX? IRIX?)

          Thanks to H.Merijn Brand, John Peacock, and Craig
          Berry for brave beta testing.

1.91 [2006-09-29]

1.90 [2006-08-22]

1.89 [2006-08-22]

1.88 [2006-08-21]

1.87 [2006-02-13]

1.86 [2005-12-17]

1.85 [2005-12-16]

1.84 [2005-12-16]

1.83 [2005-11-19]

1.82 [2005-10-06]

1.81 [2005-11-05]

                sub has_symbol {
                    my $symbol = shift;
                    eval 'import Time::HiRes qw($symbol)';
                    return 0 unless $@ eq '';
                    return exists ${"Time::HiRes::$symbol"};
                }

          and then use

                &FOO_BAR

          in the test.  All these moves are needed because

          1) one cannot directly do eval 'Time::HiRes::FOO_BAR'
             because FOO_BAR might have a true value of zero
             (or in the general case an empty string or even undef)

          2) In case FOO_BAR is not available in this platform,
             &FOO_BAR avoids the bareword warning

        - wait more (1.5 seconds instead of 0.1) for the CLOCK_REALTIME test
          but expect the 'customary' slop of 0.20 instead of 0.25
        - fixed inside a comment HAS_POLL -> TIME_HIRES_NANOSLEEP
        - at the end of HiRest.t tell how close we were to termination

1.80 [2005-11-04]

1.79 [2005-11-03]

1.78 [2005-11-03]

1.77 [2005-11-03]

1.76 [2005-10-22]

1.75 [2005-10-18]

1.74 [2005-09-19]

1.73 [2005-08-16]

1.72 [2005-07-01]

1.71 [2005-06-28]

1.70 [2005-06-26]

1.69 [2005-06-25]

1.68 [2005-05-14]

1.67 [2005-05-04]

1.66 [2004-12-19]

1.65 [2004-09-18]

1.64 [2004-09-16]

1.63 [2004-09-01]

1.62 [2004-08-31]

1.61 [2004-08-21]

1.60 [2004-08-15]

1.59 [2004-04-08]

1.58 [2004-04-08]

1.57 [2004-07-04]

1.56 [2004-29-02]

1.55 [2004-01-14]

1.54 [2003-12-31]

1.53 [2003-12-30]

1.52 [2003-10-28]

1.51 [2003-09-22]

1.50 [2003-08-02]

1.49 [2003-06-23]

1.48 [2003-06-04]

1.47 [2003-05-03]

1.46 [2003-04-25]

1.45 [2003-04-01]

1.44 [2003-03-30]

1.43 [2003-03-11]

1.42 [2003-01-07]

1.41 [2003-01-03]

1.40 [2003-01-03]

1.39 [2003-10-20]

1.38 [2003-10-13]

1.37 [2003-09-23]

1.36 [2003-09-12]

1.35 [2003-08-24]

1.34 [2003-08-22]

1.33 [2003-08-20]

1.32 [2003-08-20]

1.31 [2003-08-19]

        1.31 and 1.32 add more backward compatibility (now all the way
        back to Perl 5.00404), and using nanosleep() (if available) for
        subsecond sleeps.

1.30 [2003-08-16]

        1.30 adds all the changes made during the Perl 5.6->5.7->5.8
        development cycle.  Most notably portability across platforms has been
        enhanced, and the interval timers (setitimer, getitimer) have been
        added.  Note that the version of Time::HiRes that is included in Perl
        5.8.0 calls itself 1.20_00, but it is equivalent to this Time::HiRes
        version.  Note also that in 1.30 Wegscheid turns over the maintenance
        to Jarkko Hietaniemi.

1.29_02 [2003-08-16]

1.29_01 [2003-08-16]

1.29_00 [2003-08-14]

        The following numbered patches refer to the Perl 5.7 changes,
        you can browse them at http://public.activestate.com/cgi-bin/perlbrowse

        - 17558: Add #!./perl to the .t
        - 17201: linux + usemorebits fix, from Rafael Garcia-Suarez
        - 16198: political correctness, from Simon Cozens
        - 15857: doc tweaks, from Jarkko Hietaniemi
        - 15593: optimization in .xs, from Paul Green
        - 14892: pod fixes, from Robin Barker
        - 14100: VOS fixes, from Paul Green
        - 13422: XS segfault, from Marc Lehmann
        - 13378: whether select() gets restarted on signals, depends
        - 13354: timing constraints, again, from Andy Dougherty
        - 13278: can't do subsecond alarms with ualarm;
                 break out early if alarms do not seem to be working
        - 13266: test relaxation (cygwin gets lower hires
                 times than lores ones)
        - 12846: protect against high load, from Jarkko Hietaniemi
        - 12837: HiRes.t VMS tweak, from Craig A. Berry
        - 12797: HiRes.t VMS tweak, from Charles Lane
        - 12769: HiRes.t VMS tweak, from Craig A. Berry
        - 12744: gcc vs MS 64-bit constant syntax, from Nick Ing-Simmons
        - 12722: VMS ualarm for VMS without ualarm, from Charles Lane
        - 12692: alarm() ain't gonna work if ualarm() ain't,
                 from Gurusamy Sarathy
        - 12680: minor VMS tweak, from Charles Lane
        - 12617: don't try to print ints as IVs, from Jarkko Hietaniemi
        - 12609: croak on negative time, from Jarkko Hietaniemi
        - 12595: Cygwin rounds up for time(), from Jarkko Hietaniemi
        - 12594: MacOS Classic timeofday, from Chris Nandor 
        - 12473: allow for more than one second for sleep() and usleep()
        - 12458: test tuning, relax timing constraints,
                 from Jarkko Hietaniemi
        - 12449: make sleep() and usleep() to return the number
                 of seconds and microseconds actually slept (analogously
                 with the builtin sleep()), also make usleep() croak if
                 asked for more than 1_000_000 useconds, from Jarkko Hietaniemi
        - 12366: Time::HiRes for VMS pre-7.0, from Charles Lane
        - 12199: do not use ftime on Win32, from Gurusamy Sarathy
        - 12196: use ftime() on Win32, from Artur Bergman
        - 12184: fix Time::HiRes gettimeofday() on Win32, from Gurusamy Sarathy
        - 12105: use GetSystemTime() on Win32, from Artur Bergman
        - 12060: explain the 1e9 seconds problem, from Jarkko Hietaniemi
        - 11901: UNICOS sloppy division, from Jarkko Hietaniemi
        - 11797: problem in HiRes.t, from John P. Linderman
        - 11414: prototype from Time::HiRes::sleep(), from Abhijit Menon-Sen
        - 11409: Time::HiRes qw(sleep) failed, from Abhijit Menon-Sen
        - 11270: dynix/ptx 4.5.2 hints fix, from Peter Prymmer 
        - 11032: VAX VMS s/div/lib\$ediv/ fix, from Peter Prymmer
        - 11011: VAX VMS s/qdiv/div/ fix, from Peter Prymmer
        - 10953: SCO OpenServer 5.0.5 requires an explicit -lc for usleep(),
                 from Jonathan Stowe
        - 10942: MPE/IX test tweaks, from Mark Bixby
        - 10784: unnecessary pod2man calls, from Andy Dougherty 
        - 10354: ext/ + -Wall, from Doug MacEachern
        - 10320: fix the BOOT section to call myU2time correctly
        - 10317: correct casting for AIX< from H. Merijn Brand
        - 10119: document that the core time() may be rounding, not truncating
        - 10118: test fix, from John Peacock
        -  9988: long =item, from Robin Barker
        -  9714: correct test output
        -  9708: test also the scalar aspect of getitimer()
        -  9705: Add interval timers (setitimer, getitimer)
        -  9692: do not require at least 5.005 using XS
                 
        The following changes were made on top of the changes
        made for Time::HiRes during the Perl 5.7 development
        cycle that culminated in the release of Perl 5.8.0. 

        - add "require 5.005" to the Makefile.PL
        - remove the REVISION section (CVS log) from HiRes.pm
        - add jhi's copyright alongside Douglas'
        - move HiRes.pm to lib/Time/
        - move HiRes.t to t/
        - modify HiRes.t to use $ENV{PERL_CORE}
        - modify the original Time::HiRes version 1.20 Makefile.PL
          to work both with Perl 5.8.0 and the new code with pre-5.8.0
          Perls (tried with 5.6.1)
        - tiny tweaks and updates in README and TODO
        - bump the VERSION to 1.29

1.20 Wed Feb 24 21:30 1999

        1.20 adds a platform neutral set of C accessible routines if you are
        running 5.005+.  All other changes are packaging changes and build
        fixes(?) for statically linked Perl, SCO, and VMS.

1.19 Tue Sep 29 22:30 1998

1.19 has better VMS support.

1.18 Mon Jul 6 22:40 1998

        1.18 has limited Win32 support (no ualarm). Added usleep for Win32.
        Probably buggy. I'm sure I'll hear.

1.17 Wed Jul 1 20:10 1998

1.16 Wed Nov 12 21:05 1997

        1.16+ should be closer to building out of the box on Linux. Thanks
        to Gisle Aas for patches, and the ualarm equivalent using setitimer.

        If your underlying operating system doesn't implement ualarm(), then
        a fake using setitimer() will be made.  If the OS is missing usleep(),
        a fake one using select() will be made. If a fake can't be made for
        either ualarm() or usleep(), then the corresponding Perl function will
        not be available.  If the OS is missing gettimeofday(), you will get
        unresolved externals, either at link- or run-time.

        This is an improvement; the package used to not even build if
        you were missing any of these bits. Roderick Schertler

        <roderick@argon.org> did all the conditional compilation stuff,
        look at HiRes.pm and the test suites; it's good educational reading.

1.15 Mon Nov 10 21:30 1997

1.14 Wed Nov 5 9:40 1997

1.13 Tue Nov 4 23:30 1997

1.12 Sun Oct 12 12:00:00 1997

1.11 Fri Sep 05 16:00:00 1997

1.10 Thu May 22 20:20:00 1997

1.02 Mon Dec 30 08:00:00 1996

1.01 Fri Oct 17 08:00:00 1996

1.00 Tue Sep 03 13:00:00 1996