Compare commits

..

5 commits

Author SHA1 Message Date
Patsy Franklin
086bc0a9a8 Rebase to tzdata-2018g
- Morocco will change from UTC+00/+01 to permanent +01
    effective 2018-10-27.
  - Includes changes for tzdata-2018f.
    - Volgograd will change from UTC+03 to UTC+04 on 2018-10-28 at 02:00.
    - Fiji will end DST on 2019-01-13 instead of the 2019-01-20 as
      previously predicted.
    - Most of Chile will end DST on the first Saturday in April at 24:00
      and restart DST on the first Saturday in September at 24:00.
2018-11-12 18:17:57 -05:00
Patsy Franklin
c686966346 Resolves: #1574758
Rebase to tzdata-2018e
  - North Korea changed from UTC+8:30 to UTC+9 on May 5, 2018.
  - In this update, the upstream project now defaults to using
    the "vanguard" data implementation which includes negative DST offsets.
    However, we are continuing to provide the "rearguard" format
    for data which does not use negative DST offsets to provide
    better compatibility with existing tools.  We intend to transition
    to the "vanguard" data implementation in the future.
2018-05-17 16:21:50 -04:00
Patsy Franklin
25bc6960c9 Resolves: #1560131
- Rebase to tzdata-2018d:
  - DST for Asia/Gaza and Asia/Hebron has changed from March 31 to March 24.
  - Antarctica/Casey station changed to UTC+8 on March 11.
2018-03-28 16:23:09 -04:00
Patsy Franklin
b5aa649107 Resolves: #1535266
- Rebase to tzdata-2018c:
  - São Tomé and Príncipe changed from +00 to +01 on January 1, 2018
  - Brazil's DST will start on the first Sunday in November
  - Support for the new zic -t option.
  - Add back pacificnew file omitted in tzdata-2018a
2018-02-02 09:44:10 -05:00
Patsy Franklin
8dba351f41 Resolves #1507341
- Rebase to tzdata-2017c
   - Northern Cyprus will revert to using EQ rules on October 29, 2017.
   - Sudan will switch from +03 to +02 on November 1, 2017.
   - Tonga will not change it's clocks on Novemeber 5, 2017 ending it's
     experiment with DST.
   - Fiji DST will end on January 14, 2018 rather than January 21, 2018.
   - Namibia - starting September 3, 2017 switches from +)1 with DST to
     +02 all year.  This change takes effect April 1, 2018.
   - Turks & Caicos changes from -04 all year to -05 with US DST starting
     on March 11, 2018.  Effective change date is November 4, 2018.
   - tzdata now includes two text versions of the time zone data - tzdata.zi
     and leapseconds.
   - Includes two patches to deal with build issues.
2017-10-29 19:53:30 -04:00
27 changed files with 112 additions and 2195 deletions

View file

@ -1 +0,0 @@
1

56
.gitignore vendored
View file

@ -166,59 +166,3 @@ noarch/
/tzdata2018e.tar.gz
/tzcode2018g.tar.gz
/tzdata2018g.tar.gz
/tzcode2018i.tar.gz
/tzdata2018i.tar.gz
/tzcode2019a.tar.gz
/tzdata2019a.tar.gz
/tzcode2019b.tar.gz
/tzdata2019b.tar.gz
/tzcode2019c.tar.gz
/tzdata2019c.tar.gz
/tzcode2020a.tar.gz
/tzdata2020a.tar.gz
/tzcode2020b.tar.gz
/tzdata2020b.tar.gz
/tzcode2020d.tar.gz
/tzdata2020d.tar.gz
/tzcode2020f.tar.gz
/tzdata2020f.tar.gz
/tzcode2021a.tar.gz
/tzdata2021a.tar.gz
/tzcode2021b.tar.gz
/tzdata2021b.tar.gz
/tzcode2021c.tar.gz
/tzdata2021c.tar.gz
/tzdata2021e.tar.gz
/tzcode2021e.tar.gz
/tzdata2022a.tar.gz
/tzcode2022a.tar.gz
/tzcode2022b.tar.gz
/tzdata2022b.tar.gz
/tzcode2022c.tar.gz
/tzdata2022c.tar.gz
/tzcode2022d.tar.gz
/tzdata2022d.tar.gz
/tzcode2022e.tar.gz
/tzdata2022e.tar.gz
/tzcode2022f.tar.gz
/tzdata2022f.tar.gz
/tzcode2022g.tar.gz
/tzdata2022g.tar.gz
/tzcode2023a.tar.gz
/tzdata2023a.tar.gz
/tzcode2023b.tar.gz
/tzdata2023b.tar.gz
/tzcode2023c.tar.gz
/tzdata2023c.tar.gz
/tzcode2023d.tar.gz
/tzdata2023d.tar.gz
/tzcode2024a.tar.gz
/tzdata2024a.tar.gz
/tzcode2024b.tar.gz
/tzdata2024b.tar.gz
/tzcode2025a.tar.gz
/tzdata2025a.tar.gz
/tzcode2025b.tar.gz
/tzdata2025b.tar.gz
/tzcode2025c.tar.gz
/tzdata2025c.tar.gz

View file

@ -1,29 +0,0 @@
From 2a7c7c5873ff0eb725e8eafad04f6af6ada66dc6 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Sat, 25 Sep 2021 08:32:39 -0700
Subject: [PROPOSED] Fix Jan Mayen typo
Fix typo in 2021-09-24 revert of most of the 2021-05-19
alike-since-1970 patch. Problem reported by Chris Walton in:
https://mm.icann.org/pipermail/tz/2021-September/030772.html
* backward (Atlantic/Jan_Mayen): Link from Europe/Oslo,
not Europe/Berlin.
---
backward | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/backward b/backward
index 7c288e3..5412c46 100644
--- a/backward
+++ b/backward
@@ -116,7 +116,7 @@ Link Asia/Makassar Asia/Ujung_Pandang
Link Asia/Ulaanbaatar Asia/Ulan_Bator
Link Asia/Bangkok Asia/Vientiane
Link Atlantic/Faroe Atlantic/Faeroe
-Link Europe/Berlin Atlantic/Jan_Mayen
+Link Europe/Oslo Atlantic/Jan_Mayen
Link Africa/Abidjan Atlantic/St_Helena
Link Australia/Sydney Australia/ACT
Link Australia/Sydney Australia/Canberra
--
2.30.2

View file

@ -147,3 +147,24 @@ index c92edc0..97649ca 100644
mkdir -p public.dir
for i in $(TDATA) tzdata.zi; do \
$(zic) -v -d public.dir $$i 2>&1 || exit; \
diff --git a/NEWS b/NEWS
index bd2bec2..75ab095 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,13 @@
News for the tz database
+Unreleased, experimental changes
+
+ Changes to build procedure
+
+ The Makefile now quotes values like BACKWARD more carefully when
+ passing them to the shell. (Problem reported by Zefram.)
+
+
Release 2017c - 2017-10-20 14:49:34 -0700
Briefly:
--
2.13.6

View file

@ -1,153 +0,0 @@
From e8171130f9b80ae3c75dfa5e96c47d5dbc0f4aae Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
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

View file

@ -1,12 +1,12 @@
diff -Nrup a/Makefile b/Makefile
--- a/Makefile 2024-01-01 17:57:30.112884304 -0500
+++ b/Makefile 2024-01-01 17:59:33.641497622 -0500
@@ -423,6 +423,7 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fn
# Uncomment the following line and edit its contents as needed.
--- a/Makefile 2017-10-23 18:03:40.237177646 -0400
+++ b/Makefile 2017-10-23 18:06:20.060683518 -0400
@@ -292,7 +292,7 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fn
# January's first Monday when a "%V" format is used and January 1
# falls on a Friday, Saturday, or Sunday.
#CFLAGS= -O 1
-CFLAGS=
+CFLAGS= -DHAVE_SNPRINTF=1
# The name of a POSIX-like library archiver, its flags, C compiler,
Binary files a/tzdata2023d-rearguard.tar.gz and b/tzdata2023d-rearguard.tar.gz differ
# Linker flags. Default to $(LFLAGS) for backwards compatibility
# to release 2012h and earlier.

View file

@ -1,13 +0,0 @@
diff -Nrup a/Makefile b/Makefile
--- a/Makefile 2023-03-22 17:41:49.069789592 -0400
+++ b/Makefile 2023-03-22 17:44:07.528427093 -0400
@@ -52,7 +52,7 @@ LOCALTIME= Factory
# make zonenames
# to get a list of the values you can use for POSIXRULES.
-POSIXRULES= -
+POSIXRULES= America/New_York
# Also see TZDEFRULESTRING below, which takes effect only
# if POSIXRULES is '-' or if the template file cannot be accessed.
Binary files a/tzdata2023a-rearguard.tar.gz and b/tzdata2023a-rearguard.tar.gz differ

View file

@ -1,23 +0,0 @@
commit 926b507fa5c3192b1b68fab5910cbd3ba9377c97
Author: Paul Eggert <eggert@cs.ucla.edu>
Date: Thu Sep 5 14:36:02 2024 -0700
"Apr", not "April", in IN column
* northamerica (Rule): Use "Apr", not "April", in the IN column.
Both forms are valid, but "Apr" is more consistent.
Problem reported by Howard Hinnant.
diff --git a/northamerica b/northamerica
index 01f392e0..1af874b6 100644
--- a/northamerica
+++ b/northamerica
@@ -2631,7 +2631,7 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# http://puentelibre.mx/noticia/ciudad_juarez_cambio_horario_noviembre_2022/
# Rule NAME FROM TO - IN ON AT SAVE LETTER/S
-Rule Mexico 1931 only - April 30 0:00 1:00 D
+Rule Mexico 1931 only - Apr 30 0:00 1:00 D
Rule Mexico 1931 only - Oct 1 0:00 0 S
Rule Mexico 1939 only - Feb 5 0:00 1:00 D
Rule Mexico 1939 only - Jun 25 0:00 0 S

View file

@ -1,77 +0,0 @@
commit 7b6fb155cadd5e5ee70b55c2770e1bdd2f5d2a38
Author: Paul Eggert <eggert@cs.ucla.edu>
Date: Thu Sep 5 14:38:35 2024 -0700
Improve style checks for months
* checktab.awk: Check style of STDOFF and month names.
diff --git a/checktab.awk b/checktab.awk
index 9a26e465..15a3a697 100644
--- a/checktab.awk
+++ b/checktab.awk
@@ -9,6 +9,19 @@ BEGIN {
if (!zone_table) zone_table = "zone1970.tab"
if (!want_warnings) want_warnings = -1
+ monthabbr["Jan"] = 1
+ monthabbr["Feb"] = 1
+ monthabbr["Mar"] = 1
+ monthabbr["Apr"] = 1
+ monthabbr["May"] = 1
+ monthabbr["Jun"] = 1
+ monthabbr["Jul"] = 1
+ monthabbr["Aug"] = 1
+ monthabbr["Sep"] = 1
+ monthabbr["Oct"] = 1
+ monthabbr["Nov"] = 1
+ monthabbr["Dec"] = 1
+
while (getline <iso_table) {
iso_NR++
if ($0 ~ /^#/) continue
@@ -128,12 +141,14 @@ BEGIN {
$1 ~ /^#/ { next }
{
- tz = rules = ""
+ tz = rules = stdoff = ""
if ($1 == "Zone") {
tz = $2
+ stdoff = $3
ruleUsed[$4] = 1
if ($5 ~ /%/) rulePercentUsed[$4] = 1
- } else if ($1 == "Link" && zone_table == "zone.tab") {
+ } else if ($1 == "Link") {
+ if (zone_table == "zone.tab") {
# Ignore Link commands if source and destination basenames
# are identical, e.g. Europe/Istanbul versus Asia/Istanbul.
src = $2
@@ -141,13 +156,27 @@ $1 ~ /^#/ { next }
while ((i = index(src, "/"))) src = substr(src, i+1)
while ((i = index(dst, "/"))) dst = substr(dst, i+1)
if (src != dst) tz = $3
+ }
} else if ($1 == "Rule") {
ruleDefined[$2] = 1
if ($10 != "-") ruleLetters[$2] = 1
+ if (!monthabbr[$6]) {
+ printf "%s:%d: tricky month: %s\n", FILENAME, FNR, $6 \
+ >>"/dev/stderr"
+ status = 1
+ }
} else {
+ stdoff = $1
ruleUsed[$2] = 1
if ($3 ~ /%/) rulePercentUsed[$2] = 1
}
+
+ if (stdoff && stdoff !~ /^\-?1?[0-9](:[0-5][0-9](:[0-5][0-9])?)?$/) {
+ printf "%s:%d: unlikely STDOFF: %s\n", FILENAME, FNR, stdoff \
+ >>"/dev/stderr"
+ status = 1
+ }
+
if (tz && tz ~ /\// && tz !~ /^Etc\//) {
if (!tztab[tz] && FILENAME != "backward" \
&& zone_table != "zonenow.tab") {

View file

@ -1,17 +0,0 @@
diff -r c8a71253d6e2 -r 189490f29d1e make/src/classes/build/tools/tzdb/ZoneRulesBuilder.java
--- javazic-1.8/build/tools/tzdb/ZoneRulesBuilder.java Thu Oct 23 11:42:20 2014 +0200
+++ javazic-1.8/build/tools/tzdb/ZoneRulesBuilder.java Mon Dec 29 21:42:22 2014 +0300
@@ -491,10 +491,10 @@
TZRule rule = new TZRule(year, month, dayOfMonthIndicator, dayOfWeek, time, timeEndOfDay, timeDefinition, savingAmountSecs);
if (lastRule) {
lastRuleList.add(rule);
- maxLastRuleStartYear = Math.max(startYear, maxLastRuleStartYear);
} else {
ruleList.add(rule);
}
+ maxLastRuleStartYear = Math.max(startYear, maxLastRuleStartYear);
year++;
}
}
--
cgit v0.9.2

View file

@ -1,42 +0,0 @@
/* Smoke test to ensure that tzdb.data can be loaded.
Copyright (c) 2024 Red Hat, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
import java.time.zone.ZoneRulesProvider;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Locale;
import java.util.Set;
import java.util.TimeZone;
public class ZoneTest {
public static void main(String[] args) {
// This is what failed in OpenJDK's build.tools.cldrconverter.
new GregorianCalendar(TimeZone.getTimeZone("America/Los_Angeles"),
Locale.US).get(Calendar.YEAR);
// In some OpenJDK versions, this exercises a different parser.
Set<String> available = ZoneRulesProvider.getAvailableZoneIds();
boolean errors = false;
if (available.contains("ROC"))
System.out.println("error: ROC zone is present");
if (!available.contains("America/New_York"))
System.out.println("error: America/New_York is missing");
if (errors)
System.exit(1);
}
}

View file

@ -1,19 +0,0 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1-gating.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1-gating.functional}

View file

@ -1,84 +0,0 @@
commit 1bc13a1c10a580f84f1b7686c95344ec2633f611
Author: Florian Weimer <fweimer@openjdk.org>
Date: Thu Sep 26 22:37:45 2024 +0000
8340552: Harden TzdbZoneRulesCompiler against missing zone names
Reviewed-by: andrew, jlu, naoto
diff -ur tzdata-2024b.orig/javazic-1.8/build/tools/tzdb/TzdbZoneRulesCompiler.java tzdata-2024b/javazic-1.8/build/tools/tzdb/TzdbZoneRulesCompiler.java
--- tzdata-2024b.orig/javazic-1.8/build/tools/tzdb/TzdbZoneRulesCompiler.java 2014-04-22 19:46:49.000000000 +0200
+++ tzdata-2024b/javazic-1.8/build/tools/tzdb/TzdbZoneRulesCompiler.java 2024-09-20 21:10:12.748483767 +0200
@@ -248,7 +248,7 @@
// link version-region-rules
out.writeShort(builtZones.size());
for (Map.Entry<String, ZoneRules> entry : builtZones.entrySet()) {
- int regionIndex = Arrays.binarySearch(regionArray, entry.getKey());
+ int regionIndex = findRegionIndex(regionArray, entry.getKey());
int rulesIndex = rulesList.indexOf(entry.getValue());
out.writeShort(regionIndex);
out.writeShort(rulesIndex);
@@ -256,8 +256,8 @@
// alias-region
out.writeShort(links.size());
for (Map.Entry<String, String> entry : links.entrySet()) {
- int aliasIndex = Arrays.binarySearch(regionArray, entry.getKey());
- int regionIndex = Arrays.binarySearch(regionArray, entry.getValue());
+ int aliasIndex = findRegionIndex(regionArray, entry.getKey());
+ int regionIndex = findRegionIndex(regionArray, entry.getValue());
out.writeShort(aliasIndex);
out.writeShort(regionIndex);
}
@@ -269,6 +269,14 @@
}
}
+ private static int findRegionIndex(String[] regionArray, String region) {
+ int index = Arrays.binarySearch(regionArray, region);
+ if (index < 0) {
+ throw new IllegalArgumentException("Unknown region: " + region);
+ }
+ return index;
+ }
+
private static final Pattern YEAR = Pattern.compile("(?i)(?<min>min)|(?<max>max)|(?<only>only)|(?<year>[0-9]+)");
private static final Pattern MONTH = Pattern.compile("(?i)(jan)|(feb)|(mar)|(apr)|(may)|(jun)|(jul)|(aug)|(sep)|(oct)|(nov)|(dec)");
private static final Matcher DOW = Pattern.compile("(?i)(mon)|(tue)|(wed)|(thu)|(fri)|(sat)|(sun)").matcher("");
@@ -607,22 +615,20 @@
}
builtZones.put(aliasId, realRules);
}
- // remove UTC and GMT
- // builtZones.remove("UTC");
- // builtZones.remove("GMT");
- // builtZones.remove("GMT0");
- builtZones.remove("GMT+0");
- builtZones.remove("GMT-0");
- links.remove("GMT+0");
- links.remove("GMT-0");
- // remove ROC, which is not supported in j.u.tz
- builtZones.remove("ROC");
- links.remove("ROC");
- // remove EST, HST and MST. They are supported via
- // the short-id mapping
- builtZones.remove("EST");
- builtZones.remove("HST");
- builtZones.remove("MST");
+
+ List<String> zonesToRemove = Arrays.asList(
+ // remove UTC and GMT
+ "GMT+0",
+ "GMT-0",
+ // remove ROC, which is not supported in j.u.tz
+ "ROC",
+ // remove EST, HST and MST. They are supported via
+ // the short-id mapping
+ "EST",
+ "HST",
+ "MST");
+ builtZones.keySet().removeAll(zonesToRemove);
+ links.keySet().removeAll(zonesToRemove);
}
/**

View file

@ -1,5 +0,0 @@
summary: Main Plan
discover:
how: fmf
execute:
how: tmt

View file

@ -1,3 +1,4 @@
SHA512 (javazic.tar.gz) = c23a4a437a87d0792f23e98025520a11273fc3d12ef5dcf64af8332ed60ba9ce77eaadfd234cee92b3ca9dc08b9e4123e804745925d68ddbd0b2e1e9039e526b
SHA512 (javazic-1.8-37392f2f5d59.tar.xz) = 2ba718dfeed53a3bd6b44e3dfe96338a609e482e4e6d942e2a7e622fc6c52606cb323ac3a59739c463e34f70fff217c0a61f5b3d3c4958eff2801b1504ee4204
SHA512 (tzcode2025c.tar.gz) = d14bc0680b9cb33d6526a2c0e483f2abafc2593cfe5fbfe7dcab940aafdc1baaec065dbaa1bb58b03586a8631ffdf43ebb22ff5a70503298b6ea2cf061d82c16
SHA512 (tzdata2025c.tar.gz) = 1e33f7212fd0ae2ad3c16e68f0c1fc7a6ad26a126b8406c379a5768d79604c6a816054bd0fe3a63228d70cd6a1fc2b1bae2a9f8014e102d3727eb9d21affa1f1
SHA512 (tzcode2018g.tar.gz) = 58f89b7323bfe795c5f13039f7527d18b15c9e37fce6e9fa1a402ce2689bf5c772cf1ffb86f23309814a563f9f429da472df1229818b07b1e04f16bdedb21484
SHA512 (tzdata2018g.tar.gz) = 92e9bbd61f51be8f2cf7ec9491691e5e2f97803914dbad77b7fb8b6600ed68fc3b98450fc808bb2d4c6c835df5f9eb7bf4529d059d9b1370f2ab4c12e7f1adfa

View file

@ -1,320 +0,0 @@
Europe/Berlin 2003-08-03 22:43:22 UTC -> Mon Aug 4 00:43:22 CEST 2003
Europe/Berlin 2003-02-03 22:43:22 UTC -> Mon Feb 3 23:43:22 CET 2003
Europe/Berlin 2004-08-03 22:43:22 UTC -> Wed Aug 4 00:43:22 CEST 2004
Europe/Berlin 2004-02-03 22:43:22 UTC -> Tue Feb 3 23:43:22 CET 2004
Europe/Berlin 2005-08-03 22:43:22 UTC -> Thu Aug 4 00:43:22 CEST 2005
Europe/Berlin 2005-02-03 22:43:22 UTC -> Thu Feb 3 23:43:22 CET 2005
Europe/Berlin 2006-08-03 22:43:22 UTC -> Fri Aug 4 00:43:22 CEST 2006
Europe/Berlin 2006-02-03 22:43:22 UTC -> Fri Feb 3 23:43:22 CET 2006
Europe/Berlin 2007-08-03 22:43:22 UTC -> Sat Aug 4 00:43:22 CEST 2007
Europe/Berlin 2007-02-03 22:43:22 UTC -> Sat Feb 3 23:43:22 CET 2007
Europe/Paris 2003-08-03 22:43:22 UTC -> Mon Aug 4 00:43:22 CEST 2003
Europe/Paris 2003-02-03 22:43:22 UTC -> Mon Feb 3 23:43:22 CET 2003
Europe/Paris 2004-08-03 22:43:22 UTC -> Wed Aug 4 00:43:22 CEST 2004
Europe/Paris 2004-02-03 22:43:22 UTC -> Tue Feb 3 23:43:22 CET 2004
Europe/Paris 2005-08-03 22:43:22 UTC -> Thu Aug 4 00:43:22 CEST 2005
Europe/Paris 2005-02-03 22:43:22 UTC -> Thu Feb 3 23:43:22 CET 2005
Europe/Paris 2006-08-03 22:43:22 UTC -> Fri Aug 4 00:43:22 CEST 2006
Europe/Paris 2006-02-03 22:43:22 UTC -> Fri Feb 3 23:43:22 CET 2006
Europe/Paris 2007-08-03 22:43:22 UTC -> Sat Aug 4 00:43:22 CEST 2007
Europe/Paris 2007-02-03 22:43:22 UTC -> Sat Feb 3 23:43:22 CET 2007
Europe/London 2003-08-03 22:43:22 UTC -> Sun Aug 3 23:43:22 BST 2003
Europe/London 2003-02-03 22:43:22 UTC -> Mon Feb 3 22:43:22 GMT 2003
Europe/London 2004-08-03 22:43:22 UTC -> Tue Aug 3 23:43:22 BST 2004
Europe/London 2004-02-03 22:43:22 UTC -> Tue Feb 3 22:43:22 GMT 2004
Europe/London 2005-08-03 22:43:22 UTC -> Wed Aug 3 23:43:22 BST 2005
Europe/London 2005-02-03 22:43:22 UTC -> Thu Feb 3 22:43:22 GMT 2005
Europe/London 2006-08-03 22:43:22 UTC -> Thu Aug 3 23:43:22 BST 2006
Europe/London 2006-02-03 22:43:22 UTC -> Fri Feb 3 22:43:22 GMT 2006
Europe/London 2007-08-03 22:43:22 UTC -> Fri Aug 3 23:43:22 BST 2007
Europe/London 2007-02-03 22:43:22 UTC -> Sat Feb 3 22:43:22 GMT 2007
Europe/Prague 2003-08-03 22:43:22 UTC -> Mon Aug 4 00:43:22 CEST 2003
Europe/Prague 2003-02-03 22:43:22 UTC -> Mon Feb 3 23:43:22 CET 2003
Europe/Prague 2004-08-03 22:43:22 UTC -> Wed Aug 4 00:43:22 CEST 2004
Europe/Prague 2004-02-03 22:43:22 UTC -> Tue Feb 3 23:43:22 CET 2004
Europe/Prague 2005-08-03 22:43:22 UTC -> Thu Aug 4 00:43:22 CEST 2005
Europe/Prague 2005-02-03 22:43:22 UTC -> Thu Feb 3 23:43:22 CET 2005
Europe/Prague 2006-08-03 22:43:22 UTC -> Fri Aug 4 00:43:22 CEST 2006
Europe/Prague 2006-02-03 22:43:22 UTC -> Fri Feb 3 23:43:22 CET 2006
Europe/Prague 2007-08-03 22:43:22 UTC -> Sat Aug 4 00:43:22 CEST 2007
Europe/Prague 2007-02-03 22:43:22 UTC -> Sat Feb 3 23:43:22 CET 2007
US/Alaska 2003-08-03 22:43:22 UTC -> Sun Aug 3 14:43:22 AKDT 2003
US/Alaska 2003-02-03 22:43:22 UTC -> Mon Feb 3 13:43:22 AKST 2003
US/Alaska 2004-08-03 22:43:22 UTC -> Tue Aug 3 14:43:22 AKDT 2004
US/Alaska 2004-02-03 22:43:22 UTC -> Tue Feb 3 13:43:22 AKST 2004
US/Alaska 2005-08-03 22:43:22 UTC -> Wed Aug 3 14:43:22 AKDT 2005
US/Alaska 2005-02-03 22:43:22 UTC -> Thu Feb 3 13:43:22 AKST 2005
US/Alaska 2006-08-03 22:43:22 UTC -> Thu Aug 3 14:43:22 AKDT 2006
US/Alaska 2006-02-03 22:43:22 UTC -> Fri Feb 3 13:43:22 AKST 2006
US/Alaska 2007-08-03 22:43:22 UTC -> Fri Aug 3 14:43:22 AKDT 2007
US/Alaska 2007-02-03 22:43:22 UTC -> Sat Feb 3 13:43:22 AKST 2007
US/Aleutian 2003-08-03 22:43:22 UTC -> Sun Aug 3 13:43:22 HDT 2003
US/Aleutian 2003-02-03 22:43:22 UTC -> Mon Feb 3 12:43:22 HST 2003
US/Aleutian 2004-08-03 22:43:22 UTC -> Tue Aug 3 13:43:22 HDT 2004
US/Aleutian 2004-02-03 22:43:22 UTC -> Tue Feb 3 12:43:22 HST 2004
US/Aleutian 2005-08-03 22:43:22 UTC -> Wed Aug 3 13:43:22 HDT 2005
US/Aleutian 2005-02-03 22:43:22 UTC -> Thu Feb 3 12:43:22 HST 2005
US/Aleutian 2006-08-03 22:43:22 UTC -> Thu Aug 3 13:43:22 HDT 2006
US/Aleutian 2006-02-03 22:43:22 UTC -> Fri Feb 3 12:43:22 HST 2006
US/Aleutian 2007-08-03 22:43:22 UTC -> Fri Aug 3 13:43:22 HDT 2007
US/Aleutian 2007-02-03 22:43:22 UTC -> Sat Feb 3 12:43:22 HST 2007
US/Arizona 2003-08-03 22:43:22 UTC -> Sun Aug 3 15:43:22 MST 2003
US/Arizona 2003-02-03 22:43:22 UTC -> Mon Feb 3 15:43:22 MST 2003
US/Arizona 2004-08-03 22:43:22 UTC -> Tue Aug 3 15:43:22 MST 2004
US/Arizona 2004-02-03 22:43:22 UTC -> Tue Feb 3 15:43:22 MST 2004
US/Arizona 2005-08-03 22:43:22 UTC -> Wed Aug 3 15:43:22 MST 2005
US/Arizona 2005-02-03 22:43:22 UTC -> Thu Feb 3 15:43:22 MST 2005
US/Arizona 2006-08-03 22:43:22 UTC -> Thu Aug 3 15:43:22 MST 2006
US/Arizona 2006-02-03 22:43:22 UTC -> Fri Feb 3 15:43:22 MST 2006
US/Arizona 2007-08-03 22:43:22 UTC -> Fri Aug 3 15:43:22 MST 2007
US/Arizona 2007-02-03 22:43:22 UTC -> Sat Feb 3 15:43:22 MST 2007
US/Central 2003-08-03 22:43:22 UTC -> Sun Aug 3 17:43:22 CDT 2003
US/Central 2003-02-03 22:43:22 UTC -> Mon Feb 3 16:43:22 CST 2003
US/Central 2004-08-03 22:43:22 UTC -> Tue Aug 3 17:43:22 CDT 2004
US/Central 2004-02-03 22:43:22 UTC -> Tue Feb 3 16:43:22 CST 2004
US/Central 2005-08-03 22:43:22 UTC -> Wed Aug 3 17:43:22 CDT 2005
US/Central 2005-02-03 22:43:22 UTC -> Thu Feb 3 16:43:22 CST 2005
US/Central 2006-08-03 22:43:22 UTC -> Thu Aug 3 17:43:22 CDT 2006
US/Central 2006-02-03 22:43:22 UTC -> Fri Feb 3 16:43:22 CST 2006
US/Central 2007-08-03 22:43:22 UTC -> Fri Aug 3 17:43:22 CDT 2007
US/Central 2007-02-03 22:43:22 UTC -> Sat Feb 3 16:43:22 CST 2007
US/Eastern 2003-08-03 22:43:22 UTC -> Sun Aug 3 18:43:22 EDT 2003
US/Eastern 2003-02-03 22:43:22 UTC -> Mon Feb 3 17:43:22 EST 2003
US/Eastern 2004-08-03 22:43:22 UTC -> Tue Aug 3 18:43:22 EDT 2004
US/Eastern 2004-02-03 22:43:22 UTC -> Tue Feb 3 17:43:22 EST 2004
US/Eastern 2005-08-03 22:43:22 UTC -> Wed Aug 3 18:43:22 EDT 2005
US/Eastern 2005-02-03 22:43:22 UTC -> Thu Feb 3 17:43:22 EST 2005
US/Eastern 2006-08-03 22:43:22 UTC -> Thu Aug 3 18:43:22 EDT 2006
US/Eastern 2006-02-03 22:43:22 UTC -> Fri Feb 3 17:43:22 EST 2006
US/Eastern 2007-08-03 22:43:22 UTC -> Fri Aug 3 18:43:22 EDT 2007
US/Eastern 2007-02-03 22:43:22 UTC -> Sat Feb 3 17:43:22 EST 2007
US/East-Indiana 2003-08-03 22:43:22 UTC -> Sun Aug 3 17:43:22 EST 2003
US/East-Indiana 2003-02-03 22:43:22 UTC -> Mon Feb 3 17:43:22 EST 2003
US/East-Indiana 2004-08-03 22:43:22 UTC -> Tue Aug 3 17:43:22 EST 2004
US/East-Indiana 2004-02-03 22:43:22 UTC -> Tue Feb 3 17:43:22 EST 2004
US/East-Indiana 2005-08-03 22:43:22 UTC -> Wed Aug 3 17:43:22 EST 2005
US/East-Indiana 2005-02-03 22:43:22 UTC -> Thu Feb 3 17:43:22 EST 2005
US/East-Indiana 2006-08-03 22:43:22 UTC -> Thu Aug 3 18:43:22 EDT 2006
US/East-Indiana 2006-02-03 22:43:22 UTC -> Fri Feb 3 17:43:22 EST 2006
US/East-Indiana 2007-08-03 22:43:22 UTC -> Fri Aug 3 18:43:22 EDT 2007
US/East-Indiana 2007-02-03 22:43:22 UTC -> Sat Feb 3 17:43:22 EST 2007
US/Hawaii 2003-08-03 22:43:22 UTC -> Sun Aug 3 12:43:22 HST 2003
US/Hawaii 2003-02-03 22:43:22 UTC -> Mon Feb 3 12:43:22 HST 2003
US/Hawaii 2004-08-03 22:43:22 UTC -> Tue Aug 3 12:43:22 HST 2004
US/Hawaii 2004-02-03 22:43:22 UTC -> Tue Feb 3 12:43:22 HST 2004
US/Hawaii 2005-08-03 22:43:22 UTC -> Wed Aug 3 12:43:22 HST 2005
US/Hawaii 2005-02-03 22:43:22 UTC -> Thu Feb 3 12:43:22 HST 2005
US/Hawaii 2006-08-03 22:43:22 UTC -> Thu Aug 3 12:43:22 HST 2006
US/Hawaii 2006-02-03 22:43:22 UTC -> Fri Feb 3 12:43:22 HST 2006
US/Hawaii 2007-08-03 22:43:22 UTC -> Fri Aug 3 12:43:22 HST 2007
US/Hawaii 2007-02-03 22:43:22 UTC -> Sat Feb 3 12:43:22 HST 2007
US/Indiana-Starke 2003-08-03 22:43:22 UTC -> Sun Aug 3 17:43:22 EST 2003
US/Indiana-Starke 2003-02-03 22:43:22 UTC -> Mon Feb 3 17:43:22 EST 2003
US/Indiana-Starke 2004-08-03 22:43:22 UTC -> Tue Aug 3 17:43:22 EST 2004
US/Indiana-Starke 2004-02-03 22:43:22 UTC -> Tue Feb 3 17:43:22 EST 2004
US/Indiana-Starke 2005-08-03 22:43:22 UTC -> Wed Aug 3 17:43:22 EST 2005
US/Indiana-Starke 2005-02-03 22:43:22 UTC -> Thu Feb 3 17:43:22 EST 2005
US/Indiana-Starke 2006-08-03 22:43:22 UTC -> Thu Aug 3 17:43:22 CDT 2006
US/Indiana-Starke 2006-02-03 22:43:22 UTC -> Fri Feb 3 17:43:22 EST 2006
US/Indiana-Starke 2007-08-03 22:43:22 UTC -> Fri Aug 3 17:43:22 CDT 2007
US/Indiana-Starke 2007-02-03 22:43:22 UTC -> Sat Feb 3 16:43:22 CST 2007
US/Michigan 2003-08-03 22:43:22 UTC -> Sun Aug 3 18:43:22 EDT 2003
US/Michigan 2003-02-03 22:43:22 UTC -> Mon Feb 3 17:43:22 EST 2003
US/Michigan 2004-08-03 22:43:22 UTC -> Tue Aug 3 18:43:22 EDT 2004
US/Michigan 2004-02-03 22:43:22 UTC -> Tue Feb 3 17:43:22 EST 2004
US/Michigan 2005-08-03 22:43:22 UTC -> Wed Aug 3 18:43:22 EDT 2005
US/Michigan 2005-02-03 22:43:22 UTC -> Thu Feb 3 17:43:22 EST 2005
US/Michigan 2006-08-03 22:43:22 UTC -> Thu Aug 3 18:43:22 EDT 2006
US/Michigan 2006-02-03 22:43:22 UTC -> Fri Feb 3 17:43:22 EST 2006
US/Michigan 2007-08-03 22:43:22 UTC -> Fri Aug 3 18:43:22 EDT 2007
US/Michigan 2007-02-03 22:43:22 UTC -> Sat Feb 3 17:43:22 EST 2007
US/Mountain 2003-08-03 22:43:22 UTC -> Sun Aug 3 16:43:22 MDT 2003
US/Mountain 2003-02-03 22:43:22 UTC -> Mon Feb 3 15:43:22 MST 2003
US/Mountain 2004-08-03 22:43:22 UTC -> Tue Aug 3 16:43:22 MDT 2004
US/Mountain 2004-02-03 22:43:22 UTC -> Tue Feb 3 15:43:22 MST 2004
US/Mountain 2005-08-03 22:43:22 UTC -> Wed Aug 3 16:43:22 MDT 2005
US/Mountain 2005-02-03 22:43:22 UTC -> Thu Feb 3 15:43:22 MST 2005
US/Mountain 2006-08-03 22:43:22 UTC -> Thu Aug 3 16:43:22 MDT 2006
US/Mountain 2006-02-03 22:43:22 UTC -> Fri Feb 3 15:43:22 MST 2006
US/Mountain 2007-08-03 22:43:22 UTC -> Fri Aug 3 16:43:22 MDT 2007
US/Mountain 2007-02-03 22:43:22 UTC -> Sat Feb 3 15:43:22 MST 2007
US/Pacific 2003-08-03 22:43:22 UTC -> Sun Aug 3 15:43:22 PDT 2003
US/Pacific 2003-02-03 22:43:22 UTC -> Mon Feb 3 14:43:22 PST 2003
US/Pacific 2004-08-03 22:43:22 UTC -> Tue Aug 3 15:43:22 PDT 2004
US/Pacific 2004-02-03 22:43:22 UTC -> Tue Feb 3 14:43:22 PST 2004
US/Pacific 2005-08-03 22:43:22 UTC -> Wed Aug 3 15:43:22 PDT 2005
US/Pacific 2005-02-03 22:43:22 UTC -> Thu Feb 3 14:43:22 PST 2005
US/Pacific 2006-08-03 22:43:22 UTC -> Thu Aug 3 15:43:22 PDT 2006
US/Pacific 2006-02-03 22:43:22 UTC -> Fri Feb 3 14:43:22 PST 2006
US/Pacific 2007-08-03 22:43:22 UTC -> Fri Aug 3 15:43:22 PDT 2007
US/Pacific 2007-02-03 22:43:22 UTC -> Sat Feb 3 14:43:22 PST 2007
US/Samoa 2003-08-03 22:43:22 UTC -> Sun Aug 3 11:43:22 SST 2003
US/Samoa 2003-02-03 22:43:22 UTC -> Mon Feb 3 11:43:22 SST 2003
US/Samoa 2004-08-03 22:43:22 UTC -> Tue Aug 3 11:43:22 SST 2004
US/Samoa 2004-02-03 22:43:22 UTC -> Tue Feb 3 11:43:22 SST 2004
US/Samoa 2005-08-03 22:43:22 UTC -> Wed Aug 3 11:43:22 SST 2005
US/Samoa 2005-02-03 22:43:22 UTC -> Thu Feb 3 11:43:22 SST 2005
US/Samoa 2006-08-03 22:43:22 UTC -> Thu Aug 3 11:43:22 SST 2006
US/Samoa 2006-02-03 22:43:22 UTC -> Fri Feb 3 11:43:22 SST 2006
US/Samoa 2007-08-03 22:43:22 UTC -> Fri Aug 3 11:43:22 SST 2007
US/Samoa 2007-02-03 22:43:22 UTC -> Sat Feb 3 11:43:22 SST 2007
America/Bahia 2003-08-03 22:43:22 UTC -> Sun Aug 3 19:43:22 -03 2003
America/Bahia 2003-02-03 22:43:22 UTC -> Mon Feb 3 20:43:22 -02 2003
America/Bahia 2004-08-03 22:43:22 UTC -> Tue Aug 3 19:43:22 -03 2004
America/Bahia 2004-02-03 22:43:22 UTC -> Tue Feb 3 19:43:22 -03 2004
America/Bahia 2005-08-03 22:43:22 UTC -> Wed Aug 3 19:43:22 -03 2005
America/Bahia 2005-02-03 22:43:22 UTC -> Thu Feb 3 19:43:22 -03 2005
America/Bahia 2006-08-03 22:43:22 UTC -> Thu Aug 3 19:43:22 -03 2006
America/Bahia 2006-02-03 22:43:22 UTC -> Fri Feb 3 19:43:22 -03 2006
America/Bahia 2007-08-03 22:43:22 UTC -> Fri Aug 3 19:43:22 -03 2007
America/Bahia 2007-02-03 22:43:22 UTC -> Sat Feb 3 19:43:22 -03 2007
America/Bogota 2003-08-03 22:43:22 UTC -> Sun Aug 3 17:43:22 -05 2003
America/Bogota 2003-02-03 22:43:22 UTC -> Mon Feb 3 17:43:22 -05 2003
America/Bogota 2004-08-03 22:43:22 UTC -> Tue Aug 3 17:43:22 -05 2004
America/Bogota 2004-02-03 22:43:22 UTC -> Tue Feb 3 17:43:22 -05 2004
America/Bogota 2005-08-03 22:43:22 UTC -> Wed Aug 3 17:43:22 -05 2005
America/Bogota 2005-02-03 22:43:22 UTC -> Thu Feb 3 17:43:22 -05 2005
America/Bogota 2006-08-03 22:43:22 UTC -> Thu Aug 3 17:43:22 -05 2006
America/Bogota 2006-02-03 22:43:22 UTC -> Fri Feb 3 17:43:22 -05 2006
America/Bogota 2007-08-03 22:43:22 UTC -> Fri Aug 3 17:43:22 -05 2007
America/Bogota 2007-02-03 22:43:22 UTC -> Sat Feb 3 17:43:22 -05 2007
America/Costa_Rica 2003-08-03 22:43:22 UTC -> Sun Aug 3 16:43:22 CST 2003
America/Costa_Rica 2003-02-03 22:43:22 UTC -> Mon Feb 3 16:43:22 CST 2003
America/Costa_Rica 2004-08-03 22:43:22 UTC -> Tue Aug 3 16:43:22 CST 2004
America/Costa_Rica 2004-02-03 22:43:22 UTC -> Tue Feb 3 16:43:22 CST 2004
America/Costa_Rica 2005-08-03 22:43:22 UTC -> Wed Aug 3 16:43:22 CST 2005
America/Costa_Rica 2005-02-03 22:43:22 UTC -> Thu Feb 3 16:43:22 CST 2005
America/Costa_Rica 2006-08-03 22:43:22 UTC -> Thu Aug 3 16:43:22 CST 2006
America/Costa_Rica 2006-02-03 22:43:22 UTC -> Fri Feb 3 16:43:22 CST 2006
America/Costa_Rica 2007-08-03 22:43:22 UTC -> Fri Aug 3 16:43:22 CST 2007
America/Costa_Rica 2007-02-03 22:43:22 UTC -> Sat Feb 3 16:43:22 CST 2007
America/Jamaica 2003-08-03 22:43:22 UTC -> Sun Aug 3 17:43:22 EST 2003
America/Jamaica 2003-02-03 22:43:22 UTC -> Mon Feb 3 17:43:22 EST 2003
America/Jamaica 2004-08-03 22:43:22 UTC -> Tue Aug 3 17:43:22 EST 2004
America/Jamaica 2004-02-03 22:43:22 UTC -> Tue Feb 3 17:43:22 EST 2004
America/Jamaica 2005-08-03 22:43:22 UTC -> Wed Aug 3 17:43:22 EST 2005
America/Jamaica 2005-02-03 22:43:22 UTC -> Thu Feb 3 17:43:22 EST 2005
America/Jamaica 2006-08-03 22:43:22 UTC -> Thu Aug 3 17:43:22 EST 2006
America/Jamaica 2006-02-03 22:43:22 UTC -> Fri Feb 3 17:43:22 EST 2006
America/Jamaica 2007-08-03 22:43:22 UTC -> Fri Aug 3 17:43:22 EST 2007
America/Jamaica 2007-02-03 22:43:22 UTC -> Sat Feb 3 17:43:22 EST 2007
America/Mexico_City 2003-08-03 22:43:22 UTC -> Sun Aug 3 17:43:22 CDT 2003
America/Mexico_City 2003-02-03 22:43:22 UTC -> Mon Feb 3 16:43:22 CST 2003
America/Mexico_City 2004-08-03 22:43:22 UTC -> Tue Aug 3 17:43:22 CDT 2004
America/Mexico_City 2004-02-03 22:43:22 UTC -> Tue Feb 3 16:43:22 CST 2004
America/Mexico_City 2005-08-03 22:43:22 UTC -> Wed Aug 3 17:43:22 CDT 2005
America/Mexico_City 2005-02-03 22:43:22 UTC -> Thu Feb 3 16:43:22 CST 2005
America/Mexico_City 2006-08-03 22:43:22 UTC -> Thu Aug 3 17:43:22 CDT 2006
America/Mexico_City 2006-02-03 22:43:22 UTC -> Fri Feb 3 16:43:22 CST 2006
America/Mexico_City 2007-08-03 22:43:22 UTC -> Fri Aug 3 17:43:22 CDT 2007
America/Mexico_City 2007-02-03 22:43:22 UTC -> Sat Feb 3 16:43:22 CST 2007
America/Santiago 2003-08-03 22:43:22 UTC -> Sun Aug 3 18:43:22 -04 2003
America/Santiago 2003-02-03 22:43:22 UTC -> Mon Feb 3 19:43:22 -03 2003
America/Santiago 2004-08-03 22:43:22 UTC -> Tue Aug 3 18:43:22 -04 2004
America/Santiago 2004-02-03 22:43:22 UTC -> Tue Feb 3 19:43:22 -03 2004
America/Santiago 2005-08-03 22:43:22 UTC -> Wed Aug 3 18:43:22 -04 2005
America/Santiago 2005-02-03 22:43:22 UTC -> Thu Feb 3 19:43:22 -03 2005
America/Santiago 2006-08-03 22:43:22 UTC -> Thu Aug 3 18:43:22 -04 2006
America/Santiago 2006-02-03 22:43:22 UTC -> Fri Feb 3 19:43:22 -03 2006
America/Santiago 2007-08-03 22:43:22 UTC -> Fri Aug 3 18:43:22 -04 2007
America/Santiago 2007-02-03 22:43:22 UTC -> Sat Feb 3 19:43:22 -03 2007
Australia/Brisbane 2003-08-03 22:43:22 UTC -> Mon Aug 4 08:43:22 AEST 2003
Australia/Brisbane 2003-02-03 22:43:22 UTC -> Tue Feb 4 08:43:22 AEST 2003
Australia/Brisbane 2004-08-03 22:43:22 UTC -> Wed Aug 4 08:43:22 AEST 2004
Australia/Brisbane 2004-02-03 22:43:22 UTC -> Wed Feb 4 08:43:22 AEST 2004
Australia/Brisbane 2005-08-03 22:43:22 UTC -> Thu Aug 4 08:43:22 AEST 2005
Australia/Brisbane 2005-02-03 22:43:22 UTC -> Fri Feb 4 08:43:22 AEST 2005
Australia/Brisbane 2006-08-03 22:43:22 UTC -> Fri Aug 4 08:43:22 AEST 2006
Australia/Brisbane 2006-02-03 22:43:22 UTC -> Sat Feb 4 08:43:22 AEST 2006
Australia/Brisbane 2007-08-03 22:43:22 UTC -> Sat Aug 4 08:43:22 AEST 2007
Australia/Brisbane 2007-02-03 22:43:22 UTC -> Sun Feb 4 08:43:22 AEST 2007
Australia/West 2003-08-03 22:43:22 UTC -> Mon Aug 4 06:43:22 AWST 2003
Australia/West 2003-02-03 22:43:22 UTC -> Tue Feb 4 06:43:22 AWST 2003
Australia/West 2004-08-03 22:43:22 UTC -> Wed Aug 4 06:43:22 AWST 2004
Australia/West 2004-02-03 22:43:22 UTC -> Wed Feb 4 06:43:22 AWST 2004
Australia/West 2005-08-03 22:43:22 UTC -> Thu Aug 4 06:43:22 AWST 2005
Australia/West 2005-02-03 22:43:22 UTC -> Fri Feb 4 06:43:22 AWST 2005
Australia/West 2006-08-03 22:43:22 UTC -> Fri Aug 4 06:43:22 AWST 2006
Australia/West 2006-02-03 22:43:22 UTC -> Sat Feb 4 06:43:22 AWST 2006
Australia/West 2007-08-03 22:43:22 UTC -> Sat Aug 4 06:43:22 AWST 2007
Australia/West 2007-02-03 22:43:22 UTC -> Sun Feb 4 07:43:22 AWDT 2007
Australia/South 2003-08-03 22:43:22 UTC -> Mon Aug 4 08:13:22 ACST 2003
Australia/South 2003-02-03 22:43:22 UTC -> Tue Feb 4 09:13:22 ACDT 2003
Australia/South 2004-08-03 22:43:22 UTC -> Wed Aug 4 08:13:22 ACST 2004
Australia/South 2004-02-03 22:43:22 UTC -> Wed Feb 4 09:13:22 ACDT 2004
Australia/South 2005-08-03 22:43:22 UTC -> Thu Aug 4 08:13:22 ACST 2005
Australia/South 2005-02-03 22:43:22 UTC -> Fri Feb 4 09:13:22 ACDT 2005
Australia/South 2006-08-03 22:43:22 UTC -> Fri Aug 4 08:13:22 ACST 2006
Australia/South 2006-02-03 22:43:22 UTC -> Sat Feb 4 09:13:22 ACDT 2006
Australia/South 2007-08-03 22:43:22 UTC -> Sat Aug 4 08:13:22 ACST 2007
Australia/South 2007-02-03 22:43:22 UTC -> Sun Feb 4 09:13:22 ACDT 2007
Australia/Melbourne 2003-08-03 22:43:22 UTC -> Mon Aug 4 08:43:22 AEST 2003
Australia/Melbourne 2003-02-03 22:43:22 UTC -> Tue Feb 4 09:43:22 AEDT 2003
Australia/Melbourne 2004-08-03 22:43:22 UTC -> Wed Aug 4 08:43:22 AEST 2004
Australia/Melbourne 2004-02-03 22:43:22 UTC -> Wed Feb 4 09:43:22 AEDT 2004
Australia/Melbourne 2005-08-03 22:43:22 UTC -> Thu Aug 4 08:43:22 AEST 2005
Australia/Melbourne 2005-02-03 22:43:22 UTC -> Fri Feb 4 09:43:22 AEDT 2005
Australia/Melbourne 2006-08-03 22:43:22 UTC -> Fri Aug 4 08:43:22 AEST 2006
Australia/Melbourne 2006-02-03 22:43:22 UTC -> Sat Feb 4 09:43:22 AEDT 2006
Australia/Melbourne 2007-08-03 22:43:22 UTC -> Sat Aug 4 08:43:22 AEST 2007
Australia/Melbourne 2007-02-03 22:43:22 UTC -> Sun Feb 4 09:43:22 AEDT 2007
Australia/Sydney 2003-08-03 22:43:22 UTC -> Mon Aug 4 08:43:22 AEST 2003
Australia/Sydney 2003-02-03 22:43:22 UTC -> Tue Feb 4 09:43:22 AEDT 2003
Australia/Sydney 2004-08-03 22:43:22 UTC -> Wed Aug 4 08:43:22 AEST 2004
Australia/Sydney 2004-02-03 22:43:22 UTC -> Wed Feb 4 09:43:22 AEDT 2004
Australia/Sydney 2005-08-03 22:43:22 UTC -> Thu Aug 4 08:43:22 AEST 2005
Australia/Sydney 2005-02-03 22:43:22 UTC -> Fri Feb 4 09:43:22 AEDT 2005
Australia/Sydney 2006-08-03 22:43:22 UTC -> Fri Aug 4 08:43:22 AEST 2006
Australia/Sydney 2006-02-03 22:43:22 UTC -> Sat Feb 4 09:43:22 AEDT 2006
Australia/Sydney 2007-08-03 22:43:22 UTC -> Sat Aug 4 08:43:22 AEST 2007
Australia/Sydney 2007-02-03 22:43:22 UTC -> Sun Feb 4 09:43:22 AEDT 2007
Australia/North 2003-08-03 22:43:22 UTC -> Mon Aug 4 08:13:22 ACST 2003
Australia/North 2003-02-03 22:43:22 UTC -> Tue Feb 4 08:13:22 ACST 2003
Australia/North 2004-08-03 22:43:22 UTC -> Wed Aug 4 08:13:22 ACST 2004
Australia/North 2004-02-03 22:43:22 UTC -> Wed Feb 4 08:13:22 ACST 2004
Australia/North 2005-08-03 22:43:22 UTC -> Thu Aug 4 08:13:22 ACST 2005
Australia/North 2005-02-03 22:43:22 UTC -> Fri Feb 4 08:13:22 ACST 2005
Australia/North 2006-08-03 22:43:22 UTC -> Fri Aug 4 08:13:22 ACST 2006
Australia/North 2006-02-03 22:43:22 UTC -> Sat Feb 4 08:13:22 ACST 2006
Australia/North 2007-08-03 22:43:22 UTC -> Sat Aug 4 08:13:22 ACST 2007
Australia/North 2007-02-03 22:43:22 UTC -> Sun Feb 4 08:13:22 ACST 2007
Asia/Tokyo 2003-08-03 22:43:22 UTC -> Mon Aug 4 07:43:22 JST 2003
Asia/Tokyo 2003-02-03 22:43:22 UTC -> Tue Feb 4 07:43:22 JST 2003
Asia/Tokyo 2004-08-03 22:43:22 UTC -> Wed Aug 4 07:43:22 JST 2004
Asia/Tokyo 2004-02-03 22:43:22 UTC -> Wed Feb 4 07:43:22 JST 2004
Asia/Tokyo 2005-08-03 22:43:22 UTC -> Thu Aug 4 07:43:22 JST 2005
Asia/Tokyo 2005-02-03 22:43:22 UTC -> Fri Feb 4 07:43:22 JST 2005
Asia/Tokyo 2006-08-03 22:43:22 UTC -> Fri Aug 4 07:43:22 JST 2006
Asia/Tokyo 2006-02-03 22:43:22 UTC -> Sat Feb 4 07:43:22 JST 2006
Asia/Tokyo 2007-08-03 22:43:22 UTC -> Sat Aug 4 07:43:22 JST 2007
Asia/Tokyo 2007-02-03 22:43:22 UTC -> Sun Feb 4 07:43:22 JST 2007
Asia/Istanbul 2003-08-03 22:43:22 UTC -> Mon Aug 4 01:43:22 EEST 2003
Asia/Istanbul 2003-02-03 22:43:22 UTC -> Tue Feb 4 00:43:22 EET 2003
Asia/Istanbul 2004-08-03 22:43:22 UTC -> Wed Aug 4 01:43:22 EEST 2004
Asia/Istanbul 2004-02-03 22:43:22 UTC -> Wed Feb 4 00:43:22 EET 2004
Asia/Istanbul 2005-08-03 22:43:22 UTC -> Thu Aug 4 01:43:22 EEST 2005
Asia/Istanbul 2005-02-03 22:43:22 UTC -> Fri Feb 4 00:43:22 EET 2005
Asia/Istanbul 2006-08-03 22:43:22 UTC -> Fri Aug 4 01:43:22 EEST 2006
Asia/Istanbul 2006-02-03 22:43:22 UTC -> Sat Feb 4 00:43:22 EET 2006
Asia/Istanbul 2007-08-03 22:43:22 UTC -> Sat Aug 4 01:43:22 EEST 2007
Asia/Istanbul 2007-02-03 22:43:22 UTC -> Sun Feb 4 00:43:22 EET 2007
Asia/Vladivostok 2003-08-03 22:43:22 UTC -> Mon Aug 4 09:43:22 +11 2003
Asia/Vladivostok 2003-02-03 22:43:22 UTC -> Tue Feb 4 08:43:22 +10 2003
Asia/Vladivostok 2004-08-03 22:43:22 UTC -> Wed Aug 4 09:43:22 +11 2004
Asia/Vladivostok 2004-02-03 22:43:22 UTC -> Wed Feb 4 08:43:22 +10 2004
Asia/Vladivostok 2005-08-03 22:43:22 UTC -> Thu Aug 4 09:43:22 +11 2005
Asia/Vladivostok 2005-02-03 22:43:22 UTC -> Fri Feb 4 08:43:22 +10 2005
Asia/Vladivostok 2006-08-03 22:43:22 UTC -> Fri Aug 4 09:43:22 +11 2006
Asia/Vladivostok 2006-02-03 22:43:22 UTC -> Sat Feb 4 08:43:22 +10 2006
Asia/Vladivostok 2007-08-03 22:43:22 UTC -> Sat Aug 4 09:43:22 +11 2007
Asia/Vladivostok 2007-02-03 22:43:22 UTC -> Sun Feb 4 08:43:22 +10 2007
Asia/Bangkok 2003-08-03 22:43:22 UTC -> Mon Aug 4 05:43:22 +07 2003
Asia/Bangkok 2003-02-03 22:43:22 UTC -> Tue Feb 4 05:43:22 +07 2003
Asia/Bangkok 2004-08-03 22:43:22 UTC -> Wed Aug 4 05:43:22 +07 2004
Asia/Bangkok 2004-02-03 22:43:22 UTC -> Wed Feb 4 05:43:22 +07 2004
Asia/Bangkok 2005-08-03 22:43:22 UTC -> Thu Aug 4 05:43:22 +07 2005
Asia/Bangkok 2005-02-03 22:43:22 UTC -> Fri Feb 4 05:43:22 +07 2005
Asia/Bangkok 2006-08-03 22:43:22 UTC -> Fri Aug 4 05:43:22 +07 2006
Asia/Bangkok 2006-02-03 22:43:22 UTC -> Sat Feb 4 05:43:22 +07 2006
Asia/Bangkok 2007-08-03 22:43:22 UTC -> Sat Aug 4 05:43:22 +07 2007
Asia/Bangkok 2007-02-03 22:43:22 UTC -> Sun Feb 4 05:43:22 +07 2007

View file

@ -1,10 +0,0 @@
2003-08-03 22:43:22 UTC
2003-02-03 22:43:22 UTC
2004-08-03 22:43:22 UTC
2004-02-03 22:43:22 UTC
2005-08-03 22:43:22 UTC
2005-02-03 22:43:22 UTC
2006-08-03 22:43:22 UTC
2006-02-03 22:43:22 UTC
2007-08-03 22:43:22 UTC
2007-02-03 22:43:22 UTC

View file

@ -1,10 +0,0 @@
summary: tzdata testing by trivial case
component:
- tzdata
test: ./test.sh
tier: 1
framework: beakerlib
require+:
- tzdata
- coreutils
duration: 5m

View file

@ -1,41 +0,0 @@
#!/bin/bash
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="tzdata"
REQUIRES="$PACKAGE coreutils glibc"
export LC_TIME=C
rlJournalStart
rlPhaseStartSetup
rlShowRunningKernel
rlAssertRpm --all
rlRun "TmpDir=\$(mktemp -d)"
rlRun "cp zones datetimes date.golden $TmpDir"
rlRun "pushd $TmpDir"
rlPhaseEnd
rlPhaseStartTest "run test"
while read timezone; do
rlLogInfo "timezone: $timezone"
while read datetime; do
echo -n "$timezone $datetime -> " >>date.log
rlRun "TZ=$timezone date -d \"$datetime\" >>date.log"
done <datetimes
done <zones
rlRun "rlFileSubmit ./date.log date.log"
rlPhaseEnd
rlPhaseStartTest "evaluate results"
if ! rlRun "diff -u date.golden date.log >date.diff"; then
rlFail "Differences observed";
rlRun "rlFileSubmit ./date.diff date.diff"
fi
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TmpDir"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View file

@ -1,32 +0,0 @@
Europe/Berlin
Europe/Paris
Europe/London
Europe/Prague
US/Alaska
US/Aleutian
US/Arizona
US/Central
US/Eastern
US/East-Indiana
US/Hawaii
US/Indiana-Starke
US/Michigan
US/Mountain
US/Pacific
US/Samoa
America/Bahia
America/Bogota
America/Costa_Rica
America/Jamaica
America/Mexico_City
America/Santiago
Australia/Brisbane
Australia/West
Australia/South
Australia/Melbourne
Australia/Sydney
Australia/North
Asia/Tokyo
Asia/Istanbul
Asia/Vladivostok
Asia/Bangkok

View file

@ -1,63 +0,0 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /CoreOS/tzdata/Sanity/tzdata-checker
# Description: Testing tzdata by comparing base pkg with upstream
# Author: Michal Kolar <mkolar@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2018 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/CoreOS/tzdata/Sanity/tzdata-checker
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE zones.min no-beakerlib-wrapper.sh
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Michal Kolar <mkolar@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Testing tzdata by comparing base pkg with upstream" >> $(METADATA)
@echo "Type: Sanity" >> $(METADATA)
@echo "TestTime: 1h" >> $(METADATA)
@echo "RunFor: tzdata" >> $(METADATA)
@echo "Requires: tzdata coreutils diffutils findutils gawk gcc glibc-common grep gzip make patch sed tar wget file" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2+" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Releases: -RHEL4" >> $(METADATA)
rhts-lint $(METADATA)

View file

@ -1,11 +0,0 @@
PURPOSE of /CoreOS/tzdata/Sanity/tzdata-checker
Description: Testing tzdata by comparing base pkg with upstream
Author: Michal Kolar <mkolar@redhat.com>
Executing can be modified by these variables:
* NO_BEAKERLIB -- if this variable is set to "1" tescase use wrapper for rl* commands instead of beakerlib.
It could be useful on systems without installed beaker framework.
Example:
NO_BEAKERLIB=1 ./runtest.sh

View file

@ -1,34 +0,0 @@
summary: Testing tzdata by comparing base pkg with upstream
description: |+
Executing can be modified by these variables:
* NO_BEAKERLIB -- if this variable is set to "1" tescase use wrapper for rl* commands instead of beakerlib.
It could be useful on systems without installed beaker framework.
Example:
NO_BEAKERLIB=1 ./runtest.sh
contact:
- Michal Kolar <mkolar@redhat.com>
component:
- tzdata
test: ./runtest.sh
framework: beakerlib
recommend:
- tzdata
- coreutils
- diffutils
- findutils
- gawk
- gcc
- glibc-common
- grep
- gzip
- make
- patch
- sed
- tar
- wget
- file
duration: 1h
extra-summary: /CoreOS/tzdata/Sanity/tzdata-checker
extra-task: /CoreOS/tzdata/Sanity/tzdata-checker

View file

@ -1,72 +0,0 @@
#!/bin/bash
failCounter=0
passCounter=0
rlJournalStart()
{
timeStart=`date +%s.%N`
}
rlShowRunningKernel()
{
printf ":: [ %s ] :: [ \e[36mLOG\e[0m ] :: Kernel version: '%s'\n" `date +%s.%N` `uname -r`
}
rlAssertRpm()
{
if rpm -q $1; then
((passCounter++))
printf ":: [ %s ] :: [ \e[32mPASS\e[0m ] :: Checking for the presence of %s rpm\n" `date +%s.%N` "$1"
printf ":: [ %s ] :: [ \e[36mLOG\e[0m ] :: %s\n" `date +%s.%N` `rpm -q $1`
else
((failCounter++))
printf ":: [ %s ] :: [ \e[31;1mFAIL\e[0m ] :: Checking for the presence of %s rpm\n" `date +%s.%N` "$1"
fi
}
rlRun()
{
eval $1
retVal=$?
if [ "$retVal" != "0" ]; then
((failCounter++))
printf ":: [ %s ] :: [ \e[31;1mFAIL\e[0m ] :: Command '%s'\n" `date +%s.%N` "$1"
else
((passCounter++))
printf ":: [ %s ] :: [ \e[32mPASS\e[0m ] :: Command '%s'\n" `date +%s.%N` "$1"
fi
return $retVal
}
rlLogInfo()
{
printf ":: [ %s ] :: [ \e[33mINFO\e[0m ] :: %s\n" `date +%s.%N` "$1"
}
rlJournalPrintText()
{
timeEnd=`date +%s.%N`
}
rlJournalEnd()
{
printf '\n\n\n::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\n'
printf ':: TEST PROTOCOL\n'
printf '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\n'
printf ':: Duration: %s s\n' `bc <<< "$timeEnd - $timeStart"`
printf ':: Assertions: %i good, %i bad\n:: RESULT: ' $passCounter $failCounter
if [ "$failCounter" != "0" ]; then
printf '\e[31;1mFAIL\e[0m\n'
else
printf '\e[32mPASS\e[0m\n'
fi
}
rlFileSubmit(){ return 0; }
rlPhaseEnd(){ return 0; }
rlPhaseStartCleanup(){ return 0; }
rlPhaseStartSetup(){ return 0; }

View file

@ -1,103 +0,0 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /CoreOS/tzdata/Sanity/tzdata-checker
# Description: Testing tzdata by comparing base pkg with upstream
# Author: Michal Kolar <mkolar@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2018 Red Hat, Inc.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if [ "$NO_BEAKERLIB" == "1" ]; then
. ./no-beakerlib-wrapper.sh || exit 1
else
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
fi
PACKAGE="tzdata"
TZDATA_URL="https://data.iana.org/time-zones/releases"
TZDATA_VERSION="${TZDATA_VERSION:-$(rpm -q --qf '%{VERSION}\n' $PACKAGE | head -1)}"
if rlIsFedora; then
DATAFORM="${DATAFORM:-vanguard}"
else
DATAFORM="${DATAFORM:-rearguard}"
fi
YEARS=20 # used for shrink zdump output to reasonable future
hiyear=$((`date +%Y` + $YEARS))
export LC_ALL=C
rlJournalStart
rlPhaseStartSetup
rlShowRunningKernel
rlAssertRpm $PACKAGE
rlRun "TmpDir=\$(mktemp -d)"
rlRun "cp zones.min $TmpDir"
rlRun "pushd $TmpDir"
rlRun "mkdir badzones"
rlPhaseEnd
rlPhaseStartSetup "Build upstream tzdata" # source: https://data.iana.org/time-zones/tz-link.html
rlRun "wget --no-check-certificate ${TZDATA_URL}/tzcode${TZDATA_VERSION}.tar.gz"
rlRun "wget --no-check-certificate ${TZDATA_URL}/tzdata${TZDATA_VERSION}.tar.gz"
rlRun "tar -xzf tzcode*"
rlRun "tar -xzf tzdata*"
rlRun "make DATAFORM=$DATAFORM TOPDIR=./tzdir install"
rlRun "find tzdir/usr/share/zoneinfo -type f | xargs file | grep 'timezone data' | grep -o -E 'zoneinfo/[^:]+' | sed 's|zoneinfo/||' | sort -u >zones.ref"
rlRun "find /usr/share/zoneinfo -type f | xargs file | grep 'timezone data' | grep -o -E 'zoneinfo/[^:]+' | sed 's|zoneinfo/||' | sort -u >zones.cur"
rlRun "comm -12 zones.ref zones.cur >zones.int" # intersection of ref zones with cur zones
rlRun "sort -u zones.min >zones-sorted.min"
rlRun "comm -13 zones.int zones-sorted.min >zones.mis"
rlRun "if [ -s ./zones.mis ]; then cat ./zones.mis; false; fi"
rlLogInfo "Number of time zones: `cat zones.int | wc -l`"
rlPhaseEnd
rlPhaseStartSetup "Test zdump"
for zone in `cat zones.int`; do
if rlIsRHEL "<8"; then # glibc's zdump is out of sync for '-v option'
rlRun "./zdump -v -c 1970,$hiyear $zone >ref"
rlRun "./zdump -v -c 1970,$hiyear /usr/share/zoneinfo/$zone >cur"
sed -i 's|^/usr/share/zoneinfo/||' cur
else
rlRun "./zdump -V -c 1970,$hiyear $zone >ref"
rlRun "zdump -V -c 1970,$hiyear $zone >cur"
fi
# normalize zdump outputs
sed -i 's/\ UTC/\ UT/g' ref cur
if ! rlRun "diff -q ref cur"; then
filezone=`echo $zone | tr '/' '_'`
cp ref ./badzones/${filezone}.ref
cp cur ./badzones/${filezone}.cur
fi
done
rlPhaseEnd
rlPhaseStartCleanup
rlRun "tar -czf badzones.tar.gz ./badzones"
rlRun "rlFileSubmit badzones.tar.gz"
rlRun "popd"
rlRun "rm -r $TmpDir"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View file

@ -1,592 +0,0 @@
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Asmera
Africa/Bamako
Africa/Bangui
Africa/Banjul
Africa/Bissau
Africa/Blantyre
Africa/Brazzaville
Africa/Bujumbura
Africa/Cairo
Africa/Casablanca
Africa/Ceuta
Africa/Conakry
Africa/Dakar
Africa/Dar_es_Salaam
Africa/Djibouti
Africa/Douala
Africa/El_Aaiun
Africa/Freetown
Africa/Gaborone
Africa/Harare
Africa/Johannesburg
Africa/Juba
Africa/Kampala
Africa/Khartoum
Africa/Kigali
Africa/Kinshasa
Africa/Lagos
Africa/Libreville
Africa/Lome
Africa/Luanda
Africa/Lubumbashi
Africa/Lusaka
Africa/Malabo
Africa/Maputo
Africa/Maseru
Africa/Mbabane
Africa/Mogadishu
Africa/Monrovia
Africa/Nairobi
Africa/Ndjamena
Africa/Niamey
Africa/Nouakchott
Africa/Ouagadougou
Africa/Porto-Novo
Africa/Sao_Tome
Africa/Timbuktu
Africa/Tripoli
Africa/Tunis
Africa/Windhoek
America/Adak
America/Anchorage
America/Anguilla
America/Antigua
America/Araguaina
America/Argentina/Buenos_Aires
America/Argentina/Catamarca
America/Argentina/ComodRivadavia
America/Argentina/Cordoba
America/Argentina/Jujuy
America/Argentina/La_Rioja
America/Argentina/Mendoza
America/Argentina/Rio_Gallegos
America/Argentina/Salta
America/Argentina/San_Juan
America/Argentina/San_Luis
America/Argentina/Tucuman
America/Argentina/Ushuaia
America/Aruba
America/Asuncion
America/Atikokan
America/Atka
America/Bahia
America/Bahia_Banderas
America/Barbados
America/Belem
America/Belize
America/Blanc-Sablon
America/Boa_Vista
America/Bogota
America/Boise
America/Buenos_Aires
America/Cambridge_Bay
America/Campo_Grande
America/Cancun
America/Caracas
America/Catamarca
America/Cayenne
America/Cayman
America/Chicago
America/Chihuahua
America/Coral_Harbour
America/Cordoba
America/Costa_Rica
America/Creston
America/Cuiaba
America/Curacao
America/Danmarkshavn
America/Dawson
America/Dawson_Creek
America/Denver
America/Detroit
America/Dominica
America/Edmonton
America/Eirunepe
America/El_Salvador
America/Ensenada
America/Fort_Nelson
America/Fort_Wayne
America/Fortaleza
America/Glace_Bay
America/Godthab
America/Goose_Bay
America/Grand_Turk
America/Grenada
America/Guadeloupe
America/Guatemala
America/Guayaquil
America/Guyana
America/Halifax
America/Havana
America/Hermosillo
America/Indiana/Indianapolis
America/Indiana/Knox
America/Indiana/Marengo
America/Indiana/Petersburg
America/Indiana/Tell_City
America/Indiana/Vevay
America/Indiana/Vincennes
America/Indiana/Winamac
America/Indianapolis
America/Inuvik
America/Iqaluit
America/Jamaica
America/Jujuy
America/Juneau
America/Kentucky/Louisville
America/Kentucky/Monticello
America/Knox_IN
America/Kralendijk
America/La_Paz
America/Lima
America/Los_Angeles
America/Louisville
America/Lower_Princes
America/Maceio
America/Managua
America/Manaus
America/Marigot
America/Martinique
America/Matamoros
America/Mazatlan
America/Mendoza
America/Menominee
America/Merida
America/Metlakatla
America/Mexico_City
America/Miquelon
America/Moncton
America/Monterrey
America/Montevideo
America/Montreal
America/Montserrat
America/Nassau
America/New_York
America/Nipigon
America/Nome
America/Noronha
America/North_Dakota/Beulah
America/North_Dakota/Center
America/North_Dakota/New_Salem
America/Ojinaga
America/Panama
America/Pangnirtung
America/Paramaribo
America/Phoenix
America/Port-au-Prince
America/Port_of_Spain
America/Porto_Acre
America/Porto_Velho
America/Puerto_Rico
America/Punta_Arenas
America/Rainy_River
America/Rankin_Inlet
America/Recife
America/Regina
America/Resolute
America/Rio_Branco
America/Rosario
America/Santa_Isabel
America/Santarem
America/Santiago
America/Santo_Domingo
America/Sao_Paulo
America/Scoresbysund
America/Shiprock
America/Sitka
America/St_Barthelemy
America/St_Johns
America/St_Kitts
America/St_Lucia
America/St_Thomas
America/St_Vincent
America/Swift_Current
America/Tegucigalpa
America/Thule
America/Thunder_Bay
America/Tijuana
America/Toronto
America/Tortola
America/Vancouver
America/Virgin
America/Whitehorse
America/Winnipeg
America/Yakutat
America/Yellowknife
Antarctica/Casey
Antarctica/Davis
Antarctica/DumontDUrville
Antarctica/Macquarie
Antarctica/Mawson
Antarctica/McMurdo
Antarctica/Palmer
Antarctica/Rothera
Antarctica/South_Pole
Antarctica/Syowa
Antarctica/Troll
Antarctica/Vostok
Arctic/Longyearbyen
Asia/Aden
Asia/Almaty
Asia/Amman
Asia/Anadyr
Asia/Aqtau
Asia/Aqtobe
Asia/Ashgabat
Asia/Ashkhabad
Asia/Atyrau
Asia/Baghdad
Asia/Bahrain
Asia/Baku
Asia/Bangkok
Asia/Barnaul
Asia/Beirut
Asia/Bishkek
Asia/Brunei
Asia/Calcutta
Asia/Chita
Asia/Choibalsan
Asia/Chongqing
Asia/Chungking
Asia/Colombo
Asia/Dacca
Asia/Damascus
Asia/Dhaka
Asia/Dili
Asia/Dubai
Asia/Dushanbe
Asia/Famagusta
Asia/Gaza
Asia/Harbin
Asia/Hebron
Asia/Ho_Chi_Minh
Asia/Hong_Kong
Asia/Hovd
Asia/Irkutsk
Asia/Istanbul
Asia/Jakarta
Asia/Jayapura
Asia/Jerusalem
Asia/Kabul
Asia/Kamchatka
Asia/Karachi
Asia/Kashgar
Asia/Kathmandu
Asia/Katmandu
Asia/Khandyga
Asia/Kolkata
Asia/Krasnoyarsk
Asia/Kuala_Lumpur
Asia/Kuching
Asia/Kuwait
Asia/Macao
Asia/Macau
Asia/Magadan
Asia/Makassar
Asia/Manila
Asia/Muscat
Asia/Nicosia
Asia/Novokuznetsk
Asia/Novosibirsk
Asia/Omsk
Asia/Oral
Asia/Phnom_Penh
Asia/Pontianak
Asia/Pyongyang
Asia/Qatar
Asia/Qostanay
Asia/Qyzylorda
Asia/Rangoon
Asia/Riyadh
Asia/Saigon
Asia/Sakhalin
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk
Asia/Taipei
Asia/Tashkent
Asia/Tbilisi
Asia/Tehran
Asia/Tel_Aviv
Asia/Thimbu
Asia/Thimphu
Asia/Tokyo
Asia/Tomsk
Asia/Ujung_Pandang
Asia/Ulaanbaatar
Asia/Ulan_Bator
Asia/Urumqi
Asia/Ust-Nera
Asia/Vientiane
Asia/Vladivostok
Asia/Yakutsk
Asia/Yangon
Asia/Yekaterinburg
Asia/Yerevan
Atlantic/Azores
Atlantic/Bermuda
Atlantic/Canary
Atlantic/Cape_Verde
Atlantic/Faeroe
Atlantic/Faroe
Atlantic/Jan_Mayen
Atlantic/Madeira
Atlantic/Reykjavik
Atlantic/South_Georgia
Atlantic/St_Helena
Atlantic/Stanley
Australia/ACT
Australia/Adelaide
Australia/Brisbane
Australia/Broken_Hill
Australia/Canberra
Australia/Currie
Australia/Darwin
Australia/Eucla
Australia/Hobart
Australia/LHI
Australia/Lindeman
Australia/Lord_Howe
Australia/Melbourne
Australia/NSW
Australia/North
Australia/Perth
Australia/Queensland
Australia/South
Australia/Sydney
Australia/Tasmania
Australia/Victoria
Australia/West
Australia/Yancowinna
Brazil/Acre
Brazil/DeNoronha
Brazil/East
Brazil/West
CET
CST6CDT
Canada/Atlantic
Canada/Central
Canada/Eastern
Canada/Mountain
Canada/Newfoundland
Canada/Pacific
Canada/Saskatchewan
Canada/Yukon
Chile/Continental
Chile/EasterIsland
Cuba
EET
EST
EST5EDT
Egypt
Eire
Etc/GMT
Etc/GMT+0
Etc/GMT+1
Etc/GMT+10
Etc/GMT+11
Etc/GMT+12
Etc/GMT+2
Etc/GMT+3
Etc/GMT+4
Etc/GMT+5
Etc/GMT+6
Etc/GMT+7
Etc/GMT+8
Etc/GMT+9
Etc/GMT-0
Etc/GMT-1
Etc/GMT-10
Etc/GMT-11
Etc/GMT-12
Etc/GMT-13
Etc/GMT-14
Etc/GMT-2
Etc/GMT-3
Etc/GMT-4
Etc/GMT-5
Etc/GMT-6
Etc/GMT-7
Etc/GMT-8
Etc/GMT-9
Etc/GMT0
Etc/Greenwich
Etc/UCT
Etc/UTC
Etc/Universal
Etc/Zulu
Europe/Amsterdam
Europe/Andorra
Europe/Astrakhan
Europe/Athens
Europe/Belfast
Europe/Belgrade
Europe/Berlin
Europe/Bratislava
Europe/Brussels
Europe/Bucharest
Europe/Budapest
Europe/Busingen
Europe/Chisinau
Europe/Copenhagen
Europe/Dublin
Europe/Gibraltar
Europe/Guernsey
Europe/Helsinki
Europe/Isle_of_Man
Europe/Istanbul
Europe/Jersey
Europe/Kaliningrad
Europe/Kiev
Europe/Kirov
Europe/Lisbon
Europe/Ljubljana
Europe/London
Europe/Luxembourg
Europe/Madrid
Europe/Malta
Europe/Mariehamn
Europe/Minsk
Europe/Monaco
Europe/Moscow
Europe/Nicosia
Europe/Oslo
Europe/Paris
Europe/Podgorica
Europe/Prague
Europe/Riga
Europe/Rome
Europe/Samara
Europe/San_Marino
Europe/Sarajevo
Europe/Saratov
Europe/Simferopol
Europe/Skopje
Europe/Sofia
Europe/Stockholm
Europe/Tallinn
Europe/Tirane
Europe/Tiraspol
Europe/Ulyanovsk
Europe/Uzhgorod
Europe/Vaduz
Europe/Vatican
Europe/Vienna
Europe/Vilnius
Europe/Volgograd
Europe/Warsaw
Europe/Zagreb
Europe/Zaporozhye
Europe/Zurich
GB
GB-Eire
GMT
GMT+0
GMT-0
GMT0
Greenwich
HST
Hongkong
Iceland
Indian/Antananarivo
Indian/Chagos
Indian/Christmas
Indian/Cocos
Indian/Comoro
Indian/Kerguelen
Indian/Mahe
Indian/Maldives
Indian/Mauritius
Indian/Mayotte
Indian/Reunion
Iran
Israel
Jamaica
Japan
Kwajalein
Libya
MET
MST
MST7MDT
Mexico/BajaNorte
Mexico/BajaSur
Mexico/General
NZ
NZ-CHAT
Navajo
PRC
PST8PDT
Pacific/Apia
Pacific/Auckland
Pacific/Bougainville
Pacific/Chatham
Pacific/Chuuk
Pacific/Easter
Pacific/Efate
Pacific/Enderbury
Pacific/Fakaofo
Pacific/Fiji
Pacific/Funafuti
Pacific/Galapagos
Pacific/Gambier
Pacific/Guadalcanal
Pacific/Guam
Pacific/Honolulu
Pacific/Johnston
Pacific/Kiritimati
Pacific/Kosrae
Pacific/Kwajalein
Pacific/Majuro
Pacific/Marquesas
Pacific/Midway
Pacific/Nauru
Pacific/Niue
Pacific/Norfolk
Pacific/Noumea
Pacific/Pago_Pago
Pacific/Palau
Pacific/Pitcairn
Pacific/Pohnpei
Pacific/Ponape
Pacific/Port_Moresby
Pacific/Rarotonga
Pacific/Saipan
Pacific/Samoa
Pacific/Tahiti
Pacific/Tarawa
Pacific/Tongatapu
Pacific/Truk
Pacific/Wake
Pacific/Wallis
Pacific/Yap
Poland
Portugal
ROC
ROK
Singapore
Turkey
UCT
US/Alaska
US/Aleutian
US/Arizona
US/Central
US/East-Indiana
US/Eastern
US/Hawaii
US/Indiana-Starke
US/Michigan
US/Mountain
US/Pacific
US/Samoa
UTC
Universal
W-SU
WET
Zulu

View file

@ -1,28 +1,23 @@
Summary: Timezone data
Name: tzdata
Version: 2025c
%define tzdata_version 2025c
%define tzcode_version 2025c
Version: 2018g
%define tzdata_version 2018g
%define tzcode_version 2018g
Release: 1%{?dist}
License: LicenseRef-Fedora-Public-Domain AND (GPL-2.0-only WITH ClassPath-exception-2.0)
License: Public Domain
Group: System Environment/Base
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
Patch002: 0002-Fix-have-snprintf-error.patch
Patch003: 0003-continue-to-ship-posixrules.patch
BuildRequires: make
BuildRequires: gcc
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: gawk, glibc, perl-interpreter
BuildRequires: java-25-devel
BuildRequires: java-devel
BuildRequires: glibc-common >= 2.5.90-7
Conflicts: glibc-common <= 2.3.2-63
BuildArchitectures: noarch
ExcludeArch: i686
# Using '--with vanguard' will change the data format to the new vanguard form.
%bcond_with vanguard
%description
This package contains data files with rules for various timezones around
@ -30,10 +25,14 @@ the world.
%package java
Summary: Timezone data for Java
Source3: javazic-1.8-37392f2f5d59.tar.xz
Source4: ZoneTest.java
Patch100: 8051641.patch
Patch101: javazic-harden-links.patch
Group: System Environment/Base
Source3: javazic.tar.gz
Source4: javazic-1.8-37392f2f5d59.tar.xz
Patch100: javazic-fixup.patch
Patch101: rebase-01.patch
Patch102: rebase-02.patch
Patch103: 7090844.patch
Patch104: 7133138.patch
%description java
This package contains timezone information for use by Java runtimes.
@ -41,100 +40,98 @@ This package contains timezone information for use by Java runtimes.
%prep
%setup -q -c -a 1
%patch -p1 -P 2
%if 0%{?rhel}
%patch -p1 -P 3
%endif
# Currently tzdata is providing the "rearguard" data set for maximum
# compatibility with existing Red Hat Enterprise Linux installs. Future releases of
# Red Hat Enterprise Linux will be transitioning to the default or "vanguard" tzdata
# data set.
#
# The "rearguard" and "vanguard" data sets are defined by the upstream tzdata project
# and represent approximately the same data, with "vanguard" optimized for newer time
# zone data tooling, and "rearguard" optimized for compatibility with existing tooling.
# For example "vanguard" implements support for negative DST offsets, while "rearguard"
# supports the traditional format.
# zic now defaults to "-b slim" to control data bloat.
# This can cause build issues for some packages.
# For now, build with ZFLAGS="-b fat" for backward compatibitliy.
# tzdata-2018g introduced 25:00 transition times. This breaks OpenJDK.
# Use rearguard for java
mkdir rearguard
make VERSION=%{version} ZFLAGS="-b fat" tzdata%{version}-rearguard.tar.gz.t
mv tzdata%{version}-rearguard.tar.gz rearguard
pushd rearguard
# Create the reargard data files.
make VERSION=%{version} tzdata%{version}-rearguard.tar.gz
tar zxf tzdata%{version}-rearguard.tar.gz
%patch002 -p1
# Run make to create the tzdata.zi file
make DATAFORM=rearguard VERSION=%{version} tzdata.zi
mkdir javazic
tar zxf %{SOURCE3} -C javazic
pushd javazic
%patch100
%patch101
%patch102
%patch103
%patch104
# Hack alert! sun.tools may be defined and installed in the
# VM. In order to guarantee that we are using IcedTea/OpenJDK
# for creating the zoneinfo files, rebase all the packages
# from "sun." to "rht.". Unfortunately, gcj does not support
# any of the -Xclasspath options, so we must go this route
# to ensure the greatest compatibility.
mv sun rht
find . -type f -name '*.java' -print0 \
| xargs -0 -- sed -i -e 's:sun\.tools\.:rht.tools.:g' \
-e 's:sun\.util\.:rht.util.:g'
popd
%if 0%{?rhel}
# Use rearguard for rhel (overwrite default dataform)
tar zxf rearguard/tzdata%{version}-rearguard.tar.gz
%endif
tar xf %{SOURCE3}
%patch -P 100
%patch -p1 -P 101
tar xf %{SOURCE4}
echo "%{name}%{tzdata_version}" >> VERSION
%build
# Run make to create the tzdata.zi file
rm tzdata.zi
%if %{with vanguard}
make VERSION=%{version} ZFLAGS="-b fat" DATAFORM=vanguard tzdata.zi
%elif 0%{?rhel}
make VERSION=%{version} ZFLAGS="-b fat" DATAFORM=rearguard tzdata.zi
%else
make tzdata.zi
%endif
FILES="africa antarctica asia australasia europe northamerica southamerica
etcetera backward factory"
pacificnew etcetera backward"
mkdir zoneinfo/{,posix,right}
zic -b fat -y ./yearistype -d zoneinfo -L /dev/null -p America/New_York $FILES
zic -b fat -y ./yearistype -d zoneinfo/posix -L /dev/null $FILES
zic -b fat -y ./yearistype -d zoneinfo/right -L leapseconds $FILES
zic -y ./yearistype -d zoneinfo -L /dev/null -p America/New_York $FILES
zic -y ./yearistype -d zoneinfo/posix -L /dev/null $FILES
zic -y ./yearistype -d zoneinfo/right -L leapseconds $FILES
# grep -v tz-art.htm tz-link.htm > tz-link.html
# tzdata-2018g introduced 25:00 which breaks java - use the rearguard files for java
JAVA_FILES="rearguard/africa rearguard/antarctica rearguard/asia \
rearguard/australasia rearguard/europe rearguard/northamerica \
rearguard/southamerica rearguard/etcetera \
rearguard/backward"
# Java 6/7 tzdata
pushd javazic
javac -source 1.5 -target 1.5 -classpath . `find . -name \*.java`
popd
java -classpath javazic/ rht.tools.javazic.Main -V %{version} \
-d javazi \
$FILES javazic/tzdata_jdk/gmt javazic/tzdata_jdk/jdk11_backward
# Java 8 tzdata
pushd javazic-1.8
javac -source 1.8 -target 1.8 -classpath . `find . -name \*.java`
javac -source 1.7 -target 1.7 -classpath . `find . -name \*.java`
popd
java -classpath javazic-1.8 build.tools.tzdb.TzdbZoneRulesCompiler \
-srcdir . -dstfile tzdb.dat \
-verbose \
$JAVA_FILES javazic-1.8/tzdata_jdk/gmt javazic-1.8/tzdata_jdk/jdk11_backward
$FILES javazic-1.8/tzdata_jdk/gmt javazic-1.8/tzdata_jdk/jdk11_backward
%install
rm -fr $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_datadir}
cp -prd zoneinfo $RPM_BUILD_ROOT%{_datadir}
install -p -m 644 zone.tab zone1970.tab iso3166.tab leap-seconds.list leapseconds tzdata.zi $RPM_BUILD_ROOT%{_datadir}/zoneinfo
install -p -m 644 zone.tab zone1970.tab iso3166.tab leapseconds tzdata.zi $RPM_BUILD_ROOT%{_datadir}/zoneinfo
cp -prd javazi $RPM_BUILD_ROOT%{_datadir}/javazi
mkdir -p $RPM_BUILD_ROOT%{_datadir}/javazi-1.8
install -p -m 644 tzdb.dat $RPM_BUILD_ROOT%{_datadir}/javazi-1.8/
%check
echo ============TESTING===============
/usr/bin/env LANG=C make -k VALIDATE=':' check && true
# Create a custom JAVA_HOME, where we can replace tzdb.dat with the
# one just built, for testing.
system_java_home=$(dirname $(readlink -f $(which java)))/..
mkdir -p java_home
cp -Lr $system_java_home/* java_home/.
for tzdb in $(find java_home -name tzdb.dat) ; do
rm $tzdb
cp $RPM_BUILD_ROOT%{_datadir}/javazi-1.8/tzdb.dat $tzdb
done
# Compile the smoke test and run it.
cp %{SOURCE4} .
javac ZoneTest.java
java_home/bin/java ZoneTest
echo ============END TESTING===========
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{_datadir}/zoneinfo
%license LICENSE
%doc README
@ -143,305 +140,12 @@ echo ============END TESTING===========
%doc tz-art.html
%files java
%defattr(-,root,root)
%{_datadir}/javazi
%{_datadir}/javazi-1.8
%changelog
* Sun Dec 14 2025 Patsy Griffin <patsy@redhat.com> - 2025c-1
Update to tzdata-2025c (#2421294)
- Update the expiration date for the leap seconds files.
* Tue Jul 29 2025 jiri vanek <jvanek@redhat.com> - 2025b-3
- Rebuilt for java-25-openjdk as preffered jdk
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2025b-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Mar 27 2025 Patsy Griffin <patsy@redhat.com> - 2025b-1
Update to tzdata-2025b (#2354293)
- Chile's Aysén Region moves from -04/-03 to -03 year-round,
diverging from America/Santiago and creating a new zone
America/Coyhaique.
* Tue Feb 04 2025 Patsy Griffin <patsy@redhat.com> - 2025a-1
Update to tzdata-2025a (#2338511)
- Paraguay is now permanently at -03. This impacts timestamps
starting on 2025-03-22.
- Includes improvements to pre-1991 data for the Philippines.
- Etc/Unknown is now reserved.
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2024b-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Thu Dec 12 2024 Patsy Griffin <patsy@redhat.com> - 2024b-1
- Update to tzdata-2024b (#2310315)
- Improve historical data for Mexico, Mongolia, and Portugal.
- System V names are now obsolescent.
- The main data form now uses %z.
- The code now conforms to RFC 8536 for early timestamps.
- Support POSIX.1-2024, which removes asctime_r and ctime_r.
- Assume POSIX.2-1992 or later for shell scripts.
- SUPPORT_C89 now defaults to 1.
- Include two upstream patches for month names as in April vs Apr.
- Harden against links to removed zones
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2024a-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue May 28 2024 Patsy Griffin <patsy@redhat.com> - 2024a-8
- zic now defaults to "-b slim" to control data bloat.
For now, build with ZFLAGS="-b fat" for backward compatibitliy.
* Tue May 14 2024 Miro Hrončok <mhroncok@redhat.com> - 2024a-7
- Rebuilt with glibc-2.39.9000-10 to avoid regressions described in rhbz#2280403
* Fri Apr 26 2024 Jonathan Wakely <jwakely@redhat.com> - 2024a-6
- Add support for --with vanguard
* Thu Apr 04 2024 Patsy Griffin <patsy@redhat.com> - 2024a-5
- Add java patch to fix incorrect calculations for
Africa/Casablanca starting in 2027. (#2266311)
* Sat Mar 02 2024 Andrew Hughes <gnu.andrew@redhat.com> - 2024a-4
- Remove hardcoded versioned path to javac
* Tue Feb 27 2024 Jiri Vanek <jvanek@redhat.com> - 2024a-3
- Rebuilt for java-21-openjdk as system jdk
* Tue Feb 06 2024 Patsy Griffin <patsy@redhat.com> - 2024a-2
- Correct the bz# for the tzdata-2024 commit.
* Mon Feb 05 2024 Patsy Griffin <patsy@redhat.com> - 2024a-1
- Rebase to tzdata-2024a
- Kazakhstan will transition from UTC+6 to UTC+5 on 2024-03-01.
- Palestine will spring forward a week later than previously
predicted.
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2023d-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jan 18 2024 Patsy Griffin <patsy@redhat.com> - 2023d-2
- Migrate License field to SPDX identifiers for
https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_2
* Wed Jan 03 2024 Patsy Griffin <patsy@redhat.com> - 2023d-1
- Rebase to tzdata-2023d
- Include time zone changes for Ittoqqortoormiit, Greenland
and Vostok, Antarctica.
- Update the expiration date for the leap-seconds.list file.
No new leap seconds were added.
* Wed Dec 13 2023 Patsy Griffin <patsy@redhat.com> - 2023c-5
- Remove Java 6/7 support for Fedora 40 and RHEL 10 forward.
* Tue Oct 3 2023 David Cantrell <dcantrell@redhat.com> - 2023c-4
- Use the new syntax for the %%patch macro in the spec file
* Mon Jul 24 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 2023c-3
- Disable Java 6/7 data in RHEL 10 builds
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2023c-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Mar 29 2023 Patsy Griffin <patsy@redhat.com> - 2023c-1
- Rebase to tzdata-2023c
- Reinstate Lebanon DST change effective March 25.
* Fri Mar 24 2023 Patsy Griffin <patsy@redhat.com> - 2023b-1
- Rebase to tzdata-2023b
- Lebanon will transition to DST on April 20/21, not March 25/26.
* Thu Mar 23 2023 Patsy Griffin <patsy@redhat.com> - 2023a-1
- Rebase to tzdata-2023a
- Egypt reintroduced DST, from April through October.
- Morocco springs forward April 23, not April 30.
- Palestine delayed the start of DST this year.
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2022g-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Dec 02 2022 Patsy Griffin <patsy@redhat.com> - 2022g-1
- Rebase to tzdata-2022g
- The northern edge of the Mexican state of Chihuahua will
change time zone to agree with nearby US locations on
2022-11-30.
- Added a new Zone America/Ciudad_Juarez that splits from
America/Ojinaga.
* Mon Oct 31 2022 Patsy Griffin <patsy@redhat.com> - 2022f-1
- Rebase to tzdata-2022f
- Mexico will stop observing DST except near the US border.
- Chihuahua moved to -06 year round starting on 2022-10-30.
- Fiji no longer observes DST.
* Fri Oct 14 2022 Patsy Griffin <patsy@redhat.com> - 2022e-1
- Rebase to tzdata-2022e
- Jordan and Syria cancelled the DST transition planned
for 2022-10-28, remaining at +03 permanently.
* Sun Sep 25 2022 Patsy Griffin <patsy@redhat.com> - 2022d-1
- Rebase to tzdata-2022d
- Palestine DST transition will be on October 29, 2022,
not October 28, 2022.
- Europe/Uzhgorod and Europe/Zaporozhye are moved to 'backzone'.
* Mon Aug 22 2022 Patsy Griffin <patsy@redhat.com> - 2022c-1
- Rebase to tzdata-2022c - supersedes tzdata-2022b
- Add a work-around for an awk bug in FreeBSD, macOS, etc.
- Improve tzselect with respect to intercontinental Zones.
* Sun Aug 14 2022 Patsy Griffin <patsy@redhat.com> - 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 <releng@fedoraproject.org> - 2022a-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jul 15 2022 Patsy Griffin <patsy@redhat.com> - 2022a-3
- Java OpenJDK packages are no longer available on i686.
Exclude i686 builds. (bz #2104108)
* Tue Jun 07 2022 Patsy Griffin <patsy@redhat.com> - 2022a-2
- Include leap-second.list in tzdata install. (#2091390)
* Wed Mar 23 2022 Patsy Griffin <patsy@redhat.com> - 2022a-1
- Rebase to tzdata-2022a
- Palestine springs forward on 2022-03-27, not 2022-03-26.
- zdump -v now outputs better failure information.
- bug fixes for code that reads corrupted TZif data.
* Tue Feb 08 2022 Patsy Griffin <patsy@redhat.com> - 2021e-4
- Clean-up changelog.
* Sat Feb 05 2022 Jiri Vanek <jvanek@redhat.com> - 2021e-3
- Rebuilt for https://fedoraproject.org/wiki/Changes/Java17
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2021e-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Oct 26 2021 Patsy Griffin <patsy@redhat.com> - 2021e-1
- Rebase to tzdata-2021e - supersedes tzdata-2021d
- Pacific/Fiji suspended DST for the 2021/2022 season.
- 'zic -r' now marks unspecified timestamps with "-00".
- Palestine will fall back 2021-10-29 at 01:00, rather
than the predicted 2021-10-30.
* Thu Oct 07 2021 Patsy Griffin <patsy@redhat.com> - 2021c-1
- Rebase to tzdata-2021c
- Revert most 2021b changes to the 'backward' file.
- Fix 'zic -b fat' bug in pre-1970 32-bit data reported in tzdata-2021b.
- Fix two Link line typos from tzdata-2021b.
- Distribute the new SECURITY file.
* Sat Sep 25 2021 Patsy Griffin <patsy@redhat.com> - 2021b-1
- Rebase to tzdata-2021b
- Jordan now starts DST on February's last Thursday.
- Samoa no longer observes DST.
- Merge more location-based Zones whose timestamps agree since 1970.
- Move some backward-compatibility links to 'backward'.
- Rename Pacific/Enderbury to Pacific/Kanton.
- Correct many pre-1993 transitions in Malawi, Portugal, etc.
- zic now creates each output file or link atomically.
- zic -L no longer omits the POSIX TZ string in its output.
- zic fixes for truncation and leap second table expiration.
- zic now follows POSIX for TZ strings using all-year DST.
- Fix some localtime crashes and bugs in obscure cases.
- zdump -v now outputs more-useful boundary cases.
- tzfile.5 better matches a draft successor to RFC 8536.
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2021a-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jan 25 2021 Patsy Griffin <patsy@redhat.com> - 2021a-1
- Rebase to tzdata-2021a
- South Sudan will change from +03 to +02 on 2021-02-01.
* Wed Dec 30 2020 Patsy Griffin <patsy@redhat.com> - 2020f-1
- Rebase to tzdata-2020f including changes for tzdata-2020e
- tzdata-2020f fixes a bug in tzdata-2020e that caused an
invalid zi file in rearguard format
- Volgograd changes time zone from UTC+04 to UTC+03 on 2020-12-27.
- Australia/Currie is identical to Australia/Hobart for all
timestamps since 1970 and was therefore created by mistake,
now moved to the "backward" file.
* Wed Dec 16 2020 Patsy Griffin <patsy@redhat.com> - 2020d-3
- Add 0003-continue-to-ship-posixrules.patch to initialize
POSIXRULES variable.
* Wed Dec 16 2020 Patsy Griffin <patsy@redhat.com> - 2020d-2
- Add conditional support for rhel and eln.
* Fri Oct 23 2020 Patsy Griffin <patsy@redhat.com> - 2020d-1
- Rebase to tzdata-2020d including changes from tzdata-2020c
- Palestine will end summer time on 2020-10-24 rather than the
predicted 2020-10-31.
- Fiji starts DST later than usual, on 2020-12-20.
- Rearguard now provides an empty file pacificnew to support
downstream software that expects it.
* Wed Oct 14 2020 Patsy Griffin <patsy@redhat.com> - 2020b-1
- Rebase to tzdata-2020b
- Yukon timezones represented by America/Whitehorse and
America/Dawson will change time zone rules from -08/-07 to
permanent -07 on 2020-11-01, not on 2020-03-08 as 2020a had it.
- The most recent winter(+08)/summer(+11) transition for Casey Station,
Antarctica was 2020-10-04 00:01.
- Remove obsolete files pacificnew, systemv, and yearistype.sh
from the distribution.
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020a-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sat Jul 11 2020 Jiri Vanek <jvanek@redhat.com> - 2020a-3
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Fri Jun 12 2020 Jiri Vanek <jvanek@redhat.com> - 2020a-2
- bumped source/target to 1.6 for tzdata for jdk6/7
- bumped source/target to 1.8 for tzdata for jdk8
* Thu Apr 30 2020 Patsy Griffin <patsy@redhat.com> - 2020a-1
- Rebase to tzdata-2020a
- Morocco will spring forward on 2020-05-31 rather than
previously predicted 2020-05-24.
- Canada's Yukon region changed to year round UTC -07
effective 2020-03-08.
- America/Godthab was renamed to America/Nuuk.
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2019c-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jan 17 2020 Patsy Griffin <patsy@redhat.com> - 2019c-2
- Don't build the factory zone for tzdata-java.
Patch provided by Severin Gehwolf <sgehwolf@redhat.com> (#1789468)
* Mon Sep 23 2019 Patsy Griffin <patsy@redhat.com> - 2019c-1
- Rebase to tzdata-2019c
- Fiji will observe DST from 2019-11-10 to 2020-01-12.
- Norfolk Island will begin observing Australian-style DST on 2019-10-06.
- Add Factory back in to be more consistent with upstream.
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2019b-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Tue Jul 09 2019 Patsy Griffin <patsy@redhat.com> - 2019b-1
- Rebase to tzdata-2019b
- Brazil will no longer observe DST going forward.
- The 2019 spring transition for Palestine occurred 03-29, not 03-30.
* Fri Mar 29 2019 Patsy Griffin Franklin <patsy@redhat.com> - 2019a-1
- Rebase to tzdata-2019a
- Palestine will start DST on 2019-03-30, rather than 2019-03-23 as
previously predicted.
- Metlakatla rejoined Alaska time on 2019-01-20, ending its observances
of Pacific standard time.
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2018i-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Nov 12 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018g-1
* Sun Oct 28 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018g-1
- Rebase to tzdata-2018g
Includes changes for tzdata-2018f.
- Volgograd will change from UTC+03 to UTC+04 on 2018-10-28 at 02:00.
@ -451,24 +155,22 @@ echo ============END TESTING===========
and restart DST on the first Saturday in September at 24:00.
- Morocco will change from UTC+00/+01 to permanent +01 effective 2018-10-27.
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018e-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed May 16 2018 Patsy Franklin <pfrankli@redhat.com> - 2018e-1
- Rebase to tzdata-2018e
- North Korea changed from UTC+8:30 to UTC+9 on May 5, 2018.
- In this update, the upstream project now defaults to using
the "vanguard" data implementation which includes negative DST offsets.
However, we are continuing to provide the "rearguard" format
for data which does not use negative DST offsets to provide
better compatibility with existing tools. We intend to transition
to the "vanguard" data implementation in the future.
* Wed Mar 28 2018 Patsy Franklin <pfrankli@redhat.com> - 2018d-1
- Rebase to tzdata-2018d:
- DST for Asia/Gaza and Asia/Hebron has changed
- DST for Asia/Gaza and Asia/Hebron has changed
from March 31 to March 24.
- Antarctica/Casey station changed to UTC+8 on March 11.
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018c-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Feb 01 2018 Patsy Franklin <pfrankli@redhat.com> - 2018c-1
- Rebase to tzdata-2018c:
- São Tomé and Príncipe changed from +00 to +01 on January 1, 2018