[tz] Extra transition for Europe/London with 2023d
Guy Harris
gharris at sonic.net
Sat Jan 6 20:45:03 UTC 2024
On Jan 6, 2024, at 8:34 AM, Michael H Deckers via tz <tz at iana.org> wrote:
> Yes, there is information on local civil times scales needed by many
> datetime software interfaces that is already present in the tzdb source files
> but that is missing from the TZif files since the very beginning:
>
> • the SAVE value (or the numeric RULES value) applicable at an instant
> is not available via TZif files, and cannot in general be deduced
> from its contents (see eg the SAVE value +01 h for Europe/Dublin when
> UT = 1916-10-01 + 02:25:21.1). It has even become more difficult
> to guess these values from TZif files since they are allowed to be negative.
I.e., TZif files:
https://datatracker.ietf.org/doc/html/rfc8536
don't contain enough information to allow both STDOFF and SAVE to be derived for a given time value.
We could provide a version 5, with a version 5 data block that does contain that information. (RFC 8536 doesn't describe version 4; the tzfile(5) man page describes it as
For version-4-format TZif files, the first leap second record can have
a correction that is neither +1 nor -1, to represent truncation of the
TZif file at the start. Also, if two or more leap second transitions
are present and the last entry's correction equals the previous one,
the last entry denotes the expiration of the leap second table instead
of a leap second; timestamps after this expiration are unreliable in
that future releases will likely add leap second entries after the
expiration, and the added leap seconds will change how post-expiration
timestamps are treated.
> • the RULEs applicable at a specific instant (if any). They are available
> in TZif files (in versions 2 and 3) only for recent instants, and the start
> of their applicability is only given indirectly in TZif files, sometimes
> requiring a redundant transition (which is the topic of this thread).
So how does software (other than zic, of course :-)) use the rules rather than just the transition times calculated from the rules?
> I think it would be very useful to have an official output of the tzdb data
> compilation process (zic and associated tools) that makes these data
> available for datetime software, even though they are not needed by
> the POSIX datetime functions.
Yes, there is no inherent reason why the TZif format, for example, should limit itself to supporting only the date/time functions that POSIX and the C standard currently happen to provide.
More information about the tz
mailing list