[tz] JavaScript IANA date/time library, now with support for leap seconds, TAI, TDT

Tony Finch dot at dotat.at
Mon Apr 26 18:40:06 UTC 2021

John Sauter <John_Sauter at systemeyescomputerstore.com> wrote:
> I have always assumed that the problem of having access to TAI was
> solvable, using the same mechanisms that let computers know about time
> zones.  From the application's point of view, TAI would just be another
> zone, with the mechanism for converting between TAI and UTC in a
> library.
> Am I overlooking something?

I think the things that are missing are:

  * A standard representation of TAI (as discussed in this thread).

    There's some convergence here already: I believe PTP matches POSIX
    time at the start of 1972, and counts TAI seconds after that point,
    which matches the tz "right" zones. But there isn't a solid meaning
    outside the period of 1972 - present.

  * A standard API for getting the kernel's idea of TAI and its leap
    indicator - something like a simplified ntp_gettime but aimed at
    applications rather than ntp daemons.

    Applications need to see the leap indicator so that they can tell if
    the kernel's idea of leap seconds matches the application's idea. They
    might differ if NTP isn't working or if NTP uses leap smear.

  * A standard way to obtain the leap second table. This requires some
    combination of either the tzdist protocol or normal software updates,
    combined with support in tz for using TAI without stepping in the
    "right" timezone swamp.

Repeat for each language's standard library.

Windows is supposed to have TAI support but I haven't looked into how it

f.anthony.n.finch  <dot at dotat.at>  https://dotat.at/
Fair Isle, Faeroes: East or northeast 4 to 6, occasionally 7 at first.
Slight or moderate in eastern Fair Isle, otherwise moderate or rough.
Showers. Good, occasionally moderate.

More information about the tz mailing list