I'm getting 3 strange cases when parsing the tz database, for the following cases:<br><ul><li>Didn't find %s values for M%sT under America/Phoenix:US for 1944 to 1944</li><li>Didn't find %s values for C%sT under Asia/Macau:PRC for 1999 to +INF
</li><li>Didn't find %s values for CE%sT under Europe/Warsaw:Poland for 1922 to 1940</li></ul>Let's take the first case. In the file northamerica, we have the following lines.<br><br>Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
<br> -7:00 US M%sT 1944 Jan 1 00:01<br> -7:00 - MST 1944 Apr 1 00:01<br> -7:00 US M%sT 1944 Oct 1 00:01<br> -7:00 - MST 1967<br> -7:00 US M%sT 1968 Mar 21
<br> -7:00 - MST<br><br>Now, according to my reading of zic.8.txt, to see what the values for %s are, we look at the rules that are in effect for the period in question. So for the 2nd occurence of M%sT, we are concerned with the time between 1944 Apr 1 00:01 UNTIL 1944 Oct 1 00:01, according to the US rules. In the Rule documentation, we have:
<br>
<pre> LETTER/S<br> Gives the "variable part" (for example, the "S" or<br> "D" in "EST" or "EDT") of time zone abbreviations to<br> be used when this rule is in effect. If this field
<br> is -, the variable part is null.</pre>
So to get the value, we should look at the US rule that is in effect during 1944. Here are the US rules:<br><br># Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S<br>
Rule US 1918 1919 - Mar lastSun 2:00 1:00 D<br>
Rule US 1918 1919 - Oct lastSun 2:00 0 S<br>
Rule US 1942 only - Feb 9 2:00 1:00 W # War<br>
Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace<br>
Rule US 1945 only - Sep 30 2:00 0 S<br>
Rule US 1967 2006 - Oct lastSun 2:00 0 S<br>
Rule US 1967 1973 - Apr lastSun 2:00 1:00 D<br>
Rule US 1974 only - Jan 6 2:00 1:00 D<br>
Rule US 1975 only - Feb 23 2:00 1:00 D<br>
Rule US 1976 1986 - Apr lastSun 2:00 1:00 D<br>
Rule US 1987 2006 - Apr Sun>=1 2:00 1:00 D<br>
Rule US 2007 max - Mar Sun>=8 2:00 1:00 D<br>
Rule US 2007 max - Nov Sun>=1 2:00 0 S<br><br>None of them are operant during 1944, so I don't find any value for M%sT. Am I misreading something?<br><br>Mark<br><br><br><div><span class="gmail_quote">
On 9/26/06, <b class="gmail_sendername">Paul Eggert</b> <<a href="mailto:eggert@cs.ucla.edu">eggert@cs.ucla.edu</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Steffen Thorsen <<a href="mailto:straen@thorsen.priv.no">straen@thorsen.priv.no</a>> writes:<br><br>> Daylight Saving Time ended Friday for "Rule Palestine"<br><br>Thanks for the heads-up. Here is a proposed patch, which incorporates
<br>the Palestine change along with the other changes already proposed to<br>this list recently.<br><br>===================================================================<br>RCS file: RCS/africa,v<br>retrieving revision
2006.12<br>retrieving revision 2006.12.0.1<br>diff -pu -r2006.12 -r2006.12.0.1<br>--- africa 2006/09/18 16:58:11 2006.12<br>+++ africa 2006/09/20 19:35:29 2006.12.0.1<br>@@ -212,35 +212,13 @@ Rule Egypt 1990 1994 - May 1 1:00 1:00
<br> # Go with IATA starting in 1995, except correct 1995 entry from 09-30 to 09-29.<br> Rule Egypt 1995 max - Apr lastFri 0:00s 1:00 S<br> Rule Egypt 1995 2005 - Sep lastThu 23:00s 0 -
<br>-# From Hammad Hassan (2006-09-13), quoting The Egyptian Gazette (2006-09-10),<br>-# issue no. 41,083, page 1, column 1:<br>-# Egypt will switch back to the winter time on the eve of the first day of<br>-# the Muslim holy month of Ramadan, expected to start this year on Sept. 24....
<br>-# "Clocks will be turned back starting from the night on which Darul Ifta ...<br>-# announces sighting the crescent of the month of Ramadan,..." Magdi Radi,<br>-# the Cabinet spokesman, said yesterday.<br>-# From Hammad Hassan (2006-09-17):
<br>-# when we reach 1:00AM at Sep 25 the clocks will be turned back to 12:00AM.<br>-# I think also this change will be this year and may be the next couple of<br>-# years only. (They just want to exclude Ramadan from the summer time; if
<br>-# so, the change will be among 3 years only if my calculations are correct).<br>-# From Paul Eggert (2006-09-17):<br>-# For now, assume a similar rule will be followed in 2006/2008, and that<br>-# Ramadan will start as predicted by GNU Emacs
21.4. Here's the code used<br>-# to generate the 2006/2008 lines:<br>-# (let ((year 1427))<br>-# (while (< year (+ 1427 3))<br>-# (let ((date (calendar-gregorian-from-absolute<br>-# (calendar-absolute-from-islamic (list 9 2 year)))))
<br>-# (insert (format "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t 1:00\t0\t-\n"<br>-# (extract-calendar-year date)<br>-# (calendar-month-name (extract-calendar-month date) 3)
<br>-# (extract-calendar-day date))))<br>-# (setq year (1+ year)))))<br>-Rule Egypt 2006 only - Sep 25 1:00 0 -<br>-Rule Egypt 2007 only - Sep 14 1:00 0 -
<br>-Rule Egypt 2008 only - Sep 3 1:00 0 -<br>-Rule Egypt 2009 max - Sep lastThu 23:00s 0 -<br>+# From Steffen Thorsen (2006-09-19):<br>+# The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports:
<br>+# Egypt will turn back clocks by one hour at the midnight of Thursday<br>+# after observing the daylight saving time since May.<br>+# <a href="http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf">http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf
</a><br>+Rule Egypt 2006 only - Sep 21 23:00s 0 -<br>+Rule Egypt 2007 max - Sep lastThu 23:00s 0 -<br><br> # Zone NAME GMTOFF RULES FORMAT [UNTIL]
<br> Zone Africa/Cairo 2:05:00 - LMT 1900 Oct<br>===================================================================<br>RCS file: RCS/asia,v<br>retrieving revision 2006.11<br>retrieving revision 2006.11.0.3
<br>diff -pu -r2006.11 -r2006.11.0.3<br>--- asia 2006/08/28 16:18:48 2006.11<br>+++ asia 2006/09/26 17:55:21 2006.11.0.3<br>@@ -1476,6 +1476,15 @@ Zone Asia/Karachi 4:28:12 - LMT 1907
<br> # Gaza changed as well, but presumed Gaza to follow the same rules as<br> # the West Bank.<br><br>+# From Steffen Thorsen (2006-09-26):<br>+# according to the Palestine News Network (2006-09-19):<br>+# <a href="http://english.pnn.ps/index.php?option=com_content&task=view&id=596&Itemid=5">
http://english.pnn.ps/index.php?option=com_content&task=view&id=596&Itemid=5</a><br>+# > The Council of Ministers announced that this year its winter schedule<br>+# > will begin early, as of midnight Thursday. It is also time to turn
<br>+# > back the clocks for winter. Friday will begin an hour late this week.<br>+# I guess it is likely that next year's date will be moved as well,<br>+# because of the Ramadan.<br>+<br> # The rules for Egypt are stolen from the `africa' file.
<br> # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S<br> Rule EgyptAsia 1957 only - May 10 0:00 1:00 S<br>@@ -1488,8 +1497,10 @@ Rule EgyptAsia 1966 only - Oct 1 3:00 0
<br> Rule Palestine 1999 2005 - Apr Fri>=15 0:00 1:00 S<br> Rule Palestine 1999 2003 - Oct Fri>=15 0:00 0 -<br> Rule Palestine 2004 only - Oct 1 1:00 0 -
<br>-Rule Palestine 2005 max - Oct 4 2:00 0 -<br>+Rule Palestine 2005 only - Oct 4 2:00 0 -<br> Rule Palestine 2006 max - Apr 1 0:00 1:00 S
<br>+Rule Palestine 2006 only - Sep 22 0:00 0 -<br>+Rule Palestine 2007 max - Oct Fri>=15 0:00 0 -<br><br> # Zone NAME GMTOFF RULES FORMAT [UNTIL]<br>
Zone Asia/Gaza 2:17:52 - LMT 1900 Oct<br>@@ -1668,11 +1679,18 @@ Rule Syria 1993 only - Sep 25 0:00 0 -<br> # IATA SSIM (1998-02) says 1998-04-02;<br> # (1998-09) says 1999-03-29 and 1999-09-29; (1999-02) says 1999-04-02,
<br> # 2000-04-02, and 2001-04-02; (1999-09) says 2000-03-31 and 2001-03-31;<br>-# ignore all these claims and go with Shanks & Pottenger.<br>+# (2006) says 2006-03-31 and 2006-09-22;<br>+# for now ignore all these claims and go with Shanks & Pottenger,
<br>+# except for the 2006-09-22 claim (which seems right for Ramadan).<br> Rule Syria 1994 1996 - Apr 1 0:00 1:00 S<br>-Rule Syria 1994 max - Oct 1 0:00 0 -
<br>+Rule Syria 1994 2005 - Oct 1 0:00 0 -<br> Rule Syria 1997 1998 - Mar lastMon 0:00 1:00 S<br> Rule Syria 1999 max - Apr 1 0:00 1:00 S
<br>+# From Stephen Colebourne (2006-09-18):<br>+# According to IATA data, Syria will change DST on 21st September [21:00 UTC]<br>+# this year [only].... This is probably related to Ramadan, like Egypt.<br>+Rule Syria 2006 only - Sep 22 0:00 0 -
<br>+Rule Syria 2007 max - Oct 1 0:00 0 -<br> # Zone NAME GMTOFF RULES FORMAT [UNTIL]<br> Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq<br> 2:00 Syria EE%sT
<br>===================================================================<br>RCS file: RCS/southamerica,v<br>retrieving revision 2006.3<br>retrieving revision 2006.3.0.2<br>diff -pu -r2006.3 -r2006.3.0.2<br>--- southamerica 2006/04/03 14:07:15
2006.3<br>+++ southamerica 2006/09/20 19:35:02 2006.3.0.2<br>@@ -1064,6 +1064,10 @@ Rule Uruguay 2005 only - Mar 27 2:00 0<br> # 02:00 local time, official time in Uruguay will be at GMT -2.
<br> Rule Uruguay 2005 only - Oct 9 2:00 1:00 S<br> Rule Uruguay 2006 only - Mar 12 2:00 0 -<br>+# From Jesper Norgaard Welen (2006-09-06):<br>+# <a href="http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF">
http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF</a><br>+Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S<br>+Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
<br> # Zone NAME GMTOFF RULES FORMAT [UNTIL]<br> Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28<br> -3:44:44 - MMT 1920 May 1 # Montevideo MT<br></blockquote>
</div><br>