Skip Menu |

This queue is for tickets about the Time-Piece CPAN distribution.

Report information
The Basics
Id: 128240
Status: resolved
Priority: 0/
Queue: Time-Piece

People
Owner: Nobody in particular
Requestors: samuel [...] sholland.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: 1.34



Subject: Fix DST test on linux-musl systems
Date: Sun, 13 Jan 2019 21:19:10 -0600
To: bug-Time-Piece [...] rt.cpan.org
From: Samuel Holland <samuel [...] sholland.org>
There is no default set of DST rules given in the POSIX specification for time zone strings[1]. glibc uses the DST rules for America/New_York as an extension, but musl libc does not. On musl, when no rules are available, timestamps are not interpreted as standard/daylight time based on the date. By providing DST rules, the test now passes in this environment. These happen to be the DST rules for America/New_York, but the details aren't important, as long as January is standard time and July is daylight time. [1]: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html --- a/t/02core_dst.t +++ b/t/02core_dst.t @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # test more SKIP: { skip "Extra tests for Linux, BSD only.", 6 unless $is_linux or $is_mac or $is_bsd; - local $ENV{TZ} = "EST5EDT4"; + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; Time::Piece::_tzset(); my $lt = localtime(1373371631); #2013-07-09T12:07:11 cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote: Show quoted text
> There is no default set of DST rules given in the POSIX specification > for time > zone strings[1]. glibc uses the DST rules for America/New_York as an > extension, > but musl libc does not. On musl, when no rules are available, > timestamps are not > interpreted as standard/daylight time based on the date. By providing > DST rules, > the test now passes in this environment. These happen to be the DST > rules for > America/New_York, but the details aren't important, as long as January > is > standard time and July is daylight time. > > [1]: > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > --- a/t/02core_dst.t > +++ b/t/02core_dst.t > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # test more > SKIP: { > skip "Extra tests for Linux, BSD only.", 6 unless $is_linux or > $is_mac or $is_bsd; > > - local $ENV{TZ} = "EST5EDT4"; > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > Time::Piece::_tzset(); > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
Thanks for the report and patch! The tests in 02core_dst.t were mainly added to catch strange dst bugs like: https://github.com/Dual-Life/Time-Piece/issues/40 and in the future I will probably add a flag so it will only run in a smoker environment. The issue being since TP is a core module I don't want fragile DST tests causing Perl to fail to install if someone is building from source. I will add the change in a future release (I was not even aware of that syntax for $ENV{TZ}) as long as it doesn't break anything else. Regards, Samuel Smith
On Thu May 09 14:38:33 2019, ESAYM wrote: Show quoted text
> On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > There is no default set of DST rules given in the POSIX specification > > for time > > zone strings[1]. glibc uses the DST rules for America/New_York as an > > extension, > > but musl libc does not. On musl, when no rules are available, > > timestamps are not > > interpreted as standard/daylight time based on the date. By providing > > DST rules, > > the test now passes in this environment. These happen to be the DST > > rules for > > America/New_York, but the details aren't important, as long as > > January > > is > > standard time and July is daylight time. > > > > [1]: > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > --- a/t/02core_dst.t > > +++ b/t/02core_dst.t > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # test more > > SKIP: { > > skip "Extra tests for Linux, BSD only.", 6 unless $is_linux > > or > > $is_mac or $is_bsd; > > > > - local $ENV{TZ} = "EST5EDT4"; > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > Time::Piece::_tzset(); > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > Thanks for the report and patch! > > > The tests in 02core_dst.t were mainly added to catch strange dst bugs > like: https://github.com/Dual-Life/Time-Piece/issues/40 and in the > future I will probably add a flag so it will only run in a smoker > environment. The issue being since TP is a core module I don't want > fragile DST tests causing Perl to fail to install if someone is > building from source. I will add the change in a future release (I was > not even aware of that syntax for $ENV{TZ}) as long as it doesn't > break anything else. > > Regards, > Samuel Smith
This issue has come up in a bug ticket filed with the Perl 5 core distribution: https://github.com/Perl/perl5/issues/17527. But since Time::Piece is "upstream CPAN" the issue should be resolved here first. Thank you very much. Jim Keenan
On Sun Feb 09 21:01:01 2020, JKEENAN wrote: Show quoted text
> On Thu May 09 14:38:33 2019, ESAYM wrote:
> > On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > > There is no default set of DST rules given in the POSIX > > > specification > > > for time > > > zone strings[1]. glibc uses the DST rules for America/New_York as > > > an > > > extension, > > > but musl libc does not. On musl, when no rules are available, > > > timestamps are not > > > interpreted as standard/daylight time based on the date. By > > > providing > > > DST rules, > > > the test now passes in this environment. These happen to be the DST > > > rules for > > > America/New_York, but the details aren't important, as long as > > > January > > > is > > > standard time and July is daylight time. > > > > > > [1]: > > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > > > --- a/t/02core_dst.t > > > +++ b/t/02core_dst.t > > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # test > > > more > > > SKIP: { > > > skip "Extra tests for Linux, BSD only.", 6 unless $is_linux > > > or > > > $is_mac or $is_bsd; > > > > > > - local $ENV{TZ} = "EST5EDT4"; > > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > > Time::Piece::_tzset(); > > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > > > > Thanks for the report and patch! > > > > > > The tests in 02core_dst.t were mainly added to catch strange dst bugs > > like: https://github.com/Dual-Life/Time-Piece/issues/40 and in the > > future I will probably add a flag so it will only run in a smoker > > environment. The issue being since TP is a core module I don't want > > fragile DST tests causing Perl to fail to install if someone is > > building from source. I will add the change in a future release (I > > was > > not even aware of that syntax for $ENV{TZ}) as long as it doesn't > > break anything else. > > > > Regards, > > Samuel Smith
> > This issue has come up in a bug ticket filed with the Perl 5 core > distribution: > https://github.com/Perl/perl5/issues/17527. > > But since Time::Piece is "upstream CPAN" the issue should be resolved > here first. > > Thank you very much. > Jim Keenan
One of our Perl 5 smoke-test contributors recently set up a smoke-testing rig on NetBSD-9.0. On this platform we are consistently seeing failures in tests 53-55 of t/02core_dst.t. We have not observed those failures on NetBSD-8.0 or -8.1. See: http://perl5.test-smoke.org/report/107900 Thank you very much. Jim Keenan
On Fri Feb 28 09:07:31 2020, JKEENAN wrote: Show quoted text
> On Sun Feb 09 21:01:01 2020, JKEENAN wrote:
> > On Thu May 09 14:38:33 2019, ESAYM wrote:
> > > On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > > > There is no default set of DST rules given in the POSIX > > > > specification > > > > for time > > > > zone strings[1]. glibc uses the DST rules for America/New_York as > > > > an > > > > extension, > > > > but musl libc does not. On musl, when no rules are available, > > > > timestamps are not > > > > interpreted as standard/daylight time based on the date. By > > > > providing > > > > DST rules, > > > > the test now passes in this environment. These happen to be the > > > > DST > > > > rules for > > > > America/New_York, but the details aren't important, as long as > > > > January > > > > is > > > > standard time and July is daylight time. > > > > > > > > [1]: > > > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > > > > > --- a/t/02core_dst.t > > > > +++ b/t/02core_dst.t > > > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # test > > > > more > > > > SKIP: { > > > > skip "Extra tests for Linux, BSD only.", 6 unless > > > > $is_linux > > > > or > > > > $is_mac or $is_bsd; > > > > > > > > - local $ENV{TZ} = "EST5EDT4"; > > > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > > > Time::Piece::_tzset(); > > > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > > > > > > > Thanks for the report and patch! > > > > > > > > > The tests in 02core_dst.t were mainly added to catch strange dst > > > bugs > > > like: https://github.com/Dual-Life/Time-Piece/issues/40 and in the > > > future I will probably add a flag so it will only run in a smoker > > > environment. The issue being since TP is a core module I don't want > > > fragile DST tests causing Perl to fail to install if someone is > > > building from source. I will add the change in a future release (I > > > was > > > not even aware of that syntax for $ENV{TZ}) as long as it doesn't > > > break anything else. > > > > > > Regards, > > > Samuel Smith
> > > > This issue has come up in a bug ticket filed with the Perl 5 core > > distribution: > > https://github.com/Perl/perl5/issues/17527. > > > > But since Time::Piece is "upstream CPAN" the issue should be resolved > > here first. > > > > Thank you very much. > > Jim Keenan
> > One of our Perl 5 smoke-test contributors recently set up a smoke- > testing rig on NetBSD-9.0. On this platform we are consistently > seeing failures in tests 53-55 of t/02core_dst.t. We have not > observed those failures on NetBSD-8.0 or -8.1. > > See: http://perl5.test-smoke.org/report/107900 > > Thank you very much. > Jim Keenan
Jim, Version 1.34 was released yesterday. It includes the above patch for musl libc as well as only runnng 02core_dst.t if $ENV{AUTOMATED_TESTING} is set. No other functionality was changed so it is safe to merge with core. Regards, Samuel Smith
On Fri Feb 28 14:54:57 2020, ESAYM wrote: Show quoted text
> On Fri Feb 28 09:07:31 2020, JKEENAN wrote:
> > On Sun Feb 09 21:01:01 2020, JKEENAN wrote:
> > > On Thu May 09 14:38:33 2019, ESAYM wrote:
> > > > On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > > > > There is no default set of DST rules given in the POSIX > > > > > specification > > > > > for time > > > > > zone strings[1]. glibc uses the DST rules for America/New_York > > > > > as > > > > > an > > > > > extension, > > > > > but musl libc does not. On musl, when no rules are available, > > > > > timestamps are not > > > > > interpreted as standard/daylight time based on the date. By > > > > > providing > > > > > DST rules, > > > > > the test now passes in this environment. These happen to be the > > > > > DST > > > > > rules for > > > > > America/New_York, but the details aren't important, as long as > > > > > January > > > > > is > > > > > standard time and July is daylight time. > > > > > > > > > > [1]: > > > > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > > > > > > > --- a/t/02core_dst.t > > > > > +++ b/t/02core_dst.t > > > > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # > > > > > test > > > > > more > > > > > SKIP: { > > > > > skip "Extra tests for Linux, BSD only.", 6 unless > > > > > $is_linux > > > > > or > > > > > $is_mac or $is_bsd; > > > > > > > > > > - local $ENV{TZ} = "EST5EDT4"; > > > > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > > > > Time::Piece::_tzset(); > > > > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > > > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > > > > > > > > > > Thanks for the report and patch! > > > > > > > > > > > > The tests in 02core_dst.t were mainly added to catch strange dst > > > > bugs > > > > like: https://github.com/Dual-Life/Time-Piece/issues/40 and in > > > > the > > > > future I will probably add a flag so it will only run in a smoker > > > > environment. The issue being since TP is a core module I don't > > > > want > > > > fragile DST tests causing Perl to fail to install if someone is > > > > building from source. I will add the change in a future release > > > > (I > > > > was > > > > not even aware of that syntax for $ENV{TZ}) as long as it doesn't > > > > break anything else. > > > > > > > > Regards, > > > > Samuel Smith
> > > > > > This issue has come up in a bug ticket filed with the Perl 5 core > > > distribution: > > > https://github.com/Perl/perl5/issues/17527. > > > > > > But since Time::Piece is "upstream CPAN" the issue should be > > > resolved > > > here first. > > > > > > Thank you very much. > > > Jim Keenan
> > > > One of our Perl 5 smoke-test contributors recently set up a smoke- > > testing rig on NetBSD-9.0. On this platform we are consistently > > seeing failures in tests 53-55 of t/02core_dst.t. We have not > > observed those failures on NetBSD-8.0 or -8.1. > > > > See: http://perl5.test-smoke.org/report/107900 > > > > Thank you very much. > > Jim Keenan
> > > Jim, > > Version 1.34 was released yesterday. It includes the above patch for > musl libc as well as only runnng 02core_dst.t if > $ENV{AUTOMATED_TESTING} is set. No other functionality was changed so > it is safe to merge with core. > > Regards, > Samuel Smith
CPANtesters reports look good (http://matrix.cpantesters.org/?dist=Time-Piece+1.34), so I'm synching Perl 5 blead with 1.34 tonight. I'll give a few days for our smokers to report. Thanks. Jim Keenan
On Mon Mar 09 22:12:59 2020, JKEENAN wrote: Show quoted text
> On Fri Feb 28 14:54:57 2020, ESAYM wrote:
> > On Fri Feb 28 09:07:31 2020, JKEENAN wrote:
> > > On Sun Feb 09 21:01:01 2020, JKEENAN wrote:
> > > > On Thu May 09 14:38:33 2019, ESAYM wrote:
> > > > > On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > > > > > There is no default set of DST rules given in the POSIX > > > > > > specification > > > > > > for time > > > > > > zone strings[1]. glibc uses the DST rules for > > > > > > America/New_York > > > > > > as > > > > > > an > > > > > > extension, > > > > > > but musl libc does not. On musl, when no rules are available, > > > > > > timestamps are not > > > > > > interpreted as standard/daylight time based on the date. By > > > > > > providing > > > > > > DST rules, > > > > > > the test now passes in this environment. These happen to be > > > > > > the > > > > > > DST > > > > > > rules for > > > > > > America/New_York, but the details aren't important, as long > > > > > > as > > > > > > January > > > > > > is > > > > > > standard time and July is daylight time. > > > > > > > > > > > > [1]: > > > > > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > > > > > > > > > --- a/t/02core_dst.t > > > > > > +++ b/t/02core_dst.t > > > > > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # > > > > > > test > > > > > > more > > > > > > SKIP: { > > > > > > skip "Extra tests for Linux, BSD only.", 6 unless > > > > > > $is_linux > > > > > > or > > > > > > $is_mac or $is_bsd; > > > > > > > > > > > > - local $ENV{TZ} = "EST5EDT4"; > > > > > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > > > > > Time::Piece::_tzset(); > > > > > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > > > > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > > > > > > > > > > > > > Thanks for the report and patch! > > > > > > > > > > > > > > > The tests in 02core_dst.t were mainly added to catch strange > > > > > dst > > > > > bugs > > > > > like: https://github.com/Dual-Life/Time-Piece/issues/40 and in > > > > > the > > > > > future I will probably add a flag so it will only run in a > > > > > smoker > > > > > environment. The issue being since TP is a core module I don't > > > > > want > > > > > fragile DST tests causing Perl to fail to install if someone is > > > > > building from source. I will add the change in a future release > > > > > (I > > > > > was > > > > > not even aware of that syntax for $ENV{TZ}) as long as it > > > > > doesn't > > > > > break anything else. > > > > > > > > > > Regards, > > > > > Samuel Smith
> > > > > > > > This issue has come up in a bug ticket filed with the Perl 5 core > > > > distribution: > > > > https://github.com/Perl/perl5/issues/17527. > > > > > > > > But since Time::Piece is "upstream CPAN" the issue should be > > > > resolved > > > > here first. > > > > > > > > Thank you very much. > > > > Jim Keenan
> > > > > > One of our Perl 5 smoke-test contributors recently set up a smoke- > > > testing rig on NetBSD-9.0. On this platform we are consistently > > > seeing failures in tests 53-55 of t/02core_dst.t. We have not > > > observed those failures on NetBSD-8.0 or -8.1. > > > > > > See: http://perl5.test-smoke.org/report/107900 > > > > > > Thank you very much. > > > Jim Keenan
> > > > > > Jim, > > > > Version 1.34 was released yesterday. It includes the above patch for > > musl libc as well as only runnng 02core_dst.t if > > $ENV{AUTOMATED_TESTING} is set. No other functionality was changed so > > it is safe to merge with core. > > > > Regards, > > Samuel Smith
> > CPANtesters reports look good > (http://matrix.cpantesters.org/?dist=Time-Piece+1.34), so I'm synching > Perl 5 blead with 1.34 tonight. I'll give a few days for our smokers > to report. Thanks. > > Jim Keenan
Jim, I will probably release another version soon, maybe this week. Noticed some new fragile tests in 09locales.t (which were previously not included in the manifest). Regards, Samuel Smith
On Tue Mar 10 00:33:21 2020, ESAYM wrote: Show quoted text
> On Mon Mar 09 22:12:59 2020, JKEENAN wrote:
> > On Fri Feb 28 14:54:57 2020, ESAYM wrote:
> > > On Fri Feb 28 09:07:31 2020, JKEENAN wrote:
> > > > On Sun Feb 09 21:01:01 2020, JKEENAN wrote:
> > > > > On Thu May 09 14:38:33 2019, ESAYM wrote:
> > > > > > On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > > > > > > There is no default set of DST rules given in the POSIX > > > > > > > specification > > > > > > > for time > > > > > > > zone strings[1]. glibc uses the DST rules for > > > > > > > America/New_York > > > > > > > as > > > > > > > an > > > > > > > extension, > > > > > > > but musl libc does not. On musl, when no rules are > > > > > > > available, > > > > > > > timestamps are not > > > > > > > interpreted as standard/daylight time based on the date. By > > > > > > > providing > > > > > > > DST rules, > > > > > > > the test now passes in this environment. These happen to be > > > > > > > the > > > > > > > DST > > > > > > > rules for > > > > > > > America/New_York, but the details aren't important, as long > > > > > > > as > > > > > > > January > > > > > > > is > > > > > > > standard time and July is daylight time. > > > > > > > > > > > > > > [1]: > > > > > > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > > > > > > > > > > > --- a/t/02core_dst.t > > > > > > > +++ b/t/02core_dst.t > > > > > > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); # > > > > > > > test > > > > > > > more > > > > > > > SKIP: { > > > > > > > skip "Extra tests for Linux, BSD only.", 6 unless > > > > > > > $is_linux > > > > > > > or > > > > > > > $is_mac or $is_bsd; > > > > > > > > > > > > > > - local $ENV{TZ} = "EST5EDT4"; > > > > > > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > > > > > > Time::Piece::_tzset(); > > > > > > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > > > > > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > > > > > > > > > > > > > > > > Thanks for the report and patch! > > > > > > > > > > > > > > > > > > The tests in 02core_dst.t were mainly added to catch strange > > > > > > dst > > > > > > bugs > > > > > > like: https://github.com/Dual-Life/Time-Piece/issues/40 and > > > > > > in > > > > > > the > > > > > > future I will probably add a flag so it will only run in a > > > > > > smoker > > > > > > environment. The issue being since TP is a core module I > > > > > > don't > > > > > > want > > > > > > fragile DST tests causing Perl to fail to install if someone > > > > > > is > > > > > > building from source. I will add the change in a future > > > > > > release > > > > > > (I > > > > > > was > > > > > > not even aware of that syntax for $ENV{TZ}) as long as it > > > > > > doesn't > > > > > > break anything else. > > > > > > > > > > > > Regards, > > > > > > Samuel Smith
> > > > > > > > > > This issue has come up in a bug ticket filed with the Perl 5 > > > > > core > > > > > distribution: > > > > > https://github.com/Perl/perl5/issues/17527. > > > > > > > > > > But since Time::Piece is "upstream CPAN" the issue should be > > > > > resolved > > > > > here first. > > > > > > > > > > Thank you very much. > > > > > Jim Keenan
> > > > > > > > One of our Perl 5 smoke-test contributors recently set up a > > > > smoke- > > > > testing rig on NetBSD-9.0. On this platform we are consistently > > > > seeing failures in tests 53-55 of t/02core_dst.t. We have not > > > > observed those failures on NetBSD-8.0 or -8.1. > > > > > > > > See: http://perl5.test-smoke.org/report/107900 > > > > > > > > Thank you very much. > > > > Jim Keenan
> > > > > > > > > Jim, > > > > > > Version 1.34 was released yesterday. It includes the above patch > > > for > > > musl libc as well as only runnng 02core_dst.t if > > > $ENV{AUTOMATED_TESTING} is set. No other functionality was changed > > > so > > > it is safe to merge with core. > > > > > > Regards, > > > Samuel Smith
> > > > CPANtesters reports look good > > (http://matrix.cpantesters.org/?dist=Time-Piece+1.34), so I'm > > synching > > Perl 5 blead with 1.34 tonight. I'll give a few days for our smokers > > to report. Thanks. > > > > Jim Keenan
> > Jim, > > I will probably release another version soon, maybe this week. Noticed > some new fragile tests in 09locales.t (which were previously not > included in the manifest). > > Regards, > Samuel Smith
Version 1.34 is now in perl 5 blead: ##### commit 2afd53660922a2dbe637f736bc0a86977128f2b4 Author: James E Keenan <jkeenan@cpan.org> AuthorDate: Tue Mar 10 02:24:37 2020 +0000 Commit: James E Keenan <jkeenan@cpan.org> CommitDate: Tue Mar 10 02:24:37 2020 +0000 Time-Piece: synch with CPAN version 1.34 ##### Thank you very much. Jim Keenan
On Thu Mar 12 18:55:06 2020, JKEENAN wrote: Show quoted text
> On Tue Mar 10 00:33:21 2020, ESAYM wrote:
> > On Mon Mar 09 22:12:59 2020, JKEENAN wrote:
> > > On Fri Feb 28 14:54:57 2020, ESAYM wrote:
> > > > On Fri Feb 28 09:07:31 2020, JKEENAN wrote:
> > > > > On Sun Feb 09 21:01:01 2020, JKEENAN wrote:
> > > > > > On Thu May 09 14:38:33 2019, ESAYM wrote:
> > > > > > > On Sun Jan 13 22:26:59 2019, samuel@sholland.org wrote:
> > > > > > > > There is no default set of DST rules given in the POSIX > > > > > > > > specification > > > > > > > > for time > > > > > > > > zone strings[1]. glibc uses the DST rules for > > > > > > > > America/New_York > > > > > > > > as > > > > > > > > an > > > > > > > > extension, > > > > > > > > but musl libc does not. On musl, when no rules are > > > > > > > > available, > > > > > > > > timestamps are not > > > > > > > > interpreted as standard/daylight time based on the date. > > > > > > > > By > > > > > > > > providing > > > > > > > > DST rules, > > > > > > > > the test now passes in this environment. These happen to > > > > > > > > be > > > > > > > > the > > > > > > > > DST > > > > > > > > rules for > > > > > > > > America/New_York, but the details aren't important, as > > > > > > > > long > > > > > > > > as > > > > > > > > January > > > > > > > > is > > > > > > > > standard time and July is daylight time. > > > > > > > > > > > > > > > > [1]: > > > > > > > > http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html > > > > > > > > > > > > > > > > --- a/t/02core_dst.t > > > > > > > > +++ b/t/02core_dst.t > > > > > > > > @@ -127,7 +127,7 @@ cmp_ok($t->month_last_day, '==', 31); > > > > > > > > # > > > > > > > > test > > > > > > > > more > > > > > > > > SKIP: { > > > > > > > > skip "Extra tests for Linux, BSD only.", 6 unless > > > > > > > > $is_linux > > > > > > > > or > > > > > > > > $is_mac or $is_bsd; > > > > > > > > > > > > > > > > - local $ENV{TZ} = "EST5EDT4"; > > > > > > > > + local $ENV{TZ} = "EST5EDT4,M3.2.0/2,M11.1.0/2"; > > > > > > > > Time::Piece::_tzset(); > > > > > > > > my $lt = localtime(1373371631); #2013-07-09T12:07:11 > > > > > > > > cmp_ok(scalar($lt->tzoffset), 'eq', '-14400');
> > > > > > > > > > > > > > > > > > > > > Thanks for the report and patch! > > > > > > > > > > > > > > > > > > > > > The tests in 02core_dst.t were mainly added to catch > > > > > > > strange > > > > > > > dst > > > > > > > bugs > > > > > > > like: https://github.com/Dual-Life/Time-Piece/issues/40 and > > > > > > > in > > > > > > > the > > > > > > > future I will probably add a flag so it will only run in a > > > > > > > smoker > > > > > > > environment. The issue being since TP is a core module I > > > > > > > don't > > > > > > > want > > > > > > > fragile DST tests causing Perl to fail to install if > > > > > > > someone > > > > > > > is > > > > > > > building from source. I will add the change in a future > > > > > > > release > > > > > > > (I > > > > > > > was > > > > > > > not even aware of that syntax for $ENV{TZ}) as long as it > > > > > > > doesn't > > > > > > > break anything else. > > > > > > > > > > > > > > Regards, > > > > > > > Samuel Smith
> > > > > > > > > > > > This issue has come up in a bug ticket filed with the Perl 5 > > > > > > core > > > > > > distribution: > > > > > > https://github.com/Perl/perl5/issues/17527. > > > > > > > > > > > > But since Time::Piece is "upstream CPAN" the issue should be > > > > > > resolved > > > > > > here first. > > > > > > > > > > > > Thank you very much. > > > > > > Jim Keenan
> > > > > > > > > > One of our Perl 5 smoke-test contributors recently set up a > > > > > smoke- > > > > > testing rig on NetBSD-9.0. On this platform we are > > > > > consistently > > > > > seeing failures in tests 53-55 of t/02core_dst.t. We have not > > > > > observed those failures on NetBSD-8.0 or -8.1. > > > > > > > > > > See: http://perl5.test-smoke.org/report/107900 > > > > > > > > > > Thank you very much. > > > > > Jim Keenan
> > > > > > > > > > > > Jim, > > > > > > > > Version 1.34 was released yesterday. It includes the above patch > > > > for > > > > musl libc as well as only runnng 02core_dst.t if > > > > $ENV{AUTOMATED_TESTING} is set. No other functionality was > > > > changed > > > > so > > > > it is safe to merge with core. > > > > > > > > Regards, > > > > Samuel Smith
> > > > > > CPANtesters reports look good > > > (http://matrix.cpantesters.org/?dist=Time-Piece+1.34), so I'm > > > synching > > > Perl 5 blead with 1.34 tonight. I'll give a few days for our > > > smokers > > > to report. Thanks. > > > > > > Jim Keenan
> > > > Jim, > > > > I will probably release another version soon, maybe this week. > > Noticed > > some new fragile tests in 09locales.t (which were previously not > > included in the manifest). > > > > Regards, > > Samuel Smith
> > Version 1.34 is now in perl 5 blead: > > ##### > commit 2afd53660922a2dbe637f736bc0a86977128f2b4 > Author: James E Keenan <jkeenan@cpan.org> > AuthorDate: Tue Mar 10 02:24:37 2020 +0000 > Commit: James E Keenan <jkeenan@cpan.org> > CommitDate: Tue Mar 10 02:24:37 2020 +0000 > > Time-Piece: synch with CPAN version 1.34 > ##### > > Thank you very much. > Jim Keenan
We have had no failures of Time-Piece tests in smoke-tests of the Perl 5 core distribution since Feb 26, whether on NetBSD-9.0 or other OSes. Time-Piece 1.3401 is now in Perl 5 blead and will presumably be released with perl-5.32.0 in May. So this ticket can now be closed. Thank you very much. Jim Keenan