Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8056969

(tz) Embed tzdata2014g into tzupdater


    • Type: Enhancement
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: tz1.3.49
    • Component/s: tools
    • Resolved In Build:
    • CPU:
    • OS:


      The 2014g release of the tz code and data is available. It reflects the following changes, which were either circulated on the tz mailing list or are relatively minor technical or administrative changes:

        Changes affecting future time stamps

          Turks & Caicos is switching from US eastern time to UTC-4 year-round,
          modeled as a switch from EST/EDT to AST on 2014-11-02 at 02:00.

        Changes affecting past time stamps

          Time in Russia or the USSR before 1926 or so has been corrected by
          a few seconds in the following zones: Asia/Irkutsk,
          Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
          Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For
          Asia/Yekaterinburg the correction is a few minutes. (Thanks to
          Vladimir Karpinsky.)

          The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
          This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
          Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912
          GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
          (Thanks to Stephen Colebourne for pointing to the decree.)

          Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.

          A new file 'backzone' contains data which may appeal to
          connoisseurs of old time stamps, although it is out of scope for
          the tz database, is often poorly sourced, and contains some data
          that is known to be incorrect. The new file is not recommended
          for ordinary use and its entries are not installed by default.
          (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
          Isle of Man entries.)

          Some more zones have been turned into links, when they differed
          from existing zones only for older time stamps. As usual,
          these changes affect UTC offsets in pre-1970 time stamps only.
          Their old contents have been moved to the 'backzone' file.
          The affected zones are: Africa/Bangui, Africa/Brazzaville,
          Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
          Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.

        Changes affecting code

          Unless NETBSD_INSPIRED is defined to 0, the tz library now
          supplies functions for creating and using objects that represent
          time zones. The new functions are tzalloc, tzfree, localtime_rz,
          mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
          time2posix_z. They are intended for performance: for example,
          localtime_rz (unlike localtime_r) is trivially thread-safe without
          locking. (Thanks to Christos Zoulas for proposing NetBSD-inspired
          functions, and to Alan Barrett and Jonathan Lennox for helping to
          debug the change.)

          zdump now builds with the tz library unless USE_LTZ is defined to 0,
          This lets zdump use tz features even if the system library lacks them.
          To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0

          zdump now uses localtime_rz if available, as it's significantly faster,
          and it can help zdump better diagnose invalid time zone names.
          Define HAVE_LOCALTIME_RZ to 0 to suppress this. HAVE_LOCALTIME_RZ
          defaults to 1 if NETBSD_INSPIRED && USE_LTZ. When localtime_rz is
          not available, zdump now uses localtime_r and tzset if available,
          as this is a bit cleaner and faster than plain localtime. Compile
          with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
          lacks these two functions.

          If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
          Although not needed for tz's own applications, which are single-threaded,
          this supports POSIX better if the tz library is used in multithreaded apps.

          Some crashes have been fixed when zdump or the tz library is given
          invalid or outlandish input.

          The tz library no longer mishandles leap seconds on platforms with
          unsigned time_t in time zones that lack ordinary transitions after 1970.

          The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
          already defined, to make it easier to configure on common platforms.
          Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.

          Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
          assumes that reading uninitialized memory yields garbage values
          but does not cause other problems such as traps.

          If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
          more likely to guess right for ambiguous time stamps near
          transitions where tm_isdst does not change.

          If HAVE_STRFTIME_L is defined to 1, the tz library now defines
          strftime_l for compatibility with recent versions of POSIX.
          Only the C locale is supported, though. HAVE_STRFTIME_L defaults
          to 1 on recent POSIX versions, and to 0 otherwise.

          tzselect -c now uses a hybrid distance measure that works better
          in Africa. (Thanks to Alan Barrett for noting the problem.)

          The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
          or when time_tz is defined.

          When HAVE_UTMPX_H is set the 'date' command now builds on systems
          whose <utmpx.h> file does not define WTMPX_FILE, and when setting
          the date it updates the wtmpx file if _PATH_WTMPX is defined.
          This affects GNU/Linux and similar systems.

          For easier maintenance later, some C code has been simplified,
          some lint has been removed, and the code has been tweaked so that
          plain 'make' is more likely to work.

          The C type 'bool' is now used for boolean values, instead of 'int'.

          The long-obsolete LOCALE_HOME code has been removed.

          The long-obsolete 'gtime' function has been removed.

        Changes affecting build procedure

          'zdump' no longer links in ialloc.o, as it's not needed.

          'make check_time_t_alternatives' no longer assumes GNU diff.

        Changes affecting distribution tarballs

          The files checktab.awk and zoneinfo2tdf.pl are now distributed in
          the tzdata tarball instead of the tzcode tarball, since they help
          maintain the data. The NEWS and Theory files are now also
          distributed in the tzdata tarball, as they're relevant for data.
          (Thanks to Alan Barrett for pointing this out.) Also, the
          leapseconds.awk file is no longer distributed in the tzcode
          tarball, since it belongs in the tzdata tarball (where 2014f
          inadvertently also distributed it).

        Changes affecting documentation and commentary

          A new file CONTRIBUTING is distributed. (Thanks to Tim Parenti for
          suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
          for debugging it.)

          The man pages have been updated to use function prototypes,
          to document thread-safe variants like localtime_r, and to document
          the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and

          The fields in Link lines have been renamed to be more descriptive
          and more like the parameters of 'ln'. LINK-FROM has become TARGET,
          and LINK-TO has become LINK-NAME.

          tz-link.htm mentions the IETF's tzdist working group; Windows
          Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.

          Some broken URLs have been fixed in the commentary. (Thanks to
          Lester Caine.)

          Commentary about Philippines DST has been updated, and commentary
          on pre-1970 time in India has been added.

      Here are links to the release files:



          Issue Links



              • Assignee:
                aefimov Aleksej Efimov
                aefimov Aleksej Efimov
              • Votes:
                0 Vote for this issue
                1 Start watching this issue


                • Created: