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>