0.2.0 - 2026-07-25
Added
LeapSecond.expires_on,LeapSecond.expired?and
LeapSecond.updated_throughexpose the expiry date and IERS bulletin that
Leap_Second.datstates in its header. Both were previously discarded with
the rest of the comment lines. UnlikeData.status.cache_age, which measures
when a file was downloaded, these describe how long the data itself stays
authoritative.LeapSecond.atnow answers 1961-01-01 through 1972-01-01, the era when UTC
was steered by rate adjustments rather than whole leap seconds. It returns
those values as exactRationals. The coefficients come from the USNO
tai-utc.datfile and are bundled in source, since they are fixed. The
change is additive: the pre-1972 range previously raised, so no successful
call returns anything different.TAI.utc_to_taiandTAI.tai_to_utcgain
the same range for free.
Changed
Parsers::LeapSecond.parsereturns aTableofentriesandmetadata
instead of an array of entries.Parsersis internal; the public API is
unaffected.Parsers::LeapSecond.parseno longer raisesEncoding::CompatibilityError
on a file containing invalid UTF-8. Header metadata is read on a best-effort
basis and an unreadable data row raisesParseErroras before.
Full Changelog: v0.1.1...v0.2.0