[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