From b1df4b55b41a96ca9ac5349b8d66d9f4f367fad5 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 29 Apr 2016 08:28:16 -0700 Subject: [PROPOSED PATCH] Egypt observes DST again in 2016 It is from July 7 to the end of October. Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.) * africa (Egypt): Add DST transitions from Thorsen. For future years, guess April's last Thursday to October's last Thursday except for Ramadan. Omit the Ramadan part of the guess after 2055, though, as there is no programmatic way to predict Ramadan indefinitely. * NEWS: Document this. --- NEWS | 8 +++++++ africa | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+) diff --git a/NEWS b/NEWS index 04fac5e..fd83252 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,14 @@ News for the tz database Unreleased, experimental changes + Changes affecting future time stamps + + Africa/Cairo observes DST in 2016 from July 7 to the end of October. + Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.) + For future years, guess April's last Thursday to October's last + Thursday except for Ramadan, as this sort of thing seems to have + been the intent previously. + Changes affecting past time stamps Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was diff --git a/africa b/africa index f20d216..442b326 100644 --- a/africa +++ b/africa @@ -343,6 +343,45 @@ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 - # decision to abandon DST permanently. See Ahram Online 2015-04-24. # http://english.ahram.org.eg/NewsContent/1/64/128509/Egypt/Politics-/Sisi-cancels-daylight-saving-time-in-Egypt.aspx +# From Steffen Thorsen (2016-04-29): +# Egypt will have DST from July 7 until the end of October.... +# http://english.ahram.org.eg/NewsContentP/1/204655/Egypt/Daylight-savings-time-returning-to-Egypt-on--July.aspx +# http://www.nileinternational.net/en/?p=25806 +# ... EgyptAir seems to have assumed DST to start in April (like it previously +# did in 2010), and therefore this obviously causes problems with the schedules: +# http://www.egyptair.com/en/about-egyptair/news-and-press/Pages/CANCELLATION%20OF%20DAYLIGHT%20SAVING%20TIME.aspx +# +# From Paul Eggert (2016-04-29): +# For now, guess fall transitions will be October's last Thursday at +# 24:00 and spring transitions will follow rules used 1995-2010 and be +# April's last Thursday at 24:00, and guess a switch to standard time at +# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the +# first Friday after Ramadan. To implement this, +# transition dates for 2016 through 2068 were determined by running +# the following program under GNU Emacs 24.5, with the results integrated +# by hand into the table below. Ramadan again intrudes on the guessed +# DST starting in 2069, but that's beyond our somewhat-arbitrary cutoff here. +# (let ((islamic-year 1437)) +# (while (< islamic-year 1491) +# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year))) +# (b (calendar-islamic-to-absolute (list 10 1 islamic-year))) +# (friday 5)) +# (while (/= friday (mod a 7)) +# (setq a (1- a))) +# (while (/= friday (mod b 7)) +# (setq b (1+ b))) +# (setq a (1- a)) +# (setq b (1- b)) +# (setq a (calendar-gregorian-from-absolute a)) +# (setq b (calendar-gregorian-from-absolute b)) +# (insert +# (format +# (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n" +# "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n") +# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) +# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) +# (setq islamic-year (+ 1 islamic-year)))) + Rule Egypt 2008 only - Aug lastThu 24:00 0 - Rule Egypt 2009 only - Aug 20 24:00 0 - Rule Egypt 2010 only - Aug 10 24:00 0 - @@ -352,6 +391,53 @@ Rule Egypt 2014 only - May 15 24:00 1:00 S Rule Egypt 2014 only - Jun 26 24:00 0 - Rule Egypt 2014 only - Jul 31 24:00 1:00 S Rule Egypt 2014 only - Sep lastThu 24:00 0 - +Rule Egypt 2016 only - Jul 7 24:00 1:00 S +Rule Egypt 2016 2035 - Oct lastThu 24:00 0 - +Rule Egypt 2017 2019 - Apr lastThu 24:00 1:00 S +Rule Egypt 2017 only - May 25 24:00 0 - +Rule Egypt 2017 only - Jun 29 24:00 1:00 S +Rule Egypt 2018 only - May 10 24:00 0 - +Rule Egypt 2018 only - Jun 14 24:00 1:00 S +Rule Egypt 2019 only - May 2 24:00 0 - +Rule Egypt 2019 only - Jun 6 24:00 1:00 S +Rule Egypt 2020 only - May 28 24:00 1:00 S +Rule Egypt 2021 only - May 13 24:00 1:00 S +Rule Egypt 2022 only - May 5 24:00 1:00 S +Rule Egypt 2023 2051 - Apr lastThu 24:00 1:00 S +Rule Egypt 2036 only - Oct 16 24:00 0 - +Rule Egypt 2037 only - Oct 8 24:00 0 - +Rule Egypt 2038 only - Sep 23 24:00 0 - +Rule Egypt 2039 only - Sep 15 24:00 0 - +Rule Egypt 2039 only - Oct 20 24:00 1:00 S +Rule Egypt 2039 max - Oct lastThu 24:00 0 - +Rule Egypt 2040 only - Sep 6 24:00 0 - +Rule Egypt 2040 only - Oct 11 24:00 1:00 S +Rule Egypt 2041 only - Aug 22 24:00 0 - +Rule Egypt 2041 only - Sep 26 24:00 1:00 S +Rule Egypt 2042 only - Aug 14 24:00 0 - +Rule Egypt 2042 only - Sep 18 24:00 1:00 S +Rule Egypt 2043 only - Aug 6 24:00 0 - +Rule Egypt 2043 only - Sep 10 24:00 1:00 S +Rule Egypt 2044 only - Jul 21 24:00 0 - +Rule Egypt 2044 only - Aug 25 24:00 1:00 S +Rule Egypt 2045 only - Jul 13 24:00 0 - +Rule Egypt 2045 only - Aug 17 24:00 1:00 S +Rule Egypt 2046 only - Jun 28 24:00 0 - +Rule Egypt 2046 only - Aug 9 24:00 1:00 S +Rule Egypt 2047 only - Jun 20 24:00 0 - +Rule Egypt 2047 only - Jul 25 24:00 1:00 S +Rule Egypt 2048 only - Jun 11 24:00 0 - +Rule Egypt 2048 only - Jul 16 24:00 1:00 S +Rule Egypt 2049 only - May 27 24:00 0 - +Rule Egypt 2049 only - Jul 1 24:00 1:00 S +Rule Egypt 2050 only - May 19 24:00 0 - +Rule Egypt 2050 only - Jun 23 24:00 1:00 S +Rule Egypt 2051 only - May 11 24:00 0 - +Rule Egypt 2051 only - Jun 15 24:00 1:00 S +Rule Egypt 2052 only - May 30 24:00 1:00 S +Rule Egypt 2053 only - May 22 24:00 1:00 S +Rule Egypt 2054 only - May 14 24:00 1:00 S +Rule Egypt 2055 max - Apr lastThu 24:00 1:00 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Cairo 2:05:09 - LMT 1900 Oct -- 2.7.4