Calendar:Updating Timezones

From MozillaWiki
Jump to navigation Jump to search

(More detail to come later)

We made the choice to provide Outlook 2000 and 2003 compatible timezones in 0.3.1. Using technically correct timezones output from Olson and vzic (using --pure) would not work with those versions of Outlook. Unfortunately, when instructing vzic to output Outlook-compatible timezones (which it does by default), if a zone's ruleset is too complex to be expressed in an Outlook-compatible way, vzic simply ignores Daylight Savings Time altogether, and only gives includes a BEGIN:STANDARD section in the VTIMEZONE.

As part of bug 369543 and bug 367378, we had to find which timezones this affected, and attempt to make a VTIMEZONE that was simple enough for Outlook, but that still was as correct as possible.

/Australia/Perth and /America/Tegucigalpa both had DST with a set end date in the future, for example 2009. vzic's interpretation of these timezones were ones with a number of RDATEs, which would bust Outlook. By pretending that DST would go on forever (which it may) we were able to make a VTIMEZONE with two RRULEs. This would work with Outlook.

/Asia/Jerusalem was entirely different. It's DST are so complex that we were unable to both create an "accurate-enough" VTIMEZONE and still keep it Outlook-compatible. As a result, we took the VTIMEZONE created by vzic when run with --pure, and included a release note that .ICS files with events in /Asia/Jerusalem would likely not import cleanly into Outlook <= 2003.

Asia/Jerusalem
The proposed law agreed upon by the Knesset Interior Committee on
2005-02-14 is that, for 2005 and beyond, DST starts at 02:00 the
last Friday before April 2nd (i.e. the last Friday in March or April
1st itself if it falls on a Friday) and ends at 02:00 on the Saturday
night _before_ the fast of Yom Kippur.

Those who can read Hebrew can view the announcement at:
  ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+beyond.ps

From Paul Eggert (2005-02-22):
I used Ephraim Silverberg's dst-israel.el program
<ftp://ftp.cs.huji.ac.il/pub/tz/software/dst-israel.el> (2005-02-20)
along with Ed Reingold's cal-hebrew in GNU Emacs 21.4,
to generate the transitions in this list.
(I replaced "lastFri" with "Fri>=26" by hand.)
The spring transitions below all correspond to the following Rule:

Rule	Zion	2005	max	-	Mar	Fri>=26	2:00	1:00	D

but older zic implementations (e.g., Solaris 8) do not support
"Fri>=26" to mean April 1 in years like 2005, so for now we list the
springtime transitions explicitly.