On Fri, 10 Dec 2004, Eugene van der Pijll wrote:

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

Grr. I think I know what this is, and fixing it shouldn't be too hard. Look for a 0.24 sometime soon.



-dave

/*===========================
VegGuide.Org
Your guide to all that's veg.
===========================*/

Reply via email to