Time format error in Olson TZ rules for Asia

Robert Elz kre at munnari.OZ.AU
Tue Apr 27 15:36:55 UTC 2010

    Date:        Tue, 27 Apr 2010 10:48:19 -0400
    From:        lennox at cs.columbia.edu
    Message-ID:  <19414.63795.932816.359247 at irtcluster02.cs.columbia.edu>

  | This is correct if you interpret the "in March" part of the rule as applying
  | to the Friday, not the Thursday.

No, ado's point was that "Fri>=26" means (one of) 26 27 28 29 30 31 1
(the 7 days that could be a Friday, and on or after the 26th of March).

Whichever day is the last Thursday, the last Friday is one of the
above, even if it is in April, rather than March.

What's more, with appropriate calculation, this technique also gets us
the 2nd Friday after the last Thursday in March (which is Apr Fri>=2 if
I worked it out properly).

So, we don't need an extension to handle any of those cases - I'm still
pondering whether we can get all of the "Nth X before the Y" type rules
that might exist without any extensions though.

I'm also still considering whether it is possible to write a rule like
this that works correctly at the end of February (allowing for the
possibility of leap years - and without needing to revert to the isleap
stuff to make a different rule for leap years than others).

But wrt ...

yoshito_umaoka at us.ibm.com said:
  | Not a small number of people use the tz database for other applications. 

  | Of course, we should extend the rule syntax/implementation in the tz
  | database and code if it is really necessary.  But at the same time, we
  | should be aware of interoperability with others, especially standard
  | protocols like iCalendar. 

Yes, I agree 100% - that's exactly why I wanted to consider this case now,
and not wait until we absolutely required a change, to allow for plenty of
time for others to catch up, before any data requiring the rule exists.

Of course, if we don't need extensions to handle this stuff, that's even

Does iCalendar allow the "Mar Fri>=26 00:00" trick to represent April 1,
when the last Friday in March is the 25th?  (That is, when the 31st is the
last Thu)?


More information about the tz mailing list