Joel,
I took a look at your module. Trying to compile the dzil authordep
"Dist::Zilla::PluginBundle::BAREFOOT, I got this error:
Yeah, my bundle is a bit borked ATM.[1] But the tests should be
runnable with `prove` without needing to use `dzil test`. I should
probably note that in the docs somewhere ... I saw someone else who did
that[2] and I think it's probably helpful for would-be contributors.
I got a ton of errors for my America/Denver time zone.
Right, I was able to reproduce that easily. Thx for giving me a
concrete example to work with.
if I set my timezone to Los Angeles, I only got three failures (MUCH
better), all for the same date:
# Failed test 'successful parse: 04/95 00:22:12 PDT'
# at t/date-parse.t line 123.
# got: '1995-03-31'
# expected: '1995-04-01'
Of course April 1, 1995 was not yet daylight savings time, so 22 minutes
after midnight PDT would be 38 minutes *before* midnight PST, which
America/Pacific would use for time display.
Those weren't failing before ... I suspect it's because we were on
standard time when I did the release, but we're on DST now. DST, of
course, being one of the biggest PITAs to deal with, which is one of the
reasons I wrote this module in the first place. :-) So I guess it's a
good thing that I'm seeing these problems, because that forces me to
really Get It Right(tm). ;->
I'd suggest you set $ENV{TZ} in your test scripts to a known time zone
to do these comparisons. I suspect some system somewhere also
mis-handles when DST starts (it didn't always start when it starts now,
at least in the USA).
Well, I'm afraid if I do that I'm just going to end up masking the
problem. But maybe I should have an additional set of tests where I set
several different timezones and look for failures.
Thx again for the pointers.
-- Buddy
[1] Although I *thought* that error was only in the latest dev release,
not the latest full release. But apparently I was wrong on that score. :-/
[2] I want to say David Golden, but I might be misremembering.