From 0c873b05ffe4cbf329eee116f9cb4e08a6c203ea Mon Sep 17 00:00:00 2001 From: Patsy Griffin Date: Sun, 14 Aug 2022 22:45:42 -0400 Subject: [PATCH] Resolves: #2117429 Rebase to tzdata-2022b - Chile transitions to DST on 2022-09-11, not 2022-09-04 - 'make install' now defaults LOCALTIME to Factory rather than GMT - More zones that are the same since 1970 have been moved to backzone. - Include patch for awk workaround. --- .gitignore | 2 + 0001-Work-around-awk-bug-1.patch | 153 +++++++++++++++++++++++++++++++ sources | 4 +- tzdata.spec | 17 +++- 4 files changed, 170 insertions(+), 6 deletions(-) create mode 100644 0001-Work-around-awk-bug-1.patch diff --git a/.gitignore b/.gitignore index 3425c90..6a3c12c 100644 --- a/.gitignore +++ b/.gitignore @@ -192,3 +192,5 @@ noarch/ /tzcode2021e.tar.gz /tzdata2022a.tar.gz /tzcode2022a.tar.gz +/tzcode2022b.tar.gz +/tzdata2022b.tar.gz diff --git a/0001-Work-around-awk-bug-1.patch b/0001-Work-around-awk-bug-1.patch new file mode 100644 index 0000000..304accc --- /dev/null +++ b/0001-Work-around-awk-bug-1.patch @@ -0,0 +1,153 @@ +From e8171130f9b80ae3c75dfa5e96c47d5dbc0f4aae Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Wed, 10 Aug 2022 18:58:08 -0700 +Subject: [PROPOSED] Work around macOS awk bug + +* ziguard.awk: Replace every regular expression /ERE/ in ordinary +contexts with ($0 ~ /ERE/), to work around a bug in macOS 13.0 awk. +Problem reported by Deborah Goldsmith in: +https://mm.icann.org/pipermail/tz/2022-August/031783.html +--- + NEWS | 8 ++++++++ + ziguard.awk | 37 ++++++++++++++++++++----------------- + 2 files changed, 28 insertions(+), 17 deletions(-) + +diff --git a/NEWS b/NEWS +index 6a0d5c50..7291030a 100644 +--- a/NEWS ++++ b/NEWS +@@ -1,5 +1,13 @@ + News for the tz database + ++Unreleased, experimental changes ++ ++ Changes to code ++ ++ Work around a bug in macOS 'awk' that broke commands like 'make ++ traditional_tarballs'. (Problem reported by Deborah Goldsmith.) ++ ++ + Release 2022b - 2022-08-10 15:38:32 -0700 + + Briefly: +diff --git a/ziguard.awk b/ziguard.awk +index 0728baa5..0556cc4a 100644 +--- a/ziguard.awk ++++ b/ziguard.awk +@@ -91,12 +91,13 @@ $1 == "#PACKRATLIST" && $2 == PACKRATLIST { + /^Zone/ { zone = $2 } + + DATAFORM != "main" { +- in_comment = /^#/ ++ in_comment = $0 ~ /^#/ + uncomment = comment_out = 0 + + # If this line should differ due to Czechoslovakia using negative SAVE values, + # uncomment the desired version and comment out the undesired one. +- if (zone == "Europe/Prague" && /^#?[\t ]+[01]:00[\t ]/ && /1947 Feb 23/) { ++ if (zone == "Europe/Prague" && $0 ~ /^#?[\t ]+[01]:00[\t ]/ \ ++ && $0 ~ /1947 Feb 23/) { + if (($(in_comment + 2) != "-") == (DATAFORM != "rearguard")) { + uncomment = in_comment + } else { +@@ -106,9 +107,9 @@ DATAFORM != "main" { + + # If this line should differ due to Ireland using negative SAVE values, + # uncomment the desired version and comment out the undesired one. +- Rule_Eire = /^#?Rule[\t ]+Eire[\t ]/ ++ Rule_Eire = $0 ~ /^#?Rule[\t ]+Eire[\t ]/ + Zone_Dublin_post_1968 \ +- = (zone == "Europe/Dublin" && /^#?[\t ]+[01]:00[\t ]/ \ ++ = (zone == "Europe/Dublin" && $0 ~ /^#?[\t ]+[01]:00[\t ]/ \ + && (!$(in_comment + 4) || 1968 < $(in_comment + 4))) + if (Rule_Eire || Zone_Dublin_post_1968) { + if ((Rule_Eire \ +@@ -122,9 +123,9 @@ DATAFORM != "main" { + + # If this line should differ due to Namibia using negative SAVE values, + # uncomment the desired version and comment out the undesired one. +- Rule_Namibia = /^#?Rule[\t ]+Namibia[\t ]/ ++ Rule_Namibia = $0 ~ /^#?Rule[\t ]+Namibia[\t ]/ + Zone_using_Namibia_rule \ +- = (zone == "Africa/Windhoek" && /^#?[\t ]+[12]:00[\t ]/ \ ++ = (zone == "Africa/Windhoek" && $0 ~ /^#?[\t ]+[12]:00[\t ]/ \ + && ($(in_comment + 2) == "Namibia" \ + || ($(in_comment + 2) == "-" && $(in_comment + 3) == "CAT" \ + && ((1994 <= $(in_comment + 4) && $(in_comment + 4) <= 2017) \ +@@ -142,8 +143,8 @@ DATAFORM != "main" { + + # If this line should differ due to Portugal benefiting from %z if supported, + # uncomment the desired version and comment out the undesired one. +- if (/^#?[\t ]+-[12]:00[\t ]+Port[\t ]+[%+-]/) { +- if (/%z/ == (DATAFORM == "vanguard")) { ++ if ($0 ~ /^#?[\t ]+-[12]:00[\t ]+Port[\t ]+[%+-]/) { ++ if (($0 ~ /%z/) == (DATAFORM == "vanguard")) { + uncomment = in_comment + } else { + comment_out = !in_comment +@@ -164,8 +165,8 @@ DATAFORM != "main" { + sub(/-00CHANGE-TO-%z/, "-00") + sub(/[-+][^\t ]+CHANGE-TO-/, "") + } else { +- if (/^[^#]*%z/) { +- stdoff_column = 2 * /^Zone/ + 1 ++ if ($0 ~ /^[^#]*%z/) { ++ stdoff_column = 2 * ($0 ~ /^Zone/) + 1 + rules_column = stdoff_column + 1 + stdoff = get_minutes($stdoff_column) + rules = $rules_column +@@ -184,9 +185,9 @@ DATAFORM != "main" { + dstoff = 20 + } else if (((rules == "Cook" || rules == "LH") && NF == 3) \ + || (rules == "Uruguay" \ +- && /[\t ](1942 Dec 14|1960|1970|1974 Dec 22)$/)) { ++ && $0 ~ /[\t ](1942 Dec 14|1960|1970|1974 Dec 22)$/)) { + dstoff = 30 +- } else if (rules == "Uruguay" && /[\t ]1974 Mar 10$/) { ++ } else if (rules == "Uruguay" && $0 ~ /[\t ]1974 Mar 10$/) { + dstoff = 90 + } else { + dstoff = 60 +@@ -222,7 +223,7 @@ DATAFORM != "main" { + stdoff_subst[1] = rounded_stdoff + } + } else if (stdoff_subst[0]) { +- stdoff_column = 2 * /^Zone/ + 1 ++ stdoff_column = 2 * ($0 ~ /^Zone/) + 1 + stdoff_column_val = $stdoff_column + if (stdoff_column_val == stdoff_subst[0]) { + sub(stdoff_subst[0], stdoff_subst[1]) +@@ -233,7 +234,7 @@ DATAFORM != "main" { + + # In rearguard form, change the Japan rule line with "Sat>=8 25:00" + # to "Sun>=9 1:00", to cater to zic before 2007 and to older Java. +- if (/^Rule/ && $2 == "Japan") { ++ if ($0 ~ /^Rule/ && $2 == "Japan") { + if (DATAFORM == "rearguard") { + if ($7 == "Sat>=8" && $8 == "25:00") { + sub(/Sat>=8/, "Sun>=9") +@@ -250,7 +251,7 @@ DATAFORM != "main" { + # In rearguard form, change the Morocco lines with negative SAVE values + # to use positive SAVE values. + if ($2 == "Morocco") { +- if (/^Rule/) { ++ if ($0 ~ /^Rule/) { + if ($4 ~ /^201[78]$/ && $6 == "Oct") { + if (DATAFORM == "rearguard") { + sub(/\t2018\t/, "\t2017\t") +@@ -290,8 +291,10 @@ DATAFORM != "main" { + /^Zone/ { + packrat_ignored = FILENAME == PACKRATDATA && PACKRATLIST && !packratlist[$2]; + } +-packrat_ignored && !/^Rule/ { +- sub(/^/, "#") ++{ ++ if (packrat_ignored && $0 !~ /^Rule/) { ++ sub(/^/, "#") ++ } + } + + # If a Link line is followed by a Link or Zone line for the same data, comment +-- +2.34.1 + diff --git a/sources b/sources index 9c44d2d..6d8aeed 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ SHA512 (javazic.tar.gz) = c23a4a437a87d0792f23e98025520a11273fc3d12ef5dcf64af8332ed60ba9ce77eaadfd234cee92b3ca9dc08b9e4123e804745925d68ddbd0b2e1e9039e526b SHA512 (javazic-1.8-37392f2f5d59.tar.xz) = 2ba718dfeed53a3bd6b44e3dfe96338a609e482e4e6d942e2a7e622fc6c52606cb323ac3a59739c463e34f70fff217c0a61f5b3d3c4958eff2801b1504ee4204 -SHA512 (tzdata2022a.tar.gz) = 542e4559beac8fd8c4af7d08d816fd12cfe7ffcb6f20bba4ff1c20eba717749ef96e5cf599b2fe03b5b8469c0467f8cb1c893008160da281055a123dd9e810d9 -SHA512 (tzcode2022a.tar.gz) = 3f047a6f414ae3df4a3d6bb9b39a1790833d191ae48e6320ab9438cd326dc455475186a02c44e4cde96b48101ab000880919b1e0e8092aed7254443ed2c831ed +SHA512 (tzcode2022b.tar.gz) = 851622eb8e6dc8f8201bf05e1f7e411ca32b2ed0f4dc9f6b875f4482c05c4a3302259b78c3e8e2dadda52ae19d4d34ffa3463fee10f70fa3a8b08b19f1417f79 +SHA512 (tzdata2022b.tar.gz) = a51418cda50386bc2e82a26201178c282ec225e04867e70a47ef90f42371a4014c70bffebb52ac09ccd893dfa17b0acc782f31527b3579ebdc4a302a9367ddb1 diff --git a/tzdata.spec b/tzdata.spec index 69dc357..862b2a9 100644 --- a/tzdata.spec +++ b/tzdata.spec @@ -1,14 +1,15 @@ Summary: Timezone data Name: tzdata -Version: 2022a -%define tzdata_version 2022a -%define tzcode_version 2022a -Release: 4%{?dist} +Version: 2022b +%define tzdata_version 2022b +%define tzcode_version 2022b +Release: 1%{?dist} License: Public Domain URL: https://www.iana.org/time-zones Source0: ftp://ftp.iana.org/tz/releases/tzdata%{tzdata_version}.tar.gz Source1: ftp://ftp.iana.org/tz/releases/tzcode%{tzcode_version}.tar.gz +Patch001: 0001-Work-around-awk-bug-1.patch Patch002: 0002-Fix-have-snprintf-error.patch %if 0%{?rhel} || 0%{?eln} Patch003: 0003-continue-to-ship-posixrules.patch @@ -43,6 +44,7 @@ This package contains timezone information for use by Java runtimes. %prep %setup -q -c -a 1 +%patch001 -p1 %patch002 -p1 %if 0%{?rhel} || 0%{?eln} %patch003 -p1 @@ -153,6 +155,13 @@ install -p -m 644 tzdb.dat $RPM_BUILD_ROOT%{_datadir}/javazi-1.8/ %{_datadir}/javazi-1.8 %changelog +* Sun Aug 14 2022 Patsy Griffin - 2022b-1 +- Rebase to tzdata-2022b + - Chile transitions to DST on 2022-09-11, not 2022-09-04 + - 'make install' now defaults LOCALTIME to Factory rather than GMT + - More zones that are the same since 1970 have been moved to backzone. + - Include patch for awk workaround. + * Sat Jul 23 2022 Fedora Release Engineering - 2022a-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild