Dave Rolsky schreef:
> Anyway, enjoy ...
>
> 0.23 2004-12-09 (the "oh how I hate leap seconds" release)
Dave, I don't really know how to tell you, but...
use DateTime;
print "DateTime $DateTime::VERSION\n";
$dt = DateTime->new(year => 1997, month => 7, day => 1,
hour => 1, minute => 0, second => 0,
time_zone => '0100');
print "$dt local = ";
$dt->set_time_zone('UTC');
print "$dt UTC\n";
prints
DateTime 0.23
1997-07-01T01:00:00 local = 1997-07-01T00:00:-01 UTC
The conversion to UTC is 1 second off between (and including) the local
datetimes 1997-07-01T01:00:00 and 1997-07-01T23:59:59, that is, from
the second after a leap second, until the end of the day.
This includes
$dt = DateTime->new(year => 1997, month => 7, day => 1,
hour => 23, minute => 59, second => 59,
time_zone => '0100');
which results in
1997-07-02T00:00:-01 local = 1997-07-01T22:59:58 UTC
Eugene