Discussion:
Zoneinfo questions
White, Mark
1998-02-18 01:05:36 UTC
Permalink
Hi, I was interested in writing an article on the zoneinfo library and
datafiles for an Australian UNIX magazine, was specifically interested
in the following:

1. Who originally wrote the package
2. Who currently maintains it?

Thanks and regards,

Mark.White at Compaq.com +61 7 3218 3618
UNIX & Telecoms Marketing +61 7 3218 3650 (fax)
Asia-Pacific Division
Olson, Arthur David
1998-02-19 14:33:24 UTC
Permalink
Note that Mark White is not on the time zone mailing list; any replies
should include Mark.

A copy of a letter from me to Mark should follow.

--ado

----------
From: White, Mark[SMTP:Mark.White at COMPAQ.com]
Sent: Tuesday, February 17, 1998 8:06 PM
To: 'tz at elsie.nci.nih.gov'
Subject: Zoneinfo questions

Hi, I was interested in writing an article on the zoneinfo library and
datafiles for an Australian UNIX magazine, was specifically interested
in the following:

1. Who originally wrote the package
2. Who currently maintains it?

Thanks and regards,

Mark.White at Compaq.com +61 7 3218 3618
UNIX & Telecoms Marketing +61 7 3218 3650 (fax)
Asia-Pacific Division
Olson, Arthur David
1998-02-19 14:37:18 UTC
Permalink
Below are copies of a couple of 1989 letters on the history of the time zone
software.

These days Paul Eggert is doing the bulk of the maintenance work; the central
repository remains at ftp://elsie.nci.nih.gov/pub.

--ado

==============================================================
Guy Harris
1998-02-19 19:24:55 UTC
Permalink
Post by Olson, Arthur David
Below are copies of a couple of 1989 letters on the history of the time zone
software.
Below is the version from my archive, which may be a bit easier to read:

==============================================================

Date: Thu, 20 Apr 89 09:54:08 EDT
From: uunet!ncifcrf.gov!elsie!ado (Arthur David Olson)
Message-Id: <8904201354.AA15704 at elsie>
To: bostic at okeeffe.berkeley.edu, ncifcrf!bootme.auspex.com!guy
Subject: Re: machine independence
Post by Olson, Arthur David
Speaking of "the original ... work", how did this all get started,
anyway?
The ultimate impetus was the legislation that changed the start of U. S.
Daylight Saving Time from the last Sunday in April to the first Sunday in April.
The proximate impetus was a mod.std.unix discussion on the subject.
I've attached some of the early electronic mail. By 1/11/86 the format
looked much as it does today. The "hard part" not dealt with in the 1/13/86
"distribution" was the text-format-to-binary-format converter (today's zic).

--ado
Post by Olson, Arthur David
From ado Mon Jan 6 10:28:48 1986
To: cbosgd!mark
Subject: Daylight Savings Time
Cc: seismo!philabs!linus!encore!necis!geo
Status: O
Well, I'll admit that my first reaction to the idea of something on the order
of "/etc/dstcap" was a smiley face. But over the weekend I thought about the
matter some more. The result of the thinking was a sheet of paper with this
eastern:\
:st=EST:\
:dt=EDT:\
:os=-21000:\
...
Is there enough information present above to deal with the various
Daylight Saving Time schemes that currently exist? Would the information be
enough to deal with anything that US (or foreign) legislators are likely
to dream up? Or does one *really* need to have something on the order of
"/etc/dstinfo" (with a stack and arithmetic and such)?
--ado
From cbosgd!cbpavo.cbosgd.ATT.UUCP!mark Fri Jan 10 16:19:08 1986 remote from seismo
Received: from cbosgd.UUCP by seismo.CSS.GOV with UUCP; Fri, 10 Jan 86 16:05:29 EST
Received: from cbpavo.cbosgd.ATT.UUCP (cbpavo.ARPA)
by cbosgd.ATT.UUCP (4.12/UUCP-Project/11.09.85)
id AA17523; Fri, 10 Jan 86 15:04:29 est
Received: by cbpavo.cbosgd.ATT.UUCP (4.24/3.14)
id AA03218; Fri, 10 Jan 86 15:04:20 est
Date: Fri, 10 Jan 86 15:04:20 est
From: seismo!cbpavo.cbosgd.ATT.UUCP!mark (Mark Horton)
Message-Id: <8601102004.AA03218 at cbpavo.cbosgd.ATT.UUCP>
To: elsie!ado, harvard!encore!encore!necis!geo
Subject: Re: Daylight Savings Time
While I like your semantics, the format is horrible. I'd much
prefer to see each year (or year range) in one place rather
than have it scattered over 14 different days of the week.
The format has to be something the average non-guru can understand.
Termcap is a bit much for such people. Something easy like
Year Key Parm Time GMT offset
1970 3-sun 4 0200 -0400
1970 3-sun 10 0200 -0500
1971 3-sun 4 0200 -0400
1971 3-sun 10 0200 -0500
1972 3-sun 4 0200 -0400
1972 3-sun 10 0200 -0500
1973 3-sun 4 0200 -0400
1973 3-sun 10 0200 -0500
1974 julian 120 0200 -0400
1974 julian 306 0200 -0500
1975 julian 0 0200 -0400
1975 julian 366 0200 -0500
1976 3-sun 4 0200 -0400
1976 3-sun 10 0200 -0500
This could probably be translated into a handy binary format for ctime
to use quickly. The parm is either the month number (for things like
"3rd Sunday") or the Julian date on which to make the change. The
above numbers are probably all wrong but you get the idea. You could
have any number of changes in a year, although 2 would be common.
Mark
From ado Sat Jan 11 12:42:16 1986
To: cbosgd!mark
Subject: DST
Status: O
An alternate approach to allow for multiple time zones. Make the rules look
Rule Year(s) Month Day Time ST offset String
MostUS -1973 Apr last-Sun 2:00 1:00 D
MostUS -1973 Oct last-Sun 2:00 0 S
MostUS 1974 Jan last-Sun 2:00 1:00 D
MostUS 1974 Nov last-Sun 2:00 0 S
MostUS 1975 Feb last-Sun 2:00 1:00 D
MostUS 1975 Oct last-Sun 2:00 0 S
MostUS 1976- Apr last-Sun 2:00 1:00 D
MostUS 1976- Oct last-Sun 2:00 0 S
Patron 1969- Apr last-Sun 2:00 1:00 D
Patron 1969- Jul last-Sun 2:00 2:00 DD
Patron 1969- Aug last-Sun 2:00 1:00 D
Patron 1969- Oct last-Sun 2:00 0 S
and the Time Zone information look like
Name GMT offset Rule Abbreviation
Eastern -5:00 MostUS E%sT
Central -6:00 MostUS C%sT
Pacific -8:00 MostUS P%sT
Alaskan ? MostUS A%sT
Hawaiian ? MostUS H%sT
Patronian ? Patron P%sT
--ado
From ado Mon Jan 13 21:04:01 1986
To: cbosgd!mark
Subject: The easy part of ctime()
Status: O
Makefile
timezone.h
ctime.c
try.c
fake.c
The important files are "timezone.h" which gives the format of "binary time
zone information files," and "ctime.c" which makes use of the files. . .
From uunet!ncifcrf.gov!elsie!ado Thu Apr 20 17:43:40 1989
Return-Path: <uunet!ncifcrf.gov!elsie!ado>
Received: from uunet.UUCP by auspex.com (4.0/SMI-4.0)
id AA17457; Thu, 20 Apr 89 17:43:39 PDT
Received: from FCS280S.NCIFCRF.GOV by uunet (5.61/1.14) with SMTP
id AA12868; Thu, 20 Apr 89 20:07:19 -0400
Received: by fcs280s.ncifcrf.gov (4.0/NCIFCRF-1.0)
id AA13367; Thu, 20 Apr 89 20:03:39 EDT
Received: by elsie (4.0/SMI-4.0)
id AA00691; Thu, 20 Apr 89 20:03:31 EDT
Date: Thu, 20 Apr 89 20:03:31 EDT
From: uunet!ncifcrf.gov!elsie!ado (Arthur David Olson)
Message-Id: <8904210003.AA00691 at elsie>
To: guy at auspex.com
Subject: Re: machine independence
Status: RO
Post by Olson, Arthur David
So do you remember how the rest of us (Elz, me, Bob Device, Bradley White,
etc.) got involved?
I don't, but the computer does. (One advantage of working on image processing
is big disks and lots of tapes.)

There was a fair amount of mod.std.unix posting in early '86, kicked off by
Mark Horton's original "How best to handle time conversion?" posting.

Bob Devine responded since he'd been responsible for time stuff with an
earlier employer; he was person who knew that astrologers had the
best information about DST in the past.

Robert Elz was motivated by the fact that the Australian government fiddled
the DST rules down there for a visit by the Queen in March of '86.
He boldly installed the early code just before the visit.
Robert's changes to "date" to work with the new functions showed up in
mod.sources in June of '86.
Post by Olson, Arthur David
From munnari!kre Tue Aug 26 13:10:08 1986 remote from seismo
. . .
To: elsie!ado
. . .
Did Guy Harris (sun!guy) ever send you his mods to this stuff?
He has made the compiled timezone files be in "standard" format
so they can reside on one host on a net, and have others access
them (by NFS or whatever), regardless of whether there's a mixture
of Sun's vaxen, etc, with different byte orders & such.
Clearly the mods had been sent by the time that
Post by Olson, Arthur David
From ado Mon Nov 24 19:58:54 1986
. . .
To: tz
Subject: seismo!elsie!tz ; new versions of time zone stuff
Now that we've moved from 4.1BSD to 4.3BSD here at elsie,
I've set things up so that mail sent to
seismo!elsie!tz
will go to folks who've expressed an interest in time zone matters. . .
ado at elsie.UUCP
chris at umcp-cs.UUCP
mark at cbosgd.ATT.COM
kre at munnari.OZ
dlm at cuuxb.ATT.COM
devine at vianet.UUCP
bob at anvil.UUCP
rgt at hpfcdg.UUCP
guy at sun.UUCP
. . .
And now the real news: new versions of the time zone compiler, the
ctime et al. library, and the time zone data are available. Guy Harris
provided the bulk of the ideas and work that went into the new versions,
but should be held innocent of any blame for errors since I've tinkered
with Guy's work (in part to try for more compatibility with System V and
the work of rgt at hpfcdg.UUCP, who's the time zone person at Hewlett-Packard).
. . .
(How it is that I forgot after then how to spell compatibility is beyond me.)

The mailing list saw a flurry of activity in December of '86, with an upcoming
P1003 meeting due to try to figure out how to standardize time conversion;
H-P was preparing an alternative proposal to "P.55," which was based on the
table-driven stuff. As part of the flurry, John S. Quarterman
Post by Olson, Arthur David
From seismo!munnari!kre Sun Dec 7 06:57:42 1986
. . .
To: elsie!tz
Cc: jsq at sally.utexas.edu
Subject: timezone proposals for P1003
. . .
I think things are getting way too complicated.
All P1003 needs (and all it should have) is a spec of
the interface that programs should have to time conversions.
. . .
Robert Elz seismo!munnari!kre
ps: I have added a cc to John Quarterman, who I guess is
as close as anyone to being my representative on P1003,
given that I'm a usenix member... John, this is in response
to some discussions over the HP proposals and other replated
issues. elsie!ado can fill you in on what's been going on I think.
There's a mailing list at elsie for tz discussions.
Bradley White first appears (at least in my back mail files) in early '87:
(presumably after the P1003 meeting?); he was referred by. . .
Post by Olson, Arthur David
From seismo!sun!guy Thu Feb 19 06:56:54 1987
...
To: elsie!ado
Subject: Could you send him the latest version when it's ready?
Cc: bww at k.cs.cmu.edu
Status: RO
From: Bradley White <bww at k.cs.cmu.edu>
Subject: Re: diffs for ctime.c for new DST rules, v7 systems
To: guy at Sun.COM
Guy,
If you could send me (or point me at) a copy of Arthur Olson's "ctime"
I will have it installed in CMU Mach/Unix. Hopefully this will aid in
its dissemination.
...
--ado
White, Mark
1998-02-18 01:05:36 UTC
Permalink
Hi, I was interested in writing an article on the zoneinfo library and
datafiles for an Australian UNIX magazine, was specifically interested
in the following:

1. Who originally wrote the package
2. Who currently maintains it?

Thanks and regards,

Mark.White at Compaq.com +61 7 3218 3618
UNIX & Telecoms Marketing +61 7 3218 3650 (fax)
Asia-Pacific Division
Olson, Arthur David
1998-02-19 14:33:24 UTC
Permalink
Note that Mark White is not on the time zone mailing list; any replies
should include Mark.

A copy of a letter from me to Mark should follow.

--ado

----------
From: White, Mark[SMTP:Mark.White at COMPAQ.com]
Sent: Tuesday, February 17, 1998 8:06 PM
To: 'tz at elsie.nci.nih.gov'
Subject: Zoneinfo questions

Hi, I was interested in writing an article on the zoneinfo library and
datafiles for an Australian UNIX magazine, was specifically interested
in the following:

1. Who originally wrote the package
2. Who currently maintains it?

Thanks and regards,

Mark.White at Compaq.com +61 7 3218 3618
UNIX & Telecoms Marketing +61 7 3218 3650 (fax)
Asia-Pacific Division
Olson, Arthur David
1998-02-19 14:37:18 UTC
Permalink
Below are copies of a couple of 1989 letters on the history of the time zone
software.

These days Paul Eggert is doing the bulk of the maintenance work; the central
repository remains at ftp://elsie.nci.nih.gov/pub.

--ado

==============================================================
Guy Harris
1998-02-19 19:24:55 UTC
Permalink
Post by Olson, Arthur David
Below are copies of a couple of 1989 letters on the history of the time zone
software.
Below is the version from my archive, which may be a bit easier to read:

==============================================================

Date: Thu, 20 Apr 89 09:54:08 EDT
From: uunet!ncifcrf.gov!elsie!ado (Arthur David Olson)
Message-Id: <8904201354.AA15704 at elsie>
To: bostic at okeeffe.berkeley.edu, ncifcrf!bootme.auspex.com!guy
Subject: Re: machine independence
Post by Olson, Arthur David
Speaking of "the original ... work", how did this all get started,
anyway?
The ultimate impetus was the legislation that changed the start of U. S.
Daylight Saving Time from the last Sunday in April to the first Sunday in April.
The proximate impetus was a mod.std.unix discussion on the subject.
I've attached some of the early electronic mail. By 1/11/86 the format
looked much as it does today. The "hard part" not dealt with in the 1/13/86
"distribution" was the text-format-to-binary-format converter (today's zic).

--ado
Post by Olson, Arthur David
From ado Mon Jan 6 10:28:48 1986
To: cbosgd!mark
Subject: Daylight Savings Time
Cc: seismo!philabs!linus!encore!necis!geo
Status: O
Well, I'll admit that my first reaction to the idea of something on the order
of "/etc/dstcap" was a smiley face. But over the weekend I thought about the
matter some more. The result of the thinking was a sheet of paper with this
eastern:\
:st=EST:\
:dt=EDT:\
:os=-21000:\
...
Is there enough information present above to deal with the various
Daylight Saving Time schemes that currently exist? Would the information be
enough to deal with anything that US (or foreign) legislators are likely
to dream up? Or does one *really* need to have something on the order of
"/etc/dstinfo" (with a stack and arithmetic and such)?
--ado
From cbosgd!cbpavo.cbosgd.ATT.UUCP!mark Fri Jan 10 16:19:08 1986 remote from seismo
Received: from cbosgd.UUCP by seismo.CSS.GOV with UUCP; Fri, 10 Jan 86 16:05:29 EST
Received: from cbpavo.cbosgd.ATT.UUCP (cbpavo.ARPA)
by cbosgd.ATT.UUCP (4.12/UUCP-Project/11.09.85)
id AA17523; Fri, 10 Jan 86 15:04:29 est
Received: by cbpavo.cbosgd.ATT.UUCP (4.24/3.14)
id AA03218; Fri, 10 Jan 86 15:04:20 est
Date: Fri, 10 Jan 86 15:04:20 est
From: seismo!cbpavo.cbosgd.ATT.UUCP!mark (Mark Horton)
Message-Id: <8601102004.AA03218 at cbpavo.cbosgd.ATT.UUCP>
To: elsie!ado, harvard!encore!encore!necis!geo
Subject: Re: Daylight Savings Time
While I like your semantics, the format is horrible. I'd much
prefer to see each year (or year range) in one place rather
than have it scattered over 14 different days of the week.
The format has to be something the average non-guru can understand.
Termcap is a bit much for such people. Something easy like
Year Key Parm Time GMT offset
1970 3-sun 4 0200 -0400
1970 3-sun 10 0200 -0500
1971 3-sun 4 0200 -0400
1971 3-sun 10 0200 -0500
1972 3-sun 4 0200 -0400
1972 3-sun 10 0200 -0500
1973 3-sun 4 0200 -0400
1973 3-sun 10 0200 -0500
1974 julian 120 0200 -0400
1974 julian 306 0200 -0500
1975 julian 0 0200 -0400
1975 julian 366 0200 -0500
1976 3-sun 4 0200 -0400
1976 3-sun 10 0200 -0500
This could probably be translated into a handy binary format for ctime
to use quickly. The parm is either the month number (for things like
"3rd Sunday") or the Julian date on which to make the change. The
above numbers are probably all wrong but you get the idea. You could
have any number of changes in a year, although 2 would be common.
Mark
From ado Sat Jan 11 12:42:16 1986
To: cbosgd!mark
Subject: DST
Status: O
An alternate approach to allow for multiple time zones. Make the rules look
Rule Year(s) Month Day Time ST offset String
MostUS -1973 Apr last-Sun 2:00 1:00 D
MostUS -1973 Oct last-Sun 2:00 0 S
MostUS 1974 Jan last-Sun 2:00 1:00 D
MostUS 1974 Nov last-Sun 2:00 0 S
MostUS 1975 Feb last-Sun 2:00 1:00 D
MostUS 1975 Oct last-Sun 2:00 0 S
MostUS 1976- Apr last-Sun 2:00 1:00 D
MostUS 1976- Oct last-Sun 2:00 0 S
Patron 1969- Apr last-Sun 2:00 1:00 D
Patron 1969- Jul last-Sun 2:00 2:00 DD
Patron 1969- Aug last-Sun 2:00 1:00 D
Patron 1969- Oct last-Sun 2:00 0 S
and the Time Zone information look like
Name GMT offset Rule Abbreviation
Eastern -5:00 MostUS E%sT
Central -6:00 MostUS C%sT
Pacific -8:00 MostUS P%sT
Alaskan ? MostUS A%sT
Hawaiian ? MostUS H%sT
Patronian ? Patron P%sT
--ado
From ado Mon Jan 13 21:04:01 1986
To: cbosgd!mark
Subject: The easy part of ctime()
Status: O
Makefile
timezone.h
ctime.c
try.c
fake.c
The important files are "timezone.h" which gives the format of "binary time
zone information files," and "ctime.c" which makes use of the files. . .
From uunet!ncifcrf.gov!elsie!ado Thu Apr 20 17:43:40 1989
Return-Path: <uunet!ncifcrf.gov!elsie!ado>
Received: from uunet.UUCP by auspex.com (4.0/SMI-4.0)
id AA17457; Thu, 20 Apr 89 17:43:39 PDT
Received: from FCS280S.NCIFCRF.GOV by uunet (5.61/1.14) with SMTP
id AA12868; Thu, 20 Apr 89 20:07:19 -0400
Received: by fcs280s.ncifcrf.gov (4.0/NCIFCRF-1.0)
id AA13367; Thu, 20 Apr 89 20:03:39 EDT
Received: by elsie (4.0/SMI-4.0)
id AA00691; Thu, 20 Apr 89 20:03:31 EDT
Date: Thu, 20 Apr 89 20:03:31 EDT
From: uunet!ncifcrf.gov!elsie!ado (Arthur David Olson)
Message-Id: <8904210003.AA00691 at elsie>
To: guy at auspex.com
Subject: Re: machine independence
Status: RO
Post by Olson, Arthur David
So do you remember how the rest of us (Elz, me, Bob Device, Bradley White,
etc.) got involved?
I don't, but the computer does. (One advantage of working on image processing
is big disks and lots of tapes.)

There was a fair amount of mod.std.unix posting in early '86, kicked off by
Mark Horton's original "How best to handle time conversion?" posting.

Bob Devine responded since he'd been responsible for time stuff with an
earlier employer; he was person who knew that astrologers had the
best information about DST in the past.

Robert Elz was motivated by the fact that the Australian government fiddled
the DST rules down there for a visit by the Queen in March of '86.
He boldly installed the early code just before the visit.
Robert's changes to "date" to work with the new functions showed up in
mod.sources in June of '86.
Post by Olson, Arthur David
From munnari!kre Tue Aug 26 13:10:08 1986 remote from seismo
. . .
To: elsie!ado
. . .
Did Guy Harris (sun!guy) ever send you his mods to this stuff?
He has made the compiled timezone files be in "standard" format
so they can reside on one host on a net, and have others access
them (by NFS or whatever), regardless of whether there's a mixture
of Sun's vaxen, etc, with different byte orders & such.
Clearly the mods had been sent by the time that
Post by Olson, Arthur David
From ado Mon Nov 24 19:58:54 1986
. . .
To: tz
Subject: seismo!elsie!tz ; new versions of time zone stuff
Now that we've moved from 4.1BSD to 4.3BSD here at elsie,
I've set things up so that mail sent to
seismo!elsie!tz
will go to folks who've expressed an interest in time zone matters. . .
ado at elsie.UUCP
chris at umcp-cs.UUCP
mark at cbosgd.ATT.COM
kre at munnari.OZ
dlm at cuuxb.ATT.COM
devine at vianet.UUCP
bob at anvil.UUCP
rgt at hpfcdg.UUCP
guy at sun.UUCP
. . .
And now the real news: new versions of the time zone compiler, the
ctime et al. library, and the time zone data are available. Guy Harris
provided the bulk of the ideas and work that went into the new versions,
but should be held innocent of any blame for errors since I've tinkered
with Guy's work (in part to try for more compatibility with System V and
the work of rgt at hpfcdg.UUCP, who's the time zone person at Hewlett-Packard).
. . .
(How it is that I forgot after then how to spell compatibility is beyond me.)

The mailing list saw a flurry of activity in December of '86, with an upcoming
P1003 meeting due to try to figure out how to standardize time conversion;
H-P was preparing an alternative proposal to "P.55," which was based on the
table-driven stuff. As part of the flurry, John S. Quarterman
Post by Olson, Arthur David
From seismo!munnari!kre Sun Dec 7 06:57:42 1986
. . .
To: elsie!tz
Cc: jsq at sally.utexas.edu
Subject: timezone proposals for P1003
. . .
I think things are getting way too complicated.
All P1003 needs (and all it should have) is a spec of
the interface that programs should have to time conversions.
. . .
Robert Elz seismo!munnari!kre
ps: I have added a cc to John Quarterman, who I guess is
as close as anyone to being my representative on P1003,
given that I'm a usenix member... John, this is in response
to some discussions over the HP proposals and other replated
issues. elsie!ado can fill you in on what's been going on I think.
There's a mailing list at elsie for tz discussions.
Bradley White first appears (at least in my back mail files) in early '87:
(presumably after the P1003 meeting?); he was referred by. . .
Post by Olson, Arthur David
From seismo!sun!guy Thu Feb 19 06:56:54 1987
...
To: elsie!ado
Subject: Could you send him the latest version when it's ready?
Cc: bww at k.cs.cmu.edu
Status: RO
From: Bradley White <bww at k.cs.cmu.edu>
Subject: Re: diffs for ctime.c for new DST rules, v7 systems
To: guy at Sun.COM
Guy,
If you could send me (or point me at) a copy of Arthur Olson's "ctime"
I will have it installed in CMU Mach/Unix. Hopefully this will aid in
its dissemination.
...
--ado

Loading...