[tz] Weird PST8PDT and EST5EDT behavior on Alpine Linux
Paul Eggert
eggert at cs.ucla.edu
Tue Mar 5 04:31:58 UTC 2024
On 3/4/24 19:52, Đoàn Trần Công Danh via tz wrote:
> But seems like nothings was enforced if rule isnot given in the
> timezone, which makes it open to intepretion.
>
> Musl inteprete that as no transition at all [2].
Thanks, that explains things. TZDB has a TZDEFRULESTRING setting that
specifies the transitions in this situation; it defaults to US rules, so
musl and TZDB always disagree about TZ settings like TZ='PST8PDT'.
In TZDB, though, TZDEFRULESTRING is not used for PST8PDT and EST5EDT, as
these are one of a small set of Zones that emulate the old System V
behavior except with later US law changes taken into account.
Another way to put it: for musl the two settings TZ='PST8PDT' and
TZ='pst8pdt' agree except for the case of time zone abbreviations, and
neither TZ setting ever uses daylight saving time.
For TZDB, though, those two TZ settings agree only back to 2007; for
earlier timestamps, TZ='PST8PDT' follows historical US behavior for
standard time (and thus agrees with TZ='America/Los_Angeles' for all
timestamps after 1883-11-18 at noon) whereas TZ='pst8pdt' disagrees with
historical behavior by assuming current (2007 and later) rules for DST
transitions before 2007.
These behaviors all conform to POSIX.
More information about the tz
mailing list