Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-10]: src Pull up the following, requested by kre in ticket #149:



details:   https://anonhg.NetBSD.org/src/rev/a4d907f561d6
branches:  netbsd-10
changeset: 374473:a4d907f561d6
user:      martin <martin%NetBSD.org@localhost>
date:      Tue Apr 25 15:58:37 2023 +0000

description:
Pull up the following, requested by kre in ticket #149:

        external/public-domain/tz/dist/CONTRIBUTING     up to 1.1.1.8
        external/public-domain/tz/dist/Makefile         up to 1.1.1.36
        external/public-domain/tz/dist/NEWS             up to 1.1.1.43
        external/public-domain/tz/dist/TZDATA_VERSION   up to 1.35
        external/public-domain/tz/dist/africa           up to 1.1.1.31
        external/public-domain/tz/dist/antarctica       up to 1.1.1.17
        external/public-domain/tz/dist/asia             up to 1.10
        external/public-domain/tz/dist/australasia      up to 1.7
        external/public-domain/tz/dist/backward         up to 1.11
        external/public-domain/tz/dist/backzone         up to 1.1.1.26
        external/public-domain/tz/dist/checktab.awk     up to 1.1.1.12
        external/public-domain/tz/dist/europe           up to 1.1.1.37
        external/public-domain/tz/dist/iso3166.tab      up to 1.1.1.8
        external/public-domain/tz/dist/leap-seconds.list up to 1.5
        external/public-domain/tz/dist/leapseconds      up to 1.5
        external/public-domain/tz/dist/leapseconds.awk  up to 1.1.1.13
        external/public-domain/tz/dist/northamerica     up to 1.1.1.33
        external/public-domain/tz/dist/southamerica     up to 1.1.1.23
        external/public-domain/tz/dist/theory.html      up to 1.1.1.18
        external/public-domain/tz/dist/version          up to 1.10
        external/public-domain/tz/dist/zone.tab         up to 1.1.1.25
        external/public-domain/tz/dist/zone1970.tab     up to 1.1.1.26
        doc/3RDPARTY                                    (apply patch)

sync with HEAD: updated tzdata to 2023c

diffstat:

 doc/3RDPARTY                                     |    8 +-
 external/public-domain/tz/dist/CONTRIBUTING      |    2 +-
 external/public-domain/tz/dist/Makefile          |   53 +++---
 external/public-domain/tz/dist/NEWS              |  143 +++++++++++++++++--
 external/public-domain/tz/dist/TZDATA_VERSION    |    2 +-
 external/public-domain/tz/dist/africa            |   71 +++++---
 external/public-domain/tz/dist/antarctica        |    2 +-
 external/public-domain/tz/dist/asia              |  166 +++++++++++++++++++++-
 external/public-domain/tz/dist/australasia       |   42 ++---
 external/public-domain/tz/dist/backward          |    1 +
 external/public-domain/tz/dist/backzone          |   11 +-
 external/public-domain/tz/dist/checktab.awk      |    5 +-
 external/public-domain/tz/dist/europe            |   59 +++----
 external/public-domain/tz/dist/iso3166.tab       |    2 +-
 external/public-domain/tz/dist/leap-seconds.list |    8 +-
 external/public-domain/tz/dist/leapseconds       |    8 +-
 external/public-domain/tz/dist/leapseconds.awk   |   50 ++++--
 external/public-domain/tz/dist/northamerica      |   31 ++--
 external/public-domain/tz/dist/southamerica      |    2 +-
 external/public-domain/tz/dist/theory.html       |   66 ++++++---
 external/public-domain/tz/dist/version           |    2 +-
 external/public-domain/tz/dist/zone.tab          |   29 +--
 external/public-domain/tz/dist/zone1970.tab      |   58 ++++---
 23 files changed, 563 insertions(+), 258 deletions(-)

diffs (truncated from 1960 to 300 lines):

diff -r c201987959ce -r a4d907f561d6 doc/3RDPARTY
--- a/doc/3RDPARTY      Tue Apr 25 15:33:22 2023 +0000
+++ b/doc/3RDPARTY      Tue Apr 25 15:58:37 2023 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: 3RDPARTY,v 1.1905.2.1 2023/02/24 13:42:06 martin Exp $
+#      $NetBSD: 3RDPARTY,v 1.1905.2.2 2023/04/25 15:58:37 martin Exp $
 #
 # This file contains a list of the software that has been integrated into
 # NetBSD where we are not the primary maintainer.
@@ -1424,14 +1424,14 @@ Location:       external/bsd/tradcpp
 Notes:
 
 Package:       tz
-Version:       tzcode2022g / tzdata2022ggtz
-Current Vers:  tzcode2022g / tzdata2022g
+Version:       tzcode2022g / tzdata2023cgtz
+Current Vers:  tzcode2023c / tzdata2023c
 Maintainer:    Paul Eggert <eggert%cs.ucla.edu@localhost>
 Archive Site:  ftp://ftp.iana.org/tz/releases/
 Archive Site:  ftp://munnari.oz.au/pub/oldtz/
 Old Archive Site:      ftp://elsie.nci.nih.gov/pub/
 Home Page:     http://www.iana.org/time-zones
-Date:          2022-12-11
+Date:          2023-04-24
 Mailing List:  tz%iana.org@localhost
 Responsible:   kleink, christos, kre
 License:       Public domain
diff -r c201987959ce -r a4d907f561d6 external/public-domain/tz/dist/CONTRIBUTING
--- a/external/public-domain/tz/dist/CONTRIBUTING       Tue Apr 25 15:33:22 2023 +0000
+++ b/external/public-domain/tz/dist/CONTRIBUTING       Tue Apr 25 15:58:37 2023 +0000
@@ -18,7 +18,7 @@ To email small changes, please run a POS
 'diff -u old/europe new/europe >myfix.patch', and attach
 'myfix.patch' to the email.
 
-For more-elaborate or possibly-controversial changes,
+For more-elaborate or possibly controversial changes,
 such as renaming, adding or removing zones, please read
 "Theory and pragmatics of the tz code and data"
 <https://www.iana.org/time-zones/repository/theory.html>.
diff -r c201987959ce -r a4d907f561d6 external/public-domain/tz/dist/Makefile
--- a/external/public-domain/tz/dist/Makefile   Tue Apr 25 15:33:22 2023 +0000
+++ b/external/public-domain/tz/dist/Makefile   Tue Apr 25 15:58:37 2023 +0000
@@ -35,22 +35,14 @@ DATAFORM=           main
 
 LOCALTIME=     Factory
 
-# The POSIXRULES macro controls interpretation of nonstandard and obsolete
-# POSIX-like TZ settings like TZ='EET-2EEST' that lack DST transition rules.
-# Such a setting uses the rules in a template file to determine
-# "spring forward" and "fall back" days and times; the environment
-# variable itself specifies UT offsets of standard and daylight saving time.
-#
+# The POSIXRULES macro controls interpretation of POSIX-like TZ
+# settings like TZ='EET-2EEST' that lack DST transition rules.
 # If POSIXRULES is '-', no template is installed; this is the default.
-#
 # Any other value for POSIXRULES is obsolete and should not be relied on, as:
 # * It does not work correctly in popular implementations such as GNU/Linux.
 # * It does not work even in tzcode, except for historical timestamps
 #   that precede the last explicit transition in the POSIXRULES file.
 #   Hence it typically does not work for current and future timestamps.
-# In short, software should avoid ruleless settings like TZ='EET-2EEST'
-# and so should not depend on the value of POSIXRULES.
-#
 # If, despite the above, you want a template for handling these settings,
 # you can change the line below (after finding the timezone you want in the
 # one of the $(TDATA) source files, or adding it to a source file).
@@ -63,7 +55,7 @@ LOCALTIME=    Factory
 POSIXRULES=    -
 
 # Also see TZDEFRULESTRING below, which takes effect only
-# if the time zone files cannot be accessed.
+# if POSIXRULES is '-' or if the template file cannot be accessed.
 
 
 # Installation locations.
@@ -211,7 +203,7 @@ LDLIBS=
 #  -DHAVE_DECL_ENVIRON if <unistd.h> declares 'environ'
 #  -DHAVE_DECL_TIMEGM=0 if <time.h> does not declare timegm
 #  -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows)
-#  -DHAVE_GENERIC=0 if _Generic does not work*
+#  -DHAVE__GENERIC=0 if _Generic does not work*
 #  -DHAVE_GETRANDOM if getrandom works (e.g., GNU/Linux),
 #      -DHAVE_GETRANDOM=0 to avoid using getrandom
 #  -DHAVE_GETTEXT if gettext works (e.g., GNU/Linux, FreeBSD, Solaris),
@@ -220,7 +212,7 @@ LDLIBS=
 #  -DHAVE_INCOMPATIBLE_CTIME_R if your system's time.h declares
 #      ctime_r and asctime_r incompatibly with the POSIX standard
 #      (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined).
-#  -DHAVE_INTTYPES_H=0 if <inttypes.h> does not work*
+#  -DHAVE_INTTYPES_H=0 if <inttypes.h> does not work*+
 #  -DHAVE_LINK=0 if your system lacks a link function
 #  -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function
 #  -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz
@@ -229,22 +221,24 @@ LDLIBS=
 #  -DHAVE_POSIX_DECLS=0 if your system's include files do not declare
 #      functions like 'link' or variables like 'tzname' required by POSIX
 #  -DHAVE_SETENV=0 if your system lacks the setenv function
-#  -DHAVE_SNPRINTF=0 if your system lacks the snprintf function
+#  -DHAVE_SNPRINTF=0 if your system lacks the snprintf function+
 #  -DHAVE_STDCKDINT_H=0 if neither <stdckdint.h> nor substitutes like
 #      __builtin_add_overflow work*
-#  -DHAVE_STDINT_H=0 if <stdint.h> does not work*
+#  -DHAVE_STDINT_H=0 if <stdint.h> does not work*+
 #  -DHAVE_STRFTIME_L if <time.h> declares locale_t and strftime_l
 #  -DHAVE_STRDUP=0 if your system lacks the strdup function
-#  -DHAVE_STRTOLL=0 if your system lacks the strtoll function
+#  -DHAVE_STRTOLL=0 if your system lacks the strtoll function+
 #  -DHAVE_SYMLINK=0 if your system lacks the symlink function
 #  -DHAVE_SYS_STAT_H=0 if <sys/stat.h> does not work*
 #  -DHAVE_TZSET=0 if your system lacks a tzset function
 #  -DHAVE_UNISTD_H=0 if <unistd.h> does not work*
 #  -DHAVE_UTMPX_H=0 if <utmpx.h> does not work*
 #  -Dlocale_t=XXX if your system uses XXX instead of locale_t
+#  -DPORT_TO_C89 if tzcode should also run on C89 platforms+
 #  -DRESERVE_STD_EXT_IDS if your platform reserves standard identifiers
 #      with external linkage, e.g., applications cannot define 'localtime'.
 #  -Dssize_t=long on hosts like MS-Windows that lack ssize_t
+#  -DSUPPORT_C89 if the tzcode library should support C89 callers+
 #  -DSUPPRESS_TZDIR to not prepend TZDIR to file names; this has
 #      security implications and is not recommended for general use
 #  -DTHREAD_SAFE to make localtime.c thread-safe, as POSIX requires;
@@ -256,7 +250,13 @@ LDLIBS=
 #  -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory;
 #      the default is system-supplied, typically "/usr/lib/locale"
 #  -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified
-#      DST transitions if the time zone files cannot be accessed
+#      DST transitions for POSIX-style TZ strings lacking them,
+#      in the usual case where POSIXRULES is '-'.  If not specified,
+#      TZDEFRULESTRING defaults to US rules for future DST transitions.
+#      This mishandles some past timestamps, as US DST rules have changed.
+#      It also mishandles settings like TZ='EET-2EEST' for eastern Europe,
+#      as Europe and US DST rules differ.
+#  -DTZNAME_MAXIMUM=N to limit time zone abbreviations to N bytes (default 255)
 #  -DUNINIT_TRAP if reading uninitialized storage can cause problems
 #      other than simply getting garbage data
 #  -DUSE_LTZ=0 to build zdump with the system time zone library
@@ -273,6 +273,8 @@ LDLIBS=
 #  $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking
 #
 # * Options marked "*" can be omitted if your compiler is C23 compatible.
+# * Options marked "+" are obsolescent and are planned to be removed
+#   once the code assumes C99 or later.
 #
 # Select instrumentation via "make GCC_INSTRUMENT='whatever'".
 GCC_INSTRUMENT = \
@@ -363,7 +365,7 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fn
 #      -DNETBSD_INSPIRED=0
 # to the end of the "CFLAGS=" line.  Otherwise, the functions
 # "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the
-# time library, and if STD_INSPIRED is also defined the functions
+# time library, and if STD_INSPIRED is also defined to nonzero the functions
 # "posix2time_z" and "time2posix_z" are added as well.
 # The functions ending in "_z" (or "_rz") are like their unsuffixed
 # (or suffixed-by-"_r") counterparts, except with an extra first
@@ -455,16 +457,13 @@ SAFE_CHARSET3=    'abcdefghijklmnopqrstuvwx
 SAFE_CHARSET=  $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3)
 SAFE_CHAR=     '[]'$(SAFE_CHARSET)'-]'
 
-# These characters are Latin-1, and so are likely to be displayable
-# even in editors with limited character sets.
-UNUSUAL_OK_LATIN_1 = «°±»½¾×
-# This IPA symbol is represented in Unicode as the composition of
-# U+0075 and U+032F, and U+032F is not considered alphabetic by some
-# grep implementations that do not grok composition.
-UNUSUAL_OK_IPA = u̯
+# These non-alphabetic, non-ASCII printable characters are Latin-1,
+# and so are likely displayable even in editors like XEmacs 21
+# that have limited display capabilities.
+UNUSUAL_OK_LATIN_1 = ¡¢£¤¥¦§¨©«¬®¯°±²³´¶·¸¹»¼½¾¿×÷
 # Non-ASCII non-letters that OK_CHAR allows, as these characters are
 # useful in commentary.
-UNUSUAL_OK_CHARSET= $(UNUSUAL_OK_LATIN_1)$(UNUSUAL_OK_IPA)
+UNUSUAL_OK_CHARSET= $(UNUSUAL_OK_LATIN_1)
 
 # Put this in a bracket expression to match spaces.
 s = [:space:]
@@ -833,7 +832,7 @@ check_slashed_abbrs: $(TDATA_TO_CHECK)
 
 CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
 
-check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
+check_sorted: backward backzone
                $(AWK) '/^Link/ {printf "%.5d %s\n", g, $$3} !/./ {g++}' \
                  backward | LC_ALL=C sort -cu
                $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
diff -r c201987959ce -r a4d907f561d6 external/public-domain/tz/dist/NEWS
--- a/external/public-domain/tz/dist/NEWS       Tue Apr 25 15:33:22 2023 +0000
+++ b/external/public-domain/tz/dist/NEWS       Tue Apr 25 15:58:37 2023 +0000
@@ -1,5 +1,116 @@
 News for the tz database
 
+Release 2023c - 2023-03-28 12:42:14 -0700
+
+  Changes to past and future timestamps
+
+    Model Lebanon's DST chaos by reverting data to tzdb 2023a.
+    (Thanks to Rany Hany for the heads-up.)
+
+
+Release 2023b - 2023-03-23 19:50:38 -0700
+
+  Changes to future timestamps
+
+    This year Lebanon springs forward April 20/21 not March 25/26.
+    (Thanks to Saadallah Itani.)  [This was reverted in 2023c.]
+
+
+Release 2023a - 2023-03-22 12:39:33 -0700
+
+  Briefly:
+    Egypt now uses DST again, from April through October.
+    This year Morocco springs forward April 23, not April 30.
+    Palestine delays the start of DST this year.
+    Much of Greenland still uses DST from 2024 on.
+    America/Yellowknife now links to America/Edmonton.
+    tzselect can now use current time to help infer timezone.
+    The code now defaults to C99 or later.
+    Fix use of C23 attributes.
+
+  Changes to future timestamps
+
+    Starting in 2023, Egypt will observe DST from April's last Friday
+    through October's last Thursday.  (Thanks to Ahmad ElDardiry.)
+    Assume the transition times are 00:00 and 24:00, respectively.
+
+    In 2023 Morocco's spring-forward transition after Ramadan
+    will occur April 23, not April 30.  (Thanks to Milamber.)
+    Adjust predictions for future years accordingly.  This affects
+    predictions for 2023, 2031, 2038, and later years.
+
+    This year Palestine will delay its spring forward from
+    March 25 to April 29 due to Ramadan.  (Thanks to Heba Hamad.)
+    Make guesses for future Ramadans too.
+
+    Much of Greenland, represented by America/Nuuk, will continue to
+    observe DST using European Union rules.  When combined with
+    Greenland's decision not to change the clocks in fall 2023,
+    America/Nuuk therefore changes from -03/-02 to -02/-01 effective
+    2023-10-29 at 01:00 UTC.  (Thanks to Thomas M. Steenholdt.)
+    This change from 2022g doesn't affect timestamps until 2024-03-30,
+    and doesn't affect tm_isdst until 2023-03-25.
+
+  Changes to past timestamps
+
+    America/Yellowknife has changed from a Zone to a backward
+    compatibility Link, as it no longer differs from America/Edmonton
+    since 1970.  (Thanks to Almaz Mingaleev.)  This affects some
+    pre-1948 timestamps.  The old data are now in 'backzone'.
+
+  Changes to past time zone abbreviations
+
+    When observing Moscow time, Europe/Kirov and Europe/Volgograd now
+    use the abbreviations MSK/MSD instead of numeric abbreviations,
+    for consistency with other timezones observing Moscow time.
+
+  Changes to code
+
+    You can now tell tzselect local time, to simplify later choices.
+    Select the 'time' option in its first prompt.
+
+    You can now compile with -DTZNAME_MAXIMUM=N to limit time zone
+    abbreviations to N bytes (default 255).  The reference runtime
+    library now rejects POSIX-style TZ strings that contain longer
+    abbreviations, treating them as UTC.  Previously the limit was
+    platform dependent and abbreviations were silently truncated to
+    16 bytes even when the limit was greater than 16.
+
+    The code by default is now designed for C99 or later.  To build in
+    a C89 environment, compile with -DPORT_TO_C89.  To support C89
+    callers of the tzcode library, compile with -DSUPPORT_C89.  The
+    two new macros are transitional aids planned to be removed in a
+    future version, when C99 or later will be required.
+
+    The code now builds again on pre-C99 platforms, if you compile
+    with -DPORT_TO_C89.  This fixes a bug introduced in 2022f.
+
+    On C23-compatible platforms tzcode no longer uses syntax like
+    'static [[noreturn]] void usage(void);'.  Instead, it uses
+    '[[noreturn]] static void usage(void);' as strict C23 requires.
+    (Problem reported by Houge Langley.)
+
+    The code's functions now constrain their arguments with the C
+    'restrict' keyword consistently with their documentation.
+    This may allow future optimizations.
+
+    zdump again builds standalone with ckdadd and without setenv,
+    fixing a bug introduced in 2022g.  (Problem reported by panic.)
+
+    leapseconds.awk can now process a leap seconds file that never
+    expires; this might be useful if leap seconds are discontinued.
+
+  Changes to commentary
+
+    tz-link.html has a new section "Coordinating with governments and
+    distributors".  (Thanks to Neil Fuller for some of the text.)
+
+    To improve tzselect diagnostics, zone1970.tab's comments column is
+    now limited to countries that have multiple timezones.
+


Home | Main Index | Thread Index | Old Index