From 66b18d9835dda089d65349c86e7851c4f0746e09 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 10 May 2022 15:39:01 -0700 Subject: [PROPOSED] Iran will stop DST in 2023 (Thanks to Ali Mirjamali.) * NEWS: Mention this. * asia (Iran): Remove post-2022 transitions. --- NEWS | 6 +++ asia | 139 ++++------------------------------------------------------- 2 files changed, 14 insertions(+), 131 deletions(-) diff --git a/NEWS b/NEWS index 63e160e..81644ec 100644 --- a/NEWS +++ b/NEWS @@ -3,8 +3,14 @@ News for the tz database Unreleased, experimental changes Briefly: + Iran no longer observes DST after 2022. Rename Europe/Kiev to Europe/Kyiv. + Changes to future timestamps + + Iran plans to stop observing DST permanently, after it falls back + on 2022-09-21. (Thanks to Ali Mirjamali.) + Changes to past timestamps From fall 1994 through fall 1995, Shanks wrote that Crimea's diff --git a/asia b/asia index ca69d36..dd2632a 100644 --- a/asia +++ b/asia @@ -1438,63 +1438,6 @@ Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov # # From Paul Eggert (2018-11-30): # Go with Shanks & Pottenger before Sept. 1991, and with Pournader thereafter. -# I used the following code in GNU Emacs 26.1 to generate the "Rule Iran" -# lines from 2008 through 2087. Emacs 26.1 uses Ed Reingold's -# cal-persia implementation of Birashk's approximation, which in the -# 2008-2087 range disagrees with the astronomical Persian calendar -# for Persian years 1404 (Gregorian 2025) and 1437 (Gregorian 2058), so -# the following code special-cases those years. See Table 15.1, page 264, of: -# Edward M. Reingold and Nachum Dershowitz, Calendrical Calculations: -# The Ultimate Edition, Cambridge University Press (2018). -# https://www.cambridge.org/fr/academic/subjects/computer-science/computing-general-interest/calendrical-calculations-ultimate-edition-4th-edition -# Page 258, footnote 2, of this book says there is some dispute over what will -# happen in 2091 (and some other years after that), so this code -# stops in 2087, as 2088 and 2089 agree with the "max" rule below. -# (cl-loop -# initially (require 'cal-persia) -# with first-persian-year = 1387 -# with last-persian-year = 1466 -# ;; Exceptional years in the above range, -# ;; from Reingold & Dershowitz Table 15.1, page 264: -# with exceptional-persian-years = '(1404 1437) -# with range-start = nil -# for persian-year from first-persian-year to last-persian-year -# do -# (let* -# ((exceptional-year-offset -# (if (member persian-year exceptional-persian-years) 1 0)) -# (beg-dst-absolute -# (+ (calendar-persian-to-absolute (list 1 1 persian-year)) -# exceptional-year-offset)) -# (end-dst-absolute -# (+ (calendar-persian-to-absolute (list 6 30 persian-year)) -# exceptional-year-offset)) -# (next-year-beg-dst-absolute -# (+ (calendar-persian-to-absolute (list 1 1 (1+ persian-year))) -# (if (member (1+ persian-year) exceptional-persian-years) 1 0))) -# (beg-dst (calendar-gregorian-from-absolute beg-dst-absolute)) -# (end-dst (calendar-gregorian-from-absolute end-dst-absolute)) -# (next-year-beg-dst (calendar-gregorian-from-absolute -# next-year-beg-dst-absolute)) -# (year (calendar-extract-year beg-dst)) -# (range-end (if range-start year "only"))) -# (setq range-start (or range-start year)) -# (when (or (/= (calendar-extract-day beg-dst) -# (calendar-extract-day next-year-beg-dst)) -# (= persian-year last-persian-year)) -# (insert -# (format -# "Rule\tIran\t%d\t%s\t-\t%s\t%2d\t24:00\t1:00\t-\n" -# range-start range-end -# (calendar-month-name (calendar-extract-month beg-dst) t) -# (calendar-extract-day beg-dst))) -# (insert -# (format -# "Rule\tIran\t%d\t%s\t-\t%s\t%2d\t24:00\t0\t-\n" -# range-start range-end -# (calendar-month-name (calendar-extract-month end-dst) t) -# (calendar-extract-day end-dst))) -# (setq range-start nil)))) # # From Oscar van Vlijmen (2005-03-30), writing about future # discrepancies between cal-persia and the Iranian calendar: @@ -1528,6 +1471,12 @@ Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov # be changed back to its previous state on the 24 hours of the # thirtieth day of Shahrivar. # +# From Ali Mirjamali (2022-05-10): +# Official IR News Agency announcement: irna.ir/xjJ3TT +# Iran Parliament (Majles) official announcement : shorturl.at/fhtIR +# Highlights: DST will be cancelled for the next Iranian year 1402 +# (i.e 2023-March-21) and forthcoming years. +# # Rule NAME FROM TO - IN ON AT SAVE LETTER/S Rule Iran 1978 1980 - Mar 20 24:00 1:00 - Rule Iran 1978 only - Oct 20 24:00 0 - @@ -1562,80 +1511,8 @@ Rule Iran 2017 2019 - Mar 21 24:00 1:00 - Rule Iran 2017 2019 - Sep 21 24:00 0 - Rule Iran 2020 only - Mar 20 24:00 1:00 - Rule Iran 2020 only - Sep 20 24:00 0 - -Rule Iran 2021 2023 - Mar 21 24:00 1:00 - -Rule Iran 2021 2023 - Sep 21 24:00 0 - -Rule Iran 2024 only - Mar 20 24:00 1:00 - -Rule Iran 2024 only - Sep 20 24:00 0 - -Rule Iran 2025 2027 - Mar 21 24:00 1:00 - -Rule Iran 2025 2027 - Sep 21 24:00 0 - -Rule Iran 2028 2029 - Mar 20 24:00 1:00 - -Rule Iran 2028 2029 - Sep 20 24:00 0 - -Rule Iran 2030 2031 - Mar 21 24:00 1:00 - -Rule Iran 2030 2031 - Sep 21 24:00 0 - -Rule Iran 2032 2033 - Mar 20 24:00 1:00 - -Rule Iran 2032 2033 - Sep 20 24:00 0 - -Rule Iran 2034 2035 - Mar 21 24:00 1:00 - -Rule Iran 2034 2035 - Sep 21 24:00 0 - -Rule Iran 2036 2037 - Mar 20 24:00 1:00 - -Rule Iran 2036 2037 - Sep 20 24:00 0 - -Rule Iran 2038 2039 - Mar 21 24:00 1:00 - -Rule Iran 2038 2039 - Sep 21 24:00 0 - -Rule Iran 2040 2041 - Mar 20 24:00 1:00 - -Rule Iran 2040 2041 - Sep 20 24:00 0 - -Rule Iran 2042 2043 - Mar 21 24:00 1:00 - -Rule Iran 2042 2043 - Sep 21 24:00 0 - -Rule Iran 2044 2045 - Mar 20 24:00 1:00 - -Rule Iran 2044 2045 - Sep 20 24:00 0 - -Rule Iran 2046 2047 - Mar 21 24:00 1:00 - -Rule Iran 2046 2047 - Sep 21 24:00 0 - -Rule Iran 2048 2049 - Mar 20 24:00 1:00 - -Rule Iran 2048 2049 - Sep 20 24:00 0 - -Rule Iran 2050 2051 - Mar 21 24:00 1:00 - -Rule Iran 2050 2051 - Sep 21 24:00 0 - -Rule Iran 2052 2053 - Mar 20 24:00 1:00 - -Rule Iran 2052 2053 - Sep 20 24:00 0 - -Rule Iran 2054 2055 - Mar 21 24:00 1:00 - -Rule Iran 2054 2055 - Sep 21 24:00 0 - -Rule Iran 2056 2057 - Mar 20 24:00 1:00 - -Rule Iran 2056 2057 - Sep 20 24:00 0 - -Rule Iran 2058 2059 - Mar 21 24:00 1:00 - -Rule Iran 2058 2059 - Sep 21 24:00 0 - -Rule Iran 2060 2062 - Mar 20 24:00 1:00 - -Rule Iran 2060 2062 - Sep 20 24:00 0 - -Rule Iran 2063 only - Mar 21 24:00 1:00 - -Rule Iran 2063 only - Sep 21 24:00 0 - -Rule Iran 2064 2066 - Mar 20 24:00 1:00 - -Rule Iran 2064 2066 - Sep 20 24:00 0 - -Rule Iran 2067 only - Mar 21 24:00 1:00 - -Rule Iran 2067 only - Sep 21 24:00 0 - -Rule Iran 2068 2070 - Mar 20 24:00 1:00 - -Rule Iran 2068 2070 - Sep 20 24:00 0 - -Rule Iran 2071 only - Mar 21 24:00 1:00 - -Rule Iran 2071 only - Sep 21 24:00 0 - -Rule Iran 2072 2074 - Mar 20 24:00 1:00 - -Rule Iran 2072 2074 - Sep 20 24:00 0 - -Rule Iran 2075 only - Mar 21 24:00 1:00 - -Rule Iran 2075 only - Sep 21 24:00 0 - -Rule Iran 2076 2078 - Mar 20 24:00 1:00 - -Rule Iran 2076 2078 - Sep 20 24:00 0 - -Rule Iran 2079 only - Mar 21 24:00 1:00 - -Rule Iran 2079 only - Sep 21 24:00 0 - -Rule Iran 2080 2082 - Mar 20 24:00 1:00 - -Rule Iran 2080 2082 - Sep 20 24:00 0 - -Rule Iran 2083 only - Mar 21 24:00 1:00 - -Rule Iran 2083 only - Sep 21 24:00 0 - -Rule Iran 2084 2086 - Mar 20 24:00 1:00 - -Rule Iran 2084 2086 - Sep 20 24:00 0 - -Rule Iran 2087 only - Mar 21 24:00 1:00 - -Rule Iran 2087 only - Sep 21 24:00 0 - -# -# The following rules are approximations starting in the year 2088. -# These are the best post-2088 approximations available, given the -# restrictions of a single rule using ordinary Gregorian dates. -# At some point this table will need to be extended, though quite -# possibly Iran will change the rules first. -Rule Iran 2088 max - Mar 20 24:00 1:00 - -Rule Iran 2088 max - Sep 20 24:00 0 - +Rule Iran 2021 2022 - Mar 21 24:00 1:00 - +Rule Iran 2021 2022 - Sep 21 24:00 0 - # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Asia/Tehran 3:25:44 - LMT 1916 -- 2.35.3