<div dir="ltr">Can I suggest that we split this into two updates, the first containing only the Fiji change, and the second with everything else?<div><br></div><div>The Fiji change will need to roll into our production systems quickly. The raft of other changes have a non-negligible chance of causing a glitch or two as they moves through our internal tooling, so it would be nice to decouple the two.</div>
<div><br></div><div>Thanks,</div><div><br></div><div>  -- Andy Heninger</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Sep 17, 2013 at 2:38 PM, Paul Eggert <span dir="ltr">&lt;<a href="mailto:eggert@cs.ucla.edu" target="_blank">eggert@cs.ucla.edu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 09/12/13 08:39, Tim Parenti wrote:<br>
<br>
&gt; it would be quite prudent to summarize specifically what changes<br>
&gt; are (and are not) made by this changeset<br>
<br>
Yes, although I normally write a change summary when preparing a<br>
release and publish it as part of the release announcement, the<br>
proposed change is large enough that it&#39;d be helpful to circulate<br>
a draft of the change summary now.  Here is a draft for the<br>
current set of proposed changes, which is:<br>
<br>
<a href="https://github.com/eggert/tz/compare/8f10e5c...738ad89" target="_blank">https://github.com/eggert/tz/compare/8f10e5c...738ad89</a><br>
<br>
  Changes affecting near-future time stamps<br>
<br>
    This year Fiji will start DST on October 27, not October 20.<br>
    (Thanks to David Wheeler for the heads-up.)  For now, guess that<br>
    Fiji will continue to spring forward the Sunday before the fourth<br>
    Monday in October.<br>
<br>
  Changes affecting current and future time zone abbreviations<br>
<br>
    Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian<br>
    time zone abbreviations since 1932.  (Thanks to George Ziegler,<br>
    Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and<br>
    Benny Lin.)  This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,<br>
    Asia/Makassar, and Asia/Pontianak.<br>
<br>
    Use ART (UTC-3, standard time), rather than WARST (also UTC-3, but<br>
    daylight saving time) for San Luis, Argentina since 2009.<br>
<br>
  Changes affecting Godthab time stamps after 2037 if version mismatch<br>
<br>
    Allow POSIX-like TZ strings where the transition time&#39;s hour can<br>
    range from -167 through 167, instead of the POSIX-required 0<br>
    through 24.  E.g., TZ=&#39;FJT-12FJST,M10.3.1/146,M1.3.4/75&#39; for the<br>
    new Fiji rules.  This is a more-compact way to represent<br>
    far-future time stamps for America/Godthab, America/Santiago,<br>
    Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,<br>
    Pacific/Easter, and Pacific/Fiji.  Other zones are unaffected by<br>
    this change.  (Derived from a suggestion by Arthur David Olson.)<br>
<br>
    Allow POSIX-like TZ strings where daylight saving time is in<br>
    effect all year.  E.g., TZ=&#39;WART4WARST,J1/0,J365/25&#39; for Western<br>
    Argentina Summer Time all year.  This supports a more-compact way<br>
    to represent the 2013d data for America/Argentina/San_Luis.<br>
    Because of the change for San Luis noted above this change does not<br>
    affect the current data.  (Thanks to Andrew Main (Zefram) for<br>
    suggestions that improved this change.)<br>
<br>
    Where these two TZ changes take effect, there is a minor extension<br>
    to the tz file format in that it allows new values for the<br>
    embedded TZ-format string, and the tz file format version number<br>
    has therefore been increased from 2 to 3 as a precaution.<br>
    Version-2-based client code should continue to work as before for<br>
    all time stamps before 2038.  Existing version-2-based client code<br>
    (tzcode, GNU/Linux, Solaris) has been tested on version-3-format<br>
    files, and typically works in practice even for time stamps after<br>
    2037; the only known exception is America/Godthab.<br>
<br>
  Changes affecting time stamps before 1970<br>
<br>
    Pacific/Johnston is now a link to Pacific/Honolulu.  This corrects<br>
    some errors before 1947.<br>
<br>
    Some zones have been turned into links, when they differ from<br>
    existing zones only in older data that was likely invented or that<br>
    differs only in LMT or transition from LMT.  These changes affect<br>
    only time stamps before 1943.  The affected zones are:<br>
    Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,<br>
    America/Grenada, America/Guadeloupe, America/Marigot,<br>
    America/Montserrat, America/St_Barthelemy, America/St_Kitts,<br>
    America/St_Lucia, America/St_Thomas, America/St_Vincent,<br>
    America/Tortola, and Europe/Vaduz.<br>
<br>
    Change Kingston Mean Time from -5:07:12 to -5:07:11.  This affects<br>
    America/Cayman, America/Jamaica and America/Grand_Turk time stamps<br>
    from 1890 to 1912.<br>
<br>
    Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.<br>
    This affects Europe/Zurich time stamps from 1853 to 1894.  (Thanks<br>
    to Alois Treindl).<br>
<br>
    Change the date of the circa-1850 Zurich transition from 1849-09-12<br>
    to 1853-07-16, overriding Shanks with data from Messerli about<br>
    postal and telegraph time in Switzerland.<br>
<br>
  Changes affecting time zone abbreviations before 1970<br>
<br>
    For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,<br>
    as Jakarta was called Batavia back then.<br>
<br>
  Changes affecting API<br>
<br>
    The &#39;zic&#39; command now outputs a dummy transition when far-future<br>
    data can&#39;t be summarized using a TZ string, and uses a 402-year<br>
    window rather than a 400-year window.  For the current data, this<br>
    affects only the Asia/Tehran file.  It does not affect any of the<br>
    time stamps that this file represents, so zdump outputs the same<br>
    information as before.  (Thanks to Andrew Main (Zefram).)<br>
<br>
    The &#39;date&#39; command has a new &#39;-r&#39; option, which lets you specify<br>
    the integer time to display, a la FreeBSD.<br>
<br>
    The &#39;tzselect&#39; command has two new options &#39;-c&#39; and &#39;-n&#39;, which lets you<br>
    select a zone based on latitude and longitude.<br>
<br>
    The &#39;zic&#39; command&#39;s &#39;-v&#39; option now warns about constructs that<br>
    require the new version-3 binary file format.  (Thanks to Arthur<br>
    David Olson for the suggestion.)<br>
<br>
    Support for floating-point time_t has been removed.<br>
    It was always dicey, and POSIX no longer requires it.<br>
    (Thanks to Eric Blake for suggesting to the POSIX committee to<br>
    remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy<br>
    Heninger, Arthur David Olson, and Alois Treindl, for reporting<br>
    bugs and elucidating some of the corners of the old floating-point<br>
    implementation.)<br>
<br>
    The signatures of &#39;offtime&#39;, &#39;timeoff&#39;, and &#39;gtime&#39; have been<br>
    changed back to the old practice of using &#39;long&#39; to represent UT<br>
    offsets.  This had been inadvertently and mistakenly changed to<br>
    &#39;int_fast32_t&#39;.  (Thanks to Christos Zoulos.)<br>
<br>
    The code avoids undefined behavior on integer overflow in some<br>
    more places, including gmtime, localtime, mktime and zdump.<br>
<br>
  Changes affecting the zdump utility<br>
<br>
    zdump now outputs &quot;UT&quot; when referring to Universal Time, not &quot;UTC&quot;.<br>
    &quot;UTC&quot; does not make sense for time stamps that predate the introduction<br>
    of UTC, whereas &quot;UT&quot;, a more-generic term, does.  (Thanks to Steve Allen<br>
    for clarifying UT vs UTC.)<br>
<br>
  Data changes affecting behavior of tzselect and similar programs<br>
<br>
    Country code BQ is now called the more-common name &quot;Caribbean<br>
Netherlands&quot;<br>
    rather than the more-official &quot;Bonaire, St Eustatius &amp; Saba&quot;.<br>
<br>
    Remove from zone.tab the names America/Montreal, America/Shiprock,<br>
    and Antarctica/South_Pole, as they are equivalent to existing<br>
    same-country-code zones for post-1970 time stamps.  The data for<br>
    these names are unchanged, so the names continue to work as before.<br>
<br>
  Changes affecting code internals<br>
<br>
    zic -c now runs way faster on 64-bit hosts when given large numbers.<br>
<br>
    zic now uses vfprintf to allocating and freeing some memory.<br>
<br>
    tzselect now computes the list of continents from the data,<br>
    rather than have it hard-coded.<br>
<br>
    Minor changes pacify GCC 4.7.3 and GCC 4.8.1.<br>
<br>
  Changes affecting the build procedure<br>
<br>
    The &#39;leapseconds&#39; file is now generated automatically from a<br>
    new file &#39;leap-seconds.list&#39;, which is a copy of<br>
    &lt;<a href="ftp://time.nist.gov/pub/leap-seconds.list" target="_blank">ftp://time.nist.gov/pub/leap-seconds.list</a>&gt;.<br>
    A new source file &#39;leapseconds.awk&#39; implements this.<br>
    The goal is simplification of the future maintenance of &#39;leapseconds&#39;.<br>
<br>
    When building the &#39;posix&#39; or &#39;right&#39; subdirectories, if the<br>
    subdirectory would be a copy of the default subdirectory, it is<br>
    now made a symbolic link if that is supported.  This saves about<br>
    2 MB of file system space.<br>
<br>
    The links America/Shiprock and Antarctica/South_Pole have been<br>
    moved to the &#39;backward&#39; file.  This affects only nondefault builds<br>
    that omit &#39;backward&#39;.<br>
<br>
  Changes affecting version-control only<br>
<br>
    .gitignore now ignores &#39;date&#39;.<br>
<br>
  Changes affecting documentation and commentary<br>
<br>
    Changes to the &#39;tzfile&#39; man page<br>
<br>
      It now mentions that the binary file format may be extended in<br>
      future versions by appending data.<br>
<br>
      It now refers to the &#39;zdump&#39; and &#39;zic&#39; man pages.<br>
<br>
    Changes to the &#39;zic&#39; man page<br>
<br>
      It lists conditions that elicit a warning with &#39;-v&#39;.<br>
<br>
      It says that the behavior is unspecified when duplicate names<br>
      are given, or if the source of one link is the target of another.<br>
<br>
      Its examples are updated to match the latest data.<br>
<br>
      The definition of white space has been clarified slightly.<br>
      (Thanks to Michael Deckers.)<br>
<br>
    Changes to the &#39;Theory&#39; file<br>
<br>
      There is a new section about the accuracy of the tz database,<br>
      describing the many ways that errors can creep in, and<br>
      explaining why so many of the pre-1970 time stamps are wrong or<br>
      misleading (thanks to Steve Allen, Lester Caine, and Garrett<br>
      Wollman for discussions that contributed to this).<br>
<br>
      The &#39;Theory&#39; file describes LMT better (this follows a<br>
      suggestion by Guy Harris).<br>
<br>
      It refers to the 2013 edition of POSIX rather than the 2004 edition.<br>
<br>
      It&#39;s mentioned that excluding &#39;backward&#39; should not affect the<br>
      other data, and it suggests at least one zone.tab name per<br>
      inhabited country (thanks to Stephen Colebourne).<br>
<br>
      Some longstanding restrictions on names are documented, e.g.,<br>
      &#39;America/New_York&#39; precludes &#39;America/New_York/Bronx&#39;.<br>
<br>
      It gives more reasons for the 1970 cutoff.<br>
<br>
      It now mentions which time_t variants are supported, such as<br>
      signed integer time_t.  (Thanks to Paul Goyette for reporting<br>
      typos in an experimental version of this change.)<br>
<br>
      (Thanks to Philip Newton for correcting typos in these changes.)<br>
<br>
    Documentation and commentary is more careful to distinguish UT in<br>
    general from UTC in particular.  (Thanks to Steve Allen.)<br>
<br>
    Add a better source for the Zurich 1894 transition.<br>
    (Thanks to Pierre-Yves Berger.)<br>
<br>
    Update shapefile citations in tz-link.htm.  (Thanks to Guy Harris.)<br>
<br>
</blockquote></div><br></div>