|To:||perlbug [...] perl.org|
|Subject:||[BBC]: Commit 1381350 (Time::HiRes synch with CPAN) breaks Catalyst-Runtime and others|
|From:||James E Keenan <jkeenan [...] pobox.com>|
|Date:||Thu, 22 Mar 2018 21:28:15 -0400|
Time-HiRes is a distribution maintained under dist/, so it is supposed to be treated as "blead upstream", i.e., changes go first into blead and then are released to CPAN so as to be available to multiple versions of perl. Recently, however, there have been several releases of Time-HiRes directly to CPAN, leaving blead to play catch-up. One such release to CPAN has broken some code in CPAN distributions Catalyst-Runtime and Devel-TimeStats. Since that release of Time-HiRes was merged into blead prior to this week's release of perl-5.27.10, we now have a potential Blead Breaks CPAN situation -- though the code was broken is possibly sub-optimal, implying that the fix ought to be on CPAN rather than in Time-HiRes in blead. Nonetheless, we have to stay aware of this problem going into the release of perl-5.28.0; hence, this ticket. Details: 1. Recent commit to blead synching Time-HiRes with CPAN: ##### $ git log -- dist/Time-HiRes/HiRes.pm commit 13813507385079199d99d90776780dcd653f6919 Author: Todd Rinaldo <email@example.com> Date: Sun Mar 18 17:08:21 2018 -0500 Upgrade Time::HiRes from version 1.9753 to 1.9757 [DELTA] 1.9577 [2018-03-15] - fix win32 (and cygwin?) builds which have been broken since 1.9755: problem was that gettimeofday() is a macro and needs to stay such - regenerate ppport.h with Perl 5.26.1 (was previously generated with 5.25.6) and Devel::PPPort 3.35 (previously 3.36) -- this doesn't change the ppport.h, though 1.9756 [2018-03-14] - division by zero in new test tv_interval.t [rt.cpan.org #124775]: made the test pass even if the difference is zero, but also made it practically impossible to ever be zero by adding a sub-second sleep. - remove comments from inside qw [rt.cpan.org #124777], only seemed to be caught by Perl 5.18.4 1.9755 [2018-03-14] - adjust the error messages of tv_interval() - the NV_1EX constants now cast to be NV so that tv_interval() with long double builds does not produce ugly results [rt.cpan.org #106456] - add tests for tv_interval() - centralize the mygettimeofday() logic - make the mygettimeofday() a function instead of macro - add the OS X 10.12+ clock_gettime() constants CLOCK_MONOTONIC_RAW_APPROX CLOCK_UPTIME_RAW_APPROX - regenerate the fallback files 1.9754 [2018-02-16] - unify the gettimeofday() and time() forked code that had near identical code paths for MacOS Classic (which has two unusual features: unsigned time_t, and a special tz struct member), and for non-MacOS Classic - tv_interval should be implemented in XS [rt.cpan.org #106456] thanks to Sergey Aleynikov (suggested implementation simplified by the above-mentioned MacOS Classic simplification) ##### It appears that Time-HiRes version 1.9754 touched off the CPAN test failures. 2. Time-HiRes bug ticket:In this ticket both Zefram and JHI argue that the test code in the two CPAN modules is sub-optimal. 3. Catalyst-Runtime bug ticket: In this ticket SREZIC has provided a patch. 4. Devel-TimeStats issue: Thank you very much. Jim Keenan
Message body is not shown because sender requested not to inline it.