[tz] Irish Standard Time vs Irish Summer Time
Paul Eggert
eggert at cs.ucla.edu
Tue Jan 23 23:58:15 UTC 2018
On 01/23/2018 05:29 AM, Michael H Deckers wrote:
>
> The assertion
> # ... but there's no
> # convenient single notation for the date and time of this
> transition
> # so we must duplicate the Rule lines.
> is clearly wrong when zic allows negative times of day with
> the u suffix -- but it is still in australasia in 2018b.
Good point. I reworded that in the attached patch, which also cleans up
some other stale comments that I discovered while looking into this one.
I installed this in the master branch, after 2018c was tagged.
> Similarly, the (future) change in meaning for tm_isdst (from an
> indicator of daylight saving time to one of non-standard time)
> should be applied throughout the whole documentation of tzdb.
> For instance, newctime.3.txt says
> Tm_isdst is non-zero if summer time is in effect.
> and this will probably become false (for the effect of
> localtime()) after the change.
It's probably better to consistently use the phrase "daylight saving
time", as this is common usage (at least in the US) and it maps well to
the tm_isdst variable of C. Logically DST can be observed in summer just
as easily as in winter, and there's no logical requirement that it must
advance the clock: after all, one can "save" daylight at the start of
the day, and this is just as easy as "saving" it at the end.
-------------- next part --------------
From ec1c7bf729d6a6254449cc756846fe35874df8e9 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert at cs.ucla.edu>
Date: Tue, 23 Jan 2018 15:49:05 -0800
Subject: [PROPOSED] =?UTF-8?q?Standardize=20better=20on=20=E2=80=9Cdayligh?=
=?UTF-8?q?t=20saving=20time=E2=80=9D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
In the text we write, prefer the phrase “daylight saving time” to
alternatives like “summer time”. This better matches the name
‘tm_isdst’ used in C. Daylight saving time need not occur in
summer, and need not have a positive offset from standard time.
---
Makefile | 4 ++--
australasia | 7 ++++---
localtime.c | 13 +++++++------
newctime.3 | 9 ++++-----
newtzset.3 | 49 ++++++++++++++++++++++++++++++-------------------
southamerica | 6 +++---
theory.html | 2 +-
tz-link.html | 2 +-
tzfile.5 | 2 +-
9 files changed, 53 insertions(+), 41 deletions(-)
diff --git a/Makefile b/Makefile
index 4f448d2..fad1dbe 100644
--- a/Makefile
+++ b/Makefile
@@ -25,10 +25,10 @@ LOCALTIME= GMT
# for handling POSIX-style time zone environment variables,
# change the line below (after finding the zone you want in the
# time zone files, or adding it to a time zone file).
-# (When a POSIX-style environment variable is handled, the rules in the
+# When a POSIX-style environment variable is handled, the rules in the
# template file are used to determine "spring forward" and "fall back" days and
# times; the environment variable itself specifies UT offsets of standard and
-# summer time.)
+# daylight saving time.
# Alternately, if you discover you've got the wrong time zone, you can just
# zic -p rightzone
# to correct things.
diff --git a/australasia b/australasia
index b4ef168..bdf19a4 100644
--- a/australasia
+++ b/australasia
@@ -469,9 +469,10 @@ Rule NZ 1929 1933 - Mar Sun>=15 2:00 0 M
Rule NZ 1934 1940 - Apr lastSun 2:00 0 M
Rule NZ 1934 1940 - Sep lastSun 2:00 0:30 S
Rule NZ 1946 only - Jan 1 0:00 0 S
-# Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no
-# convenient single notation for the date and time of this transition
-# so we must duplicate the Rule lines.
+# Since 1957 Chatham has been 45 minutes ahead of NZ, but until 2018a
+# there was no documented single notation for the date and time of this
+# transition. Duplicate the Rule lines for now, to give the 2018a change
+# time to percolate out.
Rule NZ 1974 only - Nov Sun>=1 2:00s 1:00 D
Rule Chatham 1974 only - Nov Sun>=1 2:45s 1:00 D
Rule NZ 1975 only - Feb lastSun 2:00s 0 S
diff --git a/localtime.c b/localtime.c
index 9b8266a..6f5aa76 100644
--- a/localtime.c
+++ b/localtime.c
@@ -1221,12 +1221,13 @@ tzparse(const char *name, struct state *sp, bool lastditch)
/* No adjustment to transition time */
} else {
/*
- ** If summer time is in effect, and the
- ** transition time was not specified as
- ** standard time, add the summer time
- ** offset to the transition time;
- ** otherwise, add the standard time
- ** offset to the transition time.
+ ** If daylight saving time is in
+ ** effect, and the transition time was
+ ** not specified as standard time, add
+ ** the daylight saving time offset to
+ ** the transition time; otherwise, add
+ ** the standard time offset to the
+ ** transition time.
*/
/*
** Transitions from DST to DDST
diff --git a/newctime.3 b/newctime.3
index 6d58c8d..d4645ad 100644
--- a/newctime.3
+++ b/newctime.3
@@ -137,15 +137,14 @@ to their normal ranges.
.B tm_isdst
causes
.I mktime
-to presume initially that summer time (for example, Daylight Saving Time
-in the U.S.A.)
+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
-function to attempt to divine whether summer time is in effect
+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
presented with the same argument.)
@@ -222,14 +221,14 @@ includes the following fields:
int tm_year; /\(** year \- 1900 \(**/
int tm_wday; /\(** day of week (Sunday = 0) \(**/
int tm_yday; /\(** day of year (0\*(en365) \(**/
- int tm_isdst; /\(** is summer time in effect? \(**/
+ int tm_isdst; /\(** is daylight saving time in effect? \(**/
char \(**tm_zone; /\(** time zone abbreviation (optional) \(**/
long tm_gmtoff; /\(** offset from UT in seconds (optional) \(**/
.fi
.RE
.PP
.I Tm_isdst
-is non-zero if summer time is in effect.
+is non-zero if daylight saving time is in effect.
.PP
.I Tm_gmtoff
is the offset (in seconds) of the time represented
diff --git a/newtzset.3 b/newtzset.3
index 1639e6d..0eab732 100644
--- a/newtzset.3
+++ b/newtzset.3
@@ -111,13 +111,14 @@ Where:
.IR std " and " dst
Three or more bytes that are the designation for the standard
.RI ( std )
-or summer
-.RI ( dst )
+or the alternative
+.RI ( dst ,
+such as daylight saving time)
time zone. Only
.I std
is required; if
.I dst
-is missing, then summer time does not apply in this locale.
+is missing, then daylight saving time does not apply in this locale.
Upper- and lowercase letters are explicitly allowed. Any characters
except a leading colon
.RB ( : ),
@@ -160,7 +161,7 @@ is required. If no
.I offset
follows
.IR dst ,
-summer time is assumed to be one hour ahead of standard time. One or
+daylight saving time is assumed to be one hour ahead of standard time. One or
more digits may be used; the value is always interpreted as a decimal
number. The hour must be between zero and 24, and the minutes (and
seconds) \*(en if present \*(en between zero and 59. If preceded by a
@@ -170,7 +171,7 @@ west (which may be indicated by an optional preceding
.q "+" .
.TP
.I rule
-Indicates when to change to and back from summer time. The
+Indicates when to change to and back from daylight saving time. The
.I rule
has the form:
.RS
@@ -180,7 +181,7 @@ has the form:
.IP
where the first
.I date
-describes when the change from standard to summer time occurs and the
+describes when the change from standard to daylight saving time occurs and the
second
.I date
describes when the change back happens. Each
@@ -258,11 +259,15 @@ extensions to POSIX.
stands for US Eastern Standard
Time (EST), 5 hours behind UT, without daylight saving.
.TP
-.B FJT\*-12FJST,M11.1.0,M1.3.4/75
-stands for Fiji Time (FJT) and Fiji Summer Time (FJST), 12 hours ahead
+.B <+12>\*-12<+13>,M11.1.0,M1.2.1/147
+stands for Fiji time, 12 hours ahead
of UT, springing forward on November's first Sunday at 02:00, and
-falling back on January's third Thursday at 75:00 (i.e., 03:00 on the
-first Sunday on or after January 18).
+falling back on January's second Monday at 147:00 (i.e., 03:00 on the
+first Sunday on or after January 14). The abbreviations for standard
+and daylight saving time are
+.q "+12"
+and
+.q "+13".
.TP
.B IST\*-2IDT,M3.4.4/26,M10.5.0
stands for Israel Standard Time (IST) and Israel Daylight Time (IDT),
@@ -270,22 +275,28 @@ stands for Israel Standard Time (IST) and Israel Daylight Time (IDT),
Thursday at 26:00 (i.e., 02:00 on the first Friday on or after March
23), and falling back on October's last Sunday at 02:00.
.TP
-.B WART4WARST,J1/0,J365/25
-stands for Western Argentina Summer Time (WARST), 3 hours behind UT.
+.B <\*-04>4<\*-03>,J1/0,J365/25
+stands for permanent daylight saving time, 3 hours behind UT with
+abbreviation
+.q "\*-03".
There is a dummy fall-back transition on December 31 at 25:00 daylight
saving time (i.e., 24:00 standard time, equivalent to January 1 at
00:00 standard time), and a simultaneous spring-forward transition on
January 1 at 00:00 standard time, so daylight saving time is in effect
all year and the initial
-.B WART
+.B <\*-04>
is a placeholder.
.TP
-.B WGT3WGST,M3.5.0/\*-2,M10.5.0/\*-1
-stands for Western Greenland Time (WGT) and Western Greenland Summer
-Time (WGST), 3 hours behind UT, where clocks follow the EU rules of
+.B <\*-03>3<\*-02>,M3.5.0/\*-2,M10.5.0/\*-1
+stands for time in western Greenland, 3 hours behind UT, where clocks
+follow the EU rules of
springing forward on March's last Sunday at 01:00 UT (\-02:00 local
-time) and falling back on October's last Sunday at 01:00 UT
-(\-01:00 local time).
+time, i.e., 22:00 the previous day) and falling back on October's last
+Sunday at 01:00 UT (\-01:00 local time, i.e., 23:00 the previous day).
+The abbreviations for standard and daylight saving time are
+.q "\*-03"
+and
+.q "\*-02".
.PP
If no
.I rule
@@ -297,7 +308,7 @@ by the
file
.B posixrules
in the system time conversion information directory are used, with the
-standard and summer time offsets from UT replaced by those specified by
+standard and daylight saving time offsets from UT replaced by those specified by
the
.I offset
values in
diff --git a/southamerica b/southamerica
index 2049177..bcfde4b 100644
--- a/southamerica
+++ b/southamerica
@@ -381,9 +381,9 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# rules...San Luis is still using "Western ARgentina Time" and it got
# stuck on Summer daylight savings time even though the summer is over.
-# From Paul Eggert (2013-09-05):
+# From Paul Eggert (2018-01-23):
# Perhaps San Luis operates on the legal fiction that it is at -04
-# with perpetual summer time, but ordinary usage typically seems to
+# with perpetual daylight saving time, but ordinary usage typically seems to
# just say it's at -03; see, for example,
# https://es.wikipedia.org/wiki/Hora_oficial_argentina
# We've documented similar situations as being plain changes to
@@ -1481,7 +1481,7 @@ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
# the maintainers of the database to inform them we're adopting
# the same policy this year and suggest recommendations for future years.
#
-# For now we will assume permanent summer time for the Falklands
+# For now we will assume permanent -03 for the Falklands
# until advised differently (to apply for 2012 and beyond, after the 2011
# experiment was apparently successful.)
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
diff --git a/theory.html b/theory.html
index ff85f53..b3c3e7c 100644
--- a/theory.html
+++ b/theory.html
@@ -642,7 +642,7 @@ POSIX has the following properties and limitations.
In POSIX, time display in a process is controlled by the
environment variable TZ. Unfortunately, the POSIX TZ string takes
a form that is hard to describe and is error-prone in practice.
- Also, POSIX TZ strings can't deal with other (for example, Israeli)
+ Also, POSIX TZ strings can't deal with other (for example, Iranian)
daylight saving time rules, or situations where more than two
time zone abbreviations are used in an area.
</p>
diff --git a/tz-link.html b/tz-link.html
index 225d8e5..983bd81 100644
--- a/tz-link.html
+++ b/tz-link.html
@@ -567,7 +567,7 @@ Library Map Collection</a>
of the University of Texas at Austin has copies of
recent editions.
The pictorial quality is good,
-but the maps do not indicate summer time,
+but the maps do not indicate daylight saving time,
and parts of the data are a few years out of date.</li>
<li><a href="http://www.worldtimezone.com">Current time around the world
and standard time zones map of the world</a>
diff --git a/tzfile.5 b/tzfile.5
index 3a4dd2b..530397f 100644
--- a/tzfile.5
+++ b/tzfile.5
@@ -173,7 +173,7 @@ For version-3-format time zone files, the POSIX-TZ-style string may
use two minor extensions to the POSIX TZ format, as described in
.BR newtzset (3).
First, the hours part of its transition times may be signed and range from
-\-167 through 167 instead of the POSIX-required unsigned values
+\*-167 through 167 instead of the POSIX-required unsigned values
from 0 through 24. Second, DST is in effect all year if it starts
January 1 at 00:00 and ends December 31 at 24:00 plus the difference
between daylight saving and standard time.
--
2.14.3
More information about the tz
mailing list