sync community patches
This commit is contained in:
parent
f57403b238
commit
f219867b78
89
backport-Cite-Mirmalek-on-Martian-timekeeping.patch
Normal file
89
backport-Cite-Mirmalek-on-Martian-timekeeping.patch
Normal file
@ -0,0 +1,89 @@
|
||||
From efbae189bc3eb2b7c1efbe79ed6e2ab7b22cae24 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 30 Jun 2020 16:39:43 -0700
|
||||
Subject: [PATCH 18/47] Cite Mirmalek on Martian timekeeping
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* theory.html (Time and time zones on other planets):
|
||||
Update discussion of Martian timekeeping and cite Mirmalek 2020.
|
||||
(Thanks to Michelle Bastian for a pointer to Mirmalek’s earlier work.)
|
||||
---
|
||||
theory.html | 31 +++++++++++++++++++++----------
|
||||
1 file changed, 21 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/theory.html b/theory.html
|
||||
index 1a5b568..22b9815 100644
|
||||
--- a/theory.html
|
||||
+++ b/theory.html
|
||||
@@ -1327,17 +1327,21 @@ They sometimes disagree.
|
||||
<section>
|
||||
<h2 id="planets">Time and time zones on other planets</h2>
|
||||
<p>
|
||||
-Some people's work schedules
|
||||
-use <a href="https://en.wikipedia.org/wiki/Timekeeping_on_Mars">Mars time</a>.
|
||||
+Some people's work schedules have used
|
||||
+<a href="https://en.wikipedia.org/wiki/Timekeeping_on_Mars">Mars time</a>.
|
||||
Jet Propulsion Laboratory (JPL) coordinators kept Mars time on
|
||||
and off during the
|
||||
<a href="https://en.wikipedia.org/wiki/Mars_Pathfinder">Mars
|
||||
-Pathfinder</a> mission.
|
||||
+Pathfinder</a> mission (1997).
|
||||
Some of their family members also adapted to Mars time.
|
||||
Dozens of special Mars watches were built for JPL workers who kept
|
||||
-Mars time during the Mars Exploration Rovers mission (2004).
|
||||
-These timepieces look like normal Seikos and Citizens but use Mars
|
||||
-seconds rather than terrestrial seconds.
|
||||
+Mars time during the
|
||||
+<a href="https://en.wikipedia.org/wiki/Mars_Exploration_Rover">Mars
|
||||
+Exploration Rovers (MER)</a> mission (2004–2018).
|
||||
+These timepieces looked like normal Seikos and Citizens but were adjusted
|
||||
+to use Mars seconds rather than terrestrial seconds, although
|
||||
+unfortunately the adjusted watches were unreliable and appear to have
|
||||
+had only limited use.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -1345,6 +1349,8 @@ A Mars solar day is called a "sol" and has a mean period equal to
|
||||
about 24 hours 39 minutes 35.244 seconds in terrestrial time.
|
||||
It is divided into a conventional 24-hour clock, so each Mars second
|
||||
equals about 1.02749125 terrestrial seconds.
|
||||
+(One MER worker noted, "If I am working Mars hours, and Mars hours are
|
||||
+2.5% more than Earth hours, shouldn't I get an extra 2.5% pay raise?")
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -1360,12 +1366,12 @@ called Mars Coordinated Time (<abbr>MTC</abbr>).
|
||||
<p>
|
||||
Each landed mission on Mars has adopted a different reference for
|
||||
solar timekeeping, so there is no real standard for Mars time zones.
|
||||
-For example, the
|
||||
-<a href="https://en.wikipedia.org/wiki/Mars_Exploration_Rover">Mars
|
||||
-Exploration Rover</a> project (2004) defined two time zones "Local
|
||||
+For example, the MER mission defined two time zones "Local
|
||||
Solar Time A" and "Local Solar Time B" for its two missions, each zone
|
||||
designed so that its time equals local true solar time at
|
||||
approximately the middle of the nominal mission.
|
||||
+The A and B zones differ enough so that an MER worker assigned to
|
||||
+the A zone might suffer "Mars lag" when switching to work in the B zone.
|
||||
Such a "time zone" is not particularly suited for any application
|
||||
other than the mission itself.
|
||||
</p>
|
||||
@@ -1414,7 +1420,12 @@ Sources for time on other planets:
|
||||
Michael Allison and Robert Schmunk,
|
||||
"<a href="https://www.giss.nasa.gov/tools/mars24/help/notes.html">Technical
|
||||
Notes on Mars Solar Time as Adopted by the Mars24 Sunclock</a>"
|
||||
- (2018-12-13).
|
||||
+ (2020-03-08).
|
||||
+ </li>
|
||||
+ <li>
|
||||
+ Zara Mirmalek,
|
||||
+ <em><a href="https://mitpress.mit.edu/books/making-time-mars">Making
|
||||
+ Time on Mars</a></em>, MIT Press (March 2020), ISBN 978-0262043854.
|
||||
</li>
|
||||
<li>
|
||||
Jia-Rui Chong,
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
42
backport-Cite-Rishi-et-al-in-tz-link.patch
Normal file
42
backport-Cite-Rishi-et-al-in-tz-link.patch
Normal file
@ -0,0 +1,42 @@
|
||||
From d7451484e7b947b79c30dff4304a599f6c1e470e Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 28 Aug 2020 17:54:22 -0700
|
||||
Subject: [PATCH 30/47] Cite Rishi et al in tz-link
|
||||
|
||||
* tz-link.html (Costs and benefits of time shifts):
|
||||
Add citation. (Thanks to Arthur David Olson.)
|
||||
---
|
||||
tz-link.html | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index 8141d71..6dcb654 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -905,7 +905,8 @@ href="http://sohma.armada.mil.uy/index.php/servicios/datos-astronomicos" hreflan
|
||||
<h2 id="costs">Costs and benefits of time shifts</h2>
|
||||
<p>Various sources argue for and against daylight saving time and time
|
||||
zone shifts, and many scientific studies have been conducted. This
|
||||
-section summarizes reviews of scientific literature in the area.</p>
|
||||
+section summarizes reviews and position statements based on
|
||||
+scientific literature in the area.</p>
|
||||
<ul>
|
||||
<li>Carey RN, Sarma KM.
|
||||
<a href="https://bmjopen.bmj.com/content/7/6/e014319.long">Impact of
|
||||
@@ -923,6 +924,13 @@ doi:<a href="https://doi.org/10.5547/01956574.39.2.thav">10.5547/01956574.39.2.t
|
||||
This analyzes research literature and concludes, "Electricity savings
|
||||
are larger for countries farther away from the equator, while
|
||||
subtropical regions consume more electricity because of DST."</li>
|
||||
+<li>Rishi MA, Ahmed O, Barrantes Perez JH <em>et al</em>.
|
||||
+<a href="https://jcsm.aasm.org/doi/10.5664/jcsm.8780">Daylight saving time:
|
||||
+an American Academy of Sleep Medicine position statement</a>.
|
||||
+<em>J Clin Sleep Med.</em>
|
||||
+2020;<a href="https://doi.org/10.5664/jcsm.8780">10.5664/jcsm.8780</a>.
|
||||
+This argues for permanent standard time due to health risks of both
|
||||
+DST transitions and permanent DST.</li>
|
||||
<li>Roenneberg T, Winnebeck EC, Klerman EB.
|
||||
<a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6692659/">Daylight
|
||||
saving time and artificial time zones – a battle between
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
461
backport-Convert-tz-how-to.html-to-HTML-5.patch
Normal file
461
backport-Convert-tz-how-to.html-to-HTML-5.patch
Normal file
@ -0,0 +1,461 @@
|
||||
From c5f6ef85188c210a4669ce5c8778983dcb4369f3 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 4 Oct 2020 13:43:00 -0700
|
||||
Subject: [PATCH 43/47] Convert tz-how-to.html to HTML 5
|
||||
|
||||
This simplifies maintenance and should not affect appearance.
|
||||
* tz-how-to.html: Convert to HTML 5, preserving the old
|
||||
appearance as much as possible on Firefox 81.
|
||||
* Makefile (SGML_TOPDIR, SGML_DTDDIR, SGML_SEARCH_PATH)
|
||||
(SGML_CATALOG_FILES, VALIDATE, VALIDATE_FLAGS, VALIDATE_ENV):
|
||||
Remove; no longer needed.
|
||||
(check_tz-how-to.html): Check this just like the other HTML files.
|
||||
---
|
||||
Makefile | 26 +-----------
|
||||
tz-how-to.html | 130 ++++++++++++++++++++++++++++++++-------------------------
|
||||
2 files changed, 74 insertions(+), 82 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 75b906d..28972c6 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -412,26 +412,6 @@ CURL= curl
|
||||
# Name of GNU Privacy Guard <https://gnupg.org/>, used to sign distributions.
|
||||
GPG= gpg
|
||||
|
||||
-# The path where SGML DTDs are kept and the catalog file(s) to use when
|
||||
-# validating HTML 4.01. The default should work on both Debian and Red Hat.
|
||||
-SGML_TOPDIR= /usr
|
||||
-SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
|
||||
-SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
|
||||
-SGML_CATALOG_FILES= \
|
||||
- $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
|
||||
-
|
||||
-# The name, arguments and environment of a program to validate HTML 4.01.
|
||||
-# See <http://openjade.sourceforge.net/doc/> for a validator, and
|
||||
-# <https://validator.w3.org/source/> for a validation library.
|
||||
-# Set VALIDATE=':' if you do not have such a program.
|
||||
-VALIDATE = nsgmls
|
||||
-VALIDATE_FLAGS = -s -B -wall -wno-unused-param
|
||||
-VALIDATE_ENV = \
|
||||
- SGML_CATALOG_FILES='$(SGML_CATALOG_FILES)' \
|
||||
- SGML_SEARCH_PATH='$(SGML_SEARCH_PATH)' \
|
||||
- SP_CHARSET_FIXED=YES \
|
||||
- SP_ENCODING=UTF-8
|
||||
-
|
||||
# This expensive test requires USE_LTZ.
|
||||
# To suppress it, define this macro to be empty.
|
||||
CHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives
|
||||
@@ -826,15 +806,13 @@ check_tzs: $(TZS) $(TZS_NEW)
|
||||
check_web: $(CHECK_WEB_PAGES)
|
||||
check_theory.html: theory.html
|
||||
check_tz-art.html: tz-art.html
|
||||
+check_tz-how-to.html: tz-how-to.html
|
||||
check_tz-link.html: tz-link.html
|
||||
-check_theory.html check_tz-art.html check_tz-link.html:
|
||||
+check_theory.html check_tz-art.html check_tz-how-to.html check_tz-link.html:
|
||||
$(CURL) -sS --url https://validator.w3.org/nu/ -F out=gnu \
|
||||
-F file=@$$(expr $@ : 'check_\(.*\)') -o $@.out && \
|
||||
test ! -s $@.out || { cat $@.out; exit 1; }
|
||||
mv $@.out $@
|
||||
-check_tz-how-to.html: tz-how-to.html
|
||||
- $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) tz-how-to.html
|
||||
- touch $@
|
||||
|
||||
# Check that zishrink.awk does not alter the data, and that ziguard.awk
|
||||
# preserves main-format data.
|
||||
diff --git a/tz-how-to.html b/tz-how-to.html
|
||||
index 3cb446f..bf3e86f 100644
|
||||
--- a/tz-how-to.html
|
||||
+++ b/tz-how-to.html
|
||||
@@ -1,12 +1,16 @@
|
||||
-<!DOCTYPE html
|
||||
- PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||
- "http://www.w3.org/TR/html4/strict.dtd">
|
||||
-<html>
|
||||
+<!DOCTYPE html>
|
||||
+<html lang="en">
|
||||
<head>
|
||||
<title>How to Read the tz Database</title>
|
||||
-<meta http-equiv="Content-type" content='text/html; charset="UTF-8"'>
|
||||
-<style type="text/css">
|
||||
+<meta charset="UTF-8">
|
||||
+<style>
|
||||
pre {margin-left: 2em; white-space: pre-wrap;}
|
||||
+pre.td {margin-left: 0;}
|
||||
+td {text-align: center;}
|
||||
+table {border: 1px outset;}
|
||||
+th, td {border: 1px inset;}
|
||||
+table.rule {border: none; margin: auto;}
|
||||
+td.footnote {text-align: left;}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@@ -31,13 +35,15 @@ about the zones.</p>
|
||||
for Chicago (from the <code>northamerica</code> file in
|
||||
the <code>data</code> subdirectory):</p>
|
||||
|
||||
-<table border="1">
|
||||
+<table>
|
||||
<tr>
|
||||
<th colspan="6">From the Source File</th>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6" align="center"><table><tr><td>
|
||||
-<pre>
|
||||
+ <td colspan="6">
|
||||
+ <table class="rule">
|
||||
+ <tr><td style="border:none;text-align:left">
|
||||
+<pre class="td">
|
||||
#Rule NAME FROM TO - IN ON AT SAVE LETTER
|
||||
Rule Chicago 1920 only - Jun 13 2:00 1:00 D
|
||||
Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
|
||||
@@ -58,35 +64,35 @@ Rule Chicago 1955 1966 - Oct lastSun 2:00 0 S
|
||||
<th>At</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">1920 only</td>
|
||||
<td colspan="2">June 13<small><sup>th</sup></small></td>
|
||||
<td rowspan="6">02:00 local</td>
|
||||
<td>go to daylight saving time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>1920</td>
|
||||
<td>1921</td>
|
||||
<td rowspan="5">last Sunday</td>
|
||||
<td>in October</td>
|
||||
<td>return to standard time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">1921 only</td>
|
||||
<td>in March</td>
|
||||
<td rowspan="2">go to daylight saving time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="2">1922</td>
|
||||
<td>1966</td>
|
||||
<td>in April</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>1954</td>
|
||||
<td>in September</td>
|
||||
<td rowspan="2">return to standard time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>1955</td>
|
||||
<td>1966</td>
|
||||
<td>in October</td>
|
||||
@@ -150,13 +156,15 @@ time changed in 1955. Got it?</p>
|
||||
|
||||
<p>OK, now for the somewhat more interesting “US” rules:</p>
|
||||
|
||||
-<table border="1">
|
||||
+<table>
|
||||
<tr>
|
||||
<th colspan="6">From the Source File</th>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6" align="center"><table><tr><td>
|
||||
-<pre>
|
||||
+ <td colspan="6">
|
||||
+ <table class="rule">
|
||||
+ <tr><td style="border:none;text-align:left">
|
||||
+<pre class="td">
|
||||
#Rule NAME FROM TO - IN ON AT SAVE LETTER/S
|
||||
Rule US 1918 1919 - Mar lastSun 2:00 1:00 D
|
||||
Rule US 1918 1919 - Oct lastSun 2:00 0 S
|
||||
@@ -184,7 +192,7 @@ Rule US 2007 max - Nov Sun>=1 2:00 0 S
|
||||
<th>At</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="2">1918</td>
|
||||
<td rowspan="2">1919</td>
|
||||
<td rowspan="2">last Sunday</td>
|
||||
@@ -192,16 +200,16 @@ Rule US 2007 max - Nov Sun>=1 2:00 0 S
|
||||
<td rowspan="3">02:00 local</td>
|
||||
<td>go to daylight saving time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>in October</td>
|
||||
<td>return to standard time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">1942 only</td>
|
||||
<td colspan="2">February 9<small><sup>th</sup></small></td>
|
||||
<td>go to “war time”</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2" rowspan="2">1945 only</td>
|
||||
<td colspan="2">August 14<small><sup>th</sup></small></td>
|
||||
<td>23:00 <a href="https://en.wikipedia.org/wiki/Universal_Time">UT</a></td>
|
||||
@@ -210,47 +218,47 @@ Rule US 2007 max - Nov Sun>=1 2:00 0 S
|
||||
clocks don’t change
|
||||
</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">September 30<small><sup>th</sup></small></td>
|
||||
<td rowspan="9">02:00 local</td>
|
||||
<td rowspan="2">return to standard time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="2">1967</td>
|
||||
<td>2006</td>
|
||||
<td rowspan="2">last Sunday</td>
|
||||
<td>in October</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>1973</td>
|
||||
<td>in April</td>
|
||||
<td rowspan="6">go to daylight saving time</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">1974 only</td>
|
||||
<td colspan="2">January 6<small><sup>th</sup></small></td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">1975 only</td>
|
||||
<td colspan="2">February 23<small><sup>rd</sup></small></td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>1976</td>
|
||||
<td>1986</td>
|
||||
<td>last Sunday</td>
|
||||
<td rowspan="2">in April</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>1987</td>
|
||||
<td>2006</td>
|
||||
<td>first Sunday</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="2">2007</td>
|
||||
<td rowspan="2">present</td>
|
||||
<td colspan="2">second Sunday in March</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td colspan="2">first Sunday in November</td>
|
||||
<td>return to standard time</td>
|
||||
</tr>
|
||||
@@ -316,13 +324,15 @@ rule, so there should be no change.</li>
|
||||
|
||||
<p>OK, now let’s look at a Zone record:</p>
|
||||
|
||||
-<table border="1">
|
||||
+<table>
|
||||
<tr>
|
||||
<th colspan="5">From the Source File</th>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6" align="center"><table><tr><td>
|
||||
-<pre>
|
||||
+ <td colspan="5">
|
||||
+ <table class="rule">
|
||||
+ <tr><td style="border:none;text-align:left">
|
||||
+<pre class="td">
|
||||
#Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
|
||||
-6:00 US C%sT 1920
|
||||
@@ -350,49 +360,49 @@ Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
|
||||
<th>Date</th>
|
||||
<th>Time</th>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−5:50:36</td>
|
||||
<td>not observed</td>
|
||||
<td>LMT</td>
|
||||
<td>1883-11-18</td>
|
||||
<td>12:09:24</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="2">−6:00:00</td>
|
||||
<td>US rules</td>
|
||||
<td rowspan="2">CST or CDT</td>
|
||||
<td>1920-01-01</td>
|
||||
<td>00:00:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>Chicago rules</td>
|
||||
<td>1936-03-01</td>
|
||||
<td rowspan="2">02:00:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−5:00:00</td>
|
||||
<td>not observed</td>
|
||||
<td>EST</td>
|
||||
<td>1936-11-15</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="4">−6:00:00</td>
|
||||
<td>Chicago rules</td>
|
||||
<td>CST or CDT</td>
|
||||
<td>1942-01-01</td>
|
||||
<td rowspan="3">00:00:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>US rules</td>
|
||||
<td>CST, CWT or CPT</td>
|
||||
<td>1946-01-01</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>Chicago rules</td>
|
||||
<td rowspan="2">CST or CDT</td>
|
||||
<td>1967-01-01</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>US rules</td>
|
||||
<td colspan="2">—</td>
|
||||
</tr>
|
||||
@@ -557,13 +567,15 @@ the true offset is undefined.
|
||||
|
||||
<p>As a final example, here’s the complete history for Hawaii:</p>
|
||||
|
||||
-<table border="1">
|
||||
+<table>
|
||||
<tr>
|
||||
<th colspan="6">Relevant Excerpts from the US Rules</th>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6" align="center"><table><tr><td>
|
||||
-<pre>
|
||||
+ <td colspan="6">
|
||||
+ <table class="rule">
|
||||
+ <tr><td style="border:none;text-align:left">
|
||||
+<pre class="td">
|
||||
#Rule NAME FROM TO - IN ON AT SAVE LETTER/S
|
||||
Rule US 1918 1919 - Oct lastSun 2:00 0 S
|
||||
Rule US 1942 only - Feb 9 2:00 1:00 W # War
|
||||
@@ -576,8 +588,10 @@ Rule US 1945 only - Sep lastSun 2:00 0 S
|
||||
<th colspan="6">The Zone Record</th>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6" align="center"><table><tr><td>
|
||||
-<pre>
|
||||
+ <td colspan="6">
|
||||
+ <table class="rule">
|
||||
+ <tr><td style="border:none;text-align:left">
|
||||
+<pre class="td">
|
||||
#Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
-10:30 - HST 1933 Apr 30 2:00
|
||||
@@ -602,7 +616,7 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
<th>Date</th>
|
||||
<th>Time</th>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−10:31:26</td>
|
||||
<td>—</td>
|
||||
<td>LMT</td>
|
||||
@@ -610,7 +624,7 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
<td>1896-01-13</td>
|
||||
<td>12:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−10:30</td>
|
||||
<td>+0:01:26</td>
|
||||
<td>HST</td>
|
||||
@@ -618,7 +632,7 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
<td>1933-04-30</td>
|
||||
<td>02:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−9:30</td>
|
||||
<td>+1:00</td>
|
||||
<td>HDT</td>
|
||||
@@ -626,7 +640,7 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
<td>1933-05-21</td>
|
||||
<td>12:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−10:30¹</td>
|
||||
<td>−1:00¹</td>
|
||||
<td>HST¹</td>
|
||||
@@ -634,7 +648,7 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
<td>1942-02-09</td>
|
||||
<td>02:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td rowspan="2">−9:30</td>
|
||||
<td>+1:00</td>
|
||||
<td>HWT</td>
|
||||
@@ -642,38 +656,38 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
|
||||
<td>1945-08-14</td>
|
||||
<td>13:30²</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>0</td>
|
||||
<td>HPT</td>
|
||||
<td>Hawaii peace time</td>
|
||||
<td>1945-09-30</td>
|
||||
<td rowspan="2">02:00</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−10:30</td>
|
||||
<td>−1:00</td>
|
||||
<td rowspan="2">HST</td>
|
||||
<td rowspan="2">Hawaii standard time</td>
|
||||
<td>1947-06-08</td>
|
||||
</tr>
|
||||
-<tr align="center">
|
||||
+<tr>
|
||||
<td>−10:00³</td>
|
||||
<td>+0:30³</td>
|
||||
<td colspan="2">—</td>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6">
|
||||
+ <td colspan="6" class="footnote">
|
||||
¹Switching to US rules…most recent transition (in 1919) was to standard time
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6">
|
||||
+ <td colspan="6" class="footnote">
|
||||
²23:00 <a href="https://en.wikipedia.org/wiki/Universal_Time">UT</a>
|
||||
+ (−9:30) = 13:30 local
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
- <td colspan="6">
|
||||
+ <td colspan="6" class="footnote">
|
||||
³Since <a href="https://en.wikipedia.org/wiki/ISO_8601">1947–06–08T12:30Z</a>,
|
||||
the civil time in Hawaii has been
|
||||
<a href="https://en.wikipedia.org/wiki/Universal_Time">UT</a>/<a href="https://en.wikipedia.org/wiki/Coordinated_Universal_Time">UTC</a>
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
94
backport-Do-not-install-posixrules-by-default.patch
Normal file
94
backport-Do-not-install-posixrules-by-default.patch
Normal file
@ -0,0 +1,94 @@
|
||||
From 08c326dfd9e1a0848787bcc57784801856d205f2 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 12 Jun 2020 18:49:00 -0700
|
||||
Subject: [PATCH 16/47] Do not install 'posixrules' by default
|
||||
|
||||
* Makefile (POSIXRULES): Default to '-'.
|
||||
* NEWS: Mention this.
|
||||
---
|
||||
Makefile | 36 ++++++++++++++++--------------------
|
||||
NEWS | 5 +++++
|
||||
2 files changed, 21 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 107f67e..0da7c3f 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -27,8 +27,7 @@ DATAFORM= main
|
||||
# Change the line below for your timezone (after finding the one you want in
|
||||
# one of the $(TDATA) source files, or adding it to a source file).
|
||||
# Alternatively, if you discover you've got the wrong timezone, you can just
|
||||
-# zic -l rightzone
|
||||
-# to correct things.
|
||||
+# 'zic -l -' to remove it, or 'zic -l rightzone' to change it.
|
||||
# Use the command
|
||||
# make zonenames
|
||||
# to get a list of the values you can use for LOCALTIME.
|
||||
@@ -37,33 +36,30 @@ LOCALTIME= GMT
|
||||
|
||||
# The POSIXRULES macro controls interpretation of nonstandard and obsolete
|
||||
# POSIX-like TZ settings like TZ='EET-2EEST' that lack DST transition rules.
|
||||
-# In the reference implementation, if you want something other than Eastern
|
||||
-# United States time as a template for handling these settings, you can
|
||||
-# change the line below (after finding the timezone you want in the
|
||||
-# one of the $(TDATA) source files, or adding it to a source file).
|
||||
-# A setting like TZ='EET-2EEST' is supposed to use the rules in the
|
||||
-# template file to determine "spring forward" and "fall back" days and
|
||||
-# times; the environment variable itself specifies UT offsets of standard and
|
||||
-# daylight saving time.
|
||||
-# Alternatively, if you discover you've got the wrong timezone, you can just
|
||||
-# zic -p rightzone
|
||||
-# to correct things.
|
||||
-# Use the command
|
||||
-# make zonenames
|
||||
-# to get a list of the values you can use for POSIXRULES.
|
||||
+# Such a setting uses the rules in a template file to determine
|
||||
+# "spring forward" and "fall back" days and times; the environment
|
||||
+# variable itself specifies UT offsets of standard and daylight saving time.
|
||||
#
|
||||
-# If POSIXRULES is empty, no template is installed; this is the intended
|
||||
-# future default for POSIXRULES.
|
||||
+# If POSIXRULES is '-', no template is installed; this is the default.
|
||||
#
|
||||
-# Nonempty POSIXRULES is obsolete and should not be relied on, because:
|
||||
+# Any other value for POSIXRULES is obsolete and should not be relied on, as:
|
||||
# * It does not work correctly in popular implementations such as GNU/Linux.
|
||||
# * It does not work in the tzdb implementation for timestamps after 2037.
|
||||
# * It is incompatible with 'zic -b slim' if POSIXRULES specifies transitions
|
||||
# at standard time or UT rather than at local time.
|
||||
# In short, software should avoid ruleless settings like TZ='EET-2EEST'
|
||||
# and so should not depend on the value of POSIXRULES.
|
||||
+#
|
||||
+# If, despite the above, you want a template for handling these settings,
|
||||
+# you can change the line below (after finding the timezone you want in the
|
||||
+# one of the $(TDATA) source files, or adding it to a source file).
|
||||
+# Alternatively, if you discover you've got the wrong timezone, you can just
|
||||
+# 'zic -p -' to remove it, or 'zic -p rightzone' to change it.
|
||||
+# Use the command
|
||||
+# make zonenames
|
||||
+# to get a list of the values you can use for POSIXRULES.
|
||||
|
||||
-POSIXRULES= America/New_York
|
||||
+POSIXRULES= -
|
||||
|
||||
# Also see TZDEFRULESTRING below, which takes effect only
|
||||
# if the time zone files cannot be accessed.
|
||||
diff --git a/NEWS b/NEWS
|
||||
index cdcdbc1..bfe02ea 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -29,6 +29,11 @@ Unreleased, experimental changes
|
||||
The undocumented and ineffective tzsetwall function has been
|
||||
removed.
|
||||
|
||||
+ Changes to build procedure
|
||||
+
|
||||
+ The Makefile now defaults POSIXRULES to '-', so the posixrules
|
||||
+ feature (obsolete as of 2019b) is no longer installed by default.
|
||||
+
|
||||
|
||||
Release 2020a - 2020-04-23 16:03:47 -0700
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
1822
backport-Drop-support-for-zic-y-Rule-TYPEs-pacificnew.patch
Normal file
1822
backport-Drop-support-for-zic-y-Rule-TYPEs-pacificnew.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,74 @@
|
||||
From d5c1b97cd1eb0af1711af415bbd677b0510c718b Mon Sep 17 00:00:00 2001
|
||||
From: Tim Parenti <tim@timtimeonline.com>
|
||||
Date: Thu, 8 Oct 2020 17:52:53 -0400
|
||||
Subject: [PATCH 47/47] Fiji observes DST from 2020-12-20 to 2021-01-17
|
||||
|
||||
* australasia (Fiji): Guess that the later-than-usual start date is a
|
||||
one-time departure from the recent pattern.
|
||||
* NEWS: Mention this.
|
||||
---
|
||||
NEWS | 13 +++++++++++++
|
||||
australasia | 17 ++++++++++++++++-
|
||||
2 files changed, 29 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index c77f76d..298ad4d 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,5 +1,18 @@
|
||||
News for the tz database
|
||||
|
||||
+Unreleased, experimental changes
|
||||
+
|
||||
+ Briefly:
|
||||
+ Fiji starts DST later than usual, on 2020-12-20.
|
||||
+
|
||||
+ Changes to future timestamps
|
||||
+ Fiji will start DST on 2020-12-20, instead of 2020-11-08 as
|
||||
+ previously predicted. DST will still end on 2021-01-17.
|
||||
+ (Thanks to Raymond Kumar and Alan Mintz.) Assume for now that
|
||||
+ the later-than-usual start date is a one-time departure from the
|
||||
+ recent pattern.
|
||||
+
|
||||
+
|
||||
Release 2020b - 2020-10-06 18:35:04 -0700
|
||||
|
||||
Briefly:
|
||||
diff --git a/australasia b/australasia
|
||||
index a8886ff..aa7ab7f 100644
|
||||
--- a/australasia
|
||||
+++ b/australasia
|
||||
@@ -381,6 +381,19 @@ Zone Indian/Cocos 6:27:40 - LMT 1900
|
||||
# From Michael Deckers (2019-08-06):
|
||||
# https://www.laws.gov.fj/LawsAsMade/downloadfile/848
|
||||
|
||||
+# From Raymond Kumar (2020-10-08):
|
||||
+# [DST in Fiji] is from December 20th 2020, till 17th January 2021.
|
||||
+# From Alan Mintz (2020-10-08):
|
||||
+# https://www.laws.gov.fj/LawsAsMade/GetFile/1071
|
||||
+# From Tim Parenti (2020-10-08):
|
||||
+# https://www.fijivillage.com/news/Daylight-saving-from-Dec-20th-this-year-to-Jan-17th-2021-8rf4x5/
|
||||
+# "Minister for Employment, Parveen Bala says they had never thought of
|
||||
+# stopping daylight saving. He says it was just to decide on when it should
|
||||
+# start and end. Bala says it is a short period..."
|
||||
+# Since the end date is still in line with our ongoing predictions, assume for
|
||||
+# now that the later-than-usual start date is a one-time departure from the
|
||||
+# recent second Sunday in November pattern.
|
||||
+
|
||||
# Rule NAME FROM TO - IN ON AT SAVE LETTER/S
|
||||
Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 -
|
||||
Rule Fiji 1999 2000 - Feb lastSun 3:00 0 -
|
||||
@@ -392,7 +405,9 @@ Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 -
|
||||
Rule Fiji 2014 only - Jan Sun>=18 2:00 0 -
|
||||
Rule Fiji 2014 2018 - Nov Sun>=1 2:00 1:00 -
|
||||
Rule Fiji 2015 max - Jan Sun>=12 3:00 0 -
|
||||
-Rule Fiji 2019 max - Nov Sun>=8 2:00 1:00 -
|
||||
+Rule Fiji 2019 only - Nov Sun>=8 2:00 1:00 -
|
||||
+Rule Fiji 2020 only - Dec 20 2:00 1:00 -
|
||||
+Rule Fiji 2021 max - Nov Sun>=8 2:00 1:00 -
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
|
||||
12:00 Fiji +12/+13
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
104
backport-Fix-Hungarian-transitions-1918-1983.patch
Normal file
104
backport-Fix-Hungarian-transitions-1918-1983.patch
Normal file
@ -0,0 +1,104 @@
|
||||
From f87ed56dae304043e45c7cdbcff88de02b34fed4 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 7 Jun 2020 16:22:24 -0700
|
||||
Subject: [PATCH 07/47] Fix Hungarian transitions 1918-1983
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
(Thanks to Géza Nyáry.)
|
||||
* NEWS: Mention this.
|
||||
* europe (Hungary, Europe/Budapest): Update transitions.
|
||||
---
|
||||
NEWS | 6 ++++++
|
||||
europe | 49 +++++++++++++++++++++++++------------------------
|
||||
2 files changed, 31 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 8362dcc..91ab463 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -9,6 +9,12 @@ Unreleased, experimental changes
|
||||
(Thanks to Milamber.) The first altered prediction is for 2023,
|
||||
now predicted to spring-forward on April 30 instead of April 23.
|
||||
|
||||
+ Changes to past timestamps
|
||||
+
|
||||
+ Correct several transitions for Hungary for 1918/1983.
|
||||
+ For example, the 1983-09-25 fall-back was at 01:00, not 03:00.
|
||||
+ (Thanks to Géza Nyáry.)
|
||||
+
|
||||
Changes to code
|
||||
|
||||
The undocumented and ineffective tzsetwall function has been
|
||||
diff --git a/europe b/europe
|
||||
index 698a7ba..48e1eeb 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -1511,38 +1511,39 @@ Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
|
||||
2:00 EU EE%sT
|
||||
|
||||
# Hungary
|
||||
-# From Paul Eggert (2014-07-15):
|
||||
-# Dates for 1916-1945 are taken from:
|
||||
-# Oross A. Jelen a múlt jövője: a nyári időszámítás Magyarországon 1916-1945.
|
||||
-# National Archives of Hungary (2012-10-29).
|
||||
-# http://mnl.gov.hu/a_het_dokumentuma/a_nyari_idoszamitas_magyarorszagon_19161945.html
|
||||
-# This source does not always give times, which are taken from Shanks
|
||||
-# & Pottenger (which disagree about the dates).
|
||||
+# From Géza Nyáry (2020-06-07):
|
||||
+# Data for 1918-1983 are based on the archive database of Library Hungaricana.
|
||||
+# The dates are collected from original, scanned governmental orders,
|
||||
+# bulletins, instructions and public press.
|
||||
+# https://library.hungaricana.hu
|
||||
+# For example, the 1920 dates are from ministerial decree 1920.évi.2.254.
|
||||
+
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
-Rule Hungary 1918 only - Apr 1 3:00 1:00 S
|
||||
-Rule Hungary 1918 only - Sep 16 3:00 0 -
|
||||
-Rule Hungary 1919 only - Apr 15 3:00 1:00 S
|
||||
-Rule Hungary 1919 only - Nov 24 3:00 0 -
|
||||
+Rule Hungary 1918 1919 - Apr 15 2:00 1:00 S
|
||||
+Rule Hungary 1918 1920 - Sep Mon>=15 3:00 0 -
|
||||
+Rule Hungary 1920 only - Apr 5 2:00 1:00 S
|
||||
Rule Hungary 1945 only - May 1 23:00 1:00 S
|
||||
-Rule Hungary 1945 only - Nov 1 0:00 0 -
|
||||
+Rule Hungary 1945 only - Nov 1 1:00 0 -
|
||||
Rule Hungary 1946 only - Mar 31 2:00s 1:00 S
|
||||
-Rule Hungary 1946 1949 - Oct Sun>=1 2:00s 0 -
|
||||
+Rule Hungary 1946 only - Oct 7 2:00 0 -
|
||||
Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S
|
||||
-Rule Hungary 1950 only - Apr 17 2:00s 1:00 S
|
||||
-Rule Hungary 1950 only - Oct 23 2:00s 0 -
|
||||
-Rule Hungary 1954 1955 - May 23 0:00 1:00 S
|
||||
-Rule Hungary 1954 1955 - Oct 3 0:00 0 -
|
||||
-Rule Hungary 1956 only - Jun Sun>=1 0:00 1:00 S
|
||||
-Rule Hungary 1956 only - Sep lastSun 0:00 0 -
|
||||
-Rule Hungary 1957 only - Jun Sun>=1 1:00 1:00 S
|
||||
-Rule Hungary 1957 only - Sep lastSun 3:00 0 -
|
||||
-Rule Hungary 1980 only - Apr 6 1:00 1:00 S
|
||||
+Rule Hungary 1947 1949 - Oct Sun>=1 2:00s 0 -
|
||||
+Rule Hungary 1954 only - May 23 0:00 1:00 S
|
||||
+Rule Hungary 1954 only - Oct 3 0:00 0 -
|
||||
+Rule Hungary 1955 only - May 22 2:00 1:00 S
|
||||
+Rule Hungary 1955 only - Oct 2 3:00 0 -
|
||||
+Rule Hungary 1956 1957 - Jun Sun>=1 2:00 1:00 S
|
||||
+Rule Hungary 1956 1957 - Sep lastSun 3:00 0 -
|
||||
+Rule Hungary 1980 only - Apr 6 0:00 1:00 S
|
||||
+Rule Hungary 1980 only - Sep 28 1:00 0 -
|
||||
+Rule Hungary 1981 1983 - Mar lastSun 0:00 1:00 S
|
||||
+Rule Hungary 1981 1983 - Sep lastSun 1:00 0 -
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
|
||||
1:00 C-Eur CE%sT 1918
|
||||
- 1:00 Hungary CE%sT 1941 Apr 8
|
||||
+ 1:00 Hungary CE%sT 1941 Apr 7 23:00
|
||||
1:00 C-Eur CE%sT 1945
|
||||
- 1:00 Hungary CE%sT 1980 Sep 28 2:00s
|
||||
+ 1:00 Hungary CE%sT 1984
|
||||
1:00 EU CE%sT
|
||||
|
||||
# Iceland
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
26
backport-Fix-comment-typo-re-1900-Spanish-decree.patch
Normal file
26
backport-Fix-comment-typo-re-1900-Spanish-decree.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From 243ae070942fb4809206969f9838cb60da6b813f Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 28 May 2020 12:03:18 -0700
|
||||
Subject: [PATCH 05/47] Fix comment typo re 1900 Spanish decree
|
||||
|
||||
* europe: Fix date typo. (Thanks to Josep Lladonosa Capell.)
|
||||
---
|
||||
europe | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/europe b/europe
|
||||
index 91949d6..698a7ba 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -3445,7 +3445,7 @@ Link Europe/Prague Europe/Bratislava
|
||||
# fallback transition from the next day's 00:59... to 00:00.
|
||||
|
||||
# From Michael Deckers (2016-12-15):
|
||||
-# The Royal Decree of 1900-06-26 quoted by Planesas, online at
|
||||
+# The Royal Decree of 1900-07-26 quoted by Planesas, online at
|
||||
# https://www.boe.es/datos/pdfs/BOE//1900/209/A00383-00384.pdf
|
||||
# says in its article 5 (my translation):
|
||||
# These dispositions will enter into force beginning with the
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
34
backport-Fix-leapseconds-comment-when-EXPIRES_LINE.patch
Normal file
34
backport-Fix-leapseconds-comment-when-EXPIRES_LINE.patch
Normal file
@ -0,0 +1,34 @@
|
||||
From 63699ef407390adad73351a1320dfdd1f9373c17 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 9 Jul 2020 13:01:07 -0700
|
||||
Subject: [PATCH 20/47] Fix leapseconds comment when EXPIRES_LINE
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* leapseconds.awk: Don’t output a comment explaining why
|
||||
something is commented out, when it is not commented out.
|
||||
---
|
||||
leapseconds.awk | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/leapseconds.awk b/leapseconds.awk
|
||||
index 924ade9..1d3c606 100755
|
||||
--- a/leapseconds.awk
|
||||
+++ b/leapseconds.awk
|
||||
@@ -105,8 +105,10 @@ END {
|
||||
print ""
|
||||
print "# UTC timestamp when this leap second list expires."
|
||||
print "# Any additional leap seconds will come after this."
|
||||
- print "# This Expires line is commented out for now,"
|
||||
- print "# so that pre-2020a zic implementations do not reject this file."
|
||||
+ if (! EXPIRES_LINE) {
|
||||
+ print "# This Expires line is commented out for now,"
|
||||
+ print "# so that pre-2020a zic implementations do not reject this file."
|
||||
+ }
|
||||
printf "%sExpires %.4d\t%s\t%.2d\t%.2d:%.2d:%.2d\n", \
|
||||
EXPIRES_LINE ? "" : "#", \
|
||||
ss_year, monthabbr[ss_month], ss_mday, ss_hour, ss_min, ss_sec
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
102
backport-Fixes-for-Casey-and-Macquarie.patch
Normal file
102
backport-Fixes-for-Casey-and-Macquarie.patch
Normal file
@ -0,0 +1,102 @@
|
||||
From 6427fe6c0cca1dc0f8580f8b96348911ad051570 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 1 Oct 2020 23:59:18 -0700
|
||||
Subject: [PATCH 38/47] Fixes for Casey and Macquarie
|
||||
|
||||
* NEWS: Mention this. (Thanks to Steffen Thorsen.)
|
||||
* antarctica (Antarctica/Casey): +08 in winter, +11 in summer
|
||||
since 2018, too.
|
||||
* australasia (Antarctica/Macquarie): Stay in sync with
|
||||
Hobart starting in 2011.
|
||||
---
|
||||
NEWS | 9 +++++++++
|
||||
antarctica | 25 ++++++++++++++++++++-----
|
||||
australasia | 5 +++--
|
||||
3 files changed, 32 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index df81d55..f0858f8 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -5,6 +5,8 @@ Unreleased, experimental changes
|
||||
Briefly:
|
||||
Revised predictions for Morocco's changes starting in 2023.
|
||||
Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08.
|
||||
+ Macquarie Island has stayed in sync with Tasmania since 2011.
|
||||
+ Casey, Antarctica is at +08 in summer and +11 in winter.
|
||||
|
||||
Changes to future timestamps
|
||||
|
||||
@@ -13,6 +15,13 @@ Unreleased, experimental changes
|
||||
(Thanks to Milamber.) The first altered prediction is for 2023,
|
||||
now predicted to spring-forward on April 30 instead of April 23.
|
||||
|
||||
+ Changes to past and future timestamps
|
||||
+
|
||||
+ Casey Station, Antarctica has been using +08 in summer and +11 in
|
||||
+ winter since 2018. The next transition is from +08 to +11 on
|
||||
+ 2020-10-04 00:01. Also, Macquarie Island has been staying in
|
||||
+ sync with Tasmania since 2011. (Thanks to Steffen Thorsen.)
|
||||
+
|
||||
Changes to past and future time zone abbreviations and DST flags
|
||||
|
||||
Canada's Yukon, represented by America/Whitehorse and
|
||||
diff --git a/antarctica b/antarctica
|
||||
index 2059983..94aeb17 100644
|
||||
--- a/antarctica
|
||||
+++ b/antarctica
|
||||
@@ -70,15 +70,30 @@
|
||||
# Australian Antarctica Division informed us that Casey changed time
|
||||
# zone to UTC+11 in "the morning of 22nd October 2016".
|
||||
|
||||
+# From Steffen Thorsen (2020-10-02):
|
||||
+# Based on information we have received from the Australian Antarctic
|
||||
+# Division, Casey station and Macquarie Island station will move to Tasmanian
|
||||
+# daylight savings time on Sunday 4 October. This will take effect from 0001
|
||||
+# hrs on Sunday 4 October 2020 and will mean Casey and Macquarie Island will
|
||||
+# be on the same time zone as Hobart. Some past dates too for this 3 hour
|
||||
+# time change back and forth between UTC+8 and UTC+11 for Casey:
|
||||
+# - 2018 Oct 7 4:00 - 2019 Mar 17 3:00 - 2019 Oct 6 3:00 - 2020 Mar 8 3:00
|
||||
+# and now - 2020 Oct 4 0:01
|
||||
+
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Antarctica/Casey 0 - -00 1969
|
||||
- 8:00 - +08 2009 Oct 18 2:00
|
||||
+Zone Antarctica/Casey 0 - -00 1969
|
||||
+ 8:00 - +08 2009 Oct 18 2:00
|
||||
11:00 - +11 2010 Mar 5 2:00
|
||||
- 8:00 - +08 2011 Oct 28 2:00
|
||||
+ 8:00 - +08 2011 Oct 28 2:00
|
||||
11:00 - +11 2012 Feb 21 17:00u
|
||||
- 8:00 - +08 2016 Oct 22
|
||||
+ 8:00 - +08 2016 Oct 22
|
||||
11:00 - +11 2018 Mar 11 4:00
|
||||
- 8:00 - +08
|
||||
+ 8:00 - +08 2018 Oct 7 4:00
|
||||
+ 11:00 - +11 2019 Mar 17 3:00
|
||||
+ 8:00 - +08 2019 Oct 6 3:00
|
||||
+ 11:00 - +11 2020 Mar 8 3:00
|
||||
+ 8:00 - +08 2020 Oct 4 0:01
|
||||
+ 11:00 - +11
|
||||
Zone Antarctica/Davis 0 - -00 1957 Jan 13
|
||||
7:00 - +07 1964 Nov
|
||||
0 - -00 1969 Feb
|
||||
diff --git a/australasia b/australasia
|
||||
index ac44c04..31b3b36 100644
|
||||
--- a/australasia
|
||||
+++ b/australasia
|
||||
@@ -252,8 +252,9 @@ Zone Antarctica/Macquarie 0 - -00 1899 Nov
|
||||
10:00 Aus AE%sT 1919 Apr 1 0:00s
|
||||
0 - -00 1948 Mar 25
|
||||
10:00 Aus AE%sT 1967
|
||||
- 10:00 AT AE%sT 2010 Apr 4 3:00
|
||||
- 11:00 - +11
|
||||
+ 10:00 AT AE%sT 2010
|
||||
+ 10:00 1:00 AEDT 2011
|
||||
+ 10:00 AT AE%sT
|
||||
|
||||
# Christmas
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
106
backport-French-clocks-stopped-for-9-21-on-1911-03-11.patch
Normal file
106
backport-French-clocks-stopped-for-9-21-on-1911-03-11.patch
Normal file
@ -0,0 +1,106 @@
|
||||
From 1c8ce71c30b2acb8453b2b43c67052a6f9db2090 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Wed, 10 Jun 2020 13:51:29 -0700
|
||||
Subject: [PATCH 10/47] =?UTF-8?q?French=20clocks=20stopped=20for=209?=
|
||||
=?UTF-8?q?=E2=80=B221=E2=80=B3=20on=201911-03-11?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
(Thanks to Michael Deckers.)
|
||||
* NEWS, theory.html (Accuracy of the tz database): Mention this.
|
||||
* europe (Europe/Paris): Model the 1911-03-11 transition as
|
||||
occurring at 00:09:21, not at 00:01.
|
||||
---
|
||||
NEWS | 7 +++++++
|
||||
europe | 30 +++++++++++++++++++++++++++++-
|
||||
theory.html | 7 +++++++
|
||||
3 files changed, 43 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index e3ab402..5289d4e 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -16,6 +16,13 @@ Unreleased, experimental changes
|
||||
(Thanks to Géza Nyáry.) Also, the 1890 transition to standard
|
||||
time was on 11-01, not 10-01 (thanks to Michael Deckers).
|
||||
|
||||
+ The 1911-03-11 French transition from +00:09:21 to +00 is now
|
||||
+ modeled as occurring at 00:09:21, not at 00:01. Legally, clocks
|
||||
+ stopped at 00:00 for 9 minutes, 21 seconds but this cannot be
|
||||
+ represented in tzdb, so tzdb instead represents the common
|
||||
+ practice of keeping an old clock running until the new clock
|
||||
+ started up. (Thanks to Michael Deckers.)
|
||||
+
|
||||
Changes to code
|
||||
|
||||
The undocumented and ineffective tzsetwall function has been
|
||||
diff --git a/europe b/europe
|
||||
index f0acb42..4fa7119 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -1326,6 +1326,34 @@ Link Europe/Helsinki Europe/Mariehamn
|
||||
# Françoise Gauquelin, Problèmes de l'heure résolus en astrologie,
|
||||
# Guy Trédaniel, Paris 1987
|
||||
|
||||
+# From Michael Deckers (2020-06-10):
|
||||
+# Le Gaulois, 1911-03-11, page 1/6, online at
|
||||
+# https://www.retronews.fr/societe/echo-de-presse/2018/01/29/1911-change-lheure-de-paris
|
||||
+# ... [ Instantly, all pressure driven clock dials halted... Nine minutes and
|
||||
+# twenty-one seconds later the hands resumed their circular motion. ]
|
||||
+# There are also precise reports about how the change was prepared in train
|
||||
+# stations: all the publicly visible clocks stopped at midnight railway time
|
||||
+# (or were covered), only the chief of service had a watch, labeled
|
||||
+# "Heure ancienne", that he kept running until it reached 00:04:21, when
|
||||
+# he announced "Heure nouvelle". See the "Le Petit Journal 1911-03-11".
|
||||
+# https://gallica.bnf.fr/ark:/12148/bpt6k6192911/f1.item.zoom
|
||||
+#
|
||||
+# From Paul Eggert (2020-06-10):
|
||||
+# French time in railway stations was legally five minutes behind civil time,
|
||||
+# which explains why "old time" ran to 00:04:21 instead of to 00:09:21.
|
||||
+# The Brooklyn Daily Eagle Almanac (1912), page 494, says:
|
||||
+#
|
||||
+# ALL CLOCKS STOPPED IN FRANCE.
|
||||
+# On March 10, 1911, all clocks in the Republic of France were stopped
|
||||
+# for 9 minutes and 21 seconds. This was in obedience to a measure
|
||||
+# adopted by the French Senate, which went into effect at midnight....
|
||||
+# Owing to this change in time a question arose in the French press as
|
||||
+# to whether or not a child that was born and died within the elapsed
|
||||
+# time could be said to have legally lived.
|
||||
+#
|
||||
+# tzdb has no way to represent stopped clocks. As the railway practice
|
||||
+# was to keep a watch running on "old time" to decide when to restart
|
||||
+# the other clocks, model this as a transition for "old time" at 00:09:21.
|
||||
|
||||
#
|
||||
# Shank & Pottenger seem to use '24:00' ambiguously; resolve it with Whitman.
|
||||
@@ -1395,7 +1423,7 @@ Rule France 1976 only - Sep 26 1:00 0 -
|
||||
# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
|
||||
- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
|
||||
+ 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
|
||||
0:00 France WE%sT 1940 Jun 14 23:00
|
||||
# Le Corre says Paris stuck with occupied-France time after the liberation;
|
||||
diff --git a/theory.html b/theory.html
|
||||
index ffa3b4d..de105f2 100644
|
||||
--- a/theory.html
|
||||
+++ b/theory.html
|
||||
@@ -691,6 +691,13 @@ href="https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanes
|
||||
<code><abbr>tz</abbr></code> database requires.
|
||||
</li>
|
||||
<li>
|
||||
+ The <code><abbr>tz</abbr></code> database cannot represent stopped clocks.
|
||||
+ However, on 1911-03-11 at 00:00, French clocks were changed by
|
||||
+ stopping them for 9 minutes, 21 seconds. This is approximated
|
||||
+ in <code><abbr>tz</abbr></code> as a transition from 00:09:21 back
|
||||
+ to 00:00:00 that day.
|
||||
+ </li>
|
||||
+ <li>
|
||||
Sometimes historical timekeeping was specified more precisely
|
||||
than what the <code><abbr>tz</abbr></code> code can handle.
|
||||
For example, from 1909 to 1937 <a
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
165
backport-Further-fixes-to-1891-and-1911-French-transitions.patch
Normal file
165
backport-Further-fixes-to-1891-and-1911-French-transitions.patch
Normal file
@ -0,0 +1,165 @@
|
||||
From ddb5717c56a9bd5a18cab7666d1530de5ef7a66c Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 11 Jun 2020 20:19:14 -0700
|
||||
Subject: [PATCH 11/47] Further fixes to 1891 and 1911 French transitions
|
||||
|
||||
(Thanks to Michael Decker.)
|
||||
* NEWS: Mention this.
|
||||
* africa (Africa/Algiers): Treat 1891 and 1911 like Paris.
|
||||
(Africa/Tunis): Treat 1911 like Paris.
|
||||
* europe (Europe/Paris): The 1891-03-16 transition was at
|
||||
midnight, not a minute later.
|
||||
(Europe/Monaco): Treat 1891 and 1911 like Paris.
|
||||
---
|
||||
NEWS | 7 ++++---
|
||||
africa | 13 +++++--------
|
||||
europe | 34 ++++++++++++++++++++++------------
|
||||
3 files changed, 31 insertions(+), 23 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 5289d4e..84c87ee 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -17,11 +17,12 @@ Unreleased, experimental changes
|
||||
time was on 11-01, not 10-01 (thanks to Michael Deckers).
|
||||
|
||||
The 1911-03-11 French transition from +00:09:21 to +00 is now
|
||||
- modeled as occurring at 00:09:21, not at 00:01. Legally, clocks
|
||||
+ modeled as occurring at 00:09:21, not at 00:01. Clocks reportedly
|
||||
stopped at 00:00 for 9 minutes, 21 seconds but this cannot be
|
||||
- represented in tzdb, so tzdb instead represents the common
|
||||
+ represented in tzdb, so tzdb instead represents the also-common
|
||||
practice of keeping an old clock running until the new clock
|
||||
- started up. (Thanks to Michael Deckers.)
|
||||
+ started up. Similarly for the 1895-03-16 transition.
|
||||
+ (Thanks to Michael Deckers.)
|
||||
|
||||
Changes to code
|
||||
|
||||
diff --git a/africa b/africa
|
||||
index 5d3beb0..d5ddbce 100644
|
||||
--- a/africa
|
||||
+++ b/africa
|
||||
@@ -87,11 +87,10 @@ Rule Algeria 1978 only - Mar 24 1:00 1:00 S
|
||||
Rule Algeria 1978 only - Sep 22 3:00 0 -
|
||||
Rule Algeria 1980 only - Apr 25 0:00 1:00 S
|
||||
Rule Algeria 1980 only - Oct 31 2:00 0 -
|
||||
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
|
||||
-# more precise 0:09:21.
|
||||
+# See Europe/Paris for PMT-related transitions.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
|
||||
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
|
||||
+Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 16 0:02:51
|
||||
+ 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
0:00 Algeria WE%sT 1940 Feb 25 2:00
|
||||
1:00 Algeria CE%sT 1946 Oct 7
|
||||
0:00 - WET 1956 Jan 29
|
||||
@@ -1464,12 +1463,10 @@ Rule Tunisia 2005 only - Sep 30 1:00s 0 -
|
||||
Rule Tunisia 2006 2008 - Mar lastSun 2:00s 1:00 S
|
||||
Rule Tunisia 2006 2008 - Oct lastSun 2:00s 0 -
|
||||
|
||||
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
|
||||
-# more precise 0:09:21.
|
||||
-# Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
|
||||
+# See Europe/Paris for PMT-related transitions.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Africa/Tunis 0:40:44 - LMT 1881 May 12
|
||||
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
|
||||
+ 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
1:00 Tunisia CE%sT
|
||||
|
||||
# Uganda
|
||||
diff --git a/europe b/europe
|
||||
index 4fa7119..6e3fe33 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -606,13 +606,13 @@ Rule C-Eur 1944 only - Oct 2 2:00s 0 -
|
||||
# corrected in version 2008d). The circumstantial evidence is simply the
|
||||
# tz database itself, as seen below:
|
||||
#
|
||||
-# Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
|
||||
+# Zone Europe/Paris ...
|
||||
# 0:00 France WE%sT 1945 Sep 16 3:00
|
||||
#
|
||||
-# Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
|
||||
+# Zone Europe/Monaco ...
|
||||
# 0:00 France WE%sT 1945 Sep 16 3:00
|
||||
#
|
||||
-# Zone Europe/Belgrade 1:22:00 - LMT 1884
|
||||
+# Zone Europe/Belgrade ...
|
||||
# 1:00 1:00 CEST 1945 Sep 16 2:00s
|
||||
#
|
||||
# Rule France 1945 only - Sep 16 3:00 0 -
|
||||
@@ -1326,6 +1326,10 @@ Link Europe/Helsinki Europe/Mariehamn
|
||||
# Françoise Gauquelin, Problèmes de l'heure résolus en astrologie,
|
||||
# Guy Trédaniel, Paris 1987
|
||||
|
||||
+# From Michael Deckers (2020-06-11):
|
||||
+# the law of 1891 <https://gallica.bnf.fr/ark:/12148/bpt6k64415343.texteImage>
|
||||
+# was published on 1891-03-15, so it could only take force on 1891-03-16.
|
||||
+
|
||||
# From Michael Deckers (2020-06-10):
|
||||
# Le Gaulois, 1911-03-11, page 1/6, online at
|
||||
# https://www.retronews.fr/societe/echo-de-presse/2018/01/29/1911-change-lheure-de-paris
|
||||
@@ -1338,7 +1342,7 @@ Link Europe/Helsinki Europe/Mariehamn
|
||||
# he announced "Heure nouvelle". See the "Le Petit Journal 1911-03-11".
|
||||
# https://gallica.bnf.fr/ark:/12148/bpt6k6192911/f1.item.zoom
|
||||
#
|
||||
-# From Paul Eggert (2020-06-10):
|
||||
+# From Paul Eggert (2020-06-11):
|
||||
# French time in railway stations was legally five minutes behind civil time,
|
||||
# which explains why "old time" ran to 00:04:21 instead of to 00:09:21.
|
||||
# The Brooklyn Daily Eagle Almanac (1912), page 494, says:
|
||||
@@ -1351,9 +1355,18 @@ Link Europe/Helsinki Europe/Mariehamn
|
||||
# to whether or not a child that was born and died within the elapsed
|
||||
# time could be said to have legally lived.
|
||||
#
|
||||
+# There are similar stories in the Washington Herald and Washington Times
|
||||
+# (1911-03-11). The law's text (which Michael Deckers noted is at
|
||||
+# <https://gallica.bnf.fr/ark:/12148/bpt6k2022333z/f2>) says only that
|
||||
+# at 1911-03-11 00:00 legal time was that of Paris mean time delayed by
|
||||
+# nine minutes and twenty-one seconds, and does not say how the
|
||||
+# transition from Paris mean time was to occur.
|
||||
+#
|
||||
# tzdb has no way to represent stopped clocks. As the railway practice
|
||||
# was to keep a watch running on "old time" to decide when to restart
|
||||
# the other clocks, model this as a transition for "old time" at 00:09:21.
|
||||
+# Do something similar for the 1891-03-16 transition, which has a similar
|
||||
+# problem in Algiers and Monaco.
|
||||
|
||||
#
|
||||
# Shank & Pottenger seem to use '24:00' ambiguously; resolve it with Whitman.
|
||||
@@ -1417,12 +1430,10 @@ Rule France 1945 only - Sep 16 3:00 0 -
|
||||
# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
|
||||
Rule France 1976 only - Mar 28 1:00 1:00 S
|
||||
Rule France 1976 only - Sep 26 1:00 0 -
|
||||
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time, and Whitman 0:09:05,
|
||||
-# but Howse quotes the actual French legislation as saying 0:09:21.
|
||||
-# Go with Howse. Howse writes that the time in France was officially based
|
||||
+# Howse writes that the time in France was officially based
|
||||
# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
|
||||
+Zone Europe/Paris 0:09:21 - LMT 1891 Mar 16
|
||||
0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
|
||||
0:00 France WE%sT 1940 Jun 14 23:00
|
||||
@@ -2064,11 +2075,10 @@ Zone Europe/Chisinau 1:55:20 - LMT 1880
|
||||
2:00 Moldova EE%sT
|
||||
|
||||
# Monaco
|
||||
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
|
||||
-# more precise 0:09:21.
|
||||
+# See Europe/Paris for PMT-related transitions.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
|
||||
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
|
||||
+Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 16 0:20:11
|
||||
+ 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
0:00 France WE%sT 1945 Sep 16 3:00
|
||||
1:00 France CE%sT 1977
|
||||
1:00 EU CE%sT
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,260 @@
|
||||
From 110feebd90ec7e9ad553c803c896890d28cb53e7 Mon Sep 17 00:00:00 2001
|
||||
From: Tim Parenti <tim@timtimeonline.com>
|
||||
Date: Sat, 3 Oct 2020 18:11:18 -0400
|
||||
Subject: [PATCH 42/47] Further update code to match Link line field names
|
||||
|
||||
Follow up on changes released in 2014g which renamed the fields of Link
|
||||
lines to TARGET and LINK-NAME, to be more descriptive and more like the
|
||||
parameters of 'ln'.
|
||||
|
||||
* zic.c: Rename parameters and locals for consistency throughout.
|
||||
(LF_TARGET, LF_LINKNAME): Rename macros from LF_FROM and LF_TO,
|
||||
respectively.
|
||||
(struct link): Rename l_from to l_target, and l_to to l_linkname.
|
||||
(inlink): Update error message for consistency with field name.
|
||||
---
|
||||
zic.c | 110 +++++++++++++++++++++++++++++++++---------------------------------
|
||||
1 file changed, 55 insertions(+), 55 deletions(-)
|
||||
|
||||
diff --git a/zic.c b/zic.c
|
||||
index 4df4093..a47c052 100644
|
||||
--- a/zic.c
|
||||
+++ b/zic.c
|
||||
@@ -132,22 +132,22 @@ struct zone {
|
||||
#if !HAVE_POSIX_DECLS
|
||||
extern int getopt(int argc, char * const argv[],
|
||||
const char * options);
|
||||
-extern int link(const char * fromname, const char * toname);
|
||||
+extern int link(const char * target, const char * linkname);
|
||||
extern char * optarg;
|
||||
extern int optind;
|
||||
#endif
|
||||
|
||||
#if ! HAVE_LINK
|
||||
-# define link(from, to) (errno = ENOTSUP, -1)
|
||||
+# define link(target, linkname) (errno = ENOTSUP, -1)
|
||||
#endif
|
||||
#if ! HAVE_SYMLINK
|
||||
# define readlink(file, buf, size) (errno = ENOTSUP, -1)
|
||||
-# define symlink(from, to) (errno = ENOTSUP, -1)
|
||||
+# define symlink(target, linkname) (errno = ENOTSUP, -1)
|
||||
# define S_ISLNK(m) 0
|
||||
#endif
|
||||
#ifndef AT_SYMLINK_FOLLOW
|
||||
-# define linkat(fromdir, from, todir, to, flag) \
|
||||
- (itssymlink(from) ? (errno = ENOTSUP, -1) : link(from, to))
|
||||
+# define linkat(targetdir, target, linknamedir, linkname, flag) \
|
||||
+ (itssymlink(target) ? (errno = ENOTSUP, -1) : link(target, linkname))
|
||||
#endif
|
||||
|
||||
static void addtt(zic_t starttime, int type);
|
||||
@@ -273,8 +273,8 @@ static int typecnt;
|
||||
** Which fields are which on a Link line.
|
||||
*/
|
||||
|
||||
-#define LF_FROM 1
|
||||
-#define LF_TO 2
|
||||
+#define LF_TARGET 1
|
||||
+#define LF_LINKNAME 2
|
||||
#define LINK_FIELDS 3
|
||||
|
||||
/*
|
||||
@@ -311,8 +311,8 @@ static ptrdiff_t nzones_alloc;
|
||||
struct link {
|
||||
const char * l_filename;
|
||||
lineno l_linenum;
|
||||
- const char * l_from;
|
||||
- const char * l_to;
|
||||
+ const char * l_target;
|
||||
+ const char * l_linkname;
|
||||
};
|
||||
|
||||
static struct link * links;
|
||||
@@ -826,11 +826,11 @@ _("%s: invalid time range: %s\n"),
|
||||
*/
|
||||
for (i = 0; i < nlinks; ++i) {
|
||||
eat(links[i].l_filename, links[i].l_linenum);
|
||||
- dolink(links[i].l_from, links[i].l_to, false);
|
||||
+ dolink(links[i].l_target, links[i].l_linkname, false);
|
||||
if (noise)
|
||||
for (j = 0; j < nlinks; ++j)
|
||||
- if (strcmp(links[i].l_to,
|
||||
- links[j].l_from) == 0)
|
||||
+ if (strcmp(links[i].l_linkname,
|
||||
+ links[j].l_target) == 0)
|
||||
warning(_("link to link"));
|
||||
}
|
||||
if (lcltime != NULL) {
|
||||
@@ -922,27 +922,27 @@ namecheck(const char *name)
|
||||
is relative to the global variable DIRECTORY. TO can be either
|
||||
relative or absolute. */
|
||||
static char *
|
||||
-relname(char const *from, char const *to)
|
||||
+relname(char const *target, char const *linkname)
|
||||
{
|
||||
size_t i, taillen, dotdotetcsize;
|
||||
size_t dir_len = 0, dotdots = 0, linksize = SIZE_MAX;
|
||||
- char const *f = from;
|
||||
+ char const *f = target;
|
||||
char *result = NULL;
|
||||
- if (*to == '/') {
|
||||
+ if (*linkname == '/') {
|
||||
/* Make F absolute too. */
|
||||
size_t len = strlen(directory);
|
||||
bool needslash = len && directory[len - 1] != '/';
|
||||
- linksize = len + needslash + strlen(from) + 1;
|
||||
+ linksize = len + needslash + strlen(target) + 1;
|
||||
f = result = emalloc(linksize);
|
||||
strcpy(result, directory);
|
||||
result[len] = '/';
|
||||
- strcpy(result + len + needslash, from);
|
||||
+ strcpy(result + len + needslash, target);
|
||||
}
|
||||
- for (i = 0; f[i] && f[i] == to[i]; i++)
|
||||
+ for (i = 0; f[i] && f[i] == linkname[i]; i++)
|
||||
if (f[i] == '/')
|
||||
dir_len = i + 1;
|
||||
- for (; to[i]; i++)
|
||||
- dotdots += to[i] == '/' && to[i - 1] != '/';
|
||||
+ for (; linkname[i]; i++)
|
||||
+ dotdots += linkname[i] == '/' && linkname[i - 1] != '/';
|
||||
taillen = strlen(f + dir_len);
|
||||
dotdotetcsize = 3 * dotdots + taillen + 1;
|
||||
if (dotdotetcsize <= linksize) {
|
||||
@@ -958,56 +958,56 @@ relname(char const *from, char const *to)
|
||||
/* Hard link FROM to TO, following any symbolic links.
|
||||
Return 0 if successful, an error number otherwise. */
|
||||
static int
|
||||
-hardlinkerr(char const *from, char const *to)
|
||||
+hardlinkerr(char const *target, char const *linkname)
|
||||
{
|
||||
- int r = linkat(AT_FDCWD, from, AT_FDCWD, to, AT_SYMLINK_FOLLOW);
|
||||
+ int r = linkat(AT_FDCWD, target, AT_FDCWD, linkname, AT_SYMLINK_FOLLOW);
|
||||
return r == 0 ? 0 : errno;
|
||||
}
|
||||
|
||||
static void
|
||||
-dolink(char const *fromfield, char const *tofield, bool staysymlink)
|
||||
+dolink(char const *target, char const *linkname, bool staysymlink)
|
||||
{
|
||||
- bool remove_only = strcmp(fromfield, "-") == 0;
|
||||
- bool todirs_made = false;
|
||||
+ bool remove_only = strcmp(target, "-") == 0;
|
||||
+ bool linkdirs_made = false;
|
||||
int link_errno;
|
||||
|
||||
/*
|
||||
** We get to be careful here since
|
||||
** there's a fair chance of root running us.
|
||||
*/
|
||||
- if (!remove_only && itsdir(fromfield)) {
|
||||
- fprintf(stderr, _("%s: link from %s/%s failed: %s\n"),
|
||||
- progname, directory, fromfield, strerror(EPERM));
|
||||
+ if (!remove_only && itsdir(target)) {
|
||||
+ fprintf(stderr, _("%s: linking target %s/%s failed: %s\n"),
|
||||
+ progname, directory, target, strerror(EPERM));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
if (staysymlink)
|
||||
- staysymlink = itssymlink(tofield);
|
||||
- if (remove(tofield) == 0)
|
||||
- todirs_made = true;
|
||||
+ staysymlink = itssymlink(linkname);
|
||||
+ if (remove(linkname) == 0)
|
||||
+ linkdirs_made = true;
|
||||
else if (errno != ENOENT) {
|
||||
char const *e = strerror(errno);
|
||||
fprintf(stderr, _("%s: Can't remove %s/%s: %s\n"),
|
||||
- progname, directory, tofield, e);
|
||||
+ progname, directory, linkname, e);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
if (remove_only)
|
||||
return;
|
||||
- link_errno = staysymlink ? ENOTSUP : hardlinkerr(fromfield, tofield);
|
||||
- if (link_errno == ENOENT && !todirs_made) {
|
||||
- mkdirs(tofield, true);
|
||||
- todirs_made = true;
|
||||
- link_errno = hardlinkerr(fromfield, tofield);
|
||||
+ link_errno = staysymlink ? ENOTSUP : hardlinkerr(target, linkname);
|
||||
+ if (link_errno == ENOENT && !linkdirs_made) {
|
||||
+ mkdirs(linkname, true);
|
||||
+ linkdirs_made = true;
|
||||
+ link_errno = hardlinkerr(target, linkname);
|
||||
}
|
||||
if (link_errno != 0) {
|
||||
- bool absolute = *fromfield == '/';
|
||||
- char *linkalloc = absolute ? NULL : relname(fromfield, tofield);
|
||||
- char const *contents = absolute ? fromfield : linkalloc;
|
||||
- int symlink_errno = symlink(contents, tofield) == 0 ? 0 : errno;
|
||||
- if (!todirs_made
|
||||
+ bool absolute = *target == '/';
|
||||
+ char *linkalloc = absolute ? NULL : relname(target, linkname);
|
||||
+ char const *contents = absolute ? target : linkalloc;
|
||||
+ int symlink_errno = symlink(contents, linkname) == 0 ? 0 : errno;
|
||||
+ if (!linkdirs_made
|
||||
&& (symlink_errno == ENOENT || symlink_errno == ENOTSUP)) {
|
||||
- mkdirs(tofield, true);
|
||||
+ mkdirs(linkname, true);
|
||||
if (symlink_errno == ENOENT)
|
||||
- symlink_errno = symlink(contents, tofield) == 0 ? 0 : errno;
|
||||
+ symlink_errno = symlink(contents, linkname) == 0 ? 0 : errno;
|
||||
}
|
||||
free(linkalloc);
|
||||
if (symlink_errno == 0) {
|
||||
@@ -1017,24 +1017,24 @@ dolink(char const *fromfield, char const *tofield, bool staysymlink)
|
||||
} else {
|
||||
FILE *fp, *tp;
|
||||
int c;
|
||||
- fp = fopen(fromfield, "rb");
|
||||
+ fp = fopen(target, "rb");
|
||||
if (!fp) {
|
||||
char const *e = strerror(errno);
|
||||
fprintf(stderr, _("%s: Can't read %s/%s: %s\n"),
|
||||
- progname, directory, fromfield, e);
|
||||
+ progname, directory, target, e);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
- tp = fopen(tofield, "wb");
|
||||
+ tp = fopen(linkname, "wb");
|
||||
if (!tp) {
|
||||
char const *e = strerror(errno);
|
||||
fprintf(stderr, _("%s: Can't create %s/%s: %s\n"),
|
||||
- progname, directory, tofield, e);
|
||||
+ progname, directory, linkname, e);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
while ((c = getc(fp)) != EOF)
|
||||
putc(c, tp);
|
||||
- close_file(fp, directory, fromfield);
|
||||
- close_file(tp, directory, tofield);
|
||||
+ close_file(fp, directory, target);
|
||||
+ close_file(tp, directory, linkname);
|
||||
if (link_errno != ENOTSUP)
|
||||
warning(_("copy used because hard link failed: %s"),
|
||||
strerror(link_errno));
|
||||
@@ -1613,16 +1613,16 @@ inlink(char **fields, int nfields)
|
||||
error(_("wrong number of fields on Link line"));
|
||||
return;
|
||||
}
|
||||
- if (*fields[LF_FROM] == '\0') {
|
||||
- error(_("blank FROM field on Link line"));
|
||||
+ if (*fields[LF_TARGET] == '\0') {
|
||||
+ error(_("blank TARGET field on Link line"));
|
||||
return;
|
||||
}
|
||||
- if (! namecheck(fields[LF_TO]))
|
||||
+ if (! namecheck(fields[LF_LINKNAME]))
|
||||
return;
|
||||
l.l_filename = filename;
|
||||
l.l_linenum = linenum;
|
||||
- l.l_from = ecpyalloc(fields[LF_FROM]);
|
||||
- l.l_to = ecpyalloc(fields[LF_TO]);
|
||||
+ l.l_target = ecpyalloc(fields[LF_TARGET]);
|
||||
+ l.l_linkname = ecpyalloc(fields[LF_LINKNAME]);
|
||||
links = growalloc(links, sizeof *links, nlinks, &nlinks_alloc);
|
||||
links[nlinks++] = l;
|
||||
}
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
184
backport-Go-back-to-midnight-transitions-for-France-etc.patch
Normal file
184
backport-Go-back-to-midnight-transitions-for-France-etc.patch
Normal file
@ -0,0 +1,184 @@
|
||||
From ccbd7d2eff2449cef48aefcd41dd87034940007b Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 12 Jun 2020 14:35:33 -0700
|
||||
Subject: [PATCH 13/47] Go back to midnight transitions for France etc.
|
||||
|
||||
* NEWS: Simplify.
|
||||
* africa (Africa/Algiers, Africa/Tunis):
|
||||
* europe (Europe/Monaco):
|
||||
Propagate changes from Paris.
|
||||
* europe (Europe/Paris): Assume 1911 transition was at 00:00.
|
||||
* theory.html (Accuracy of the tz database): Adjust accordingly.
|
||||
---
|
||||
NEWS | 11 ++++-------
|
||||
africa | 6 +++---
|
||||
europe | 63 ++++++++++++++++++++++++++++++++++++++++---------------------
|
||||
theory.html | 9 +++++----
|
||||
4 files changed, 54 insertions(+), 35 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index ec73943..3bcddd0 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -16,13 +16,10 @@ Unreleased, experimental changes
|
||||
(Thanks to Géza Nyáry.) Also, the 1890 transition to standard
|
||||
time was on 11-01, not 10-01 (thanks to Michael Deckers).
|
||||
|
||||
- The 1911-03-11 French transition from +00:09:21 to +00 is now
|
||||
- modeled as occurring at 00:09:21, not at 00:01. Clocks reportedly
|
||||
- stopped at 00:00 for 9 minutes, 21 seconds but this cannot be
|
||||
- represented in tzdb, so tzdb instead represents the also-common
|
||||
- practice of keeping an old clock running until the new clock
|
||||
- started up. Similarly for the 1891-03-16 transition.
|
||||
- (Thanks to Michael Deckers.)
|
||||
+ The 1891 French transition was on March 16, not March 15. The
|
||||
+ 1911-03-11 French transition was at midnight, not a minute later.
|
||||
+ Monaco's transitions were on 1892-06-01 and 1911-03-29, not
|
||||
+ 1891-03-15 and 1911-03-11. (Thanks to Michael Deckers.)
|
||||
|
||||
Changes to code
|
||||
|
||||
diff --git a/africa b/africa
|
||||
index d5ddbce..567ad90 100644
|
||||
--- a/africa
|
||||
+++ b/africa
|
||||
@@ -89,8 +89,8 @@ Rule Algeria 1980 only - Apr 25 0:00 1:00 S
|
||||
Rule Algeria 1980 only - Oct 31 2:00 0 -
|
||||
# See Europe/Paris for PMT-related transitions.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 16 0:02:51
|
||||
- 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
+Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 16
|
||||
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
|
||||
0:00 Algeria WE%sT 1940 Feb 25 2:00
|
||||
1:00 Algeria CE%sT 1946 Oct 7
|
||||
0:00 - WET 1956 Jan 29
|
||||
@@ -1466,7 +1466,7 @@ Rule Tunisia 2006 2008 - Oct lastSun 2:00s 0 -
|
||||
# See Europe/Paris for PMT-related transitions.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Africa/Tunis 0:40:44 - LMT 1881 May 12
|
||||
- 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
|
||||
1:00 Tunisia CE%sT
|
||||
|
||||
# Uganda
|
||||
diff --git a/europe b/europe
|
||||
index 6e3fe33..e8ec780 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -1342,21 +1342,24 @@ Link Europe/Helsinki Europe/Mariehamn
|
||||
# he announced "Heure nouvelle". See the "Le Petit Journal 1911-03-11".
|
||||
# https://gallica.bnf.fr/ark:/12148/bpt6k6192911/f1.item.zoom
|
||||
#
|
||||
-# From Paul Eggert (2020-06-11):
|
||||
+# From Michael Deckers (2020-06-12):
|
||||
+# That "all French clocks stopped" for 00:09:21 is a misreading of French
|
||||
+# newspapers; this sort of adjustment applies only to certain
|
||||
+# remote-controlled clocks ("pendules pneumatiques", of which there existed
|
||||
+# perhaps a dozen in Paris, and which simply could not be set back remotely),
|
||||
+# but not to all the clocks in all French towns and villages. For instance,
|
||||
+# the following story in the "Courrier de Saône-et-Loire" 1911-03-11, page 2:
|
||||
+# only works if legal time was stepped back (was not monotone): ...
|
||||
+# [One can observe that children who had been born at midnight less 5
|
||||
+# minutes and who had died at midnight of the old time, would turn out to
|
||||
+# be dead before being born, time having been set back and having
|
||||
+# suppressed 9 minutes and 25 seconds of their existence, that is, more
|
||||
+# than they could spend.]
|
||||
+#
|
||||
+# From Paul Eggert (2020-06-12):
|
||||
# French time in railway stations was legally five minutes behind civil time,
|
||||
-# which explains why "old time" ran to 00:04:21 instead of to 00:09:21.
|
||||
-# The Brooklyn Daily Eagle Almanac (1912), page 494, says:
|
||||
-#
|
||||
-# ALL CLOCKS STOPPED IN FRANCE.
|
||||
-# On March 10, 1911, all clocks in the Republic of France were stopped
|
||||
-# for 9 minutes and 21 seconds. This was in obedience to a measure
|
||||
-# adopted by the French Senate, which went into effect at midnight....
|
||||
-# Owing to this change in time a question arose in the French press as
|
||||
-# to whether or not a child that was born and died within the elapsed
|
||||
-# time could be said to have legally lived.
|
||||
-#
|
||||
-# There are similar stories in the Washington Herald and Washington Times
|
||||
-# (1911-03-11). The law's text (which Michael Deckers noted is at
|
||||
+# which explains why railway "old time" ran to 00:04:21 instead of to 00:09:21.
|
||||
+# The law's text (which Michael Deckers noted is at
|
||||
# <https://gallica.bnf.fr/ark:/12148/bpt6k2022333z/f2>) says only that
|
||||
# at 1911-03-11 00:00 legal time was that of Paris mean time delayed by
|
||||
# nine minutes and twenty-one seconds, and does not say how the
|
||||
@@ -1364,9 +1367,13 @@ Link Europe/Helsinki Europe/Mariehamn
|
||||
#
|
||||
# tzdb has no way to represent stopped clocks. As the railway practice
|
||||
# was to keep a watch running on "old time" to decide when to restart
|
||||
-# the other clocks, model this as a transition for "old time" at 00:09:21.
|
||||
-# Do something similar for the 1891-03-16 transition, which has a similar
|
||||
-# problem in Algiers and Monaco.
|
||||
+# the other clocks, this could be modeled as a transition for "old time" at
|
||||
+# 00:09:21. However, since the law was ambiguous and clocks outside railway
|
||||
+# stations were probably done haphazardly with the popular impression being
|
||||
+# that the transition was done at 00:00 "old time", simply leave the time
|
||||
+# blank; this causes zic to default to 00:00 "old time" which is good enough.
|
||||
+# Do something similar for the 1891-03-16 transition. There are similar
|
||||
+# problems in Algiers, Monaco and Tunis.
|
||||
|
||||
#
|
||||
# Shank & Pottenger seem to use '24:00' ambiguously; resolve it with Whitman.
|
||||
@@ -1434,7 +1441,7 @@ Rule France 1976 only - Sep 26 1:00 0 -
|
||||
# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Europe/Paris 0:09:21 - LMT 1891 Mar 16
|
||||
- 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
|
||||
# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
|
||||
0:00 France WE%sT 1940 Jun 14 23:00
|
||||
# Le Corre says Paris stuck with occupied-France time after the liberation;
|
||||
@@ -2075,10 +2082,24 @@ Zone Europe/Chisinau 1:55:20 - LMT 1880
|
||||
2:00 Moldova EE%sT
|
||||
|
||||
# Monaco
|
||||
-# See Europe/Paris for PMT-related transitions.
|
||||
+#
|
||||
+# From Michael Deckers (2020-06-12):
|
||||
+# In the "Journal de Monaco" of 1892-05-24, online at
|
||||
+# https://journaldemonaco.gouv.mc/var/jdm/storage/original/application/b1c67c12c5af11b41ea888fb048e4fe8.pdf
|
||||
+# we read: ...
|
||||
+# [In virtue of a Sovereign Ordinance of the May 13 of the current [year],
|
||||
+# legal time in the Principality will be set to, from the date of June 1,
|
||||
+# 1892 onwards, to the meridian of Paris, as in France.]
|
||||
+# In the "Journal de Monaco" of 1911-03-28, online at
|
||||
+# https://journaldemonaco.gouv.mc/var/jdm/storage/original/application/de74ffb7db53d4f599059fe8f0ed482a.pdf
|
||||
+# we read an ordinance of 1911-03-16: ...
|
||||
+# [Legal time in the Pricipality will be set, from the date of promulgation
|
||||
+# of the present ordinance, to legal time in France. Consequently, legal
|
||||
+# time will be retarded by 9 minutes and 21 seconds.]
|
||||
+#
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 16 0:20:11
|
||||
- 0:09:21 - PMT 1911 Mar 11 0:09:21 # Paris MT
|
||||
+Zone Europe/Monaco 0:29:32 - LMT 1892 Jun 1
|
||||
+ 0:09:21 - PMT 1911 Mar 29 # Paris Mean Time
|
||||
0:00 France WE%sT 1945 Sep 16 3:00
|
||||
1:00 France CE%sT 1977
|
||||
1:00 EU CE%sT
|
||||
diff --git a/theory.html b/theory.html
|
||||
index de105f2..1a5b568 100644
|
||||
--- a/theory.html
|
||||
+++ b/theory.html
|
||||
@@ -692,10 +692,11 @@ href="https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanes
|
||||
</li>
|
||||
<li>
|
||||
The <code><abbr>tz</abbr></code> database cannot represent stopped clocks.
|
||||
- However, on 1911-03-11 at 00:00, French clocks were changed by
|
||||
- stopping them for 9 minutes, 21 seconds. This is approximated
|
||||
- in <code><abbr>tz</abbr></code> as a transition from 00:09:21 back
|
||||
- to 00:00:00 that day.
|
||||
+ However, on 1911-03-11 at 00:00, some public-facing French clocks
|
||||
+ were changed by stopping them for a few minutes to effect a transition.
|
||||
+ The <code><abbr>tz</abbr></code> database models this via a
|
||||
+ backward transition; the relevant French legislation does not
|
||||
+ specify exactly how the transition was to occur.
|
||||
</li>
|
||||
<li>
|
||||
Sometimes historical timekeeping was specified more precisely
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
56
backport-Improve-1890-Hungarian-transition.patch
Normal file
56
backport-Improve-1890-Hungarian-transition.patch
Normal file
@ -0,0 +1,56 @@
|
||||
From 1d8d276b3194456ccc0b2bfecac7714aca9047a5 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 9 Jun 2020 08:42:39 -0700
|
||||
Subject: [PATCH 08/47] Improve 1890 Hungarian transition.
|
||||
|
||||
(Thanks to Michael Deckers.)
|
||||
* NEWS: Mention this.
|
||||
* europe (Europe/Budapest): 1890 transition on Nov 1, not Oct.
|
||||
---
|
||||
NEWS | 3 ++-
|
||||
europe | 8 +++++++-
|
||||
2 files changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 91ab463..e3ab402 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -13,7 +13,8 @@ Unreleased, experimental changes
|
||||
|
||||
Correct several transitions for Hungary for 1918/1983.
|
||||
For example, the 1983-09-25 fall-back was at 01:00, not 03:00.
|
||||
- (Thanks to Géza Nyáry.)
|
||||
+ (Thanks to Géza Nyáry.) Also, the 1890 transition to standard
|
||||
+ time was on 11-01, not 10-01 (thanks to Michael Deckers).
|
||||
|
||||
Changes to code
|
||||
|
||||
diff --git a/europe b/europe
|
||||
index 48e1eeb..c2a44ad 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -1511,6 +1511,12 @@ Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
|
||||
2:00 EU EE%sT
|
||||
|
||||
# Hungary
|
||||
+
|
||||
+# From Michael Deckers (2020-06-09):
|
||||
+# an Austrian encyclopedia of railroads of 1913, online at
|
||||
+# http://www.zeno.org/Roell-1912/A/Eisenbahnzeit
|
||||
+# says that the switch [to CET] happened on 1890-11-01.
|
||||
+
|
||||
# From Géza Nyáry (2020-06-07):
|
||||
# Data for 1918-1983 are based on the archive database of Library Hungaricana.
|
||||
# The dates are collected from original, scanned governmental orders,
|
||||
@@ -1539,7 +1545,7 @@ Rule Hungary 1980 only - Sep 28 1:00 0 -
|
||||
Rule Hungary 1981 1983 - Mar lastSun 0:00 1:00 S
|
||||
Rule Hungary 1981 1983 - Sep lastSun 1:00 0 -
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
-Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
|
||||
+Zone Europe/Budapest 1:16:20 - LMT 1890 Nov 1
|
||||
1:00 C-Eur CE%sT 1918
|
||||
1:00 Hungary CE%sT 1941 Apr 7 23:00
|
||||
1:00 C-Eur CE%sT 1945
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
45
backport-Improve-heads-up-advice.patch
Normal file
45
backport-Improve-heads-up-advice.patch
Normal file
@ -0,0 +1,45 @@
|
||||
From 241e6df0731f0e8d2a07a7ac42878f00086bd642 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 10 Sep 2020 17:48:59 -0700
|
||||
Subject: [PATCH 32/47] Improve heads-up advice
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* tz-link.html (Changes to the tz database): Clarify that
|
||||
an official announcement should be made a year before
|
||||
changes affect clocks, and that it’s OK to give more than
|
||||
a year’s notice. From suggestions by Florian Weimer
|
||||
and Robert Elz.
|
||||
---
|
||||
tz-link.html | 9 +++++++--
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index dfdaece..e6e4acd 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -215,13 +215,18 @@ generated <a href="https://github.com/timparenti/tzdata-meta">automatically</a>.
|
||||
If your government plans to change its time zone boundaries or
|
||||
daylight saving rules, inform <code>tz@iana.org</code> well in
|
||||
advance, as this will coordinate updates to many cell phones,
|
||||
-computers, and other devices around the world. With
|
||||
-less than a year's notice there is a good chance that some
|
||||
+computers, and other devices around the world.
|
||||
+The change should be officially announced at least a year before it affects
|
||||
+how clocks operate; otherwise, there is a good chance that some
|
||||
computer-based clocks will operate incorrectly after the change, due
|
||||
to delays in propagating updates to software and data. The shorter
|
||||
the notice, the more likely clock problems will arise; see "<a
|
||||
href="https://codeofmatt.com/2016/04/23/on-the-timing-of-time-zone-changes/">On
|
||||
the Timing of Time Zone Changes</a>" for examples.
|
||||
+The <code><abbr>tz</abbr></code> data can represent planned changes
|
||||
+far into the future, and a long-planned change can easily be reverted
|
||||
+or otherwise altered with a year's notice before the change would have
|
||||
+affected clocks.
|
||||
</p>
|
||||
<p>
|
||||
Changes to the <code><abbr>tz</abbr></code> code and data are often
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
62
backport-Mention-Intl.DateTimeFormat.patch
Normal file
62
backport-Mention-Intl.DateTimeFormat.patch
Normal file
@ -0,0 +1,62 @@
|
||||
From a9f13275780c5e5699edf11752fc9fbb77a7d9df Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 20 Aug 2020 09:41:53 -0700
|
||||
Subject: [PATCH 28/47] Mention Intl.DateTimeFormat
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Inspired by email from Matt Johnson-Pint in:
|
||||
https://mm.icann.org/pipermail/tz/2020-August/029222.html
|
||||
* tz-link.html: Mention JavaScript’s Intl.DateTimeFormat
|
||||
and its polyfill. Coalesce JavaScript citations.
|
||||
---
|
||||
tz-link.html | 17 ++++++++++++-----
|
||||
1 file changed, 12 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index cd51b71..8141d71 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -466,9 +466,16 @@ Java-based libraries.</li>
|
||||
time <abbr>API</abbr> for .NET</a>
|
||||
is like Joda-Time and Time4J, but for the .NET framework instead of Java.
|
||||
It is freely available under the Apache License.</li>
|
||||
-<li><a href="https://en.wikipedia.org/wiki/JavaScript">JavaScript</a>-based
|
||||
-compilers and libraries include:
|
||||
+<li>Many modern
|
||||
+<a href="https://en.wikipedia.org/wiki/JavaScript">JavaScript</a>
|
||||
+runtimes support <code><abbr>tz</abbr></code> natively via the
|
||||
+<samp>timeZone</samp> option of <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat"><samp>Intl.DateTimeFormat</samp></a>.
|
||||
+On other runtimes, you can use one of the following.
|
||||
<ul>
|
||||
+<li>The <a
|
||||
+href="https://github.com/formatjs/date-time-format-timezone"><samp>Intl.DateTimeFormat</samp>
|
||||
+timezone polyfill</a>
|
||||
+is freely available under a <abbr>BSD</abbr>-style license.</li>
|
||||
<li><a
|
||||
href="https://github.com/kshetline/compact-time-zone-generator">CompactTimeZoneGenerator</a>
|
||||
compiles time zone data into a compact form designed for
|
||||
@@ -478,6 +485,9 @@ the <abbr>MIT</abbr> license and the Apache License.</li>
|
||||
plugin for the <a href="https://momentjs.com">Moment.js</a> date
|
||||
manipulation library. It is freely available under the <abbr>MIT</abbr>
|
||||
license.</li>
|
||||
+<li><a href="https://github.com/bigeasy/timezone">Timezone</a> is a
|
||||
+JavaScript library that supports date arithmetic that is time zone
|
||||
+aware. It is freely available under the <abbr>MIT</abbr> license.</li>
|
||||
<li><a href="https://github.com/mde/timezone-js">TimezoneJS.Date</a>'s
|
||||
<abbr>API</abbr> is upward compatible with standard JavaScript
|
||||
Dates. It is freely available under the Apache License.</li>
|
||||
@@ -555,9 +565,6 @@ title="PHP: Hypertext Preprocessor">PHP</abbr></a>,
|
||||
<a href="https://hhvm.com"><abbr title="HipHop Virtual Machine">HHVM</abbr></a>,
|
||||
and <a href="https://www.mongodb.com">MongoDB</a>.
|
||||
It is freely available under the <abbr>MIT</abbr> license.</li>
|
||||
-<li><a href="https://github.com/bigeasy/timezone">Timezone</a> is a
|
||||
-JavaScript library that supports date arithmetic that is time zone
|
||||
-aware. It is freely available under the <abbr>MIT</abbr> license.</li>
|
||||
<li>Tcl, mentioned <a href="#Tcl">above</a>, also contains a
|
||||
<abbr>TZif</abbr> file reader.</li>
|
||||
<li><a href="https://metacpan.org/pod/DateTime::TimeZone::Tzfile">
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
44
backport-Mention-TimeZoneDB-s-CSV-and-SQL-files.patch
Normal file
44
backport-Mention-TimeZoneDB-s-CSV-and-SQL-files.patch
Normal file
@ -0,0 +1,44 @@
|
||||
From b43b6b46b24f5ab866fa45b993851baa9ade2fc5 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 1 May 2020 11:36:38 -0700
|
||||
Subject: [PATCH 03/47] =?UTF-8?q?Mention=20TimeZoneDB=E2=80=99s=20CSV=20an?=
|
||||
=?UTF-8?q?d=20SQL=20files.?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* tz-link.html: Mention TimeZoneDB’s downloads as well as their API.
|
||||
Inspired by a suggestion from Sergio Bonfiglio.
|
||||
---
|
||||
tz-link.html | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index 1f893f6..cd51b71 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -307,6 +307,12 @@ time and zones.</li>
|
||||
<a href="https://timezoneconverterapp.com">Time Zone Converter</a> and
|
||||
<a href="https://www.worldclock.com">The World Clock</a>
|
||||
are time zone converters.</li>
|
||||
+<li><a href="https://timezonedb.com/download">TimeZoneDB Database</a>
|
||||
+publishes <code><abbr>tzdb</abbr></code>-derived data in
|
||||
+<a href="https://en.wikipedia.org/wiki/Comma-separated_values"><abbr
|
||||
+title="comma-separated values">CSV</abbr></a> and
|
||||
+in <a href="https://en.wikipedia.org/wiki/SQL"><abbr
|
||||
+title="Structured Query Language">SQL</abbr></a> form.</li>
|
||||
<li><a
|
||||
href="https://twiki.org/cgi-bin/xtra/tzdatepick.html">Date and Time Gateway</a>
|
||||
lets you see the <code><abbr>TZ</abbr></code> values directly.</li>
|
||||
@@ -740,7 +746,7 @@ href="https://www.geonames.org/export/web-services.html#timezone">GeoNames
|
||||
Timezone web service</a>, the <a
|
||||
href="https://developers.google.com/maps/documentation/timezone/intro">Google
|
||||
Maps Time Zone API</a>, and
|
||||
-the <a href="https://timezonedb.com">Time Zone Database & API</a>.
|
||||
+the <a href="https://timezonedb.com/api">TimeZoneDB API</a>.
|
||||
Commercial network API access is provided
|
||||
by <a href="https://askgeo.com">AskGeo</a>
|
||||
and <a href="https://www.geogarage.com/blog/news-1/post/geogarage-time-zone-api-31">GeoGarage</a>.
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
261
backport-Minor-editorial-improvements-for-newstrftime.3.patch
Normal file
261
backport-Minor-editorial-improvements-for-newstrftime.3.patch
Normal file
@ -0,0 +1,261 @@
|
||||
From 6e2e87703135d4923e9d65b4d75086341564401f Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sat, 8 Aug 2020 11:08:24 -0700
|
||||
Subject: [PATCH 23/47] Minor editorial improvements for newstrftime.3
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* newstrftime.3: Improve this a bit to have it match POSIX better.
|
||||
Resurrect the BSD manual’s phase-of-the-moon joke.
|
||||
---
|
||||
newstrftime.3 | 103 +++++++++++++++++++++++++++++++++++++---------------------
|
||||
1 file changed, 66 insertions(+), 37 deletions(-)
|
||||
|
||||
diff --git a/newstrftime.3 b/newstrftime.3
|
||||
index df38d1a..63842c7 100644
|
||||
--- a/newstrftime.3
|
||||
+++ b/newstrftime.3
|
||||
@@ -50,12 +50,14 @@ strftime \- format date and time
|
||||
.B cc ... \-ltz
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
-.ie '\(en'' .ds en \-
|
||||
-.el .ds en \(en
|
||||
.ie '\(lq'' .ds lq \&"\"
|
||||
.el .ds lq \(lq\"
|
||||
.ie '\(rq'' .ds rq \&"\"
|
||||
.el .ds rq \(rq\"
|
||||
+.de c
|
||||
+.ie \n(.g \f(CW\\$1\fP\\$2
|
||||
+.el \\$1\\$2
|
||||
+..
|
||||
.de q
|
||||
\\$3\*(lq\\$1\*(rq\\$2
|
||||
..
|
||||
@@ -63,7 +65,7 @@ The
|
||||
.B strftime
|
||||
function formats the information from
|
||||
.I timeptr
|
||||
-into the buffer
|
||||
+into the array pointed to by
|
||||
.I buf
|
||||
according to the string pointed to by
|
||||
.IR format .
|
||||
@@ -72,24 +74,24 @@ The
|
||||
.I format
|
||||
string consists of zero or more conversion specifications and
|
||||
ordinary characters.
|
||||
-All ordinary characters are copied directly into the buffer.
|
||||
+All ordinary characters are copied directly into the array.
|
||||
A conversion specification consists of a percent sign
|
||||
.Ql %
|
||||
and one other character.
|
||||
.PP
|
||||
No more than
|
||||
.I maxsize
|
||||
-characters are placed into the array.
|
||||
-If the total number of resulting characters, including the terminating
|
||||
-null character, is not more than
|
||||
+bytes are placed into the array.
|
||||
+If the total number of resulting bytes, including the terminating
|
||||
+NUL character, is not more than
|
||||
.IR maxsize ,
|
||||
.B strftime
|
||||
-returns the number of characters in the array, not counting the
|
||||
-terminating null.
|
||||
-Otherwise, zero is returned.
|
||||
+returns the number of bytes placed into the array, not counting the
|
||||
+terminating NUL.
|
||||
+Otherwise, zero is returned and the array contents are unspecified.
|
||||
.PP
|
||||
Each conversion specification is replaced by the characters as
|
||||
-follows which are then copied into the buffer.
|
||||
+follows which are then copied into the array.
|
||||
.TP
|
||||
%A
|
||||
is replaced by the locale's full weekday name.
|
||||
@@ -105,99 +107,122 @@ is replaced by the locale's abbreviated month name.
|
||||
.TP
|
||||
%C
|
||||
is replaced by the century (a year divided by 100 and truncated to an integer)
|
||||
-as a decimal number (00\*(en99).
|
||||
+as a decimal number [00,99].
|
||||
.TP
|
||||
%c
|
||||
is replaced by the locale's appropriate date and time representation.
|
||||
.TP
|
||||
%D
|
||||
-is replaced by the date in the format %m/%d/%y.
|
||||
+is equivalent to
|
||||
+.c %m/%d/%y .
|
||||
.TP
|
||||
%d
|
||||
-is replaced by the day of the month as a decimal number (01\*(en31).
|
||||
+is replaced by the day of the month as a decimal number [01,31].
|
||||
.TP
|
||||
%e
|
||||
-is replaced by the day of month as a decimal number (1\*(en31);
|
||||
+is replaced by the day of month as a decimal number [1,31];
|
||||
single digits are preceded by a blank.
|
||||
.TP
|
||||
%F
|
||||
-is replaced by the date in the format %Y\*-%m\*-%d.
|
||||
+is equivalent to
|
||||
+.c %Y-%m-%d
|
||||
+(the ISO 8601 date format).
|
||||
.TP
|
||||
%G
|
||||
is replaced by the ISO 8601 year with century as a decimal number.
|
||||
+See also the
|
||||
+.c %V
|
||||
+conversion specification.
|
||||
.TP
|
||||
%g
|
||||
-is replaced by the ISO 8601 year without century as a decimal number (00\*(en99).
|
||||
+is replaced by the ISO 8601 year without century as a decimal number [00,99].
|
||||
+This is the year that includes the greater part of the week.
|
||||
+(Monday as the first day of a week).
|
||||
+See also the
|
||||
+.c %V
|
||||
+conversion specification.
|
||||
.TP
|
||||
%H
|
||||
-is replaced by the hour (24-hour clock) as a decimal number (00\*(en23).
|
||||
+is replaced by the hour (24-hour clock) as a decimal number [00,23].
|
||||
.TP
|
||||
%I
|
||||
-is replaced by the hour (12-hour clock) as a decimal number (01\*(en12).
|
||||
+is replaced by the hour (12-hour clock) as a decimal number [01,12].
|
||||
.TP
|
||||
%j
|
||||
-is replaced by the day of the year as a decimal number (001\*(en366).
|
||||
+is replaced by the day of the year as a decimal number [001,366].
|
||||
.TP
|
||||
%k
|
||||
-is replaced by the hour (24-hour clock) as a decimal number (0\*(en23);
|
||||
+is replaced by the hour (24-hour clock) as a decimal number [0,23];
|
||||
single digits are preceded by a blank.
|
||||
.TP
|
||||
%l
|
||||
-is replaced by the hour (12-hour clock) as a decimal number (1\*(en12);
|
||||
+is replaced by the hour (12-hour clock) as a decimal number [1,12];
|
||||
single digits are preceded by a blank.
|
||||
.TP
|
||||
%M
|
||||
-is replaced by the minute as a decimal number (00\*(en59).
|
||||
+is replaced by the minute as a decimal number [00,59].
|
||||
.TP
|
||||
%m
|
||||
-is replaced by the month as a decimal number (01\*(en12).
|
||||
+is replaced by the month as a decimal number [01,12].
|
||||
.TP
|
||||
%n
|
||||
is replaced by a newline.
|
||||
.TP
|
||||
%p
|
||||
-is replaced by the locale's equivalent of either AM or PM.
|
||||
+is replaced by the locale's equivalent of either
|
||||
+.q AM
|
||||
+or
|
||||
+.q PM .
|
||||
.TP
|
||||
%R
|
||||
-is replaced by the time in the format %H:%M.
|
||||
+is replaced by the time in the format
|
||||
+.c %H:%M .
|
||||
.TP
|
||||
%r
|
||||
is replaced by the locale's representation of 12-hour clock time
|
||||
using AM/PM notation.
|
||||
.TP
|
||||
%S
|
||||
-is replaced by the second as a decimal number (00\*(en60).
|
||||
+is replaced by the second as a decimal number [00,60].
|
||||
+The range of
|
||||
+seconds is [00,60] instead of [00,59] to allow for the periodic occurrence
|
||||
+of leap seconds.
|
||||
.TP
|
||||
%s
|
||||
-is replaced by the number of seconds since the Epoch (see newctime(3)).
|
||||
+is replaced by the number of seconds since the Epoch (see
|
||||
+.BR ctime (3)).
|
||||
.TP
|
||||
%T
|
||||
-is replaced by the time in the format %H:%M:%S.
|
||||
+is replaced by the time in the format
|
||||
+.c %H:%M:%S .
|
||||
.TP
|
||||
%t
|
||||
is replaced by a tab.
|
||||
.TP
|
||||
%U
|
||||
is replaced by the week number of the year (Sunday as the first day of
|
||||
-the week) as a decimal number (00\*(en53).
|
||||
+the week) as a decimal number [00,53].
|
||||
.TP
|
||||
%u
|
||||
is replaced by the weekday (Monday as the first day of the week)
|
||||
-as a decimal number (1\*(en7).
|
||||
+as a decimal number [1,7].
|
||||
.TP
|
||||
%V
|
||||
is replaced by the week number of the year (Monday as the first day of
|
||||
-the week) as a decimal number (01\*(en53). If the week containing January
|
||||
+the week) as a decimal number [01,53]. If the week containing January
|
||||
1 has four or more days in the new year, then it is week 1; otherwise
|
||||
it is week 53 of the previous year, and the next week is week 1.
|
||||
+The year is given by the
|
||||
+.c %G
|
||||
+conversion specification.
|
||||
.TP
|
||||
%W
|
||||
is replaced by the week number of the year (Monday as the first day of
|
||||
-the week) as a decimal number (00\*(en53).
|
||||
+the week) as a decimal number [00,53].
|
||||
.TP
|
||||
%w
|
||||
is replaced by the weekday (Sunday as the first day of the week)
|
||||
-as a decimal number (0\*(en6).
|
||||
+as a decimal number [0,6].
|
||||
.TP
|
||||
%X
|
||||
is replaced by the locale's appropriate time representation.
|
||||
@@ -209,7 +234,7 @@ is replaced by the locale's appropriate date representation.
|
||||
is replaced by the year with century as a decimal number.
|
||||
.TP
|
||||
%y
|
||||
-is replaced by the year without century as a decimal number (00\*(en99).
|
||||
+is replaced by the year without century as a decimal number [00,99].
|
||||
.TP
|
||||
%Z
|
||||
is replaced by the time zone abbreviation,
|
||||
@@ -217,7 +242,7 @@ or by the empty string if this is not determinable.
|
||||
.TP
|
||||
%z
|
||||
is replaced by the offset from the Prime Meridian
|
||||
-in the format +HHMM or \*-HHMM as appropriate,
|
||||
+in the format +HHMM or \*-HHMM (ISO 8601) as appropriate,
|
||||
with positive values representing locations east of Greenwich,
|
||||
or by the empty string if this is not determinable.
|
||||
The numeric time zone abbreviation \*-0000 is used when the time is
|
||||
@@ -231,7 +256,9 @@ time zone abbreviation begins with
|
||||
is replaced by a single %.
|
||||
.TP
|
||||
%+
|
||||
-is replaced by the date and time in date(1) format.
|
||||
+is replaced by the locale's date and time in
|
||||
+.BR date (1)
|
||||
+format.
|
||||
.SH SEE ALSO
|
||||
date(1),
|
||||
getenv(3),
|
||||
@@ -239,3 +266,5 @@ newctime(3),
|
||||
newtzset(3),
|
||||
time(2),
|
||||
tzfile(5)
|
||||
+.SH BUGS
|
||||
+There is no conversion specification for the phase of the moon.
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
60
backport-More-Ruthenia-replacement.patch
Normal file
60
backport-More-Ruthenia-replacement.patch
Normal file
@ -0,0 +1,60 @@
|
||||
From c6c18a432298874f2fdd4ad90df90d615f5846fa Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 1 May 2020 13:24:51 -0700
|
||||
Subject: [PATCH 04/47] More Ruthenia replacement
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This follows up on an earlier patch in March, which replaced
|
||||
“Ruthenia” with “Transcarpathia” but missed a couple of instances.
|
||||
* europe: Ruthenia→Transcarpathia in commentary here, too.
|
||||
* theory.html: Switch to Europe/Prague as a more easily-understood
|
||||
example.
|
||||
---
|
||||
europe | 2 +-
|
||||
theory.html | 10 ++++------
|
||||
2 files changed, 5 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/europe b/europe
|
||||
index 5593c60..91949d6 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -3983,7 +3983,7 @@ Zone Europe/Kiev 2:02:04 - LMT 1880
|
||||
2:00 1:00 EEST 1991 Sep 29 3:00
|
||||
2:00 E-Eur EE%sT 1995
|
||||
2:00 EU EE%sT
|
||||
-# Ruthenia used CET 1990/1991.
|
||||
+# Transcarpathia used CET 1990/1991.
|
||||
# "Uzhhorod" is the transliteration of the Rusyn/Ukrainian pronunciation, but
|
||||
# "Uzhgorod" is more common in English.
|
||||
Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
|
||||
diff --git a/theory.html b/theory.html
|
||||
index c0e6f02..ffa3b4d 100644
|
||||
--- a/theory.html
|
||||
+++ b/theory.html
|
||||
@@ -115,17 +115,15 @@ Each timezone has a name that uniquely identifies the timezone.
|
||||
Inexperienced users are not expected to select these names unaided.
|
||||
Distributors should provide documentation and/or a simple selection
|
||||
interface that explains each name via a map or via descriptive text like
|
||||
-"Ruthenia" instead of the timezone name "<code>Europe/Uzhgorod</code>".
|
||||
+"Czech Republic" instead of the timezone name "<code>Europe/Prague</code>".
|
||||
If geolocation information is available, a selection interface can
|
||||
locate the user on a timezone map or prioritize names that are
|
||||
geographically close. For an example selection interface, see the
|
||||
<code>tzselect</code> program in the <code><abbr>tz</abbr></code> code.
|
||||
-The <a href="http://cldr.unicode.org/">Unicode Common Locale Data
|
||||
+The <a href="http://cldr.unicode.org">Unicode Common Locale Data
|
||||
Repository</a> contains data that may be useful for other selection
|
||||
-interfaces; it maps timezone names like <code>Europe/Uzhgorod</code>
|
||||
-to CLDR names like <code>uauzh</code> which are in turn mapped to
|
||||
-locale-dependent strings like "Uzhhorod", "Ungvár", "Ужгород", and
|
||||
-"乌日哥罗德".
|
||||
+interfaces; it maps timezone names like <code>Europe/Prague</code> to
|
||||
+locale-dependent strings like "Prague", "Praha", "Прага", and "布拉格".
|
||||
</p>
|
||||
|
||||
<p>
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,36 @@
|
||||
From 64308c00590a8d157e099012a6b91ab1f7f8485b Mon Sep 17 00:00:00 2001
|
||||
From: Tim Parenti <tim@timtimeonline.com>
|
||||
Date: Tue, 6 Oct 2020 21:20:30 -0400
|
||||
Subject: [PATCH 45/47] * NEWS: Fix Antarctic seasons, Casey change is past
|
||||
|
||||
---
|
||||
NEWS | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 43ab343..419bd5c 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -6,7 +6,7 @@ Unreleased, experimental changes
|
||||
Revised predictions for Morocco's changes starting in 2023.
|
||||
Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08.
|
||||
Macquarie Island has stayed in sync with Tasmania since 2011.
|
||||
- Casey, Antarctica is at +08 in summer and +11 in winter.
|
||||
+ Casey, Antarctica is at +08 in winter and +11 in summer.
|
||||
zic no longer supports -y, nor the TYPE field of Rules.
|
||||
|
||||
Changes to future timestamps
|
||||
@@ -18,8 +18,8 @@ Unreleased, experimental changes
|
||||
|
||||
Changes to past and future timestamps
|
||||
|
||||
- Casey Station, Antarctica has been using +08 in summer and +11 in
|
||||
- winter since 2018. The next transition is from +08 to +11 on
|
||||
+ Casey Station, Antarctica has been using +08 in winter and +11 in
|
||||
+ summer since 2018. The most recent transition from +08 to +11 was
|
||||
2020-10-04 00:01. Also, Macquarie Island has been staying in
|
||||
sync with Tasmania since 2011. (Thanks to Steffen Thorsen.)
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
25
backport-NEWS-Fix-recent-date-typo.patch
Normal file
25
backport-NEWS-Fix-recent-date-typo.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From 81224935459b3abaf9d24e588da7882bd6d6007d Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 11 Jun 2020 20:32:19 -0700
|
||||
Subject: [PATCH 12/47] * NEWS: Fix recent date typo.
|
||||
|
||||
---
|
||||
NEWS | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 84c87ee..ec73943 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -21,7 +21,7 @@ Unreleased, experimental changes
|
||||
stopped at 00:00 for 9 minutes, 21 seconds but this cannot be
|
||||
represented in tzdb, so tzdb instead represents the also-common
|
||||
practice of keeping an old clock running until the new clock
|
||||
- started up. Similarly for the 1895-03-16 transition.
|
||||
+ started up. Similarly for the 1891-03-16 transition.
|
||||
(Thanks to Michael Deckers.)
|
||||
|
||||
Changes to code
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
25
backport-NEWS-Fix-typo-thanks-to-Philip-Paeps.patch
Normal file
25
backport-NEWS-Fix-typo-thanks-to-Philip-Paeps.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From dd606383a7f4c865a1743d6f8ad51c64d9dd479c Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 24 Sep 2020 19:28:46 -0700
|
||||
Subject: [PATCH 37/47] * NEWS: Fix typo (thanks to Philip Paeps).
|
||||
|
||||
---
|
||||
NEWS | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 517d1c8..df81d55 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -3,7 +3,7 @@ News for the tz database
|
||||
Unreleased, experimental changes
|
||||
|
||||
Briefly:
|
||||
- Revised predictions for Morocco's changes starting in 20203.
|
||||
+ Revised predictions for Morocco's changes starting in 2023.
|
||||
Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08.
|
||||
|
||||
Changes to future timestamps
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
38
backport-No-leap-second-on-2020-12-31.patch
Normal file
38
backport-No-leap-second-on-2020-12-31.patch
Normal file
@ -0,0 +1,38 @@
|
||||
From b04741d80fa8e4a95ca2fd824e5fda45f4887748 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 9 Jul 2020 12:59:05 -0700
|
||||
Subject: [PATCH 19/47] No leap second on 2020-12-31
|
||||
|
||||
* leap-seconds.list: Update file from NIST, retrieved from
|
||||
ftp://ftp.nist.gov/pub/time/leap-seconds.list in ASCII mode.
|
||||
---
|
||||
leap-seconds.list | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/leap-seconds.list b/leap-seconds.list
|
||||
index ac153da..e897a86 100644
|
||||
--- a/leap-seconds.list
|
||||
+++ b/leap-seconds.list
|
||||
@@ -204,10 +204,10 @@
|
||||
# current -- the update time stamp, the data and the name of the file
|
||||
# will not change.
|
||||
#
|
||||
-# Updated through IERS Bulletin C59
|
||||
-# File expires on: 28 December 2020
|
||||
+# Updated through IERS Bulletin C60
|
||||
+# File expires on: 28 June 2021
|
||||
#
|
||||
-#@ 3818102400
|
||||
+#@ 3833827200
|
||||
#
|
||||
2272060800 10 # 1 Jan 1972
|
||||
2287785600 11 # 1 Jul 1972
|
||||
@@ -252,4 +252,4 @@
|
||||
# the hash line is also ignored in the
|
||||
# computation.
|
||||
#
|
||||
-#h a1c168ae 27c79a7d 9dddcfc3 bcfe616b 2e2c44ea
|
||||
+#h 064356a8 39268b92 76e4d5ef 3e22fae1 0cca529c
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
167
backport-Predict-Morocco-spring-forward-after-Eid-al-Fitr.patch
Normal file
167
backport-Predict-Morocco-spring-forward-after-Eid-al-Fitr.patch
Normal file
@ -0,0 +1,167 @@
|
||||
From e30fe68d4448a79d8ac95bf6ae81bb344328eb3c Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 31 May 2020 15:17:11 -0700
|
||||
Subject: [PATCH 06/47] Predict Morocco spring-forward after Eid al-Fitr
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
(Thanks to Milamber.)
|
||||
* NEWS: Mention this.
|
||||
* africa (Morocco): Change ‘1+’ to ‘+ 2’ in the commented-out
|
||||
code, and alter the prdicted rules accordingly for 2023-2085.
|
||||
---
|
||||
NEWS | 7 +++++++
|
||||
africa | 45 +++++++++++++++++++++++++++++----------------
|
||||
2 files changed, 36 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index ac491e1..8362dcc 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -2,6 +2,13 @@ News for the tz database
|
||||
|
||||
Unreleased, experimental changes
|
||||
|
||||
+ Changes to future timestamps
|
||||
+
|
||||
+ Morocco's spring-forward after Ramadan is now predicted to occur
|
||||
+ no sooner than two days after Ramadan, instead of one day.
|
||||
+ (Thanks to Milamber.) The first altered prediction is for 2023,
|
||||
+ now predicted to spring-forward on April 30 instead of April 23.
|
||||
+
|
||||
Changes to code
|
||||
|
||||
The undocumented and ineffective tzsetwall function has been
|
||||
diff --git a/africa b/africa
|
||||
index 724744f..5d3beb0 100644
|
||||
--- a/africa
|
||||
+++ b/africa
|
||||
@@ -875,17 +875,30 @@ Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
|
||||
# https://maroc-diplomatique.net/maroc-le-retour-a-lheure-gmt-est-prevu-dimanche-prochain/
|
||||
# http://aujourdhui.ma/actualite/gmt1-retour-a-lheure-normale-dimanche-prochain-1
|
||||
#
|
||||
-# From Paul Eggert (2020-04-14):
|
||||
+# From Milamber (2020-05-31)
|
||||
+# In Morocco (where I live), the end of Ramadan (Arabic month) is followed by
|
||||
+# the Eid al-Fitr, and concretely it's 1 or 2 day offs for the people (with
|
||||
+# traditional visiting of family, big lunches/dinners, etc.). So for this
|
||||
+# year the astronomical calculations don't include the following 2 days off in
|
||||
+# the calc. These 2 days fall in a Sunday/Monday, so it's not acceptable by
|
||||
+# people to have a time shift during these 2 days off. Perhaps you can modify
|
||||
+# the (predicted) rules for next years: if the end of Ramadan is a (probable)
|
||||
+# Friday or Saturday (and so the 2 days off are on a weekend), the next time
|
||||
+# shift will be the next weekend.
|
||||
+#
|
||||
+# From Paul Eggert (2020-05-31):
|
||||
# For now, guess that in the future Morocco will fall back at 03:00
|
||||
# the last Sunday before Ramadan, and spring forward at 02:00 the
|
||||
-# first Sunday after the day after Ramadan. To implement this,
|
||||
-# transition dates for 2021 through 2087 were determined by running
|
||||
-# the following program under GNU Emacs 26.3.
|
||||
-# (let ((islamic-year 1442))
|
||||
+# first Sunday after two days after Ramadan. To implement this,
|
||||
+# transition dates and times for 2019 through 2087 were determined by
|
||||
+# running the following program under GNU Emacs 26.3. (This algorithm
|
||||
+# also produces the correct transition dates for 2016 through 2018,
|
||||
+# though the times differ due to Morocco's time zone change in 2018.)
|
||||
+# (let ((islamic-year 1440))
|
||||
# (require 'cal-islam)
|
||||
# (while (< islamic-year 1511)
|
||||
# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
|
||||
-# (b (1+ (calendar-islamic-to-absolute (list 10 1 islamic-year))))
|
||||
+# (b (+ 2 (calendar-islamic-to-absolute (list 10 1 islamic-year))))
|
||||
# (sunday 0))
|
||||
# (while (/= sunday (mod (setq a (1- a)) 7)))
|
||||
# (while (/= sunday (mod b 7))
|
||||
@@ -951,7 +964,7 @@ Rule Morocco 2021 only - May 16 2:00 0 -
|
||||
Rule Morocco 2022 only - Mar 27 3:00 -1:00 -
|
||||
Rule Morocco 2022 only - May 8 2:00 0 -
|
||||
Rule Morocco 2023 only - Mar 19 3:00 -1:00 -
|
||||
-Rule Morocco 2023 only - Apr 23 2:00 0 -
|
||||
+Rule Morocco 2023 only - Apr 30 2:00 0 -
|
||||
Rule Morocco 2024 only - Mar 10 3:00 -1:00 -
|
||||
Rule Morocco 2024 only - Apr 14 2:00 0 -
|
||||
Rule Morocco 2025 only - Feb 23 3:00 -1:00 -
|
||||
@@ -967,7 +980,7 @@ Rule Morocco 2029 only - Feb 18 2:00 0 -
|
||||
Rule Morocco 2029 only - Dec 30 3:00 -1:00 -
|
||||
Rule Morocco 2030 only - Feb 10 2:00 0 -
|
||||
Rule Morocco 2030 only - Dec 22 3:00 -1:00 -
|
||||
-Rule Morocco 2031 only - Jan 26 2:00 0 -
|
||||
+Rule Morocco 2031 only - Feb 2 2:00 0 -
|
||||
Rule Morocco 2031 only - Dec 14 3:00 -1:00 -
|
||||
Rule Morocco 2032 only - Jan 18 2:00 0 -
|
||||
Rule Morocco 2032 only - Nov 28 3:00 -1:00 -
|
||||
@@ -983,7 +996,7 @@ Rule Morocco 2036 only - Nov 23 2:00 0 -
|
||||
Rule Morocco 2037 only - Oct 4 3:00 -1:00 -
|
||||
Rule Morocco 2037 only - Nov 15 2:00 0 -
|
||||
Rule Morocco 2038 only - Sep 26 3:00 -1:00 -
|
||||
-Rule Morocco 2038 only - Oct 31 2:00 0 -
|
||||
+Rule Morocco 2038 only - Nov 7 2:00 0 -
|
||||
Rule Morocco 2039 only - Sep 18 3:00 -1:00 -
|
||||
Rule Morocco 2039 only - Oct 23 2:00 0 -
|
||||
Rule Morocco 2040 only - Sep 2 3:00 -1:00 -
|
||||
@@ -999,7 +1012,7 @@ Rule Morocco 2044 only - Aug 28 2:00 0 -
|
||||
Rule Morocco 2045 only - Jul 9 3:00 -1:00 -
|
||||
Rule Morocco 2045 only - Aug 20 2:00 0 -
|
||||
Rule Morocco 2046 only - Jul 1 3:00 -1:00 -
|
||||
-Rule Morocco 2046 only - Aug 5 2:00 0 -
|
||||
+Rule Morocco 2046 only - Aug 12 2:00 0 -
|
||||
Rule Morocco 2047 only - Jun 23 3:00 -1:00 -
|
||||
Rule Morocco 2047 only - Jul 28 2:00 0 -
|
||||
Rule Morocco 2048 only - Jun 7 3:00 -1:00 -
|
||||
@@ -1015,7 +1028,7 @@ Rule Morocco 2052 only - Jun 2 2:00 0 -
|
||||
Rule Morocco 2053 only - Apr 13 3:00 -1:00 -
|
||||
Rule Morocco 2053 only - May 25 2:00 0 -
|
||||
Rule Morocco 2054 only - Apr 5 3:00 -1:00 -
|
||||
-Rule Morocco 2054 only - May 10 2:00 0 -
|
||||
+Rule Morocco 2054 only - May 17 2:00 0 -
|
||||
Rule Morocco 2055 only - Mar 28 3:00 -1:00 -
|
||||
Rule Morocco 2055 only - May 2 2:00 0 -
|
||||
Rule Morocco 2056 only - Mar 12 3:00 -1:00 -
|
||||
@@ -1031,7 +1044,7 @@ Rule Morocco 2060 only - Mar 7 2:00 0 -
|
||||
Rule Morocco 2061 only - Jan 16 3:00 -1:00 -
|
||||
Rule Morocco 2061 only - Feb 27 2:00 0 -
|
||||
Rule Morocco 2062 only - Jan 8 3:00 -1:00 -
|
||||
-Rule Morocco 2062 only - Feb 12 2:00 0 -
|
||||
+Rule Morocco 2062 only - Feb 19 2:00 0 -
|
||||
Rule Morocco 2062 only - Dec 31 3:00 -1:00 -
|
||||
Rule Morocco 2063 only - Feb 4 2:00 0 -
|
||||
Rule Morocco 2063 only - Dec 16 3:00 -1:00 -
|
||||
@@ -1047,7 +1060,7 @@ Rule Morocco 2067 only - Dec 11 2:00 0 -
|
||||
Rule Morocco 2068 only - Oct 21 3:00 -1:00 -
|
||||
Rule Morocco 2068 only - Dec 2 2:00 0 -
|
||||
Rule Morocco 2069 only - Oct 13 3:00 -1:00 -
|
||||
-Rule Morocco 2069 only - Nov 17 2:00 0 -
|
||||
+Rule Morocco 2069 only - Nov 24 2:00 0 -
|
||||
Rule Morocco 2070 only - Oct 5 3:00 -1:00 -
|
||||
Rule Morocco 2070 only - Nov 9 2:00 0 -
|
||||
Rule Morocco 2071 only - Sep 20 3:00 -1:00 -
|
||||
@@ -1063,7 +1076,7 @@ Rule Morocco 2075 only - Sep 15 2:00 0 -
|
||||
Rule Morocco 2076 only - Jul 26 3:00 -1:00 -
|
||||
Rule Morocco 2076 only - Sep 6 2:00 0 -
|
||||
Rule Morocco 2077 only - Jul 18 3:00 -1:00 -
|
||||
-Rule Morocco 2077 only - Aug 22 2:00 0 -
|
||||
+Rule Morocco 2077 only - Aug 29 2:00 0 -
|
||||
Rule Morocco 2078 only - Jul 10 3:00 -1:00 -
|
||||
Rule Morocco 2078 only - Aug 14 2:00 0 -
|
||||
Rule Morocco 2079 only - Jun 25 3:00 -1:00 -
|
||||
@@ -1073,13 +1086,13 @@ Rule Morocco 2080 only - Jul 21 2:00 0 -
|
||||
Rule Morocco 2081 only - Jun 1 3:00 -1:00 -
|
||||
Rule Morocco 2081 only - Jul 13 2:00 0 -
|
||||
Rule Morocco 2082 only - May 24 3:00 -1:00 -
|
||||
-Rule Morocco 2082 only - Jun 28 2:00 0 -
|
||||
+Rule Morocco 2082 only - Jul 5 2:00 0 -
|
||||
Rule Morocco 2083 only - May 16 3:00 -1:00 -
|
||||
Rule Morocco 2083 only - Jun 20 2:00 0 -
|
||||
Rule Morocco 2084 only - Apr 30 3:00 -1:00 -
|
||||
Rule Morocco 2084 only - Jun 11 2:00 0 -
|
||||
Rule Morocco 2085 only - Apr 22 3:00 -1:00 -
|
||||
-Rule Morocco 2085 only - May 27 2:00 0 -
|
||||
+Rule Morocco 2085 only - Jun 3 2:00 0 -
|
||||
Rule Morocco 2086 only - Apr 14 3:00 -1:00 -
|
||||
Rule Morocco 2086 only - May 19 2:00 0 -
|
||||
Rule Morocco 2087 only - Mar 30 3:00 -1:00 -
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
25
backport-README-Add-a-pointer-to-tz-how-to.html.patch
Normal file
25
backport-README-Add-a-pointer-to-tz-how-to.html.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From 243321439b4f47dbc6981c990fa6eb3b94a01e98 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 18 Aug 2020 20:47:17 -0700
|
||||
Subject: [PATCH 27/47] * README: Add a pointer to tz-how-to.html.
|
||||
|
||||
---
|
||||
README | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/README b/README
|
||||
index dd6fcf7..145aacd 100644
|
||||
--- a/README
|
||||
+++ b/README
|
||||
@@ -20,6 +20,8 @@ substituting your desired installation directory for "$HOME/tzdir":
|
||||
make TOPDIR=$HOME/tzdir install
|
||||
$HOME/tzdir/usr/bin/zdump -v America/Los_Angeles
|
||||
|
||||
+See the file tz-how-to.html for examples of how to read the data files.
|
||||
+
|
||||
This database of historical local time information has several goals:
|
||||
|
||||
* Provide a compendium of data about the history of civil time that
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
25
backport-Release-2020b.patch
Normal file
25
backport-Release-2020b.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From 47311d42a3ad6a8afa95d1f63fa8b6bb2710b16e Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 6 Oct 2020 18:35:04 -0700
|
||||
Subject: [PATCH 46/47] Release 2020b
|
||||
|
||||
* NEWS: Increase version to 2020b.
|
||||
---
|
||||
NEWS | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 419bd5c..c77f76d 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,6 +1,6 @@
|
||||
News for the tz database
|
||||
|
||||
-Unreleased, experimental changes
|
||||
+Release 2020b - 2020-10-06 18:35:04 -0700
|
||||
|
||||
Briefly:
|
||||
Revised predictions for Morocco's changes starting in 2023.
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
126
backport-Remove-obsolete-file-systemv.patch
Normal file
126
backport-Remove-obsolete-file-systemv.patch
Normal file
@ -0,0 +1,126 @@
|
||||
From b3cf2ee42f0799e190c875f3af2ce6e5a7e287ce Mon Sep 17 00:00:00 2001
|
||||
From: Tim Parenti <tim@timtimeonline.com>
|
||||
Date: Sat, 3 Oct 2020 17:58:38 -0400
|
||||
Subject: [PATCH 40/47] Remove obsolete file systemv
|
||||
|
||||
* systemv: Remove obsolete file.
|
||||
* zishrink.awk (BEGIN): Don't depend on the old file.
|
||||
(process_input_line): Remove exception for the Rules the old file contains.
|
||||
* Makefile (NDATA, VERSION_DEPS): Remove all uses.
|
||||
* NEWS: Document this.
|
||||
---
|
||||
Makefile | 4 ++--
|
||||
NEWS | 5 +++++
|
||||
systemv | 39 ---------------------------------------
|
||||
zishrink.awk | 4 ----
|
||||
4 files changed, 7 insertions(+), 45 deletions(-)
|
||||
delete mode 100644 systemv
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 8abd4d0..0a06521 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -533,7 +533,7 @@ DOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
|
||||
PRIMARY_YDATA= africa antarctica asia australasia \
|
||||
europe northamerica southamerica
|
||||
YDATA= $(PRIMARY_YDATA) etcetera
|
||||
-NDATA= systemv factory
|
||||
+NDATA= factory
|
||||
TDATA_TO_CHECK= $(YDATA) $(NDATA) backward pacificnew
|
||||
TDATA= $(YDATA) $(NDATA) $(BACKWARD)
|
||||
ZONETABLES= zone1970.tab zone.tab
|
||||
@@ -569,7 +569,7 @@ VERSION_DEPS= \
|
||||
leap-seconds.list leapseconds.awk localtime.c \
|
||||
newctime.3 newstrftime.3 newtzset.3 northamerica \
|
||||
pacificnew private.h \
|
||||
- southamerica strftime.c systemv theory.html \
|
||||
+ southamerica strftime.c theory.html \
|
||||
time2posix.3 tz-art.html tz-how-to.html tz-link.html \
|
||||
tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
|
||||
workman.sh yearistype.sh \
|
||||
diff --git a/NEWS b/NEWS
|
||||
index f0858f8..2cabf90 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -58,6 +58,11 @@ Unreleased, experimental changes
|
||||
The Makefile now defaults POSIXRULES to '-', so the posixrules
|
||||
feature (obsolete as of 2019b) is no longer installed by default.
|
||||
|
||||
+ Changes to documentation and commentary
|
||||
+
|
||||
+ The long-obsolete file systemv has been removed from the
|
||||
+ distribution. (Thanks to Tim Parenti.)
|
||||
+
|
||||
|
||||
Release 2020a - 2020-04-23 16:03:47 -0700
|
||||
|
||||
diff --git a/systemv b/systemv
|
||||
deleted file mode 100644
|
||||
index a8c037c..0000000
|
||||
--- a/systemv
|
||||
+++ /dev/null
|
||||
@@ -1,39 +0,0 @@
|
||||
-# tzdb data for System V rules (this file is obsolete)
|
||||
-
|
||||
-# This file is in the public domain, so clarified as of
|
||||
-# 2009-05-17 by Arthur David Olson.
|
||||
-
|
||||
-# Old rules, should the need arise.
|
||||
-# No attempt is made to handle Newfoundland, since it cannot be expressed
|
||||
-# using the System V "TZ" scheme (half-hour offset), or anything outside
|
||||
-# North America (no support for non-standard DST start/end dates), nor
|
||||
-# the changes in the DST rules in the US after 1976 (which occurred after
|
||||
-# the old rules were written).
|
||||
-#
|
||||
-# If you need the old rules, uncomment ## lines.
|
||||
-# Compile this *without* leap second correction for true conformance.
|
||||
-
|
||||
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
-Rule SystemV min 1973 - Apr lastSun 2:00 1:00 D
|
||||
-Rule SystemV min 1973 - Oct lastSun 2:00 0 S
|
||||
-Rule SystemV 1974 only - Jan 6 2:00 1:00 D
|
||||
-Rule SystemV 1974 only - Nov lastSun 2:00 0 S
|
||||
-Rule SystemV 1975 only - Feb 23 2:00 1:00 D
|
||||
-Rule SystemV 1975 only - Oct lastSun 2:00 0 S
|
||||
-Rule SystemV 1976 max - Apr lastSun 2:00 1:00 D
|
||||
-Rule SystemV 1976 max - Oct lastSun 2:00 0 S
|
||||
-
|
||||
-# Zone NAME STDOFF RULES/SAVE FORMAT [UNTIL]
|
||||
-## Zone SystemV/AST4ADT -4:00 SystemV A%sT
|
||||
-## Zone SystemV/EST5EDT -5:00 SystemV E%sT
|
||||
-## Zone SystemV/CST6CDT -6:00 SystemV C%sT
|
||||
-## Zone SystemV/MST7MDT -7:00 SystemV M%sT
|
||||
-## Zone SystemV/PST8PDT -8:00 SystemV P%sT
|
||||
-## Zone SystemV/YST9YDT -9:00 SystemV Y%sT
|
||||
-## Zone SystemV/AST4 -4:00 - AST
|
||||
-## Zone SystemV/EST5 -5:00 - EST
|
||||
-## Zone SystemV/CST6 -6:00 - CST
|
||||
-## Zone SystemV/MST7 -7:00 - MST
|
||||
-## Zone SystemV/PST8 -8:00 - PST
|
||||
-## Zone SystemV/YST9 -9:00 - YST
|
||||
-## Zone SystemV/HST10 -10:00 - HST
|
||||
diff --git a/zishrink.awk b/zishrink.awk
|
||||
index 4e187ac..1947c7c 100644
|
||||
--- a/zishrink.awk
|
||||
+++ b/zishrink.awk
|
||||
@@ -166,9 +166,6 @@ function process_input_line(line, \
|
||||
ruleline = sub(/^Rule /, "R ", line)
|
||||
zoneline = sub(/^Zone /, "Z ", line)
|
||||
|
||||
- # SystemV rules are not needed.
|
||||
- if (line ~ /^R SystemV /) return
|
||||
-
|
||||
# Replace FooAsia rules with the same rules without "Asia", as they
|
||||
# are duplicates.
|
||||
if (match(line, /[^ ]Asia /)) {
|
||||
@@ -275,7 +272,6 @@ BEGIN {
|
||||
default_dep["factory"] = 1
|
||||
default_dep["northamerica"] = 1
|
||||
default_dep["southamerica"] = 1
|
||||
- default_dep["systemv"] = 1
|
||||
default_dep["ziguard.awk"] = 1
|
||||
default_dep["zishrink.awk"] = 1
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
118
backport-Remove-tzsetwall.patch
Normal file
118
backport-Remove-tzsetwall.patch
Normal file
@ -0,0 +1,118 @@
|
||||
From d36f8f5b698370ce110b70f3296e8c06a7ccc3cc Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 24 Apr 2020 16:49:45 -0700
|
||||
Subject: [PATCH 01/47] Remove tzsetwall
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Might as well do this now, while it’s fresh in my mind.
|
||||
* Makefile, NEWS: Update accordingly.
|
||||
* localtime.c (tzset_unlocked, tzsetlcl): Merge, since there’s now
|
||||
only one caller to either.
|
||||
* localtime.c, private.h (tzsetwall): Remove.
|
||||
---
|
||||
Makefile | 3 +--
|
||||
NEWS | 8 ++++++++
|
||||
localtime.c | 20 ++------------------
|
||||
private.h | 5 -----
|
||||
4 files changed, 11 insertions(+), 25 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 610bf19..107f67e 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -333,9 +333,8 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fno-common \
|
||||
# add
|
||||
# -DSTD_INSPIRED
|
||||
# to the end of the "CFLAGS=" line. This arranges for the functions
|
||||
-# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff",
|
||||
+# "offtime", "timelocal", "timegm", "timeoff",
|
||||
# "posix2time", and "time2posix" to be added to the time conversion library.
|
||||
-# "tzsetwall" is deprecated and is intended to be removed soon; see NEWS.
|
||||
# "offtime" is like "gmtime" except that it accepts a second (long) argument
|
||||
# that gives an offset to add to the time_t when converting it.
|
||||
# "timelocal" is equivalent to "mktime".
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 321e090..ac491e1 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,5 +1,13 @@
|
||||
News for the tz database
|
||||
|
||||
+Unreleased, experimental changes
|
||||
+
|
||||
+ Changes to code
|
||||
+
|
||||
+ The undocumented and ineffective tzsetwall function has been
|
||||
+ removed.
|
||||
+
|
||||
+
|
||||
Release 2020a - 2020-04-23 16:03:47 -0700
|
||||
|
||||
Briefly:
|
||||
diff --git a/localtime.c b/localtime.c
|
||||
index 6623eac..d3e406b 100644
|
||||
--- a/localtime.c
|
||||
+++ b/localtime.c
|
||||
@@ -1355,8 +1355,9 @@ zoneinit(struct state *sp, char const *name)
|
||||
}
|
||||
|
||||
static void
|
||||
-tzsetlcl(char const *name)
|
||||
+tzset_unlocked(void)
|
||||
{
|
||||
+ char const *name = getenv("TZ");
|
||||
struct state *sp = lclptr;
|
||||
int lcl = name ? strlen(name) < sizeof lcl_TZname : -1;
|
||||
if (lcl < 0
|
||||
@@ -1377,23 +1378,6 @@ tzsetlcl(char const *name)
|
||||
lcl_is_set = lcl;
|
||||
}
|
||||
|
||||
-#ifdef STD_INSPIRED
|
||||
-void
|
||||
-tzsetwall(void)
|
||||
-{
|
||||
- if (lock() != 0)
|
||||
- return;
|
||||
- tzsetlcl(NULL);
|
||||
- unlock();
|
||||
-}
|
||||
-#endif
|
||||
-
|
||||
-static void
|
||||
-tzset_unlocked(void)
|
||||
-{
|
||||
- tzsetlcl(getenv("TZ"));
|
||||
-}
|
||||
-
|
||||
void
|
||||
tzset(void)
|
||||
{
|
||||
diff --git a/private.h b/private.h
|
||||
index 8513663..9efcd78 100644
|
||||
--- a/private.h
|
||||
+++ b/private.h
|
||||
@@ -477,8 +477,6 @@ typedef time_tz tz_time_t;
|
||||
# define tzfree tz_tzfree
|
||||
# undef tzset
|
||||
# define tzset tz_tzset
|
||||
-# undef tzsetwall
|
||||
-# define tzsetwall tz_tzsetwall
|
||||
# if HAVE_STRFTIME_L
|
||||
# undef strftime_l
|
||||
# define strftime_l tz_strftime_l
|
||||
@@ -551,9 +549,6 @@ extern long altzone;
|
||||
*/
|
||||
|
||||
#ifdef STD_INSPIRED
|
||||
-# if TZ_TIME_T || !defined tzsetwall
|
||||
-void tzsetwall(void);
|
||||
-# endif
|
||||
# if TZ_TIME_T || !defined offtime
|
||||
struct tm *offtime(time_t const *, long);
|
||||
# endif
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
46
backport-Tighten-up-scope-wording.patch
Normal file
46
backport-Tighten-up-scope-wording.patch
Normal file
@ -0,0 +1,46 @@
|
||||
From 06520a2b42f242868260e389f7871a1b691e0525 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 4 Oct 2020 14:08:25 -0700
|
||||
Subject: [PATCH 44/47] Tighten up scope wording
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Problem reported by Michael Deckers in:
|
||||
https://mm.icann.org/pipermail/tz/2020-October/029299.html
|
||||
* theory.html: Reword scope to be less ambitious.
|
||||
* tz-link.html: Remove “computer-based”.
|
||||
---
|
||||
theory.html | 2 +-
|
||||
tz-link.html | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/theory.html b/theory.html
|
||||
index 22b9815..4613799 100644
|
||||
--- a/theory.html
|
||||
+++ b/theory.html
|
||||
@@ -33,7 +33,7 @@
|
||||
The <a
|
||||
href="https://www.iana.org/time-zones"><code><abbr>tz</abbr></code>
|
||||
database</a> attempts to record the history and predicted future of
|
||||
-all computer-based clocks that track civil time.
|
||||
+civil time scales.
|
||||
It organizes <a href="tz-link.html">time zone and daylight saving time
|
||||
data</a> by partitioning the world into <a
|
||||
href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones"><dfn>timezones</dfn></a>
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index b634082..606a83b 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -218,7 +218,7 @@ advance, as this will coordinate updates to many cell phones,
|
||||
computers, and other devices around the world.
|
||||
The change should be officially announced at least a year before it affects
|
||||
how clocks operate; otherwise, there is a good chance that some
|
||||
-computer-based clocks will operate incorrectly after the change, due
|
||||
+clocks will operate incorrectly after the change, due
|
||||
to delays in propagating updates to software and data. The shorter
|
||||
the notice, the more likely clock problems will arise; see "<a
|
||||
href="https://codeofmatt.com/2016/04/23/on-the-timing-of-time-zone-changes/">On
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
45
backport-Update-Bahrain-as-per-article-in-The-National.patch
Normal file
45
backport-Update-Bahrain-as-per-article-in-The-National.patch
Normal file
@ -0,0 +1,45 @@
|
||||
From 39c661ee11b6d199befcc28ef10867b55620dfac Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Wed, 22 Jul 2020 16:37:01 -0700
|
||||
Subject: [PATCH 21/47] Update Bahrain as per article in The National
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* backzone (Asia/Bahrain): Adjust transitions before 1944 to
|
||||
match Ashleigh Stewart’s article in today’s The National (Abu Dhabi).
|
||||
---
|
||||
backzone | 17 ++++++++++++++++-
|
||||
1 file changed, 16 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/backzone b/backzone
|
||||
index 91fa21d..7cf026d 100644
|
||||
--- a/backzone
|
||||
+++ b/backzone
|
||||
@@ -459,7 +459,22 @@ Zone Asia/Aden 2:59:54 - LMT 1950
|
||||
3:00 - +03
|
||||
|
||||
# Bahrain
|
||||
-Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
|
||||
+#
|
||||
+# From Paul Eggert (2020-07-22):
|
||||
+# Most of this data comes from:
|
||||
+# Stewart A. Why Gulf Standard Time is far from standard: the fascinating story
|
||||
+# behind the time zone's invention. The National (Abu Dhabi). 2020-07-22.
|
||||
+# https://www.thenational.ae/arts-culture/why-gulf-standard-time-is-far-from-standard-the-fascinating-story-behind-the-time-zone-s-invention-1.1052589
|
||||
+# Stewart writes that before 1940 some companies in Bahrain were at +0330 and
|
||||
+# others at +0323. Reginald George Alban, a British political agent based in
|
||||
+# Manama, worked to standardize this, and from 1941-07-20 Bahrain was at
|
||||
+# +0330. However, BOAC asked that clocks be moved to gain more light at day's
|
||||
+# end, so Bahrain switched to +04 on 1944-01-01.
|
||||
+#
|
||||
+# We don't know when companies chose +0330 or +0323 before 1940; for now
|
||||
+# assume that there was no real standard in Bahrain before 1941-07-20.
|
||||
+Zone Asia/Bahrain 3:22:20 - LMT 1941 Jul 20 # Manamah
|
||||
+ 3:30 - +0330 1944 Jan 1
|
||||
4:00 - +04 1972 Jun
|
||||
3:00 - +03
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
648
backport-Use-bold-for-command-and-func-names-in-man-pages.patch
Normal file
648
backport-Use-bold-for-command-and-func-names-in-man-pages.patch
Normal file
@ -0,0 +1,648 @@
|
||||
From 402965e639e89b3bdad2cc9ed36451f466766edb Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 26 Apr 2020 23:39:52 -0700
|
||||
Subject: [PATCH 02/47] Use bold for command and func names in man pages
|
||||
|
||||
This seems to be the modern style.
|
||||
Problem reported by Michael Kerrisk (for GNU/Linux man pages).
|
||||
---
|
||||
date.1 | 4 ++-
|
||||
newctime.3 | 104 ++++++++++++++++++++++++++++++++++++----------------------
|
||||
newstrftime.3 | 4 +--
|
||||
newtzset.3 | 34 +++++++++++--------
|
||||
time2posix.3 | 24 ++++++++------
|
||||
tzfile.5 | 52 ++++++++++++++---------------
|
||||
tzselect.8 | 2 +-
|
||||
zdump.8 | 2 +-
|
||||
zic.8 | 2 +-
|
||||
9 files changed, 133 insertions(+), 95 deletions(-)
|
||||
|
||||
diff --git a/date.1 b/date.1
|
||||
index 6e79cc1..432cab1 100644
|
||||
--- a/date.1
|
||||
+++ b/date.1
|
||||
@@ -27,7 +27,9 @@ date \- show and set date and time
|
||||
.de q
|
||||
\\$3\*(lq\\$1\*(rq\\$2
|
||||
..
|
||||
-.I Date
|
||||
+The
|
||||
+.B date
|
||||
+command
|
||||
without arguments writes the date and time to the standard output in
|
||||
the form
|
||||
.ce 1
|
||||
diff --git a/newctime.3 b/newctime.3
|
||||
index 565e89a..cc56e2c 100644
|
||||
--- a/newctime.3
|
||||
+++ b/newctime.3
|
||||
@@ -51,7 +51,9 @@ asctime, ctime, difftime, gmtime, localtime, mktime \- convert date and time
|
||||
.de q
|
||||
\\$3\*(lq\\$1\*(rq\\$2
|
||||
..
|
||||
-.I Ctime
|
||||
+The
|
||||
+.B ctime
|
||||
+function
|
||||
converts a long integer, pointed to by
|
||||
.IR clock ,
|
||||
and returns a pointer to a
|
||||
@@ -86,45 +88,55 @@ and can therefore represent timestamps that predate the
|
||||
introduction of UTC and are some other flavor of Universal Time (UT).
|
||||
Some implementations support leap seconds, in contradiction to POSIX.
|
||||
.PP
|
||||
-.I Localtime
|
||||
+The
|
||||
+.B localtime
|
||||
and
|
||||
-.I gmtime
|
||||
+.B gmtime
|
||||
+functions
|
||||
return pointers to
|
||||
.q "tm"
|
||||
structures, described below.
|
||||
-.I Localtime
|
||||
+The
|
||||
+.B localtime
|
||||
+function
|
||||
corrects for the time zone and any time zone adjustments
|
||||
(such as Daylight Saving Time in the United States).
|
||||
After filling in the
|
||||
.q "tm"
|
||||
structure,
|
||||
-.I localtime
|
||||
+.B localtime
|
||||
sets the
|
||||
.BR tm_isdst 'th
|
||||
element of
|
||||
.B tzname
|
||||
to a pointer to a string that's the time zone abbreviation to be used with
|
||||
-.IR localtime 's
|
||||
+.BR localtime 's
|
||||
return value.
|
||||
.PP
|
||||
-.I Gmtime
|
||||
+The
|
||||
+.B gmtime
|
||||
+function
|
||||
converts to Coordinated Universal Time.
|
||||
.PP
|
||||
-.I Asctime
|
||||
+The
|
||||
+.B asctime
|
||||
+function
|
||||
converts a time value contained in a
|
||||
.q "tm"
|
||||
structure to a string,
|
||||
as shown in the above example,
|
||||
and returns a pointer to the string.
|
||||
.PP
|
||||
-.I Mktime
|
||||
+The
|
||||
+.B mktime
|
||||
+function
|
||||
converts the broken-down time,
|
||||
expressed as local time,
|
||||
in the structure pointed to by
|
||||
.I tm
|
||||
into a calendar time value with the same encoding as that of the values
|
||||
returned by the
|
||||
-.I time
|
||||
+.B time
|
||||
function.
|
||||
The original values of the
|
||||
.B tm_wday
|
||||
@@ -136,14 +148,14 @@ to their normal ranges.
|
||||
(A positive or zero value for
|
||||
.B tm_isdst
|
||||
causes
|
||||
-.I mktime
|
||||
+.B mktime
|
||||
to presume initially that daylight saving time
|
||||
respectively,
|
||||
is or is not in effect for the specified time.
|
||||
A negative value for
|
||||
.B tm_isdst
|
||||
causes the
|
||||
-.I mktime
|
||||
+.B mktime
|
||||
function to attempt to divine whether daylight saving time is in effect
|
||||
for the specified time; in this case it does not use a consistent
|
||||
rule and may give a different answer when later
|
||||
@@ -161,29 +173,37 @@ is not set until
|
||||
and
|
||||
.B tm_year
|
||||
are determined.
|
||||
-.I Mktime
|
||||
+The
|
||||
+.B mktime
|
||||
+function
|
||||
returns the specified calendar time;
|
||||
If the calendar time cannot be represented,
|
||||
it returns \-1.
|
||||
.PP
|
||||
-.I Difftime
|
||||
+The
|
||||
+.B difftime
|
||||
+function
|
||||
returns the difference between two calendar times,
|
||||
.RI ( time1
|
||||
\-
|
||||
.IR time0 ),
|
||||
expressed in seconds.
|
||||
.PP
|
||||
-.IR Ctime_r ,
|
||||
-.IR localtime_r ,
|
||||
-.IR gmtime_r ,
|
||||
+The
|
||||
+.BR ctime_r ,
|
||||
+.BR localtime_r ,
|
||||
+.BR gmtime_r ,
|
||||
and
|
||||
-.I asctime_r
|
||||
+.B asctime_r
|
||||
+functions
|
||||
are like their unsuffixed counterparts, except that they accept an
|
||||
additional argument specifying where to store the result if successful.
|
||||
.PP
|
||||
-.IR Localtime_rz
|
||||
+The
|
||||
+.B localtime_rz
|
||||
and
|
||||
-.I mktime_z
|
||||
+.B mktime_z
|
||||
+functions
|
||||
are like their unsuffixed counterparts, except that they accept an
|
||||
extra initial
|
||||
.B zone
|
||||
@@ -193,9 +213,9 @@ If
|
||||
is null, UT is used; otherwise,
|
||||
.B zone
|
||||
should be have been allocated by
|
||||
-.I tzalloc
|
||||
+.B tzalloc
|
||||
and should not be freed until after all uses (e.g., by calls to
|
||||
-.IR strftime )
|
||||
+.BR strftime )
|
||||
of the filled-in
|
||||
.B tm_zone
|
||||
fields.
|
||||
@@ -227,21 +247,25 @@ includes the following fields:
|
||||
.fi
|
||||
.RE
|
||||
.PP
|
||||
-.I Tm_isdst
|
||||
+The
|
||||
+.B tm_isdst
|
||||
+field
|
||||
is non-zero if daylight saving time is in effect.
|
||||
.PP
|
||||
-.I Tm_gmtoff
|
||||
+The
|
||||
+.B tm_gmtoff
|
||||
+field
|
||||
is the offset (in seconds) of the time represented
|
||||
from UT, with positive values indicating east
|
||||
of the Prime Meridian.
|
||||
The field's name is derived from Greenwich Mean Time, a precursor of UT.
|
||||
.PP
|
||||
In
|
||||
-.B struct tm
|
||||
+.B "struct tm"
|
||||
the
|
||||
-.I tm_zone
|
||||
+.B tm_zone
|
||||
and
|
||||
-.I tm_gmtoff
|
||||
+.B tm_gmtoff
|
||||
fields exist, and are filled in, only if arrangements to do
|
||||
so were made when the library containing these functions was
|
||||
created.
|
||||
@@ -273,11 +297,11 @@ time(2),
|
||||
tzfile(5)
|
||||
.SH NOTES
|
||||
The return values of
|
||||
-.IR asctime ,
|
||||
-.IR ctime ,
|
||||
-.IR gmtime ,
|
||||
+.BR asctime ,
|
||||
+.BR ctime ,
|
||||
+.BR gmtime ,
|
||||
and
|
||||
-.I localtime
|
||||
+.B localtime
|
||||
point to static data
|
||||
overwritten by each call.
|
||||
The
|
||||
@@ -288,19 +312,21 @@ field of a returned
|
||||
.B "struct tm"
|
||||
both point to an array of characters that
|
||||
can be freed or overwritten by later calls to the functions
|
||||
-.IR localtime ,
|
||||
-.IR tzfree ,
|
||||
+.BR localtime ,
|
||||
+.BR tzfree ,
|
||||
and
|
||||
-.IR tzset ,
|
||||
+.BR tzset ,
|
||||
if these functions affect the timezone information that specifies the
|
||||
abbreviation in question.
|
||||
The remaining functions and data are thread-safe.
|
||||
.PP
|
||||
-.IR Asctime ,
|
||||
-.IR asctime_r ,
|
||||
-.IR ctime ,
|
||||
+The
|
||||
+.BR asctime ,
|
||||
+.BR asctime_r ,
|
||||
+.BR ctime ,
|
||||
and
|
||||
-.I ctime_r
|
||||
+.B ctime_r
|
||||
+functions
|
||||
behave strangely for years before 1000 or after 9999.
|
||||
The 1989 and 1999 editions of the C Standard say
|
||||
that years from \-99 through 999 are converted without
|
||||
@@ -311,7 +337,7 @@ is undefined if the year is before 1000 or after 9999.
|
||||
Traditional implementations of these two functions are
|
||||
restricted to years in the range 1900 through 2099.
|
||||
To avoid this portability mess, new programs should use
|
||||
-.I strftime
|
||||
+.B strftime
|
||||
instead.
|
||||
.\" This file is in the public domain, so clarified as of
|
||||
.\" 2009-05-17 by Arthur David Olson.
|
||||
diff --git a/newstrftime.3 b/newstrftime.3
|
||||
index eee503e..df38d1a 100644
|
||||
--- a/newstrftime.3
|
||||
+++ b/newstrftime.3
|
||||
@@ -60,7 +60,7 @@ strftime \- format date and time
|
||||
\\$3\*(lq\\$1\*(rq\\$2
|
||||
..
|
||||
The
|
||||
-.I strftime
|
||||
+.B strftime
|
||||
function formats the information from
|
||||
.I timeptr
|
||||
into the buffer
|
||||
@@ -83,7 +83,7 @@ characters are placed into the array.
|
||||
If the total number of resulting characters, including the terminating
|
||||
null character, is not more than
|
||||
.IR maxsize ,
|
||||
-.I strftime
|
||||
+.B strftime
|
||||
returns the number of characters in the array, not counting the
|
||||
terminating null.
|
||||
Otherwise, zero is returned.
|
||||
diff --git a/newtzset.3 b/newtzset.3
|
||||
index 4959851..05aa350 100644
|
||||
--- a/newtzset.3
|
||||
+++ b/newtzset.3
|
||||
@@ -25,49 +25,55 @@ tzset \- initialize time conversion information
|
||||
.de q
|
||||
\\$3\*(lq\\$1\*(rq\\$2
|
||||
..
|
||||
-.I Tzalloc
|
||||
+The
|
||||
+.B tzalloc
|
||||
+function
|
||||
allocates and returns a timezone object described by
|
||||
.BR TZ .
|
||||
If
|
||||
.B TZ
|
||||
is not a valid timezone description, or if the object cannot be allocated,
|
||||
-.I tzalloc
|
||||
+.B tzalloc
|
||||
returns a null pointer and sets
|
||||
.BR errno .
|
||||
.PP
|
||||
-.I Tzfree
|
||||
+The
|
||||
+.B tzfree
|
||||
+function
|
||||
frees a timezone object
|
||||
.BR tz ,
|
||||
which should have been successfully allocated by
|
||||
-.IR tzalloc .
|
||||
+.BR tzalloc .
|
||||
This invalidates any
|
||||
.B tm_zone
|
||||
pointers that
|
||||
.B tz
|
||||
was used to set.
|
||||
.PP
|
||||
-.I Tzset
|
||||
+The
|
||||
+.B tzset
|
||||
+function
|
||||
acts like
|
||||
.BR tzalloc(getenv("TZ")) ,
|
||||
except it saves any resulting timezone object into internal
|
||||
storage that is accessed by
|
||||
-.IR localtime ,
|
||||
-.IR localtime_r ,
|
||||
+.BR localtime ,
|
||||
+.BR localtime_r ,
|
||||
and
|
||||
-.IR mktime .
|
||||
+.BR mktime .
|
||||
The anonymous shared timezone object is freed by the next call to
|
||||
-.IR tzset .
|
||||
+.BR tzset .
|
||||
If the implied call to
|
||||
.B tzalloc
|
||||
fails,
|
||||
-.I tzset
|
||||
+.B tzset
|
||||
falls back on Universal Time (UT).
|
||||
.PP
|
||||
If
|
||||
.B TZ
|
||||
is null, the best available approximation to local (wall
|
||||
clock) time, as specified by the
|
||||
-.IR tzfile (5)-format
|
||||
+.BR tzfile (5)-format
|
||||
file
|
||||
.B localtime
|
||||
in the system time conversion information directory, is used.
|
||||
@@ -76,7 +82,7 @@ If
|
||||
is the empty string,
|
||||
UT is used, with the abbreviation "UTC"
|
||||
and without leap second correction; please see
|
||||
-.IR newctime (3)
|
||||
+.BR newctime (3)
|
||||
for more about UT, UTC, and leap seconds. If
|
||||
.B TZ
|
||||
is nonnull and nonempty:
|
||||
@@ -96,7 +102,7 @@ it is used as an absolute pathname; otherwise,
|
||||
it is used as a pathname relative to a system time conversion information
|
||||
directory.
|
||||
The file must be in the format specified in
|
||||
-.IR tzfile (5).
|
||||
+.BR tzfile (5).
|
||||
.PP
|
||||
When
|
||||
.B TZ
|
||||
@@ -304,7 +310,7 @@ is present in
|
||||
.BR TZ ,
|
||||
the rules specified
|
||||
by the
|
||||
-.IR tzfile (5)-format
|
||||
+.BR tzfile (5)-format
|
||||
file
|
||||
.B posixrules
|
||||
in the system time conversion information directory are used, with the
|
||||
diff --git a/time2posix.3 b/time2posix.3
|
||||
index e4b8e81..fbb5766 100644
|
||||
--- a/time2posix.3
|
||||
+++ b/time2posix.3
|
||||
@@ -47,11 +47,11 @@ to be
|
||||
(mostly)
|
||||
opaque \*(en time_t values should only be obtained-from and
|
||||
passed-to functions such as
|
||||
-.IR time(2) ,
|
||||
-.IR localtime(3) ,
|
||||
-.IR mktime(3) ,
|
||||
+.BR time(2) ,
|
||||
+.BR localtime(3) ,
|
||||
+.BR mktime(3) ,
|
||||
and
|
||||
-.IR difftime(3) .
|
||||
+.BR difftime(3) .
|
||||
However,
|
||||
POSIX gives an arithmetic
|
||||
expression for directly computing a time_t value from a given date/time,
|
||||
@@ -63,9 +63,9 @@ using such a relationship will typically not handle intervals
|
||||
over leap seconds correctly.
|
||||
.PP
|
||||
The
|
||||
-.I time2posix
|
||||
+.B time2posix
|
||||
and
|
||||
-.I posix2time
|
||||
+.B posix2time
|
||||
functions are provided to address this time_t mismatch by converting
|
||||
between local time_t values and their POSIX equivalents.
|
||||
This is done by accounting for the number of time-base changes that
|
||||
@@ -75,12 +75,16 @@ These converted values can then be used in lieu of correcting the older
|
||||
applications,
|
||||
or when communicating with POSIX-compliant systems.
|
||||
.PP
|
||||
-.I Time2posix
|
||||
+The
|
||||
+.B time2posix
|
||||
+function
|
||||
is single-valued.
|
||||
That is,
|
||||
every local time_t
|
||||
corresponds to a single POSIX time_t.
|
||||
-.I Posix2time
|
||||
+The
|
||||
+.B posix2time
|
||||
+function
|
||||
is less well-behaved:
|
||||
for a positive leap second hit the result is not unique,
|
||||
and for a negative leap second hit the corresponding
|
||||
@@ -116,9 +120,9 @@ If leap-second support is not enabled,
|
||||
local time_t's and
|
||||
POSIX time_t's are equivalent,
|
||||
and both
|
||||
-.I time2posix
|
||||
+.B time2posix
|
||||
and
|
||||
-.I posix2time
|
||||
+.B posix2time
|
||||
degenerate to the identity function.
|
||||
.SH SEE ALSO
|
||||
difftime(3),
|
||||
diff --git a/tzfile.5 b/tzfile.5
|
||||
index 3f13563..2642978 100644
|
||||
--- a/tzfile.5
|
||||
+++ b/tzfile.5
|
||||
@@ -40,25 +40,25 @@ Fifteen bytes containing zeros reserved for future use.
|
||||
Six four-byte integer values, in the following order:
|
||||
.RS
|
||||
.TP
|
||||
-.I tzh_ttisutcnt
|
||||
+.B tzh_ttisutcnt
|
||||
The number of UT/local indicators stored in the file.
|
||||
(UT is Universal Time.)
|
||||
.TP
|
||||
-.I tzh_ttisstdcnt
|
||||
+.B tzh_ttisstdcnt
|
||||
The number of standard/wall indicators stored in the file.
|
||||
.TP
|
||||
-.I tzh_leapcnt
|
||||
+.B tzh_leapcnt
|
||||
The number of leap seconds for which data entries are stored in the file.
|
||||
.TP
|
||||
-.I tzh_timecnt
|
||||
+.B tzh_timecnt
|
||||
The number of transition times for which data entries are stored
|
||||
in the file.
|
||||
.TP
|
||||
-.I tzh_typecnt
|
||||
+.B tzh_typecnt
|
||||
The number of local time types for which data entries are stored
|
||||
in the file (must not be zero).
|
||||
.TP
|
||||
-.I tzh_charcnt
|
||||
+.B tzh_charcnt
|
||||
The number of bytes of time zone abbreviation strings
|
||||
stored in the file.
|
||||
.RE
|
||||
@@ -66,14 +66,14 @@ stored in the file.
|
||||
The above header is followed by the following fields, whose lengths
|
||||
depend on the contents of the header:
|
||||
.IP * 2
|
||||
-.I tzh_timecnt
|
||||
+.B tzh_timecnt
|
||||
four-byte signed integer values sorted in ascending order.
|
||||
These values are written in network byte order.
|
||||
Each is used as a transition time (as returned by
|
||||
.BR time (2))
|
||||
at which the rules for computing local time change.
|
||||
.IP *
|
||||
-.I tzh_timecnt
|
||||
+.B tzh_timecnt
|
||||
one-byte unsigned integer values;
|
||||
each one but the last tells which of the different types of local time types
|
||||
described in the file is associated with the time period
|
||||
@@ -83,8 +83,8 @@ and continuing up to but not including the next transition time.
|
||||
POSIX-style TZ string described below.)
|
||||
These values serve as indices into the next field.
|
||||
.IP *
|
||||
-.I tzh_typecnt
|
||||
-.I ttinfo
|
||||
+.B tzh_typecnt
|
||||
+.B ttinfo
|
||||
entries, each defined as follows:
|
||||
.in +.5i
|
||||
.sp
|
||||
@@ -99,36 +99,36 @@ struct ttinfo {
|
||||
.fi
|
||||
.sp
|
||||
Each structure is written as a four-byte signed integer value for
|
||||
-.IR tt_utoff ,
|
||||
+.BR tt_utoff ,
|
||||
in network byte order, followed by a one-byte boolean for
|
||||
-.I tt_isdst
|
||||
+.B tt_isdst
|
||||
and a one-byte value for
|
||||
-.IR tt_desigidx .
|
||||
+.BR tt_desigidx .
|
||||
In each structure,
|
||||
-.I tt_utoff
|
||||
+.B tt_utoff
|
||||
gives the number of seconds to be added to UT,
|
||||
-.I tt_isdst
|
||||
+.B tt_isdst
|
||||
tells whether
|
||||
-.I tm_isdst
|
||||
+.B tm_isdst
|
||||
should be set by
|
||||
.BR localtime (3)
|
||||
and
|
||||
-.I tt_desigidx
|
||||
+.B tt_desigidx
|
||||
serves as an index into the array of time zone abbreviation bytes
|
||||
that follow the
|
||||
-.I ttinfo
|
||||
+.B ttinfo
|
||||
structure(s) in the file.
|
||||
The
|
||||
-.I tt_utoff
|
||||
+.B tt_utoff
|
||||
value is never equal to \-2**31, to let 32-bit clients negate it without
|
||||
overflow.
|
||||
Also, in realistic applications
|
||||
-.I tt_utoff
|
||||
+.B tt_utoff
|
||||
is in the range [\-89999, 93599] (i.e., more than \-25 hours and less
|
||||
than 26 hours); this allows easy support by implementations that
|
||||
already support the POSIX-required range [\-24:59:59, 25:59:59].
|
||||
.IP *
|
||||
-.I tzh_leapcnt
|
||||
+.B tzh_leapcnt
|
||||
pairs of four-byte values, written in network byte order;
|
||||
the first value of each pair gives the nonnegative time
|
||||
(as returned by
|
||||
@@ -142,12 +142,12 @@ The pairs of values are sorted in ascending order by time.
|
||||
Each transition is for one leap second, either positive or negative;
|
||||
transitions always separated by at least 28 days minus 1 second.
|
||||
.IP *
|
||||
-.I tzh_ttisstdcnt
|
||||
+.B tzh_ttisstdcnt
|
||||
standard/wall indicators, each stored as a one-byte boolean;
|
||||
they tell whether the transition times associated with local time types
|
||||
were specified as standard time or local (wall clock) time.
|
||||
.IP *
|
||||
-.I tzh_ttisutcnt
|
||||
+.B tzh_ttisutcnt
|
||||
UT/local indicators, each stored as a one-byte boolean;
|
||||
they tell whether the transition times associated with local time types
|
||||
were specified as UT or local time.
|
||||
@@ -173,10 +173,10 @@ The
|
||||
.BR localtime (3)
|
||||
function
|
||||
normally uses the first
|
||||
-.I ttinfo
|
||||
+.B ttinfo
|
||||
structure in the file
|
||||
if either
|
||||
-.I tzh_timecnt
|
||||
+.B tzh_timecnt
|
||||
is zero or the time argument is less than the first transition time recorded
|
||||
in the file.
|
||||
.SS Version 2 format
|
||||
@@ -235,7 +235,7 @@ This guideline helps obsolescent version 1 readers
|
||||
agree with current readers about timestamps within the
|
||||
contiguous subsequence. It also lets writers not
|
||||
supporting obsolescent readers use a
|
||||
-.I tzh_timecnt
|
||||
+.B tzh_timecnt
|
||||
of zero
|
||||
in the version 1 data block to save space.
|
||||
.PP
|
||||
diff --git a/tzselect.8 b/tzselect.8
|
||||
index 51f751c..a1ec8d0 100644
|
||||
--- a/tzselect.8
|
||||
+++ b/tzselect.8
|
||||
@@ -82,7 +82,7 @@ Output version information and exit.
|
||||
.TP
|
||||
\f3AWK\fP
|
||||
Name of a Posix-compliant
|
||||
-.I awk
|
||||
+.B awk
|
||||
program (default:
|
||||
.BR awk ).
|
||||
.TP
|
||||
diff --git a/zdump.8 b/zdump.8
|
||||
index 98109ad..f3e4e4e 100644
|
||||
--- a/zdump.8
|
||||
+++ b/zdump.8
|
||||
@@ -212,7 +212,7 @@ and
|
||||
output,
|
||||
.q "UT"
|
||||
denotes the value returned by
|
||||
-.IR gmtime (3),
|
||||
+.BR gmtime (3),
|
||||
which uses UTC for modern timestamps and some other UT flavor for
|
||||
timestamps that predate the introduction of UTC.
|
||||
No attempt is currently made to have the output use
|
||||
diff --git a/zic.8 b/zic.8
|
||||
index b57cd2b..b1bf437 100644
|
||||
--- a/zic.8
|
||||
+++ b/zic.8
|
||||
@@ -224,7 +224,7 @@ or that starts with
|
||||
.RE
|
||||
.SH FILES
|
||||
Input files use the format described in this section; output files use
|
||||
-.IR tzfile (5)
|
||||
+.BR tzfile (5)
|
||||
format.
|
||||
.PP
|
||||
Input files should be text files, that is, they should be a series of
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
89
backport-Yukon-s-change-is-effective-2020-11-01.patch
Normal file
89
backport-Yukon-s-change-is-effective-2020-11-01.patch
Normal file
@ -0,0 +1,89 @@
|
||||
From d3bdef36c2deaa1f781f6691f5995ff65899acd9 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 24 Sep 2020 15:52:20 -0700
|
||||
Subject: [PATCH 36/47] =?UTF-8?q?Yukon=E2=80=99s=20change=20is=20effective?=
|
||||
=?UTF-8?q?=202020-11-01.?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* NEWS: Mention this. (Thanks to Andrew G. Smith.)
|
||||
* northamerica (America/Whitehorse, America/Dawson):
|
||||
The rule change is Nov 1, not Mar 8 2:00.
|
||||
---
|
||||
NEWS | 13 +++++++++++++
|
||||
northamerica | 16 ++++++++++++++--
|
||||
2 files changed, 27 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 6b9fd43..517d1c8 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -2,6 +2,10 @@ News for the tz database
|
||||
|
||||
Unreleased, experimental changes
|
||||
|
||||
+ Briefly:
|
||||
+ Revised predictions for Morocco's changes starting in 20203.
|
||||
+ Canada's Yukon changes to -07 on 2020-11-01, not 2020-03-08.
|
||||
+
|
||||
Changes to future timestamps
|
||||
|
||||
Morocco's spring-forward after Ramadan is now predicted to occur
|
||||
@@ -9,6 +13,15 @@ Unreleased, experimental changes
|
||||
(Thanks to Milamber.) The first altered prediction is for 2023,
|
||||
now predicted to spring-forward on April 30 instead of April 23.
|
||||
|
||||
+ Changes to past and future time zone abbreviations and DST flags
|
||||
+
|
||||
+ Canada's Yukon, represented by America/Whitehorse and
|
||||
+ America/Dawson, changes its time zone rules from -08/-07 to
|
||||
+ permanent -07 on 2020-11-01, not on 2020-03-08 as 2020a had it.
|
||||
+ This change affects only the time zone abbreviation (MST vs PDT)
|
||||
+ and daylight saving flag for the period between the two dates.
|
||||
+ (Thanks to Andrew G. Smith.)
|
||||
+
|
||||
Changes to past timestamps
|
||||
|
||||
Correct several transitions for Hungary for 1918/1983.
|
||||
diff --git a/northamerica b/northamerica
|
||||
index febf05b..1440c7a 100644
|
||||
--- a/northamerica
|
||||
+++ b/northamerica
|
||||
@@ -2449,6 +2449,18 @@ Zone America/Creston -7:46:04 - LMT 1884
|
||||
# consistency with nearby Dawson Creek, Creston, and Fort Nelson.
|
||||
# https://yukon.ca/en/news/yukon-end-seasonal-time-change
|
||||
|
||||
+# From Andrew G. Smith (2020-09-24):
|
||||
+# Yukon has completed its regulatory change to be on UTC -7 year-round....
|
||||
+# http://www.gov.yk.ca/legislation/regs/oic2020_125.pdf
|
||||
+# What we have done is re-defined Yukon Standard Time, as we are
|
||||
+# authorized to do under section 33 of our Interpretation Act:
|
||||
+# http://www.gov.yk.ca/legislation/acts/interpretation_c.pdf
|
||||
+#
|
||||
+# From Paul Eggert (2020-09-24):
|
||||
+# tzdb uses the obsolete YST abbreviation for standard time in Yukon through
|
||||
+# about 1970, and uses PST for standard time in Yukon since then. Consistent
|
||||
+# with that, use MST for -07, the new standard time in Yukon effective Nov. 1.
|
||||
+
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
Rule NT_YK 1918 only - Apr 14 2:00 1:00 D
|
||||
Rule NT_YK 1918 only - Oct 27 2:00 0 S
|
||||
@@ -2503,12 +2515,12 @@ Zone America/Inuvik 0 - -00 1953 # Inuvik founded
|
||||
Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
|
||||
-9:00 NT_YK Y%sT 1967 May 28 0:00
|
||||
-8:00 NT_YK P%sT 1980
|
||||
- -8:00 Canada P%sT 2020 Mar 8 2:00
|
||||
+ -8:00 Canada P%sT 2020 Nov 1
|
||||
-7:00 - MST
|
||||
Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
|
||||
-9:00 NT_YK Y%sT 1973 Oct 28 0:00
|
||||
-8:00 NT_YK P%sT 1980
|
||||
- -8:00 Canada P%sT 2020 Mar 8 2:00
|
||||
+ -8:00 Canada P%sT 2020 Nov 1
|
||||
-7:00 - MST
|
||||
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,43 @@
|
||||
From d6abc89b355c699bac3ee50c708c35ca256b922e Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 2 Oct 2020 10:23:21 -0700
|
||||
Subject: [PATCH 39/47] * antarctica (Antarctica/Casey): Correct 2019-10
|
||||
transition.
|
||||
|
||||
---
|
||||
antarctica | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/antarctica b/antarctica
|
||||
index 94aeb17..458b3a7 100644
|
||||
--- a/antarctica
|
||||
+++ b/antarctica
|
||||
@@ -70,14 +70,14 @@
|
||||
# Australian Antarctica Division informed us that Casey changed time
|
||||
# zone to UTC+11 in "the morning of 22nd October 2016".
|
||||
|
||||
-# From Steffen Thorsen (2020-10-02):
|
||||
+# From Steffen Thorsen (2020-10-02, as corrected):
|
||||
# Based on information we have received from the Australian Antarctic
|
||||
# Division, Casey station and Macquarie Island station will move to Tasmanian
|
||||
# daylight savings time on Sunday 4 October. This will take effect from 0001
|
||||
# hrs on Sunday 4 October 2020 and will mean Casey and Macquarie Island will
|
||||
# be on the same time zone as Hobart. Some past dates too for this 3 hour
|
||||
# time change back and forth between UTC+8 and UTC+11 for Casey:
|
||||
-# - 2018 Oct 7 4:00 - 2019 Mar 17 3:00 - 2019 Oct 6 3:00 - 2020 Mar 8 3:00
|
||||
+# - 2018 Oct 7 4:00 - 2019 Mar 17 3:00 - 2019 Oct 4 3:00 - 2020 Mar 8 3:00
|
||||
# and now - 2020 Oct 4 0:01
|
||||
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
@@ -90,7 +90,7 @@ Zone Antarctica/Casey 0 - -00 1969
|
||||
11:00 - +11 2018 Mar 11 4:00
|
||||
8:00 - +08 2018 Oct 7 4:00
|
||||
11:00 - +11 2019 Mar 17 3:00
|
||||
- 8:00 - +08 2019 Oct 6 3:00
|
||||
+ 8:00 - +08 2019 Oct 4 3:00
|
||||
11:00 - +11 2020 Mar 8 3:00
|
||||
8:00 - +08 2020 Oct 4 0:01
|
||||
11:00 - +11
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
From 3e865829ebbb6639d3392f4a10a7c192572be833 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 23 Aug 2020 15:59:39 -0700
|
||||
Subject: [PATCH 29/47] * asia: Cite Barak 2020 on Israeli DST controversy.
|
||||
|
||||
---
|
||||
asia | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/asia b/asia
|
||||
index 106efad..fff9a10 100644
|
||||
--- a/asia
|
||||
+++ b/asia
|
||||
@@ -1699,6 +1699,10 @@ Zone Asia/Baghdad 2:57:40 - LMT 1890
|
||||
|
||||
# Israel
|
||||
|
||||
+# For more info about the motivation for DST in Israel, see:
|
||||
+# Barak Y. Israel's Daylight Saving Time controversy. Israel Affairs.
|
||||
+# 2020-08-11. https://doi.org/10.1080/13537121.2020.1806564
|
||||
+
|
||||
# From Ephraim Silverberg (2001-01-11):
|
||||
#
|
||||
# I coined "IST/IDT" circa 1988. Until then there were three
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
52
backport-backzone-More-commentary-re-1940s-Bahrain.patch
Normal file
52
backport-backzone-More-commentary-re-1940s-Bahrain.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From ba912ae8b7bc674ae7ab9a28b0b40060bb0c676e Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Thu, 23 Jul 2020 13:32:02 -0700
|
||||
Subject: [PATCH 22/47] * backzone: More commentary re 1940s Bahrain.
|
||||
|
||||
---
|
||||
backzone | 20 ++++++++++++++++----
|
||||
1 file changed, 16 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/backzone b/backzone
|
||||
index 7cf026d..f2684b4 100644
|
||||
--- a/backzone
|
||||
+++ b/backzone
|
||||
@@ -460,19 +460,31 @@ Zone Asia/Aden 2:59:54 - LMT 1950
|
||||
|
||||
# Bahrain
|
||||
#
|
||||
-# From Paul Eggert (2020-07-22):
|
||||
+# From Paul Eggert (2020-07-23):
|
||||
# Most of this data comes from:
|
||||
# Stewart A. Why Gulf Standard Time is far from standard: the fascinating story
|
||||
# behind the time zone's invention. The National (Abu Dhabi). 2020-07-22.
|
||||
# https://www.thenational.ae/arts-culture/why-gulf-standard-time-is-far-from-standard-the-fascinating-story-behind-the-time-zone-s-invention-1.1052589
|
||||
-# Stewart writes that before 1940 some companies in Bahrain were at +0330 and
|
||||
+# Stewart writes that before 1941 some companies in Bahrain were at +0330 and
|
||||
# others at +0323. Reginald George Alban, a British political agent based in
|
||||
# Manama, worked to standardize this, and from 1941-07-20 Bahrain was at
|
||||
# +0330. However, BOAC asked that clocks be moved to gain more light at day's
|
||||
# end, so Bahrain switched to +04 on 1944-01-01.
|
||||
#
|
||||
-# We don't know when companies chose +0330 or +0323 before 1940; for now
|
||||
-# assume that there was no real standard in Bahrain before 1941-07-20.
|
||||
+# Re the 1941 transition, Stewart privately sent me this citation:
|
||||
+# "File 16/53 Enquiries Re: Calculation of Local Time", British Library: India
|
||||
+# Office Records and Private Papers, IOR/R/15/2/1564, in Qatar Digital Library
|
||||
+# https://www.qdl.qa/archive/81055/vdc_100000000282.0x00012b
|
||||
+# It says there was no real standard in Bahrain before 1941-07-20.
|
||||
+# +0330 was used by steamers of the British India Co, by Petroleum Concessions
|
||||
+# and by Cable & Wireless; +0323 was used by the Eastern Bank Ltd, BOAC, and
|
||||
+# Bahrein Petroleum (Bapco), and California Arabian Standard Oil Co (Casoc)
|
||||
+# adopted DST effective 1941-05-24. Alban suggested adopting DST, R.B. Coomb
|
||||
+# of C&W countersuggested +0330, and although C.A. Rodstrom of Casoc (formerly
|
||||
+# of Bapco) stated that Bahrain had formerly used +0330 before Bapco arrived
|
||||
+# but Bapco switched to +0323 because of "constant confusion", the consensus
|
||||
+# was +0330. The government adopted +0330 in 1941-07-20 and companies seem to
|
||||
+# have switched by 08-01. No time of day was given for the 1940s transitions.
|
||||
Zone Asia/Bahrain 3:22:20 - LMT 1941 Jul 20 # Manamah
|
||||
3:30 - +0330 1944 Jan 1
|
||||
4:00 - +04 1972 Jun
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
68
backport-date-redo-strftime-buffer-exhaustion-check.patch
Normal file
68
backport-date-redo-strftime-buffer-exhaustion-check.patch
Normal file
@ -0,0 +1,68 @@
|
||||
From dca583ac625cbbc21b5a795ef36d1f90fabbcce7 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 9 Aug 2020 10:42:02 -0700
|
||||
Subject: [PATCH 25/47] date: redo strftime buffer-exhaustion check
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Suggested by Robert Elz in:
|
||||
https://mm.icann.org/pipermail/tz/2020-August/029193.html
|
||||
* date.c (main, display): Record the format’s leading '+' too.
|
||||
(timeout): Format the leading '+' too; just don’t output it.
|
||||
This simplifies checking for buffer exhaustion, given strftime’s
|
||||
somewhat-lame API.
|
||||
---
|
||||
date.c | 11 ++++-------
|
||||
1 file changed, 4 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/date.c b/date.c
|
||||
index 2cc533f..ce63bf3 100644
|
||||
--- a/date.c
|
||||
+++ b/date.c
|
||||
@@ -112,7 +112,7 @@ main(const int argc, char *argv[])
|
||||
cp = argv[optind++];
|
||||
if (*cp == '+')
|
||||
if (format == NULL)
|
||||
- format = cp + 1;
|
||||
+ format = cp;
|
||||
else {
|
||||
fprintf(stderr,
|
||||
_("date: error: multiple formats in command line\n"));
|
||||
@@ -186,7 +186,7 @@ display(char const *format, time_t now)
|
||||
errensure();
|
||||
return;
|
||||
}
|
||||
- timeout(stdout, format ? format : "%+", tmp);
|
||||
+ timeout(stdout, format ? format : "+%+", tmp);
|
||||
putchar('\n');
|
||||
fflush(stdout);
|
||||
fflush(stderr);
|
||||
@@ -207,8 +207,6 @@ timeout(FILE *fp, char const *format, struct tm const *tmp)
|
||||
size_t size;
|
||||
struct tm tm;
|
||||
|
||||
- if (*format == '\0')
|
||||
- return;
|
||||
if (!tmp) {
|
||||
fprintf(stderr, _("date: error: time out of range\n"));
|
||||
errensure();
|
||||
@@ -225,13 +223,12 @@ timeout(FILE *fp, char const *format, struct tm const *tmp)
|
||||
errensure();
|
||||
exit(retval);
|
||||
}
|
||||
- cp[0] = '\1';
|
||||
result = strftime(cp, size, format, tmp);
|
||||
- if (result != 0 || cp[0] == '\0')
|
||||
+ if (result != 0)
|
||||
break;
|
||||
size += INCR;
|
||||
cp = realloc(cp, size);
|
||||
}
|
||||
- fwrite(cp, 1, result, fp);
|
||||
+ fwrite(cp + 1, 1, result - 1, fp);
|
||||
free(cp);
|
||||
}
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
77
backport-date-simplify-format-compuation.patch
Normal file
77
backport-date-simplify-format-compuation.patch
Normal file
@ -0,0 +1,77 @@
|
||||
From 6d25c3e892ff6c75207ddb42c92c32e421b66bca Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 11 Aug 2020 18:55:44 -0700
|
||||
Subject: [PATCH 26/47] date: simplify format compuation
|
||||
|
||||
* date.c (main, display): Simplify as suggested by Robert Elz in:
|
||||
https://mm.icann.org/pipermail/tz/2020-August/029195.html
|
||||
---
|
||||
date.c | 31 +++++++++++++------------------
|
||||
1 file changed, 13 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/date.c b/date.c
|
||||
index ce63bf3..ef4e4d4 100644
|
||||
--- a/date.c
|
||||
+++ b/date.c
|
||||
@@ -59,8 +59,7 @@ static _Noreturn void usage(void);
|
||||
int
|
||||
main(const int argc, char *argv[])
|
||||
{
|
||||
- register const char * format;
|
||||
- register const char * cp;
|
||||
+ register const char * format = "+%+";
|
||||
register int ch;
|
||||
register bool rflag = false;
|
||||
time_t t;
|
||||
@@ -77,7 +76,6 @@ main(const int argc, char *argv[])
|
||||
textdomain(TZ_DOMAIN);
|
||||
#endif /* HAVE_GETTEXT */
|
||||
t = time(NULL);
|
||||
- format = NULL;
|
||||
while ((ch = getopt(argc, argv, "ucr:")) != EOF && ch != -1) {
|
||||
switch (ch) {
|
||||
default:
|
||||
@@ -108,20 +106,17 @@ main(const int argc, char *argv[])
|
||||
break;
|
||||
}
|
||||
}
|
||||
- while (optind < argc) {
|
||||
- cp = argv[optind++];
|
||||
- if (*cp == '+')
|
||||
- if (format == NULL)
|
||||
- format = cp;
|
||||
- else {
|
||||
- fprintf(stderr,
|
||||
-_("date: error: multiple formats in command line\n"));
|
||||
- usage();
|
||||
- }
|
||||
- else {
|
||||
- fprintf(stderr, _("date: unknown operand: %s\n"), cp);
|
||||
- usage();
|
||||
- }
|
||||
+ if (optind < argc) {
|
||||
+ if (argc - optind != 1) {
|
||||
+ fprintf(stderr,
|
||||
+ _("date: error: multiple operands in command line\n"));
|
||||
+ usage();
|
||||
+ }
|
||||
+ format = argv[optind];
|
||||
+ if (*format != '+') {
|
||||
+ fprintf(stderr, _("date: unknown operand: %s\n"), format);
|
||||
+ usage();
|
||||
+ }
|
||||
}
|
||||
|
||||
display(format, t);
|
||||
@@ -186,7 +181,7 @@ display(char const *format, time_t now)
|
||||
errensure();
|
||||
return;
|
||||
}
|
||||
- timeout(stdout, format ? format : "+%+", tmp);
|
||||
+ timeout(stdout, format, tmp);
|
||||
putchar('\n');
|
||||
fflush(stdout);
|
||||
fflush(stderr);
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,79 @@
|
||||
From f8eca4dc2e956099eb21a5597f2a0a7ad00f54c1 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 9 Jun 2020 09:00:54 -0700
|
||||
Subject: [PATCH 09/47] =?UTF-8?q?*=20europe:=20Add=20Hungaricana=20URLs=20?=
|
||||
=?UTF-8?q?(thanks=20to=20G=C3=A9za=20Ny=C3=A1ry).?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
---
|
||||
europe | 28 ++++++++++++++++++++++++++--
|
||||
1 file changed, 26 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/europe b/europe
|
||||
index c2a44ad..f0acb42 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -1521,32 +1521,56 @@ Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
|
||||
# Data for 1918-1983 are based on the archive database of Library Hungaricana.
|
||||
# The dates are collected from original, scanned governmental orders,
|
||||
# bulletins, instructions and public press.
|
||||
-# https://library.hungaricana.hu
|
||||
-# For example, the 1920 dates are from ministerial decree 1920.évi.2.254.
|
||||
+# [See URLs below.]
|
||||
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
+# https://library.hungaricana.hu/hu/view/OGYK_RT_1918/?pg=238
|
||||
+# https://library.hungaricana.hu/hu/view/OGYK_RT_1919/?pg=808
|
||||
+# https://library.hungaricana.hu/hu/view/OGYK_RT_1920/?pg=201
|
||||
Rule Hungary 1918 1919 - Apr 15 2:00 1:00 S
|
||||
Rule Hungary 1918 1920 - Sep Mon>=15 3:00 0 -
|
||||
Rule Hungary 1920 only - Apr 5 2:00 1:00 S
|
||||
+# https://library.hungaricana.hu/hu/view/OGYK_RT_1945/?pg=882
|
||||
Rule Hungary 1945 only - May 1 23:00 1:00 S
|
||||
Rule Hungary 1945 only - Nov 1 1:00 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/Delmagyarorszag_1946_03/?pg=49
|
||||
Rule Hungary 1946 only - Mar 31 2:00s 1:00 S
|
||||
+# https://library.hungaricana.hu/hu/view/Delmagyarorszag_1946_09/?pg=54
|
||||
Rule Hungary 1946 only - Oct 7 2:00 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/KulfBelfHirek_1947_04_1__001-123/?pg=90
|
||||
+# https://library.hungaricana.hu/hu/view/DunantuliNaplo_1947_09/?pg=128
|
||||
+# https://library.hungaricana.hu/hu/view/KulfBelfHirek_1948_03_3__001-123/?pg=304
|
||||
+# https://library.hungaricana.hu/hu/view/Zala_1948_09/?pg=64
|
||||
+# https://library.hungaricana.hu/hu/view/SatoraljaujhelyiLeveltar_ZempleniNepujsag_1948/?pg=53
|
||||
+# https://library.hungaricana.hu/hu/view/SatoraljaujhelyiLeveltar_ZempleniNepujsag_1948/?pg=160
|
||||
+# https://library.hungaricana.hu/hu/view/Delmagyarorszag_1949_09/?pg=94
|
||||
Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S
|
||||
Rule Hungary 1947 1949 - Oct Sun>=1 2:00s 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/DTT_KOZL_TanacsokKozlonye_1954/?pg=513
|
||||
Rule Hungary 1954 only - May 23 0:00 1:00 S
|
||||
Rule Hungary 1954 only - Oct 3 0:00 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/DTT_KOZL_TanacsokKozlonye_1955/?pg=398
|
||||
Rule Hungary 1955 only - May 22 2:00 1:00 S
|
||||
Rule Hungary 1955 only - Oct 2 3:00 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/HevesMegyeiNepujsag_1956_06/?pg=0
|
||||
+# https://library.hungaricana.hu/hu/view/EszakMagyarorszag_1956_06/?pg=6
|
||||
+# https://library.hungaricana.hu/hu/view/SzolnokMegyeiNeplap_1957_04/?pg=120
|
||||
+# https://library.hungaricana.hu/hu/view/PestMegyeiHirlap_1957_09/?pg=143
|
||||
Rule Hungary 1956 1957 - Jun Sun>=1 2:00 1:00 S
|
||||
Rule Hungary 1956 1957 - Sep lastSun 3:00 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/DTT_KOZL_TanacsokKozlonye_1980/?pg=1227
|
||||
Rule Hungary 1980 only - Apr 6 0:00 1:00 S
|
||||
Rule Hungary 1980 only - Sep 28 1:00 0 -
|
||||
+# https://library.hungaricana.hu/hu/view/Delmagyarorszag_1981_01/?pg=79
|
||||
+# https://library.hungaricana.hu/hu/view/DTT_KOZL_TanacsokKozlonye_1982/?pg=115
|
||||
+# https://library.hungaricana.hu/hu/view/DTT_KOZL_TanacsokKozlonye_1983/?pg=85
|
||||
Rule Hungary 1981 1983 - Mar lastSun 0:00 1:00 S
|
||||
Rule Hungary 1981 1983 - Sep lastSun 1:00 0 -
|
||||
+#
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
Zone Europe/Budapest 1:16:20 - LMT 1890 Nov 1
|
||||
1:00 C-Eur CE%sT 1918
|
||||
+# https://library.hungaricana.hu/hu/view/OGYK_RT_1941/?pg=1204
|
||||
1:00 Hungary CE%sT 1941 Apr 7 23:00
|
||||
1:00 C-Eur CE%sT 1945
|
||||
1:00 Hungary CE%sT 1984
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
From c9e3778253448f5c4b2f3f64e00bcf27fc38d778 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 12 Jun 2020 15:20:56 -0700
|
||||
Subject: [PATCH 14/47] * europe: Fix minor comment typos in previous change.
|
||||
|
||||
---
|
||||
europe | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/europe b/europe
|
||||
index e8ec780..4dc159f 100644
|
||||
--- a/europe
|
||||
+++ b/europe
|
||||
@@ -2093,8 +2093,8 @@ Zone Europe/Chisinau 1:55:20 - LMT 1880
|
||||
# In the "Journal de Monaco" of 1911-03-28, online at
|
||||
# https://journaldemonaco.gouv.mc/var/jdm/storage/original/application/de74ffb7db53d4f599059fe8f0ed482a.pdf
|
||||
# we read an ordinance of 1911-03-16: ...
|
||||
-# [Legal time in the Pricipality will be set, from the date of promulgation
|
||||
-# of the present ordinance, to legal time in France. Consequently, legal
|
||||
+# [Legal time in the Principality will be set, from the date of promulgation
|
||||
+# of the present ordinance, to legal time in France.... Consequently, legal
|
||||
# time will be retarded by 9 minutes and 21 seconds.]
|
||||
#
|
||||
# Zone NAME STDOFF RULES FORMAT [UNTIL]
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
133
backport-strftime-conform-better-to-POSIX.patch
Normal file
133
backport-strftime-conform-better-to-POSIX.patch
Normal file
@ -0,0 +1,133 @@
|
||||
From 8b238ec54c09556eb2aa405c1741eedfd12c4a87 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sat, 8 Aug 2020 12:19:28 -0700
|
||||
Subject: [PATCH 24/47] strftime: conform better to POSIX+
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The latest POSIX draft specifies errno values for some strftime
|
||||
errors. Implement those, plus one other one: a reliable way
|
||||
to determine whether 0 represents failure or buffer exhaustion
|
||||
(I’ll propose this to POSIX).
|
||||
* newstrftime.3 (RETURN VALUE): Document this.
|
||||
* strftime.c (strftime): Set errno according to current draft of
|
||||
POSIX. Also, set errno to ERANGE on overflow, and preserve errno
|
||||
if there is no error.
|
||||
(_fmt): Return NULL if %s would be out of range. Callers changed.
|
||||
---
|
||||
newstrftime.3 | 34 +++++++++++++++++++++++++++-------
|
||||
strftime.c | 24 +++++++++++++++++++++++-
|
||||
2 files changed, 50 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/newstrftime.3 b/newstrftime.3
|
||||
index 63842c7..887aba5 100644
|
||||
--- a/newstrftime.3
|
||||
+++ b/newstrftime.3
|
||||
@@ -82,13 +82,6 @@ and one other character.
|
||||
No more than
|
||||
.I maxsize
|
||||
bytes are placed into the array.
|
||||
-If the total number of resulting bytes, including the terminating
|
||||
-NUL character, is not more than
|
||||
-.IR maxsize ,
|
||||
-.B strftime
|
||||
-returns the number of bytes placed into the array, not counting the
|
||||
-terminating NUL.
|
||||
-Otherwise, zero is returned and the array contents are unspecified.
|
||||
.PP
|
||||
Each conversion specification is replaced by the characters as
|
||||
follows which are then copied into the array.
|
||||
@@ -259,6 +252,33 @@ is replaced by a single %.
|
||||
is replaced by the locale's date and time in
|
||||
.BR date (1)
|
||||
format.
|
||||
+.SH "RETURN VALUE"
|
||||
+If the conversion is successful,
|
||||
+.B strftime
|
||||
+returns the number of bytes placed into the array, not counting the
|
||||
+terminating NUL;
|
||||
+.B errno
|
||||
+is unchanged if the returned value is zero.
|
||||
+Otherwise,
|
||||
+.B errno
|
||||
+is set to indicate the error, zero is returned,
|
||||
+and the array contents are unspecified.
|
||||
+.SH ERRORS
|
||||
+This function fails if:
|
||||
+.TP
|
||||
+[ERANGE]
|
||||
+The total number of resulting bytes, including the terminating
|
||||
+NUL character, is more than
|
||||
+.IR maxsize .
|
||||
+.PP
|
||||
+This function may fail if:
|
||||
+.TP
|
||||
+[EOVERFLOW]
|
||||
+The format includes an
|
||||
+.c %s
|
||||
+conversion and the number of seconds since the Epoch cannot be represented
|
||||
+in a
|
||||
+.c time_t .
|
||||
.SH SEE ALSO
|
||||
date(1),
|
||||
getenv(3),
|
||||
diff --git a/strftime.c b/strftime.c
|
||||
index 14cbc9a..4f871cd 100644
|
||||
--- a/strftime.c
|
||||
+++ b/strftime.c
|
||||
@@ -130,10 +130,15 @@ size_t
|
||||
strftime(char *s, size_t maxsize, const char *format, const struct tm *t)
|
||||
{
|
||||
char * p;
|
||||
+ int saved_errno = errno;
|
||||
enum warn warn = IN_NONE;
|
||||
|
||||
tzset();
|
||||
p = _fmt(format, t, s, s + maxsize, &warn);
|
||||
+ if (!p) {
|
||||
+ errno = EOVERFLOW;
|
||||
+ return 0;
|
||||
+ }
|
||||
if (DEPRECATE_TWO_DIGIT_YEARS
|
||||
&& warn != IN_NONE && getenv(YEAR_2000_NAME)) {
|
||||
fprintf(stderr, "\n");
|
||||
@@ -146,9 +151,12 @@ strftime(char *s, size_t maxsize, const char *format, const struct tm *t)
|
||||
else fprintf(stderr, "all locales");
|
||||
fprintf(stderr, "\n");
|
||||
}
|
||||
- if (p == s + maxsize)
|
||||
+ if (p == s + maxsize) {
|
||||
+ errno = ERANGE;
|
||||
return 0;
|
||||
+ }
|
||||
*p = '\0';
|
||||
+ errno = saved_errno;
|
||||
return p - s;
|
||||
}
|
||||
|
||||
@@ -312,7 +320,21 @@ label:
|
||||
time_t mkt;
|
||||
|
||||
tm = *t;
|
||||
+ tm.tm_yday = -1;
|
||||
mkt = mktime(&tm);
|
||||
+ if (mkt == (time_t) -1) {
|
||||
+ /* Fail unless this -1 represents
|
||||
+ a valid time. */
|
||||
+ struct tm tm_1;
|
||||
+ if (!localtime_r(&mkt, &tm_1))
|
||||
+ return NULL;
|
||||
+ if (!(tm.tm_year == tm_1.tm_year
|
||||
+ && tm.tm_yday == tm_1.tm_yday
|
||||
+ && tm.tm_hour == tm_1.tm_hour
|
||||
+ && tm.tm_min == tm_1.tm_min
|
||||
+ && tm.tm_sec == tm_1.tm_sec))
|
||||
+ return NULL;
|
||||
+ }
|
||||
if (TYPE_SIGNED(time_t))
|
||||
sprintf(buf, "%"PRIdMAX,
|
||||
(intmax_t) mkt);
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,29 @@
|
||||
From abbe4eeee3ab2db0103df064f6ae99abe019200e Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Mon, 21 Sep 2020 11:03:44 -0700
|
||||
Subject: [PATCH 33/47] * tz-art.html: Add Mr. Monk (thanks to Arthur David
|
||||
Olson).
|
||||
|
||||
---
|
||||
tz-art.html | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/tz-art.html b/tz-art.html
|
||||
index 93a99e4..5de546a 100644
|
||||
--- a/tz-art.html
|
||||
+++ b/tz-art.html
|
||||
@@ -109,6 +109,11 @@ premonition in the "We Had a Dream" episode of <em>Medium</em>
|
||||
(originally aired 2007-02-28).
|
||||
</li>
|
||||
<li>
|
||||
+A criminal's failure to account for the start of daylight saving is pivotal
|
||||
+in "<a href="https://monk.fandom.com/wiki/Mr._Monk_and_the_Rapper">Mr. Monk
|
||||
+and the Rapper</a>" (first aired 2007-07-20).
|
||||
+</li>
|
||||
+<li>
|
||||
In the <em>30 Rock</em> episode "Anna Howard Shaw Day"
|
||||
(first broadcast 2010-02-11),
|
||||
Jack Donaghy's date realizes that a Geneva-to-New-York business phone call
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,35 @@
|
||||
From afc53e03ff8df4fe8a55532a563ce1a11cbea6d0 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Mon, 21 Sep 2020 13:36:19 -0700
|
||||
Subject: [PATCH 35/47] * tz-link.html: Cite PyPI tzdata (thanks to Paul
|
||||
Ganssle).
|
||||
|
||||
---
|
||||
tz-link.html | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index 94aa5f5..b634082 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -581,11 +581,15 @@ It is freely available under the same terms as Perl
|
||||
(dual <abbr>GPL</abbr> and Artistic license).</li>
|
||||
<li>Python has a <a
|
||||
href="https://docs.python.org/3.9/library/zoneinfo.html"><code>zoneinfo.ZoneInfo</code>
|
||||
-class</a> that reads <abbr>TZif</abbr> files and creates objects
|
||||
+class</a> that reads <abbr>TZif</abbr> data and creates objects
|
||||
that represent <code><abbr>tzdb</abbr></code> timezones.
|
||||
Python is freely available under the
|
||||
<a href="https://docs.python.org/3.9/license.html">Python Software Foundation
|
||||
-License</a>.</li>
|
||||
+License</a>.
|
||||
+A companion <a href="https://pypi.org/">PyPI</a> module
|
||||
+<a href="https://pypi.org/project/tzdata/"><code>tzdata</code></a>
|
||||
+supplies TZif data if the underlying system data cannot be found;
|
||||
+it is freely available under the Apache License.</li>
|
||||
<li>The
|
||||
public-domain <a href="https://github.com/dbaron/tz.js">tz.js</a>
|
||||
library contains a Python tool that
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,31 @@
|
||||
From 2c431bd71c0f2f994f22d0b1e77e9f740abdd680 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Mon, 21 Sep 2020 11:44:34 -0700
|
||||
Subject: [PATCH 34/47] * tz-link.html: Cite Python 3.9 (thanks to Matt
|
||||
Johnson-Pint).
|
||||
|
||||
---
|
||||
tz-link.html | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index e6e4acd..94aa5f5 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -579,6 +579,13 @@ DateTime::TimeZone::Tzfile</a>
|
||||
is a <abbr>TZif</abbr> file reader written in Perl.
|
||||
It is freely available under the same terms as Perl
|
||||
(dual <abbr>GPL</abbr> and Artistic license).</li>
|
||||
+<li>Python has a <a
|
||||
+href="https://docs.python.org/3.9/library/zoneinfo.html"><code>zoneinfo.ZoneInfo</code>
|
||||
+class</a> that reads <abbr>TZif</abbr> files and creates objects
|
||||
+that represent <code><abbr>tzdb</abbr></code> timezones.
|
||||
+Python is freely available under the
|
||||
+<a href="https://docs.python.org/3.9/license.html">Python Software Foundation
|
||||
+License</a>.</li>
|
||||
<li>The
|
||||
public-domain <a href="https://github.com/dbaron/tz.js">tz.js</a>
|
||||
library contains a Python tool that
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -0,0 +1,26 @@
|
||||
From cb2d288ae0bb3aa5fb7cc94480ea955ff76bd183 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Mon, 7 Sep 2020 13:07:58 -0700
|
||||
Subject: [PATCH 31/47] * tz-link.html: Cite TZDIST list. (Thanks to Michael
|
||||
Douglass.)
|
||||
|
||||
---
|
||||
tz-link.html | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/tz-link.html b/tz-link.html
|
||||
index 6dcb654..dfdaece 100644
|
||||
--- a/tz-link.html
|
||||
+++ b/tz-link.html
|
||||
@@ -345,6 +345,8 @@ href="https://tools.ietf.org/html/rfc7808">TZDIST</a>
|
||||
along with <a href="https://tools.ietf.org/html/rfc7809">CalDAV</a>
|
||||
(Internet <abbr>RFC</abbr> 7809), a calendar access protocol for
|
||||
transferring time zone data by reference.
|
||||
+<a href="https://devguide.calconnect.org/Time-Zones/TZDS/">TZDIST
|
||||
+implementations</a> are available.
|
||||
The <a href="https://www.ietf.org/mailman/listinfo/tzdist-bis">tzdist-bis
|
||||
mailing list</a> discussed the Internet draft <a
|
||||
id="TZDIST-Geolocate"
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
94
backport-zic-has-new-l-and-p-options.patch
Normal file
94
backport-zic-has-new-l-and-p-options.patch
Normal file
@ -0,0 +1,94 @@
|
||||
From 180f76a2d41e1cea2895455f080f486b1d259279 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Fri, 12 Jun 2020 23:44:54 -0700
|
||||
Subject: [PATCH 15/47] =?UTF-8?q?zic=20has=20new=20=E2=80=98-l=20-?=
|
||||
=?UTF-8?q?=E2=80=99=20and=20=E2=80=98-p=20-=E2=80=99=20options?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* NEWS, zic.8: Mention this.
|
||||
* zic.c (dolink): If fromfield is "-", simply remove tofield.
|
||||
---
|
||||
NEWS | 3 +++
|
||||
zic.8 | 12 ++++++++++++
|
||||
zic.c | 5 ++++-
|
||||
3 files changed, 19 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 3bcddd0..cdcdbc1 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -23,6 +23,9 @@ Unreleased, experimental changes
|
||||
|
||||
Changes to code
|
||||
|
||||
+ zic's new '-l -' and '-p -' options uninstall any existing
|
||||
+ localtime and posixrules files, respectively.
|
||||
+
|
||||
The undocumented and ineffective tzsetwall function has been
|
||||
removed.
|
||||
|
||||
diff --git a/zic.8 b/zic.8
|
||||
index b1bf437..a431311 100644
|
||||
--- a/zic.8
|
||||
+++ b/zic.8
|
||||
@@ -85,6 +85,12 @@ will act as if the input contained a link line of the form
|
||||
.ti +.5i
|
||||
.ta \w'Link\0\0'u +\w'\fItimezone\fP\0\0'u
|
||||
Link \fItimezone\fP localtime
|
||||
+.sp
|
||||
+If
|
||||
+.I timezone
|
||||
+is
|
||||
+.BR \*- ,
|
||||
+any already-existing link is removed.
|
||||
.TP
|
||||
.BI "\*-L " leapsecondfilename
|
||||
Read leap second information from the file with the given name.
|
||||
@@ -109,6 +115,12 @@ and it should not be combined with
|
||||
if
|
||||
.IR timezone 's
|
||||
transitions are at standard time or Universal Time (UT) instead of local time.
|
||||
+.sp
|
||||
+If
|
||||
+.I timezone
|
||||
+is
|
||||
+.BR \*- ,
|
||||
+any already-existing link is removed.
|
||||
.TP
|
||||
.BR "\*-r " "[\fB@\fP\fIlo\fP][\fB/@\fP\fIhi\fP]"
|
||||
Reduce the size of output files by limiting their applicability
|
||||
diff --git a/zic.c b/zic.c
|
||||
index 2875b55..c874b04 100644
|
||||
--- a/zic.c
|
||||
+++ b/zic.c
|
||||
@@ -981,6 +981,7 @@ hardlinkerr(char const *from, char const *to)
|
||||
static void
|
||||
dolink(char const *fromfield, char const *tofield, bool staysymlink)
|
||||
{
|
||||
+ bool remove_only = strcmp(fromfield, "-") == 0;
|
||||
bool todirs_made = false;
|
||||
int link_errno;
|
||||
|
||||
@@ -988,7 +989,7 @@ dolink(char const *fromfield, char const *tofield, bool staysymlink)
|
||||
** We get to be careful here since
|
||||
** there's a fair chance of root running us.
|
||||
*/
|
||||
- if (itsdir(fromfield)) {
|
||||
+ if (!remove_only && itsdir(fromfield)) {
|
||||
fprintf(stderr, _("%s: link from %s/%s failed: %s\n"),
|
||||
progname, directory, fromfield, strerror(EPERM));
|
||||
exit(EXIT_FAILURE);
|
||||
@@ -1003,6 +1004,8 @@ dolink(char const *fromfield, char const *tofield, bool staysymlink)
|
||||
progname, directory, tofield, e);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
+ if (remove_only)
|
||||
+ return;
|
||||
link_errno = staysymlink ? ENOTSUP : hardlinkerr(fromfield, tofield);
|
||||
if (link_errno == ENOENT && !todirs_made) {
|
||||
mkdirs(tofield, true);
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
124
backport-zic-now-defaults-to-b-slim.patch
Normal file
124
backport-zic-now-defaults-to-b-slim.patch
Normal file
@ -0,0 +1,124 @@
|
||||
From 6ba6f2117b95eab345a7ed9159cef939e30c4cd3 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Sun, 21 Jun 2020 14:49:03 -0700
|
||||
Subject: [PATCH 17/47] =?UTF-8?q?zic=20now=20defaults=20to=20=E2=80=98-b?=
|
||||
=?UTF-8?q?=20slim=E2=80=99?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Make zic’s ‘-b slim’ option the default. This option first
|
||||
appeared in tzdb 2019b (2019-07-01), and is already the default in
|
||||
NetBSD 9.0 (2020-02-14) and seems to be working there. Using
|
||||
slim format should help finish off the TZif format’s Y2038
|
||||
transition that began in tzcode 95f (1995-10-28).
|
||||
* Makefile, NEWS, zic.8: Mention this.
|
||||
* zic.c (ZIC_BLOAT_DEFAULT): Default to "slim".
|
||||
---
|
||||
Makefile | 10 +++++-----
|
||||
NEWS | 2 ++
|
||||
zic.8 | 10 ++++------
|
||||
zic.c | 5 ++---
|
||||
4 files changed, 13 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 0da7c3f..8abd4d0 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -22,6 +22,7 @@ BUGEMAIL= tz@iana.org
|
||||
# DATAFORM= main
|
||||
# To wait even longer for new features, use:
|
||||
# DATAFORM= rearguard
|
||||
+# Rearguard users might also want "ZFLAGS = -b fat"; see below.
|
||||
DATAFORM= main
|
||||
|
||||
# Change the line below for your timezone (after finding the one you want in
|
||||
@@ -249,13 +250,12 @@ LDLIBS=
|
||||
# other than simply getting garbage data
|
||||
# -DUSE_LTZ=0 to build zdump with the system time zone library
|
||||
# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
|
||||
-# -DZIC_BLOAT_DEFAULT=\"slim\" to default zic's -b option to "slim", and
|
||||
-# similarly for "fat". Fat TZif files work around incompatibilities
|
||||
+# -DZIC_BLOAT_DEFAULT=\"fat\" to default zic's -b option to "fat", and
|
||||
+# similarly for "slim". Fat TZif files work around incompatibilities
|
||||
# and bugs in some TZif readers, notably readers that mishandle 64-bit
|
||||
# data in TZif files. Slim TZif files are more efficient and do not
|
||||
# work around these incompatibilities and bugs. If not given, the
|
||||
-# current default is "fat" but this is intended to change as readers
|
||||
-# requiring fat files often mishandle timestamps after 2037 anyway.
|
||||
+# default is "slim".
|
||||
# -DZIC_MAX_ABBR_LEN_WO_WARN=3
|
||||
# (or some other number) to set the maximum time zone abbreviation length
|
||||
# that zic will accept without a warning (the default is 6)
|
||||
@@ -390,7 +390,7 @@ ZIC= $(zic) $(ZFLAGS)
|
||||
|
||||
# To shrink the size of installed TZif files,
|
||||
# append "-r @N" to omit data before N-seconds-after-the-Epoch.
|
||||
-# You can also append "-b slim" if that is not already the default;
|
||||
+# To grow the files and work around older application bugs, append "-b fat";
|
||||
# see ZIC_BLOAT_DEFAULT above.
|
||||
# See the zic man page for more about -b and -r.
|
||||
ZFLAGS=
|
||||
diff --git a/NEWS b/NEWS
|
||||
index bfe02ea..6b9fd43 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -23,6 +23,8 @@ Unreleased, experimental changes
|
||||
|
||||
Changes to code
|
||||
|
||||
+ zic now defaults to '-b slim' instead of to '-b fat'.
|
||||
+
|
||||
zic's new '-l -' and '-p -' options uninstall any existing
|
||||
localtime and posixrules files, respectively.
|
||||
|
||||
diff --git a/zic.8 b/zic.8
|
||||
index a431311..8d34368 100644
|
||||
--- a/zic.8
|
||||
+++ b/zic.8
|
||||
@@ -61,15 +61,13 @@ is
|
||||
.BR slim ,
|
||||
keep the output files small; this can help check for the bugs
|
||||
and incompatibilities.
|
||||
-Although the default is currently
|
||||
-.BR fat ,
|
||||
-this is intended to change in future
|
||||
-.B zic
|
||||
-versions, as software that mishandles the 64-bit data typically
|
||||
+The default is
|
||||
+.BR slim ,
|
||||
+as software that mishandles 64-bit data typically
|
||||
mishandles timestamps after the year 2038 anyway.
|
||||
Also see the
|
||||
.B \*-r
|
||||
-option for another way to shrink output size.
|
||||
+option for another way to alter output size.
|
||||
.TP
|
||||
.BI "\*-d " directory
|
||||
Create time conversion information files in the named directory rather than
|
||||
diff --git a/zic.c b/zic.c
|
||||
index c874b04..3aed819 100644
|
||||
--- a/zic.c
|
||||
+++ b/zic.c
|
||||
@@ -661,8 +661,7 @@ static const char * tzdefault;
|
||||
static const char * yitcommand;
|
||||
|
||||
/* -1 if the TZif output file should be slim, 0 if default, 1 if the
|
||||
- output should be fat for backward compatibility. Currently the
|
||||
- default is fat, although this may change. */
|
||||
+ output should be fat for backward compatibility. The default is slim. */
|
||||
static int bloat;
|
||||
|
||||
static bool
|
||||
@@ -672,7 +671,7 @@ want_bloat(void)
|
||||
}
|
||||
|
||||
#ifndef ZIC_BLOAT_DEFAULT
|
||||
-# define ZIC_BLOAT_DEFAULT "fat"
|
||||
+# define ZIC_BLOAT_DEFAULT "slim"
|
||||
#endif
|
||||
|
||||
int
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -93,7 +93,7 @@ index 348e2b5..7579a13 100644
|
||||
+# The 1904 decree says that Macao changed from the meridian of
|
||||
# Fortaleza do Monte, presumably the basis for the 7:34:10 for LMT.
|
||||
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
# Rule NAME FROM TO - IN ON AT SAVE LETTER/S
|
||||
-Rule Macau 1942 1943 - Apr 30 23:00 1:00 -
|
||||
-Rule Macau 1942 only - Nov 17 23:00 0 -
|
||||
-Rule Macau 1943 only - Sep 30 23:00 0 S
|
||||
|
||||
67
tzdata.spec
67
tzdata.spec
@ -1,12 +1,60 @@
|
||||
Name: tzdata
|
||||
Version: 2020a
|
||||
Release: 1
|
||||
Release: 2
|
||||
Summary: Timezone data
|
||||
License: Public Domain
|
||||
URL: https://www.iana.org/time-zones
|
||||
Source0: https://data.iana.org/time-zones/releases/tzdata%{version}.tar.gz
|
||||
Source1: https://data.iana.org/time-zones/releases/tzcode%{version}.tar.gz
|
||||
|
||||
Patch6001: backport-Remove-tzsetwall.patch
|
||||
Patch6002: backport-Use-bold-for-command-and-func-names-in-man-pages.patch
|
||||
Patch6003: backport-Mention-TimeZoneDB-s-CSV-and-SQL-files.patch
|
||||
Patch6004: backport-More-Ruthenia-replacement.patch
|
||||
Patch6005: backport-Fix-comment-typo-re-1900-Spanish-decree.patch
|
||||
Patch6006: backport-Predict-Morocco-spring-forward-after-Eid-al-Fitr.patch
|
||||
Patch6007: backport-Fix-Hungarian-transitions-1918-1983.patch
|
||||
Patch6008: backport-Improve-1890-Hungarian-transition.patch
|
||||
Patch6009: backport-europe-Add-Hungaricana-URLs-thanks-to-G-za-Ny-ry.patch
|
||||
Patch6010: backport-French-clocks-stopped-for-9-21-on-1911-03-11.patch
|
||||
Patch6011: backport-Further-fixes-to-1891-and-1911-French-transitions.patch
|
||||
Patch6012: backport-NEWS-Fix-recent-date-typo.patch
|
||||
Patch6013: backport-Go-back-to-midnight-transitions-for-France-etc.patch
|
||||
Patch6014: backport-europe-Fix-minor-comment-typos-in-previous-change.patch
|
||||
Patch6015: backport-zic-has-new-l-and-p-options.patch
|
||||
Patch6016: backport-Do-not-install-posixrules-by-default.patch
|
||||
Patch6017: backport-zic-now-defaults-to-b-slim.patch
|
||||
Patch6018: backport-Cite-Mirmalek-on-Martian-timekeeping.patch
|
||||
Patch6019: backport-No-leap-second-on-2020-12-31.patch
|
||||
Patch6020: backport-Fix-leapseconds-comment-when-EXPIRES_LINE.patch
|
||||
Patch6021: backport-Update-Bahrain-as-per-article-in-The-National.patch
|
||||
Patch6022: backport-backzone-More-commentary-re-1940s-Bahrain.patch
|
||||
Patch6023: backport-Minor-editorial-improvements-for-newstrftime.3.patch
|
||||
Patch6024: backport-strftime-conform-better-to-POSIX.patch
|
||||
Patch6025: backport-date-redo-strftime-buffer-exhaustion-check.patch
|
||||
Patch6026: backport-date-simplify-format-compuation.patch
|
||||
Patch6027: backport-README-Add-a-pointer-to-tz-how-to.html.patch
|
||||
Patch6028: backport-Mention-Intl.DateTimeFormat.patch
|
||||
Patch6029: backport-asia-Cite-Barak-2020-on-Israeli-DST-controversy.patch
|
||||
Patch6030: backport-Cite-Rishi-et-al-in-tz-link.patch
|
||||
Patch6031: backport-tz-link.html-Cite-TZDIST-list.-Thanks-to-Michael-Dou.patch
|
||||
Patch6032: backport-Improve-heads-up-advice.patch
|
||||
Patch6033: backport-tz-art.html-Add-Mr.-Monk-thanks-to-Arthur-David-Olso.patch
|
||||
Patch6034: backport-tz-link.html-Cite-Python-3.9-thanks-to-Matt-Johnson-.patch
|
||||
Patch6035: backport-tz-link.html-Cite-PyPI-tzdata-thanks-to-Paul-Ganssle.patch
|
||||
Patch6036: backport-Yukon-s-change-is-effective-2020-11-01.patch
|
||||
Patch6037: backport-NEWS-Fix-typo-thanks-to-Philip-Paeps.patch
|
||||
Patch6038: backport-Fixes-for-Casey-and-Macquarie.patch
|
||||
Patch6039: backport-antarctica-Antarctica-Casey-Correct-2019-10-transiti.patch
|
||||
Patch6040: backport-Remove-obsolete-file-systemv.patch
|
||||
Patch6041: backport-Drop-support-for-zic-y-Rule-TYPEs-pacificnew.patch
|
||||
Patch6042: backport-Further-update-code-to-match-Link-line-field-names.patch
|
||||
Patch6043: backport-Convert-tz-how-to.html-to-HTML-5.patch
|
||||
Patch6044: backport-Tighten-up-scope-wording.patch
|
||||
Patch6045: backport-NEWS-Fix-Antarctic-seasons-Casey-change-is-past.patch
|
||||
Patch6046: backport-Release-2020b.patch
|
||||
Patch6047: backport-Fiji-observes-DST-from-2020-12-20-to-2021-01-17.patch
|
||||
|
||||
Patch9000: bugfix-0001-add-Beijing-timezone.patch
|
||||
Patch9001: remove-country-selection-from-tzselect-steps.patch
|
||||
Patch9002: remove-ROC-timezone.patch
|
||||
@ -32,14 +80,7 @@ Source4: javazic-1.8-37392f2f5d59.tar.xz
|
||||
This package contains timezone information for use by Java runtimes.
|
||||
|
||||
%prep
|
||||
%setup -q -c -a 1
|
||||
|
||||
%patch9000 -p1
|
||||
%patch9001 -p1
|
||||
%patch9002 -p1
|
||||
%patch9003 -p1
|
||||
%patch9004 -p1
|
||||
%patch9005 -p1
|
||||
%autosetup -c -a 1 -p1
|
||||
|
||||
make VERSION=%{version} tzdata%{version}-rearguard.tar.gz
|
||||
tar zxf tzdata%{version}-rearguard.tar.gz
|
||||
@ -63,7 +104,7 @@ echo "%{name}%{version}" >> VERSION
|
||||
make VERSION=%{version} DATAFORM=rearguard tzdata.zi
|
||||
|
||||
FILES="africa antarctica asia australasia europe northamerica southamerica
|
||||
pacificnew etcetera backward"
|
||||
etcetera backward"
|
||||
|
||||
mkdir zoneinfo/{,posix,right}
|
||||
zic -y ./yearistype -d zoneinfo -L /dev/null -p America/New_York $FILES
|
||||
@ -110,6 +151,12 @@ install -p -m 644 tzdb.dat $RPM_BUILD_ROOT%{_datadir}/javazi-1.8/
|
||||
%{_datadir}/javazi-1.8
|
||||
|
||||
%changelog
|
||||
* Sat Oct 10 2020 liuchao<liuchao173@huawei.com> - 2020a-2
|
||||
- Type:recommended
|
||||
- CVE:NA
|
||||
- SUG:NA
|
||||
- DESC:sync community patches
|
||||
|
||||
* Thu Jun 11 2020 liuchao<liuchao173@huawei.com> - 2020a-1
|
||||
- Type:recommended
|
||||
- ID:NA
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user