DateTime::LeapSecond(3) leap seconds table and utilities


version 1.34


use DateTime;
use DateTime::LeapSecond;
print "Leap seconds between years 1990 and 2000 are ";
print DateTime::Leapsecond::leap_seconds( $utc_rd_2000 ) -
DateTime::Leapsecond::leap_seconds( $utc_rd_1990 );


This module is used to calculate leap seconds for a given Rata Die day. It is used when cannot compile the XS version of this code.

This library is known to be accurate for dates until December 2009.

There are no leap seconds before 1972, because that's the year this system was implemented.

  • leap_seconds( $rd )

    Returns the number of accumulated leap seconds for a given day, in the range 0 .. 22.

  • extra_seconds( $rd )

    Returns the number of leap seconds for a given day, in the range -2 .. 2.

  • day_length( $rd )

    Returns the number of seconds for a given day, in the range 86398 .. 86402.


Bugs may be submitted through the RT bug tracker <> (or [email protected] <mailto:[email protected]>).

There is a mailing list available for users of this distribution, <mailto:[email protected]>.

I am also usually active on IRC as 'drolsky' on "irc://".


Dave Rolsky <[email protected]>


This software is Copyright (c) 2016 by Dave Rolsky.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)