
On Tue, 23 Sep 2008, Robert Elz wrote:
That wouldn't be changing the format. If you're parsing the tz format files (the text input, rather than the zic output) and you're not handling the exception scripts, then you're not parsing the tz format, just a rough approximation. This stuff isn't new, it has been there forever, and was once actively used (though as Arthur said, not for a while now...)
Well, it hasn't been used for quite some time. I've been maintaining the Perl DateTime::TimeZone library for about 5 years now, and I never knew about these scripts, of which there is exactly one, which is not used. Apparently my "rough approximation" was pretty accurate, given I generate comprehensive tests for every zone in the database based on the output of zdump, and all the tests have been passing with every release for quite some time. My hope is that these scripts are never used, since parsing the time zone data is hard enough already, which was my original point. A "file format" that also includes "and for this case run some random shell script" is a bit out there. At the very least, it'd be nice to see any instances of such things documented as _algorithms_ so that they can be reimplemented for other cases. For example, with my library, I handle dates past 2038, though with cases like Iran, it just uses the last rule it knows about, which is clearly wrong. -dave /*========================== VegGuide.Org Your guide to all that's veg ==========================*/