[Python-Dev] Status on PEP-431 Timezones

ISAAC J SCHWABACHER ischwabacher at wisc.edu
Sat Jul 25 07:12:04 CEST 2015


> The formulas only produced approximations, and then
> rounded to 5-second boundaries because the tz data format didn't have
> enough bits.

Little known fact: if you have a sub-minute-resolution UTC offset when a leap second hits, it rips open a hole in the space-time continuum and you find yourself in New Netherlands.

ijs

________________________________________
From: Tim Peters <tim.peters at gmail.com>
Sent: Saturday, July 25, 2015 00:07
To: ISAAC J SCHWABACHER
Cc: Alexander Belopolsky; Lennart Regebro; Python-Dev
Subject: Re: [Python-Dev] Status on PEP-431 Timezones

[Tim]
> Sure.  But, honestly, who cares?  Riyadh Solar Time was so
> off-the-wall that even the Saudis gave up on it 25 years ago (after a
> miserable 3-year experiment with it).  "Practicality beats purity".

Heh.  It's even sillier than that - the Saudis never used "Riyadh
Solar Time", and it's been removed from release 2015e of the tz
database:

    https://www.ietf.org/timezones/data/NEWS
    Release 2015e - 2015-06-13 10:56:02 -0700
    ...
    The files solar87, solar88, and solar89 are no longer distributed.
    They were a negative experiment - that is, a demonstration that
    tz data can represent solar time only with some difficulty and error.
    Their presence in the distribution caused confusion, as Riyadh
    civil time was generally not solar time in those years.

Looking back, Paul Eggert explained more in 2013, but it took this
long for the patch to land:

    http://comments.gmane.org/gmane.comp.time.tz/7717
    > did Saudi Arabia really use this as clock time?

    Not as far as I know, for civil time.  There was some use
    for religious purposes but it didn't use the approximation
    in those files.

    These files probably cause more confusion than they're worth,
    so I'll propose a couple of patches to remove them, in two followup
    emails.  I haven't pushed these patches to the experimental
    github version.

The position of the sun is vital to establishing prayer times in
Islam, but that's got little to do with civil time in Islamic
countries.  And Olson didn't take his "Riyadh Solar Time" rules from
the Saudis, he made up the times himself:  "Times were computed using
formulas in the U.S. Naval Observatory's Almanac for Computers
1987[89]".  The formulas only produced approximations, and then
rounded to 5-second boundaries because the tz data format didn't have
enough bits.

So, as a motivating example, it's hard to get less compelling:  Riyadh
Solar is a wholly artificial "time zone" made up by a time zone wonk
to demonstrate some limitations of the tz database he maintained.
Although I expect he could have done so just as effectively by writing
a brief note about it ;-)


More information about the Python-Dev mailing list