Skip to content
Permalink
Browse files

Standardize better on “daylight saving time”

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.
  • Loading branch information...
eggert committed Jan 23, 2018
1 parent 5293073 commit ec1c7bf729d6a6254449cc756846fe35874df8e9
Showing with 53 additions and 41 deletions.
  1. +2 −2 Makefile
  2. +4 −3 australasia
  3. +7 −6 localtime.c
  4. +4 −5 newctime.3
  5. +30 −19 newtzset.3
  6. +3 −3 southamerica
  7. +1 −1 theory.html
  8. +1 −1 tz-link.html
  9. +1 −1 tzfile.5
@@ -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.
@@ -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
@@ -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
@@ -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
@@ -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,34 +259,44 @@ 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),
2 hours ahead of UT, springing forward on March's fourth
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
@@ -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
@@ -642,7 +642,7 @@ <h2 id="functions">Time and date functions</h2>
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>
@@ -567,7 +567,7 @@ <h2 id="maps">Maps</h2>
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>
@@ -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.

0 comments on commit ec1c7bf

Please sign in to comment.
You can’t perform that action at this time.