fe9dc3e36f6ccbf151004ebd0e769224ec276568
[perl.git] / ext / Time / HiRes / Changes
1 Revision history for Perl extension Time::HiRes.
2
3 1.86    [2005-12-17]
4         - HiRes.t:s/ok 32/ok 33/, from Dominic Dunlop
5         - tighten up the clock() test marginally by requiring non-negative
6         - clock_nanosleep() and clock() doc tweaks
7
8 1.85    [2005-12-16]
9         - the interface to clock_nanosleep() is more natural
10           when it is like (hires) time() (instead of like nanosleep),
11           and the .xs implementation of clock_nanosleep() in 1.84
12           was broken anyway
13         - the semantics of clock() are not quite so silly as I thought,
14           but still somewhat odd, documented as such
15         - additional enhancements to the clock() documentation
16         - add test for clock_nanosleep() (I cannot test this
17           since none of my systems have the function)
18         - add test for clock()
19
20 1.84    [2005-12-16]
21         - add clock() which returns the processor time in
22           (floating point) seconds since an arbitrary era
23         - add clock_nanosleep() which suspends the current
24           thread until either absolute time or for relative time
25         - [rt.cpan.org #16486] printf missing value in HiRes.t
26         - add constants CLOCKS_PER_SEC, CLOCK_SOFTTIME, TIMER_ABSTIME
27         - tiny typo fixes
28
29 1.83    [2005-11-19]
30         - has_symbol() was wrong since e.g. ITIMER_VIRTUAL is exported
31           via @EXPORT_OK even when it is not available.  This is heinous.
32           @EXPORT_OK should be determined at Makefile.PL time.
33         - be more lenient is testing clock_gettime(): allow more slop,
34           and retry up to three times, sleeping a random nap between
35           the retries
36         - human months are one-based (noticed by Anton Berezin)
37
38 1.82    [2005-10-06]
39         - CLOCK_REALTIME is an enum value (of the clockid_t enum)
40           in HP-UX (and might be so elsewhere, too), debugged by
41           H. Merijn Brand
42         - include const-c.inc as late as possible (from Randy Kobes,
43           [rt.cpan.org #15552] to avoid undefined usleep() on Win32
44
45 1.81    [2005-11-05]
46         - try to be more robust and consistent in the detection of
47           CLOCK_REALTIME and ITIMER_VIRTUAL in HiRes.t: the proper
48           way is
49
50                 sub has_symbol {
51                     my $symbol = shift;
52                     eval 'import Time::HiRes qw($symbol)';
53                     return 0 unless $@ eq '';
54                     return exists ${"Time::HiRes::$symbol"};
55                 }
56
57           and then use
58
59                 &FOO_BAR
60
61           in the test.  All these moves are needed because
62
63           1) one cannot directly do eval 'Time::HiRes::FOO_BAR'
64              because FOO_BAR might have a true value of zero
65              (or in the general case an empty string or even undef)
66
67           2) In case FOO_BAR is not available in this platform,
68              &FOO_BAR avoids the bareword warning
69
70         - wait more (1.5 seconds instead of 0.1) for the CLOCK_REALTIME test
71           but expect the 'customary' slop of 0.20 instead of 0.25
72         - fixed inside a comment HAS_POLL -> TIME_HIRES_NANOSLEEP
73         - at the end of HiRest.t tell how close we were to termination
74
75 1.80    [2005-11-04]
76         - Gisle noticed a mistake (using HAS_NANOSLEEP) in 1.79
77
78 1.79    [2005-11-03]
79         - try nanosleep for emulating usleep -- may help in some weird
80           embedded realtime places which have nanosleep but neither usleep
81           nor select nor poll (doesn't have to be weird embedded realtime
82           place, though -- in many places usleep is nanosleep anyway)
83         - try poll for emulating usleep -- this may help some obscure/old
84           SVR4 places that have neither usleep nor select
85         - a redundant test guard in HiRes.t
86
87 1.78    [2005-11-03]
88         - ITIMER_VIRTUAL detection in HiRes.t had problems (that we cannot
89           in the general case fail already at 'use' phase is suboptimal)
90         - fixes to the documentation of clock_gettime() and clock_getres()
91
92 1.77    [2005-11-03]
93         - add support for the POSIX clock_gettime() and clock_getres(),
94           if available, either as library calls or as syscalls
95         - be more defensive about missing functionality: break out
96           early (during 'use') if no e.g. clock_getres() is available,
97           and protect our back by trapping those cases also in HiRes.xs
98         - the test added in 1.76 could cause an endless loop e.g. in Solaris,
99           due to mixing of sleep() and alarm() (bad programmer, no cookie!)
100
101 1.76    [2005-10-22]
102         - testing for nanosleep had wrong logic which caused nanosleep
103           to become undefined for e.g. Mac OS X
104         - added a test for a core dump that was introduced by Perl 5.8.0
105           safe signals and was fixed for the time of 5.8.1 (one report of
106           the core dump was [perl #20920]), the test skipped pre-5.8.1.
107         - *cough* s/unanosleep/nanosleep/g; *cough*
108
109 1.75    [2005-10-18]
110         - installation patch from Gisle Aas: in Perls 5.8.x and later
111           use MakeMaker INSTALLDIRS value of 'perl' instead of 'site'.
112
113 1.74    [2005-09-19]
114         - [cpan #14608] Solaris 8 perl 5.005_03 File::Spec module does not have method rel2abs
115           (the workaround is not to use rel2abs, should not be necessary)
116         - [cpan #14642] U2time wrongly exported on the C API
117           (patch supplied by the reporter, SALVA@cpan.org)
118         - add release dates to Changes
119
120 1.73    [2005-08-16]
121         - Time::HiRes::nanosleep support for Solaris [PATCH]
122           (POSIX::uname() not available if building with core perl,
123            from Gisle Aas, via perl5-porters, perl change #25295)
124
125 1.72    [2005-07-01]
126         - going back to the 1.68 loader setup (using DynaLoader)
127           since too many weird things starting breaking
128         - fix a typo in José Auguste-Etienne's name
129
130 1.71    [2005-06-28]
131         - a thinko in the nanosleep() detection
132         - move more changes stuff from the README to Changes
133         - add -w to the Makefile.PL
134
135 1.70    [2005-06-26]
136         - oops in 1.69 about @ISA (not affecting anything but silly)
137         - add copyright 2005 to HiRes.pm
138         - add copyright and license to HiRes.xs
139         - add copyrights 2003, 2004, 2005 to README
140
141 1.69    [2005-06-25]
142         - actually run a test for nanosleep
143           (if there is no $Config{d_nanosleep}) since e.g. in AIX 4.2
144           it seems that one can link in nanosleep() but then calling
145           it fails instantly and sets errno to ENOSYS (Not implemented).
146           This may be fixable in the AIX case by figuring out the right
147           (realtime POSIX?) libs and whatnot, but in the general case
148           running a real test case is better.  (Of course, this change
149           will no doubt run into portability problems because of the
150           execution step...)  Note that because of hysterical raisins
151           most Perls do NOT have $Config{d_nanosleep} (scanning for
152           it by Configure would in many platforms require linking in
153           things like -lrt, which would in many platforms be a bad idea
154           for Perl itself).
155           (from José Auguste-Etienne)
156         - support XSLoader also since it's much faster
157           (from Alexey Tourbin)
158         - add SEE ALSO (BSD::Resource and Time::TAI64)
159
160 1.68    [2005-05-14]
161         - somehow 1.67 had a lot of doubled lines (a major cut-and-paste
162           error suspected), but miraculously it still worked since the
163           doubling took place below the __END__ token
164         - undef Pause() before defining it to avoid redefinition warnings
165           during compilation in case perl.h had already defined Pause()
166           (part of perl change #24271)
167         - minor doc tweaks
168
169 1.67    [2005-05-04]
170         - (internal) don't ignore the return value of gettimeofday()
171         - (external) return undef or an empty if the C gettimeofday() fails
172           (affects Time::HiRes gettimeofday() and the hires time())
173
174 1.66    [2004-12-19]
175         - add nanosleep()
176         - fix the 'hierachy' typo in Makefile.PL [rt.cpan.org #8492]
177         - should now build in Solaris [rt.cpan.org #7165] (since 1.64)
178         - should now build in Cygwin [rt.cpan.org #7535] (since 1.64)
179         - close also [rt.cpan.org #5933] "Time::HiRes::time does not
180           pick up time adjustments like ntp" since ever reproducing it
181           (and therefore verifying a possible fix) in the same environment 
182           has become rather unlikely
183
184 1.65    [2004-09-18]
185         - one should not mix u?alarm and sleep (the tests modified
186           by 1.65, #12 and #13, hung in Solaris), now we just busy
187           loop executing an empty block
188         - in the documentation underline the unspecificity of mixing
189           sleeps and alarms
190         - small spelling fixes
191
192 1.64    [2004-09-16]
193         - regenerate ppport.h with Devel::PPPort 3.03,
194           now the MY_CXT_CLONE is defined in ppport.h,
195           we no more need to do that.
196
197         - the test #12 would often hang in sigsuspend() (at least that's
198           where Mac OS X' ktrace shows it hanging).  With the sleep()s
199           changed to sleep(1)s, the tests still pass but no hang after
200           a few hundred repeats.
201
202 1.63    [2004-09-01]
203         - Win32 and any ithread build: ppport.h didn't define
204           MY_CXT_CLONE, which seems to be a Time-HiRes-ism.
205
206 1.62    [2004-08-31]
207         - Skip testing if under PERL_CORE and Time::HiRes has not
208           been Configured (from Marcus Holland-Moritz, core change
209           #23246)
210         - Use ppport.h generated by Devel::PPPort 3.01,
211           allowing cutting away our own portability code.
212         - Don't use $ENV{PERL_CORE} for < 5.6.0.
213         - Don't use "for my $i" for <= 5.003.
214         - Don't use Pause() for <= 5.003.
215         - Can't use newSVpvf for <= 5.003.
216         (most of the changes from Marcus)
217
218 1.61    [2004-08-21]
219         - Win32: reset reading from the performance counters every
220           five minutes to better track wall clock time (thanks to
221           PC timers being often quite bad), should help long-running
222           programs.
223
224 1.60    [2004-08-15]
225         - Win32: Patch from Steve Hay
226           [PATCH] Re: [perl #30755] [Win32] Different results from Time::HiRes::gettimeofdayunder the debugger
227           to [perl #30755] reported by Nigel Sandever
228
229         - Cygwin: Use the Win32 recalibration code also in Cygwin if the
230           <w32api/windows.h> APIs are available.  Cygwin testing by
231           Yitzchak Scott-Thoennes.
232
233         - Solaris: use -lposix4 to get nanosleep for Solaris 2.6,
234           after that keep using -lrt, patch from Alan Burlison,
235           bug reported in [cpan #7165]
236
237 1.59    [2004-04-08]
238         - Change the Win32 recalibration limit to 0.5 seconds and tweak
239           the documentation to blather less about the gory details of the
240           Win32 implementation and more about the complications in general
241           of meddling with the system clock.
242
243 1.58    [2004-04-08]
244         - Document the 1.57 change better.
245
246 1.57    [2004-07-04]
247         - Win32/Cygwin/MinGW: if the performance counter drifts by more
248           than two seconds from the system clock (due to ntp adjustments,
249           for example), recalibrate our internal counter: from Jan Dubois,
250           based on [cpan #5933] by Jerry D. Hedden.
251
252 1.56    [2004-29-02]
253         - Give a clearer message if the tests timeout (perl change #22253)
254         - Don't use /tmp or its moral equivalents (perl bug #15036,
255           perl change #22258)
256
257 1.55    [2004-01-14]
258         - Windows: mingw32 patch from Mike Pomraning (use Perl's Const64()
259           instead of VC-specific i64 suffix)
260
261 1.54    [2003-12-31]
262         - Solaris: like Tru64 (dec_osf) also Solaris need -lrt for nanosleep
263
264 1.53    [2003-12-30]
265         - Windows: higher resolution time() by using the Windows
266           performance counter API, from Jan Dubois and Anton Shcherbinin.
267           The exact new higher resolution depends on the hardware,
268           but it should be quite a bit better than using the basic
269           Windows timers.
270
271 1.52    [2003-10-28]
272         - In AIX (v?) with perl 5.6.1 the HiRes.t can hang after
273           the subtest 18.  No known analysis nor fix, but added
274           an alarm (that requires fork() and alarm()) to the test.
275
276 1.51    [2003-09-22]
277         - doc tweaks from mjd (perl change #20456)
278         - NCR MP-RAS hints file added (svr4.pl) (perl change #21249)
279
280 1.50    [2003-08-02]
281         - add a message (for non-core builds) to Makefile.PL about
282           the LC_ALL=C workaround
283         - &Time::HiRes::d_nanosleep was broken (perl change #20131)
284         - the nanosleep() probe was broken (perl change #20061)
285         - use existence instead of definedness for feature probes
286           (perl change #20043)
287         - MPE/iX tweak (perl change #20042)
288         - do not use HAS_NANOSLEEP (perl change #19898)
289
290 1.49    [2003-06-23]
291         - UVuf for non-IVSIZE platforms (from Keiichiro Nagano)
292         - OS/2 can always mix subsecond sleeps with signals
293           (part of perl change #19789)
294
295 1.48    [2003-06-04]
296         - workaround for buggy gcc 2.95.3 in openbsd/sparc64
297           (perl change #19592)
298
299 1.47    [2003-05-03]
300         - do not use -lrt in Linux (from March Lehmann, perl change #19449)
301                 - unnecessary (nanosleep is in libc anyway)
302                 - harmful (-lrt slows down execution)
303                 - incompatible (with many distributions' pthreads)
304
305 1.46    [2003-04-25]
306         - do not create files in blib directories under core
307           (perl change #19160, from rgs)
308         - detypo s/VTLARM/VTARLM/ (perl change #19328, from mjd)
309
310 1.45    [2003-04-01]
311         - guarantee that $xdefine in HiRes.t is always defined
312           (perl change #19109, from IlyaZ)
313         - a cleaner way to detect PERL_CORE (perl change #19111,
314           from IlyaZ)
315
316 1.44    [2003-03-30]
317         - add hints/irix.pl to turn off overly POSIX flags that
318           cause hide struct timespec to be hidden (and compilation
319           to fail) (bleadperl change #19085)
320         - documentation tweaks
321
322 1.43    [2003-03-11]
323         - add c:/temp to the list of temp directories to probe
324           so that cygwin (and win*?) builds are happy.  This was
325           needed at least in my cygwin 1.3.20/w2k setup.
326
327 1.42    [2003-01-07]
328         - modernize the constants code (from Nicholas Clark)
329
330 1.41    [2003-01-03]
331         - At some point the ability to figure our the correct incdir
332           for EXTERN.h (either a core perl build, or an installed perl)
333           had broken (which lead into all test compiles failing with
334           a core perl build, but thanks to the robustness of Makefile.PL
335           nothing of this was visible).  The brokenness seemed to be
336           caused by $ENV{PERL_CORE} not being on for core builds?
337           Now stole a trick from the Encode that sets $ENV{PERL_CORE}
338           right, and both styles of build should work again.
339
340 1.40    [2003-01-03]
341         - Nicholas Clark noticed that the my_catdir() emulation function
342           was broken (which means that we didn't really work for Perls
343           5.002 and 5.003)
344         - inspired by fixing the above made the whole Makefile.PL -w
345           and strict clean
346         - tightened up the Makefile.PL output, less whitespace
347
348 1.39    [2003-10-20]
349         - fix from Craig Berry for better building in VMS with PERL_CORE
350
351 1.38    [2003-10-13]
352         - no functional changes
353         - move lib/Time/HiRes.pm as Hires.pm
354         - libraries scanning was slightly broken (always scanned
355           for a library even when $Config{libs} already had it)
356
357 1.37    [2003-09-23]
358         - Ray Zimmerman ran into a race condition in Mac OS X.
359           A 0.01-second alarm fired before the test expected.
360           The test first slept indefinitely (blocking for signals)
361           and only after that tested for the signal having been sent.
362           Since the signal had already been sent, the test #12 never
363           completed.  The solution: test first, then block.
364         - default to being silent on all probing attempts, set the
365           environment variable VERBOSE to a true value to see the
366           details (the probing command and the possible errors)
367
368 1.36    [2003-09-12]
369         - do not clear MAN3PODS in Makefile.PL (Radoslaw Zielinski)
370         - INSTALLDIRS => 'perl' missing which means that Time::HiRes
371           cannot be upgraded from CPAN to override the 5.8.0 version
372           (Guido A. Ostkamp)
373         - Time::HiRes 1.35 could not be dropped as-is to bleadperl
374           because the include directories did not adjust themselves
375           if $ENV{PERL_CORE} (Hugo van der Sanden)
376         - add documentation about the restart of select() under alarm()
377
378 1.35    [2003-08-24]
379         - small documentation tweaks
380
381
382 1.34    [2003-08-22]
383         - better VMS operation (Craig Berry)
384
385 1.33    [2003-08-20]
386         - our time machine is accelerating: now works with Perl 5.004_01
387           (tried with 5.003_07 and 5.002 but I get segmentation faults
388            from running the Makefile.PL with those in Tru64 4.0D)
389
390 1.32    [2003-08-20]
391         - backward compatibility (pre-5.6.0) tweaks:
392           - no XSLoader in 5.00503, use DynaLoader instead
393           - no SvPV_nolen, either
394           - no PerlProc_pause(), either
395           - now tested with 5.00404 and 5.00503
396           - Makefile.PL requires 5.00404 (no more 5.002)
397         - use nanosleep instead of usleep, if it is available (Wilson Snyder)
398           (this means that one can mix subsecond sleeps with alarms)
399         - because of nanosleep we probe for -lrt and -lposix4
400         - the existence of getitimer/nanosleep/setitimer/ualarm/usleep
401           is available by exportable constants Time::HiRes::d_func
402           (since older Perl do not have them in %Config, and even
403            5.8.0 does not probe for nanosleep)
404
405 1.31    [2003-08-19]
406         - backward compatibility (pre-5.6.1) tweaks:
407           - define NV if no NVTYPE
408           - define IVdf if needed (note: the Devel::PPPort
409             in 5.8.0 does not try hard hard enough since
410             the IVSIZE might not be defined)
411           - define NVgf if needed
412           - grab the typemap from 5.8.0 for the NV stuff
413
414         1.31 and 1.32 add more backward compatibility (now all the way
415         back to Perl 5.00404), and using nanosleep() (if available) for
416         subsecond sleeps.
417
418 1.30    [2003-08-16]
419
420         - release 1.29_02 as 1.30
421
422         1.30 adds all the changes made during the Perl 5.6->5.7->5.8
423         development cycle.  Most notably portability across platforms has been
424         enhanced, and the interval timers (setitimer, getitimer) have been
425         added.  Note that the version of Time::HiRes that is included in Perl
426         5.8.0 calls itself 1.20_00, but it is equivalent to this Time::HiRes
427         version.  Note also that in 1.30 Wegscheid turns over the maintenance
428         to Jarkko Hietaniemi.
429
430 1.29_02 [2003-08-16]
431
432         - fix a silly unclosed comment typo in HiRes.xs
433         - document and export REALTIME_REALPROF (Solaris)
434
435 1.29_01 [2003-08-16]
436
437         - only getitimer(ITIMER_REAL) available in Cygwin and Win32
438           (need to patch this also in Perl 5.[89])
439         - remove CVS revision log from HiRes.xs
440
441 1.29_00 [2003-08-14]
442
443         The following numbered patches refer to the Perl 5.7 changes,
444         you can browse them at http://public.activestate.com/cgi-bin/perlbrowse
445
446         - 17558: Add #!./perl to the .t
447         - 17201: linux + usemorebits fix, from Rafael Garcia-Suarez
448         - 16198: political correctness, from Simon Cozens
449         - 15857: doc tweaks, from Jarkko Hietaniemi
450         - 15593: optimization in .xs, from Paul Green
451         - 14892: pod fixes, from Robin Barker
452         - 14100: VOS fixes, from Paul Green
453         - 13422: XS segfault, from Marc Lehmann
454         - 13378: whether select() gets restarted on signals, depends
455         - 13354: timing constraints, again, from Andy Dougherty
456         - 13278: can't do subsecond alarms with ualarm;
457                  break out early if alarms do not seem to be working
458         - 13266: test relaxation (cygwin gets lower hires
459                  times than lores ones)
460         - 12846: protect against high load, from Jarkko Hietaniemi
461         - 12837: HiRes.t VMS tweak, from Craig A. Berry
462         - 12797: HiRes.t VMS tweak, from Charles Lane
463         - 12769: HiRes.t VMS tweak, from Craig A. Berry
464         - 12744: gcc vs MS 64-bit constant syntax, from Nick Ing-Simmons
465         - 12722: VMS ualarm for VMS without ualarm, from Charles Lane
466         - 12692: alarm() ain't gonna work if ualarm() ain't,
467                  from Gurusamy Sarathy
468         - 12680: minor VMS tweak, from Charles Lane
469         - 12617: don't try to print ints as IVs, from Jarkko Hietaniemi
470         - 12609: croak on negative time, from Jarkko Hietaniemi
471         - 12595: Cygwin rounds up for time(), from Jarkko Hietaniemi
472         - 12594: MacOS Classic timeofday, from Chris Nandor 
473         - 12473: allow for more than one second for sleep() and usleep()
474         - 12458: test tuning, relax timing constraints,
475                  from Jarkko Hietaniemi
476         - 12449: make sleep() and usleep() to return the number
477                  of seconds and microseconds actually slept (analogously
478                  with the builtin sleep()), also make usleep() croak if
479                  asked for more than 1_000_000 useconds, from Jarkko Hietaniemi
480         - 12366: Time::HiRes for VMS pre-7.0, from Charles Lane
481         - 12199: do not use ftime on Win32, from Gurusamy Sarathy
482         - 12196: use ftime() on Win32, from Artur Bergman
483         - 12184: fix Time::HiRes gettimeofday() on Win32, from Gurusamy Sarathy
484         - 12105: use GetSystemTime() on Win32, from Artur Bergman
485         - 12060: explain the 1e9 seconds problem, from Jarkko Hietaniemi
486         - 11901: UNICOS sloppy division, from Jarkko Hietaniemi
487         - 11797: problem in HiRes.t, from John P. Linderman
488         - 11414: prototype from Time::HiRes::sleep(), from Abhijit Menon-Sen
489         - 11409: Time::HiRes qw(sleep) failed, from Abhijit Menon-Sen
490         - 11270: dynix/ptx 4.5.2 hints fix, from Peter Prymmer 
491         - 11032: VAX VMS s/div/lib\$ediv/ fix, from Peter Prymmer
492         - 11011: VAX VMS s/qdiv/div/ fix, from Peter Prymmer
493         - 10953: SCO OpenServer 5.0.5 requires an explicit -lc for usleep(),
494                  from Jonathan Stowe
495         - 10942: MPE/IX test tweaks, from Mark Bixby
496         - 10784: unnecessary pod2man calls, from Andy Dougherty 
497         - 10354: ext/ + -Wall, from Doug MacEachern
498         - 10320: fix the BOOT section to call myU2time correctly
499         - 10317: correct casting for AIX< from H. Merijn Brand
500         - 10119: document that the core time() may be rounding, not truncating
501         - 10118: test fix, from John Peacock
502         -  9988: long =item, from Robin Barker
503         -  9714: correct test output
504         -  9708: test also the scalar aspect of getitimer()
505         -  9705: Add interval timers (setitimer, getitimer)
506         -  9692: do not require at least 5.005 using XS
507                  
508         The following changes were made on top of the changes
509         made for Time::HiRes during the Perl 5.7 development
510         cycle that culminated in the release of Perl 5.8.0. 
511
512         - add "require 5.005" to the Makefile.PL
513         - remove the REVISION section (CVS log) from HiRes.pm
514         - add jhi's copyright alongside Douglas'
515         - move HiRes.pm to lib/Time/
516         - move HiRes.t to t/
517         - modify HiRes.t to use $ENV{PERL_CORE}
518         - modify the original Time::HiRes version 1.20 Makefile.PL
519           to work both with Perl 5.8.0 and the new code with pre-5.8.0
520           Perls (tried with 5.6.1)
521         - tiny tweaks and updates in README and TODO
522         - bump the VERSION to 1.29
523
524 1.20  Wed Feb 24 21:30 1999
525         - make our usleep and ualarm substitutes into hrt_usleep 
526           and hrt_ualarm. This helps static links of Perl with other
527           packages that also have usleep, etc. From
528           Ilya Zakharevich <ilya@math.ohio-state.edu>
529         - add C API stuff. From Joshua Pritikin
530           <joshua.pritikin@db.com>
531         - VMS Makefile.PL fun.  From pvhp@forte.com (Peter Prymmer)
532         - hopefully correct "-lc" fix for SCO.
533         - add PPD stuff
534
535         1.20 adds a platform neutral set of C accessible routines if you are
536         running 5.005+.  All other changes are packaging changes and build
537         fixes(?) for statically linked Perl, SCO, and VMS.
538
539 1.19  Tue Sep 29 22:30 1998
540         - put VMS gettimeofday() in. Patch is from Sebastian Bazley
541           <seb@stian.demon.co.uk>
542         - change GIMME_V to GIMME to help people with older versions of
543           Perl.
544         - fix Win32 version of gettimeofday(). It didn't affect anything,
545           but it confuses people reading the code when the return value
546           is backwards (0 is success).
547         - fix Makefile.PL (more) so that detection of gettimeofday is
548           more correct.
549
550         1.19 has better VMS support.
551
552 1.18  Mon Jul 6 22:40 1998
553         - add usleep() for Win32.
554         - fix Makefile.PL to fix reported HP/UX feature where unresolved
555           externals still cause an executable to be generated (though no
556           x bit set). Thanks to David Kozinn for report and explanation.
557           Problems with the fix are mine :)
558
559         1.18 has limited Win32 support (no ualarm). Added usleep for Win32.
560         Probably buggy. I'm sure I'll hear.
561
562 1.17  Wed Jul 1 20:10 1998
563         - fix setitimer calls so microseconds is not more than 1000000.
564           Hp/UX 9 doesn't like that. Provided by Roland B Robert, PhD.
565         - make Win32. We only get gettimeofday (the select hack doesn't
566           seem to work on my Win95 system).
567         - fix test 4 on 01test.t. add test to see if time() and 
568           Time::HiRes::time() are close.
569
570 1.16  Wed Nov 12 21:05 1997
571         - add missing EXTEND in new gettimeofday scalar code.
572
573         1.16+ should be closer to building out of the box on Linux. Thanks
574         to Gisle Aas for patches, and the ualarm equivalent using setitimer.
575
576         If your underlying operating system doesn't implement ualarm(), then
577         a fake using setitimer() will be made.  If the OS is missing usleep(),
578         a fake one using select() will be made. If a fake can't be made for
579         either ualarm() or usleep(), then the corresponding Perl function will
580         not be available.  If the OS is missing gettimeofday(), you will get
581         unresolved externals, either at link- or run-time.
582
583         This is an improvement; the package used to not even build if
584         you were missing any of these bits. Roderick Schertler
585
586         <roderick@argon.org> did all the conditional compilation stuff,
587         look at HiRes.pm and the test suites; it's good educational reading.
588
589 1.15  Mon Nov 10 21:30 1997
590         - HiRes.pm: update pod. Provided by Gisle Aas.
591         - HiRes.xs: if gettimeofday() called in scalar context, do
592           something more useful than before. Provided by Gisle Aas.
593         - README: tell of xsubpp '-nolinenumber' woes. thanks to
594           Edward Henigin <ed@texas.net> for pointing out the problem.
595
596 1.14  Wed Nov 5 9:40 1997
597         - Makefile.PL: look for setitimer
598         - HiRes.xs: if missing ualarm, but we have setitimer, make up
599           our own setitimer. These were provided by Gisle Aas.
600
601 1.13  Tue Nov 4 23:30 1997
602         - Makefile.PL: fix autodetect mechanism to do try linking in addition
603           to just compiling; should fix Linux build problem. Fix was provided
604           by Gisle Aas.
605
606 1.12  Sun Oct 12 12:00:00 1997
607         - Makefile.PL: set XSOPT to '-nolinenumbers' to work around xsubpp bug;
608           you may need to comment this back out if you have an older xsubpp.
609         - HiRes.xs: set PROTOTYPES: DISABLE
610
611 1.11  Fri Sep 05 16:00:00 1997
612         - Makefile.PL:
613           Had some line commented out that shouldn't have been (testing
614           remnants)
615         - README:
616           Previous version was corrupted.
617
618 1.10  Thu May 22 20:20:00 1997
619         - HiRes.xs, HiRes.pm, t/*:
620               - only compile what we have OS support for (or can 
621                 fake with select())
622               - only test what we compiled 
623               - gross improvement to the test suite
624               - fix EXPORT_FAIL. 
625           This work was all done by Roderick Schertler
626           <roderick@argon.org>. If you run Linux or
627           one of the other ualarm-less platforms, and you like this 
628           module, let Roderick know; without him, it still wouldn't 
629           be working on those boxes...
630         - Makefile.PL: figure out what routines the OS has and
631           only build what we need. These bits were written by Jarkko 
632           Hietaniemi <jhi@iki.fi>. Again, gratitude is due...
633
634 1.02  Mon Dec 30 08:00:00 1996
635         - HiRes.pm: update documentation to say what to do when missing
636           ualarm() and friends.
637         - README: update to warn that ualarm() and friends need to exist
638
639 1.01  Fri Oct 17 08:00:00 1996
640         - Makefile.PL: make XSPROTOARGS => '-noprototyopes'
641         - HiRes.pm: put blank line between __END__ and =head1 so that 
642           pod2man works.
643
644 1.00  Tue Sep 03 13:00:00 1996
645         - original version; created by h2xs 1.16