提交 dd5a9e1f 编写于 作者: A asaha

Merge

......@@ -682,6 +682,10 @@ ec72a941be0a50ab77f5375cf710bc06e4f118d3 jdk8u121-b11
2974746e56192cdd14fc2dd43179bcf28e4faf4a jdk8u121-b13
4f69f3363a2ecee8d3df2b046266a76c2a805139 jdk8u121-b31
ec26e3331158912f86268ef473e64514c70cbd52 jdk8u121-b32
cb2c7c89dd09edcda4cb7bd0db623c813d3e5dbc jdk8u121-b33
90f36d39acdc5be0665722538749c59583e3b83d jdk8u121-b34
cec5310dcc2b876dd53a057035cb63dd22f63257 jdk8u121-b35
a5c94735ad3fb33f353abc23e25915db2ff7a36e jdk8u121-b36
032874d46bf95478cb86690b3c91d335c0764b0b jdk8u131-b00
bea5b22daf5ddd941f3bcbf7a4e5fc5244ceb788 jdk8u131-b01
a01d217a232906e82f80e5bc3db4d60c4c74716e jdk8u131-b02
......@@ -693,6 +697,8 @@ f5d0aadb4d1ca74eda4e98cc0030f1618ef4c870 jdk8u131-b07
6e362e6002abc39c63fc8ab4bcebf08e273f5a94 jdk8u131-b08
40d00399869d8a28cfecf360234f340e9e0ad3b1 jdk8u131-b09
c0091a673d766ce2e76a945bab6de325fe78dd88 jdk8u131-b10
3ab471c4760a808e39406303ff33a25a542b9c75 jdk8u131-b11
a160009bbe1417d85f1c0eec890fdb17391b3637 jdk8u141-b00
e95a13de2d36050302a1af422967f5260fc8eabd jdk8u141-b01
a160009bbe1417d85f1c0eec890fdb17391b3637 jdk8u141-b00
072e084bceeedeb75467e40ca77786ac9ef5227a jdk8u151-b00
......@@ -21,4 +21,4 @@
# or visit www.oracle.com if you need additional information or have any
# questions.
#
tzdata2016j
tzdata2017a
......@@ -29,15 +29,15 @@
# tz@iana.org for general use in the future). For more, please see
# the file CONTRIBUTING in the tz distribution.
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-20):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -54,39 +54,33 @@
# A reliable and entertaining source about time zones is
# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
#
# European-style abbreviations are commonly used along the Mediterranean.
# For sub-Saharan Africa abbreviations were less standardized.
# Previous editions of this database used WAT, CAT, SAT, and EAT
# for +0:00 through +3:00, respectively,
# but Mark R V Murray reports that
# 'SAST' is the official abbreviation for +2:00 in the country of South Africa,
# 'CAT' is commonly used for +2:00 in countries north of South Africa, and
# 'WAT' is probably the best name for +1:00, as the common phrase for
# for UT +00 through +03, respectively,
# but in 1997 Mark R V Murray reported that
# 'SAST' is the official abbreviation for +02 in the country of South Africa,
# 'CAT' is commonly used for +02 in countries north of South Africa, and
# 'WAT' is probably the best name for +01, as the common phrase for
# the area that includes Nigeria is "West Africa".
# He has heard of "Western Sahara Time" for +0:00 but can find no reference.
#
# To make things confusing, 'WAT' seems to have been used for -1:00 long ago;
# I'd guess that this was because people needed _some_ name for -1:00,
# and at the time, far west Africa was the only major land area in -1:00.
# This usage is now obsolete, as the last use of -1:00 on the African
# mainland seems to have been 1976 in Western Sahara.
#
# To summarize, the following abbreviations seem to have some currency:
# -1:00 WAT West Africa Time (no longer used)
# 0:00 GMT Greenwich Mean Time
# 2:00 CAT Central Africa Time
# 2:00 SAST South Africa Standard Time
# and Murray suggests the following abbreviation:
# 1:00 WAT West Africa Time
# I realize that this leads to 'WAT' being used for both -1:00 and 1:00
# for times before 1976, but this is the best I can think of
# until we get more information.
#
# To summarize, the following abbreviations seemed to have some currency:
# +00 GMT Greenwich Mean Time
# +02 CAT Central Africa Time
# +02 SAST South Africa Standard Time
# and Murray suggested the following abbreviation:
# +01 WAT West Africa Time
# Murray's suggestion seems to have caught on in news reports and the like.
# I vaguely recall 'WAT' also being used for -01 in the past but
# cannot now come up with solid citations.
#
# I invented the following abbreviations; corrections are welcome!
# 2:00 WAST West Africa Summer Time
# 2:30 BEAT British East Africa Time (no longer used)
# 2:45 BEAUT British East Africa Unified Time (no longer used)
# 3:00 CAST Central Africa Summer Time (no longer used)
# 3:00 SAST South Africa Summer Time (no longer used)
# 3:00 EAT East Africa Time
# +02 WAST West Africa Summer Time
# +03 CAST Central Africa Summer Time (no longer used)
# +03 SAST South Africa Summer Time (no longer used)
# +03 EAT East Africa Time
# 'EAT' also seems to have caught on; the others are rare but are paired
# with better-attested non-DST abbreviations.
# Algeria
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
......@@ -144,17 +138,17 @@ Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
# Cape Verde / Cabo Verde
#
# Shanks gives 1907 for the transition to CVT.
# Shanks gives 1907 for the transition to +02.
# Perhaps the 1911-05-26 Portuguese decree
# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# merely made it official?
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
-2:00 - CVT 1942 Sep
-2:00 1:00 CVST 1945 Oct 15
-2:00 - CVT 1975 Nov 25 2:00
-1:00 - CVT
-2:00 - -02 1942 Sep
-2:00 1:00 -01 1945 Oct 15
-2:00 - -02 1975 Nov 25 2:00
-1:00 - -01
# Central African Republic
# See Africa/Lagos.
......@@ -411,7 +405,7 @@ Rule Ghana 1920 1942 - Sep 1 0:00 0:20 GHST
Rule Ghana 1920 1942 - Dec 31 0:00 0 GMT
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Accra -0:00:52 - LMT 1918
0:00 Ghana %s
0:00 Ghana GMT/+0020
# Guinea
# See Africa/Abidjan.
......@@ -420,20 +414,20 @@ Zone Africa/Accra -0:00:52 - LMT 1918
#
# Shanks gives 1911-05-26 for the transition to WAT,
# evidently confusing the date of the Portuguese decree
# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# with the date that it took effect, namely 1912-01-01.
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Bissau -1:02:20 - LMT 1912 Jan 1
-1:00 - WAT 1975
-1:00 - -01 1975
0:00 - GMT
# Kenya
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
3:00 - EAT 1930
2:30 - BEAT 1940
2:45 - BEAUT 1960
2:30 - +0230 1940
2:45 - +0245 1960
3:00 - EAT
Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia
Link Africa/Nairobi Africa/Asmara # Eritrea
......@@ -460,7 +454,7 @@ Link Africa/Nairobi Indian/Mayotte
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Monrovia -0:43:08 - LMT 1882
-0:43:08 - MMT 1919 Mar # Monrovia Mean Time
-0:44:30 - LRT 1972 May # Liberia Time
-0:44:30 - -004430 1972 May
0:00 - GMT
###############################################################################
......@@ -619,7 +613,7 @@ Rule Mauritius 2008 only - Oct lastSun 2:00 1:00 S
Rule Mauritius 2009 only - Mar lastSun 2:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
4:00 Mauritius MU%sT # Mauritius Time
4:00 Mauritius +04/+05
# Agalega Is, Rodriguez
# no information; probably like Indian/Mauritius
......@@ -938,14 +932,14 @@ Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
# since most of it was then controlled by Morocco.
Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún
-1:00 - WAT 1976 Apr 14
-1:00 - -01 1976 Apr 14
0:00 Morocco WE%sT
# Mozambique
#
# Shanks gives 1903-03-01 for the transition to CAT.
# Perhaps the 1911-05-26 Portuguese decree
# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# merely made it official?
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
......@@ -972,16 +966,19 @@ Link Africa/Maputo Africa/Lusaka # Zambia
# the country are close to 40 minutes earlier in sunrise than the rest
# of the country.
#
# From Paul Eggert (2007-03-31):
# Apparently the Caprivi Strip informally observes Botswana time, but
# we have no details. In the meantime people there can use Africa/Gaborone.
# From Paul Eggert (2017-02-22):
# Although the Zambezi Region (formerly known as Caprivi) informally
# observes Botswana time, we have no details about historical practice.
# In the meantime people there can use Africa/Gaborone.
# See: Immanuel S. The Namibian. 2017-02-23.
# http://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
1:30 - SWAT 1903 Mar # SW Africa Time
1:30 - +0130 1903 Mar
2:00 - SAST 1942 Sep 20 2:00
2:00 1:00 SAST 1943 Mar 21 2:00
2:00 - SAST 1990 Mar 21 # independence
......@@ -1008,7 +1005,7 @@ Link Africa/Lagos Africa/Porto-Novo # Benin
# Réunion
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
4:00 - RET # Réunion Time
4:00 - +04
#
# Crozet Islands also observes Réunion time; see the 'antarctica' file.
#
......@@ -1043,7 +1040,7 @@ Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
# Seychelles
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
4:00 - SCT # Seychelles Time
4:00 - +04
# From Paul Eggert (2001-05-30):
# Aldabra, Farquhar, and Desroches, originally dependencies of the
# Seychelles, were transferred to the British Indian Ocean Territory
......
......@@ -133,7 +133,8 @@ Zone Antarctica/Mawson 0 - -00 1954 Feb 13
# O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
# Prat, -6230-05941
# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
# These locations have always used Santiago time; use TZ='America/Santiago'.
# These locations employ Region of Magallanes time; use
# TZ='America/Punta_Arenas'.
# China - year-round bases
# Great Wall, King George Island, -6213-05858, since 1985-02-20
......
此差异已折叠。
......@@ -67,8 +67,8 @@ Zone Australia/Perth 7:43:24 - LMT 1895 Dec
8:00 Aus AW%sT 1943 Jul
8:00 AW AW%sT
Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
8:45 Aus ACW%sT 1943 Jul
8:45 AW ACW%sT
8:45 Aus +0845/+0945 1943 Jul
8:45 AW +0845/+0945
# Queensland
#
......@@ -235,7 +235,8 @@ Rule LH 2008 max - Apr Sun>=1 2:00 0 S
Rule LH 2008 max - Oct Sun>=1 2:00 0:30 D
Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
10:00 - AEST 1981 Mar
10:30 LH LH%sT
10:30 LH +1030/+1130 1985 Jul
10:30 LH +1030/+11
# Australian miscellany
#
......@@ -273,19 +274,19 @@ Zone Antarctica/Macquarie 0 - -00 1899 Nov
0 - -00 1948 Mar 25
10:00 Aus AE%sT 1967
10:00 AT AE%sT 2010 Apr 4 3:00
11:00 - MIST # Macquarie I Standard Time
11:00 - +11
# Christmas
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
7:00 - CXT # Christmas Island Time
7:00 - +07
# Cocos (Keeling) Is
# These islands were ruled by the Ross family from about 1830 to 1978.
# We don't know when standard time was introduced; for now, we guess 1900.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Cocos 6:27:40 - LMT 1900
6:30 - CCT # Cocos Islands Time
6:30 - +0630
# Fiji
......@@ -398,16 +399,16 @@ Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S
Rule Fiji 2015 max - Jan Sun>=15 3:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
12:00 Fiji FJ%sT # Fiji Time
12:00 Fiji +12/+13
# French Polynesia
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
-9:00 - GAMT # Gambier Time
-9:00 - -09
Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
-9:30 - MART # Marquesas Time
-9:30 - -0930
Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
-10:00 - TAHT # Tahiti Time
-10:00 - -10
# Clipperton (near North America) is administered from French Polynesia;
# it is uninhabited.
......@@ -422,15 +423,15 @@ Link Pacific/Guam Pacific/Saipan # N Mariana Is
# Kiribati
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
12:00 - GILT # Gilbert Is Time
12:00 - +12
Zone Pacific/Enderbury -11:24:20 - LMT 1901
-12:00 - PHOT 1979 Oct # Phoenix Is Time
-11:00 - PHOT 1995
13:00 - PHOT
-12:00 - -12 1979 Oct
-11:00 - -11 1995
13:00 - +13
Zone Pacific/Kiritimati -10:29:20 - LMT 1901
-10:40 - LINT 1979 Oct # Line Is Time
-10:00 - LINT 1995
14:00 - LINT
-10:40 - -1040 1979 Oct
-10:00 - -10 1995
14:00 - +14
# N Mariana Is
# See Pacific/Guam.
......@@ -438,31 +439,31 @@ Zone Pacific/Kiritimati -10:29:20 - LMT 1901
# Marshall Is
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Majuro 11:24:48 - LMT 1901
11:00 - MHT 1969 Oct # Marshall Islands Time
12:00 - MHT
11:00 - +11 1969 Oct
12:00 - +12
Zone Pacific/Kwajalein 11:09:20 - LMT 1901
11:00 - MHT 1969 Oct
-12:00 - KWAT 1993 Aug 20 # Kwajalein Time
12:00 - MHT
11:00 - +11 1969 Oct
-12:00 - -12 1993 Aug 20
12:00 - +12
# Micronesia
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Chuuk 10:07:08 - LMT 1901
10:00 - CHUT # Chuuk Time
10:00 - +10
Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
11:00 - PONT # Pohnpei Time
11:00 - +11
Zone Pacific/Kosrae 10:51:56 - LMT 1901
11:00 - KOST 1969 Oct # Kosrae Time
12:00 - KOST 1999
11:00 - KOST
11:00 - +11 1969 Oct
12:00 - +12 1999
11:00 - +11
# Nauru
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
11:30 - NRT 1942 Mar 15 # Nauru Time
9:00 - JST 1944 Aug 15
11:30 - NRT 1979 May
12:00 - NRT
11:30 - +1130 1942 Mar 15
9:00 - +09 1944 Aug 15
11:30 - +1130 1979 May
12:00 - +12
# New Caledonia
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
......@@ -473,7 +474,7 @@ Rule NC 1996 only - Dec 1 2:00s 1:00 S
Rule NC 1997 only - Mar 2 2:00s 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa
11:00 NC NC%sT
11:00 NC +11/+12
###############################################################################
......@@ -514,8 +515,8 @@ Zone Pacific/Auckland 11:39:04 - LMT 1868 Nov 2
11:30 NZ NZ%sT 1946 Jan 1
12:00 NZ NZ%sT
Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2
12:15 - CHAST 1946 Jan 1
12:45 Chatham CHA%sT
12:15 - +1215 1946 Jan 1
12:45 Chatham +1245/+1345
Link Pacific/Auckland Antarctica/McMurdo
......@@ -537,8 +538,8 @@ Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 HS
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
-10:30 - CKT 1978 Nov 12 # Cook Is Time
-10:00 Cook CK%sT
-10:30 - -1030 1978 Nov 12
-10:00 Cook -10/-0930
###############################################################################
......@@ -546,29 +547,29 @@ Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
# Niue
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
-11:20 - NUT 1951 # Niue Time
-11:30 - NUT 1978 Oct 1
-11:00 - NUT
-11:20 - -1120 1951
-11:30 - -1130 1978 Oct 1
-11:00 - -11
# Norfolk
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
11:12 - NMT 1951 # Norfolk Mean Time
11:30 - NFT 1974 Oct 27 02:00 # Norfolk T.
11:30 1:00 NFST 1975 Mar 2 02:00
11:30 - NFT 2015 Oct 4 02:00
11:00 - NFT
11:12 - +1112 1951
11:30 - +1130 1974 Oct 27 02:00
11:30 1:00 +1230 1975 Mar 2 02:00
11:30 - +1130 2015 Oct 4 02:00
11:00 - +11
# Palau (Belau)
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
9:00 - PWT # Palau Time
9:00 - +09
# Papua New Guinea
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
9:48:32 - PMMT 1895 # Port Moresby Mean Time
10:00 - PGT # Papua New Guinea Time
10:00 - +10
#
# From Paul Eggert (2014-10-13):
# Base the Bougainville entry on the Arawa-Kieta region, which appears to have
......@@ -583,28 +584,26 @@ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
# and seem to have controlled it until their 1945-08-21 surrender.
#
# The Autonomous Region of Bougainville switched from UT +10 to +11
# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
# abbreviate this as BST. See:
# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time".
# See:
# http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
#
Zone Pacific/Bougainville 10:22:16 - LMT 1880
9:48:32 - PMMT 1895
10:00 - PGT 1942 Jul
9:00 - JST 1945 Aug 21
10:00 - PGT 2014 Dec 28 2:00
11:00 - BST
10:00 - +10 1942 Jul
9:00 - +09 1945 Aug 21
10:00 - +10 2014 Dec 28 2:00
11:00 - +11
# Pitcairn
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
-8:30 - PNT 1998 Apr 27 0:00
-8:00 - PST # Pitcairn Standard Time
-8:30 - -0830 1998 Apr 27 0:00
-8:00 - -08
# American Samoa
Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
-11:22:48 - LMT 1911
-11:00 - NST 1967 Apr # N=Nome
-11:00 - BST 1983 Nov 30 # B=Bering
-11:00 - SST # S=Samoa
Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
......@@ -685,17 +684,17 @@ Rule WS 2012 max - Sep lastSun 3:00 1 D
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
-11:26:56 - LMT 1911
-11:30 - WSST 1950
-11:00 WS S%sT 2011 Dec 29 24:00 # S=Samoa
13:00 WS WS%sT
-11:30 - -1130 1950
-11:00 WS -11/-10 2011 Dec 29 24:00
13:00 WS +13/+14
# Solomon Is
# excludes Bougainville, for which see Papua New Guinea
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
11:00 - SBT # Solomon Is Time
11:00 - +11
# Tokelau Is
# Tokelau
#
# From Gwillim Law (2011-12-29)
# A correspondent informed me that Tokelau, like Samoa, will be skipping
......@@ -716,8 +715,8 @@ Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Fakaofo -11:24:56 - LMT 1901
-11:00 - TKT 2011 Dec 30 # Tokelau Time
13:00 - TKT
-11:00 - -11 2011 Dec 30
13:00 - +13
# Tonga
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
......@@ -736,7 +735,7 @@ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
# Tuvalu
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Funafuti 11:56:52 - LMT 1901
12:00 - TVT # Tuvalu Time
12:00 - +12
# US minor outlying islands
......@@ -760,10 +759,11 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
# Johnston
#
# From Paul Eggert (2014-03-11):
# From Paul Eggert (2017-02-10):
# Sometimes Johnston kept Hawaii time, and sometimes it was an hour behind.
# Details are uncertain. We have no data for Johnston after 1970, so
# treat it like Hawaii for now.
# treat it like Hawaii for now. Since Johnston is now uninhabited,
# its link to Pacific/Honolulu is in the 'backward' file.
#
# In his memoirs of June 6th to October 4, 1945
# <http://www.315bw.org/Herb_Bach.htm> (2005), Herbert C. Bach writes,
......@@ -783,8 +783,6 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
# See the table on page 4 where he lists GMT and local times for the tests; a
# footnote for the JI tests reads that local time is "JI time = Hawaii Time
# Minus One Hour".
#
# See 'northamerica' for Pacific/Johnston.
# Kingman
# uninhabited
......@@ -798,7 +796,7 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
# Wake
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Wake 11:06:28 - LMT 1901
12:00 - WAKT # Wake Time
12:00 - +12
# Vanuatu
......@@ -811,12 +809,12 @@ Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 S
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
11:00 Vanuatu VU%sT # Vanuatu Time
11:00 Vanuatu +11/+12
# Wallis and Futuna
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Wallis 12:15:20 - LMT 1901
12:00 - WFT # Wallis & Futuna Time
12:00 - +12
###############################################################################
......@@ -827,15 +825,15 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
# tz@iana.org for general use in the future). For more, please see
# the file CONTRIBUTING in the tz distribution.
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-10):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -852,28 +850,19 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
# A reliable and entertaining source about time zones is
# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
#
# I invented the abbreviations marked '*' in the following table;
# the rest are from earlier versions of this file, or from other sources.
# The following abbreviations are from other sources.
# Corrections are welcome!
# std dst
# LMT Local Mean Time
# 8:00 AWST AWDT Western Australia
# 8:45 ACWST ACWDT Central Western Australia*
# 9:00 JST Japan
# 9:30 ACST ACDT Central Australia
# 10:00 AEST AEDT Eastern Australia
# 10:00 GST Guam through 2000
# 10:00 ChST Chamorro
# 10:30 LHST LHDT Lord Howe*
# 11:00 BST Bougainville*
# 11:30 NZMT NZST New Zealand through 1945
# 12:00 NZST NZDT New Zealand 1946-present
# 12:15 CHAST Chatham through 1945*
# 12:45 CHAST CHADT Chatham 1946-present*
# 13:00 WSST WSDT (western) Samoa 2011-present*
# -11:30 WSST Western Samoa through 1950*
# -11:00 SST Samoa
# -10:00 HST Hawaii
# - 8:00 PST Pitcairn*
#
# See the 'northamerica' file for Hawaii.
# See the 'southamerica' file for Easter I and the Galápagos Is.
......
......@@ -119,6 +119,7 @@ Link Pacific/Auckland NZ
Link Pacific/Chatham NZ-CHAT
Link America/Denver Navajo
Link Asia/Shanghai PRC
Link Pacific/Honolulu Pacific/Johnston
Link Pacific/Pohnpei Pacific/Ponape
Link Pacific/Pago_Pago Pacific/Samoa
Link Pacific/Chuuk Pacific/Truk
......
......@@ -29,15 +29,15 @@
# tz@iana.org for general use in the future). For more, please see
# the file CONTRIBUTING in the tz distribution.
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-10):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -79,26 +79,23 @@
# History of Summer Time
# <http://pcdsh01.on.br/HISTHV.htm>
# (1998-09-21, in Portuguese)
#
# I invented the abbreviations marked '*' in the following table;
# the rest are from earlier versions of this file, or from other sources.
# Corrections are welcome!
# std dst 2dst
# LMT Local Mean Time
# -4:00 AST ADT Atlantic
# -3:00 WGT WGST Western Greenland*
# -1:00 EGT EGST Eastern Greenland*
# 0:00 GMT BST BDST Greenwich, British Summer
# 0:00 GMT IST Greenwich, Irish Summer
# 0:00 WET WEST WEMT Western Europe
# 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
# 0:20 NET NEST Netherlands (1937-1940)*
# 1:00 BST British Standard (1968-1971)
# 1:00 CET CEST CEMT Central Europe
# 1:00:14 SET Swedish (1879-1899)*
# 2:00 EET EEST Eastern Europe
# 3:00 MSK MSD Moscow
# the rest are variants of the "xMT" pattern for a city's mean time,
# or are from other sources. Corrections are welcome!
# std dst 2dst
# LMT Local Mean Time
# -4:00 AST ADT Atlantic
# 0:00 GMT BST BDST Greenwich, British Summer
# 0:00 GMT IST Greenwich, Irish Summer
# 0:00 WET WEST WEMT Western Europe
# 0:19:32.13 AMT* NST* Amsterdam, Netherlands Summer (1835-1937)
# 1:00 BST British Standard (1968-1971)
# 1:00 CET CEST CEMT Central Europe
# 1:00:14 SET Swedish (1879-1899)
# 1:36:34 RMT* LST* Riga, Latvian Summer (1880-1926)*
# 2:00 EET EEST Eastern Europe
# 3:00 MSK MSD MDST* Moscow
# From Peter Ilieve (1994-12-04),
# The original six [EU members]: Belgium, France, (West) Germany, Italy,
......@@ -498,7 +495,7 @@ Link Europe/London Europe/Isle_of_Man
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
-0:25:21 - DMT 1916 May 21 2:00
-0:25:21 - DMT 1916 May 21 2:00 # Dublin MT
-0:25:21 1:00 IST 1916 Oct 1 2:00s
0:00 GB-Eire %s 1921 Dec 6 # independence
0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
......@@ -1087,16 +1084,16 @@ Rule Thule 2007 max - Nov Sun>=1 2:00 0 S
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
-3:00 - WGT 1980 Apr 6 2:00
-3:00 EU WG%sT 1996
-3:00 - -03 1980 Apr 6 2:00
-3:00 EU -03/-02 1996
0:00 - GMT
Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
-2:00 - CGT 1980 Apr 6 2:00
-2:00 C-Eur CG%sT 1981 Mar 29
-1:00 EU EG%sT
-2:00 - -02 1980 Apr 6 2:00
-2:00 C-Eur -02/-01 1981 Mar 29
-1:00 EU -01/+00
Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
-3:00 - WGT 1980 Apr 6 2:00
-3:00 EU WG%sT
-3:00 - -03 1980 Apr 6 2:00
-3:00 EU -03/-02
Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
-4:00 Thule A%sT
......@@ -1511,7 +1508,7 @@ Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
Rule Iceland 1967 only - Oct 29 1:00s 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Atlantic/Reykjavik -1:28 - LMT 1908
-1:00 Iceland IS%sT 1968 Apr 7 1:00s
-1:00 Iceland -01/+00 1968 Apr 7 1:00s
0:00 - GMT
# Italy
......@@ -1975,7 +1972,7 @@ Rule Neth 1945 only - Sep 16 2:00s 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Europe/Amsterdam 0:19:32 - LMT 1835
0:19:32 Neth %s 1937 Jul 1
0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
0:20 Neth +0020/+0120 1940 May 16 0:00
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Neth CE%sT 1977
1:00 EU CE%sT
......@@ -2192,16 +2189,34 @@ Zone Europe/Lisbon -0:36:45 - LMT 1884
0:00 W-Eur WE%sT 1992 Sep 27 1:00s
1:00 EU CE%sT 1996 Mar 31 1:00u
0:00 EU WE%sT
# This Zone can be simplified once we assume zic %z.
Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
-1:54:32 - HMT 1912 Jan 1 # Horta Mean Time
-2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
-1:00 Port AZO%sT 1983 Sep 25 1:00s
-1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
-2:00 Port -02/-01 1942 Apr 25 22:00s
-2:00 Port +00 1942 Aug 15 22:00s
-2:00 Port -02/-01 1943 Apr 17 22:00s
-2:00 Port +00 1943 Aug 28 22:00s
-2:00 Port -02/-01 1944 Apr 22 22:00s
-2:00 Port +00 1944 Aug 26 22:00s
-2:00 Port -02/-01 1945 Apr 21 22:00s
-2:00 Port +00 1945 Aug 25 22:00s
-2:00 Port -02/-01 1966 Apr 3 2:00
-1:00 Port -01/+00 1983 Sep 25 1:00s
-1:00 W-Eur -01/+00 1992 Sep 27 1:00s
0:00 EU WE%sT 1993 Mar 28 1:00u
-1:00 EU AZO%sT
-1:00 EU -01/+00
# This Zone can be simplified once we assume zic %z.
Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
-1:07:36 - FMT 1912 Jan 1 # Funchal Mean Time
-1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
-1:00 Port -01/+00 1942 Apr 25 22:00s
-1:00 Port +01 1942 Aug 15 22:00s
-1:00 Port -01/+00 1943 Apr 17 22:00s
-1:00 Port +01 1943 Aug 28 22:00s
-1:00 Port -01/+00 1944 Apr 22 22:00s
-1:00 Port +01 1944 Aug 26 22:00s
-1:00 Port -01/+00 1945 Apr 21 22:00s
-1:00 Port +01 1945 Aug 25 22:00s
-1:00 Port -01/+00 1966 Apr 3 2:00
0:00 Port WE%sT 1983 Sep 25 1:00s
0:00 EU WE%sT
......@@ -2559,10 +2574,8 @@ Zone Europe/Moscow 2:30:17 - LMT 1880
3:00 - MSK
# From Tim Parenti (2014-07-03):
# Europe/Simferopol covers...
# ** **** Crimea, Republic of
# ** **** Sevastopol
# From Paul Eggert (2016-12-06):
# Europe/Simferopol covers Crimea.
Zone Europe/Simferopol 2:16:24 - LMT 1880
2:16 - SMT 1924 May 2 # Simferopol Mean T
......@@ -3255,46 +3268,77 @@ Link Europe/Prague Europe/Bratislava
# See Europe/Belgrade.
# Spain
#
# From Paul Eggert (2016-12-14):
#
# The source for Europe/Madrid before 2013 is:
# Planesas P. La hora oficial en España y sus cambios.
# Anuario del Observatorio Astronómico de Madrid (2013, in Spanish).
# http://astronomia.ign.es/rknowsys-theme/images/webAstro/paginas/documentos/Anuario/lahoraoficialenespana.pdf
# As this source says that historical time in the Canaries is obscure,
# and it does not discuss Ceuta, stick with Shanks for now for that data.
#
# In the 1918 and 1919 fallback transitions in Spain, the clock for
# the hour-longer day officially kept going after midnight, so that
# the repeated instances of that day's 00:00 hour were 24 hours apart,
# with a fallback transition from the second occurrence of 00:59... to
# the next day's 00:00. Our data format cannot represent this
# directly, and instead repeats the first hour of the next day, with a
# fallback transition from the next day's 00:59... to 00:00.
# From Michael Deckers (2016-12-15):
# The Royal Decree of 1900-06-26 quoted by Planesas, online at
# https://www.boe.es/datos/pdfs/BOE//1900/209/A00383-00384.pdf
# says in its article 5 (my translation):
# These dispositions will enter into force beginning with the
# instant at which, according to the time indicated in article 1,
# the 1st day of January of 1901 will begin.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
# go with Shanks & Pottenger.
Rule Spain 1917 only - May 5 23:00s 1:00 S
Rule Spain 1917 1919 - Oct 6 23:00s 0 -
Rule Spain 1918 only - Apr 15 23:00s 1:00 S
Rule Spain 1919 only - Apr 5 23:00s 1:00 S
# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
Rule Spain 1924 only - Apr 16 23:00s 1:00 S
# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
Rule Spain 1924 only - Oct 4 23:00s 0 -
Rule Spain 1926 only - Apr 17 23:00s 1:00 S
# Whitman says no DST in 1929; go with Shanks & Pottenger.
Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
Rule Spain 1927 only - Apr 9 23:00s 1:00 S
Rule Spain 1928 only - Apr 14 23:00s 1:00 S
Rule Spain 1929 only - Apr 20 23:00s 1:00 S
# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
# go with Shanks & Pottenger.
Rule Spain 1937 only - May 22 23:00s 1:00 S
Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
Rule Spain 1938 only - Mar 22 23:00s 1:00 S
Rule Spain 1939 only - Apr 15 23:00s 1:00 S
Rule Spain 1940 only - Mar 16 23:00s 1:00 S
# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
Rule Spain 1942 only - Sep 1 22:00s 1:00 S
Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
Rule Spain 1943 only - Oct 3 22:00s 1:00 S
Rule Spain 1944 only - Oct 10 22:00s 1:00 S
Rule Spain 1945 only - Sep 30 1:00 1:00 S
Rule Spain 1946 only - Sep 30 0:00 0 -
Rule Spain 1918 only - Apr 15 23:00 1:00 S
Rule Spain 1918 1919 - Oct 6 24:00s 0 -
Rule Spain 1919 only - Apr 6 23:00 1:00 S
Rule Spain 1924 only - Apr 16 23:00 1:00 S
Rule Spain 1924 only - Oct 4 24:00s 0 -
Rule Spain 1926 only - Apr 17 23:00 1:00 S
Rule Spain 1926 1929 - Oct Sat>=1 24:00s 0 -
Rule Spain 1927 only - Apr 9 23:00 1:00 S
Rule Spain 1928 only - Apr 15 0:00 1:00 S
Rule Spain 1929 only - Apr 20 23:00 1:00 S
# Republican Spain during the civil war; it controlled Madrid until 1939-03-28.
Rule Spain 1937 only - Jun 16 23:00 1:00 S
Rule Spain 1937 only - Oct 2 24:00s 0 -
Rule Spain 1938 only - Apr 2 23:00 1:00 S
Rule Spain 1938 only - Apr 30 23:00 2:00 M
Rule Spain 1938 only - Oct 2 24:00 1:00 S
# The following rules are for unified Spain again.
#
# Planesas does not say what happened in Madrid between its fall on
# 1939-03-28 and the Nationalist spring-forward transition on
# 1939-04-15. For lack of better info, assume Madrid's clocks did not
# change during that period.
#
# The first rule is commented out, as it is redundant for Republican Spain.
#Rule Spain 1939 only - Apr 15 23:00 1:00 S
Rule Spain 1939 only - Oct 7 24:00s 0 -
Rule Spain 1942 only - May 2 23:00 1:00 S
Rule Spain 1942 only - Sep 1 1:00 0 -
Rule Spain 1943 1946 - Apr Sat>=13 23:00 1:00 S
Rule Spain 1943 1944 - Oct Sun>=1 1:00 0 -
Rule Spain 1945 1946 - Sep lastSun 1:00 0 -
Rule Spain 1949 only - Apr 30 23:00 1:00 S
Rule Spain 1949 only - Sep 30 1:00 0 -
Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
Rule Spain 1949 only - Oct 2 1:00 0 -
Rule Spain 1974 1975 - Apr Sat>=12 23:00 1:00 S
Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
Rule Spain 1976 only - Mar 27 23:00 1:00 S
Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
Rule Spain 1978 only - Oct 1 1:00 0 -
Rule Spain 1977 only - Apr 2 23:00 1:00 S
Rule Spain 1978 only - Apr 2 2:00s 1:00 S
Rule Spain 1978 only - Oct 1 2:00s 0 -
# Nationalist Spain during the civil war
#Rule NatSpain 1937 only - May 22 23:00 1:00 S
#Rule NatSpain 1937 1938 - Oct Sat>=1 24:00s 0 -
#Rule NatSpain 1938 only - Mar 26 23:00 1:00 S
# The following rules are copied from Morocco from 1967 through 1978.
Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
......@@ -3306,11 +3350,11 @@ Rule SpainAfrica 1977 only - Sep 28 0:00 0 -
Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
0:00 Spain WE%sT 1946 Sep 30
Zone Europe/Madrid -0:14:44 - LMT 1900 Dec 31 23:45:16
0:00 Spain WE%sT 1940 Mar 16 23:00
1:00 Spain CE%sT 1979
1:00 EU CE%sT
Zone Africa/Ceuta -0:21:16 - LMT 1901
Zone Africa/Ceuta -0:21:16 - LMT 1900 Dec 31 23:38:44
0:00 - WET 1918 May 6 23:00
0:00 1:00 WEST 1918 Oct 7 23:00
0:00 - WET 1924
......@@ -3319,7 +3363,7 @@ Zone Africa/Ceuta -0:21:16 - LMT 1901
1:00 - CET 1986
1:00 EU CE%sT
Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
-1:00 - CANT 1946 Sep 30 1:00 # Canaries T
-1:00 - -01 1946 Sep 30 1:00
0:00 - WET 1980 Apr 6 0:00s
0:00 1:00 WEST 1980 Sep 28 1:00u
0:00 EU WE%sT
......@@ -3732,7 +3776,7 @@ Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
# spelling, except omit the apostrophe as it is not allowed in
# portable Posix file names.
Zone Europe/Zaporozhye 2:20:40 - LMT 1880
2:20 - CUT 1924 May 2 # Central Ukraine T
2:20 - +0220 1924 May 2
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Aug 25
1:00 C-Eur CE%sT 1943 Oct 25
......
......@@ -81,5 +81,5 @@ Leap 2012 Jun 30 23:59:60 + S
Leap 2015 Jun 30 23:59:60 + S
Leap 2016 Dec 31 23:59:60 + S
# Updated through IERS Bulletin C52
# File expires on: 28 June 2017
# Updated through IERS Bulletin C53
# File expires on: 28 December 2017
......@@ -201,22 +201,6 @@ Zone CST6CDT -6:00 US C%sT
Zone MST7MDT -7:00 US M%sT
Zone PST8PDT -8:00 US P%sT
# From Bob Devine (1988-01-28):
# ...Alaska (and Hawaii) had the timezone names changed in 1967.
# old new
# Pacific Standard Time(PST) -same-
# Yukon Standard Time(YST) -same-
# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
# Nome Standard Time (NT) Bering Standard Time (BST)
#
# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
# The YST zone now covers nearly all of the state, AHST just part
# of the Aleutian islands. No DST.
# From Paul Eggert (1995-12-19):
# The tables below use 'NST', not 'NT', for Nome Standard Time.
# I invented 'CAWT' for Central Alaska War Time.
# From U. S. Naval Observatory (1989-01-19):
# USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
# USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
......@@ -273,6 +257,21 @@ Zone PST8PDT -8:00 US P%sT
# Samoa standard time
# The law doesn't give abbreviations.
#
# From Paul Eggert (2016-12-19):
# Here are URLs for the 1918 and 1966 legislation:
# http://uscode.house.gov/statviewer.htm?volume=40&page=451
# http://uscode.house.gov/statviewer.htm?volume=80&page=108
# Although the 1918 names were officially "United States Standard
# Eastern Time" and similarly for "Central", "Mountain", "Pacific",
# and "Alaska", in practice "Standard" was placed just before "Time",
# as codified in 1966. In practice, Alaska time was abbreviated "AST"
# before 1968. Summarizing the 1967 name changes:
# 1918 names 1967 names
# -08 Standard Pacific Time (PST) Pacific standard time (PST)
# -09 (unofficial) Yukon (YST) Yukon standard time (YST)
# -10 Standard Alaska Time (AST) Alaska-Hawaii standard time (AHST)
# -11 (unofficial) Nome (NST) Bering standard time (BST)
#
# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
# for time in Guam and the Northern Marianas. See the file "australasia".
......@@ -328,6 +327,15 @@ Zone PST8PDT -8:00 US P%sT
# Roberts, city administrator in Phenix City. as saying "We are in the Central
# time zone, but we do go by the Eastern time zone because so many people work
# in Columbus."
#
# From Paul Eggert (2017-02-22):
# Four cities are involved. The two not mentioned above are Smiths Station
# and Valley. Barbara Brooks, Valley's assistant treasurer, heard it started
# because West Point Pepperell textile mills were in Alabama while the
# corporate office was in Georgia, and residents voted to keep Eastern
# time even after the mills closed. See: Kazek K. Did you know which
# Alabama towns are in a different time zone? al.com 2017-02-06.
# http://www.al.com/living/index.ssf/2017/02/do_you_know_which_alabama_town.html
# From Paul Eggert (2014-09-06):
# Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208
......@@ -505,7 +513,7 @@ Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
-8:00 US P%sT
# Alaska
# AK%sT is the modern abbreviation for -9:00 per USNO.
# AK%sT is the modern abbreviation for -09 per USNO.
#
# From Paul Eggert (2001-05-30):
# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
......@@ -611,10 +619,8 @@ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
-9:00 US AK%sT
Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
-9:59:36 - LMT 1900 Aug 20 12:00
-10:00 - CAT 1942
-10:00 US CAT/CAWT 1945 Aug 14 23:00u
-10:00 US CAT/CAPT 1946 # Peace
-10:00 - CAT 1967 Apr
-10:00 - AST 1942
-10:00 US A%sT 1967 Apr
-10:00 - AHST 1969
-10:00 US AH%sT 1983 Oct 30 2:00
-9:00 US Y%sT 1983 Nov 30
......@@ -703,7 +709,6 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
-10:30 1:00 HDT 1945 Sep 30 2:00
-10:30 - HST 1947 Jun 8 2:00
-10:00 - HST
Link Pacific/Honolulu Pacific/Johnston
# Now we turn to US areas that have diverged from the consensus since 1970.
......@@ -1091,15 +1096,15 @@ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
################################################################################
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-10):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -2757,15 +2762,15 @@ Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
# Belize
# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
Rule Belize 1973 only - Dec 5 0:00 1:00 D
Rule Belize 1974 only - Feb 9 0:00 0 S
Rule Belize 1982 only - Dec 18 0:00 1:00 D
Rule Belize 1983 only - Feb 12 0:00 0 S
Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 -0530
Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 CST
Rule Belize 1973 only - Dec 5 0:00 1:00 CDT
Rule Belize 1974 only - Feb 9 0:00 0 CST
Rule Belize 1982 only - Dec 18 0:00 1:00 CDT
Rule Belize 1983 only - Feb 12 0:00 0 CST
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Belize -5:52:48 - LMT 1912 Apr
-6:00 Belize C%sT
-6:00 Belize %s
# Bermuda
......@@ -3037,16 +3042,16 @@ Zone America/Havana -5:29:28 - LMT 1890
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule DR 1966 only - Oct 30 0:00 1:00 D
Rule DR 1967 only - Feb 28 0:00 0 S
Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
Rule DR 1970 only - Feb 21 0:00 0 S
Rule DR 1971 only - Jan 20 0:00 0 S
Rule DR 1972 1974 - Jan 21 0:00 0 S
Rule DR 1966 only - Oct 30 0:00 1:00 EDT
Rule DR 1967 only - Feb 28 0:00 0 EST
Rule DR 1969 1973 - Oct lastSun 0:00 0:30 -0430
Rule DR 1970 only - Feb 21 0:00 0 EST
Rule DR 1971 only - Jan 20 0:00 0 EST
Rule DR 1972 1974 - Jan 21 0:00 0 EST
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Santo_Domingo -4:39:36 - LMT 1890
-4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
-5:00 DR E%sT 1974 Oct 27
-5:00 DR %s 1974 Oct 27
-4:00 - AST 2000 Oct 29 2:00
-5:00 US E%sT 2000 Dec 3 1:00
-4:00 - AST
......@@ -3336,8 +3341,8 @@ Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
-4:00 - AST 1980 May
-3:00 - PMST 1987 # Pierre & Miquelon Time
-3:00 Canada PM%sT
-3:00 - -03 1987
-3:00 Canada -03/-02
# St Vincent and the Grenadines
# See America/Port_of_Spain.
......
此差异已折叠。
......@@ -165,6 +165,7 @@ CH +4723+00832 Europe/Zurich
CI +0519-00402 Africa/Abidjan
CK -2114-15946 Pacific/Rarotonga
CL -3327-07040 America/Santiago Chile (most areas)
CL -5309-07055 America/Punta_Arenas Region of Magallanes
CL -2709-10926 Pacific/Easter Easter Island
CM +0403+00942 Africa/Douala
CN +3114+12128 Asia/Shanghai Beijing Time
......@@ -420,7 +421,6 @@ UA +5026+03031 Europe/Kiev Ukraine (most areas)
UA +4837+02218 Europe/Uzhgorod Ruthenia
UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
UG +0019+03225 Africa/Kampala
UM +1645-16931 Pacific/Johnston Johnston Atoll
UM +2813-17722 Pacific/Midway Midway Islands
UM +1917+16637 Pacific/Wake Wake Island
US +404251-0740023 America/New_York Eastern (most areas)
......
......@@ -201,6 +201,7 @@ SUNWprivate_1.1 {
Java_sun_print_CUPSPrinter_initIDs;
Java_sun_print_CUPSPrinter_getCupsServer;
Java_sun_print_CUPSPrinter_getCupsPort;
Java_sun_print_CUPSPrinter_getCupsDefaultPrinter;
Java_sun_print_CUPSPrinter_canConnect;
Java_sun_print_CUPSPrinter_getMedia;
Java_sun_print_CUPSPrinter_getPageSizes;
......
......@@ -73,6 +73,7 @@ SUNWprivate_1.1 {
Java_sun_print_CUPSPrinter_initIDs;
Java_sun_print_CUPSPrinter_getCupsServer;
Java_sun_print_CUPSPrinter_getCupsPort;
Java_sun_print_CUPSPrinter_getCupsDefaultPrinter;
Java_sun_print_CUPSPrinter_canConnect;
Java_sun_print_CUPSPrinter_getMedia;
Java_sun_print_CUPSPrinter_getPageSizes;
......
......@@ -439,6 +439,7 @@ SUNWprivate_1.1 {
Java_sun_print_CUPSPrinter_initIDs;
Java_sun_print_CUPSPrinter_getCupsServer;
Java_sun_print_CUPSPrinter_getCupsPort;
Java_sun_print_CUPSPrinter_getCupsDefaultPrinter;
Java_sun_print_CUPSPrinter_canConnect;
Java_sun_print_CUPSPrinter_getMedia;
Java_sun_print_CUPSPrinter_getPageSizes;
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -607,6 +607,13 @@ public class OSXOffScreenSurfaceData extends OSXSurfaceData // implements Raster
fImageInfoInt.put(kNeedToSyncFromJavaPixelsIndex, 1); // the pixels will change
}
private void syncFromCustom() {
}
private void syncToCustom() {
}
// /**
// * Invoked when the raster's contents will be taken (via the Raster.getDataBuffer() method)
// */
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -57,15 +57,19 @@ public class CInputMethodDescriptor implements InputMethodDescriptor {
}
static Object[] getAvailableLocalesInternal() {
List workList = nativeGetAvailableLocales();
if (workList != null) {
List<Object> workList = nativeGetAvailableLocales();
Locale currentLocale = CInputMethod.getNativeLocale();
if (workList == null || workList.isEmpty()) {
return new Object[] {
currentLocale != null ? currentLocale : Locale.getDefault()
};
} else {
if (currentLocale != null && !workList.contains(currentLocale)) {
workList.add(currentLocale);
}
return workList.toArray();
}
return new Object[] {
Locale.getDefault()
};
}
/**
......@@ -119,5 +123,5 @@ public class CInputMethodDescriptor implements InputMethodDescriptor {
}
private static native void nativeInit();
private static native List nativeGetAvailableLocales();
private static native List<Object> nativeGetAvailableLocales();
}
......@@ -34,9 +34,6 @@
#import <JavaNativeFoundation/JavaNativeFoundation.h>
#import "BufImgSurfaceData.h"
#import "ThreadUtilities.h"
//#define DEBUG 1
#if defined DEBUG
......@@ -195,10 +192,9 @@ IMAGE_SURFACE_INLINE void customPixelsFromJava(JNIEnv *env, ImageSDOps *isdo)
PRINT(" customPixelsFromJava")
SurfaceDataOps *sdo = (SurfaceDataOps*)isdo;
JNFCallVoidMethod([ThreadUtilities getJNIEnv], sdo->sdObject, jm_syncFromCustom); // AWT_THREADING Safe (known object)
JNFCallVoidMethod(env, sdo->sdObject, jm_syncFromCustom); // AWT_THREADING Safe (known object)
}
IMAGE_SURFACE_INLINE void copyBits(jint w, jint h, jint javaPixelsBytesPerRow, Pixel8bit *pixelsSrc, jint dstPixelsBytesPerRow, Pixel8bit *pixelsDst)
{
PRINT(" copyBits")
......@@ -427,7 +423,7 @@ IMAGE_SURFACE_INLINE void customPixelsToJava(JNIEnv *env, ImageSDOps *isdo)
PRINT(" customPixelsToJava")
SurfaceDataOps *sdo = (SurfaceDataOps*)isdo;
JNFCallVoidMethod([ThreadUtilities getJNIEnv], sdo->sdObject, jm_syncToCustom); // AWT_THREADING Safe (known object)
JNFCallVoidMethod(env, sdo->sdObject, jm_syncToCustom); // AWT_THREADING Safe (known object)
}
IMAGE_SURFACE_INLINE void removeAlphaPre_32bit(jint w, jint h, jint javaPixelsBytesPerRow, jint javaPixelBytes, Pixel32bit *pixelsSrc)
......@@ -995,9 +991,9 @@ static void imageDataProvider_UnholdJavaPixels(void *info, const void *data, siz
{
PRINT("imageDataProvider_UnholdJavaPixels")
ImageSDOps* isdo = (ImageSDOps*)info;
unholdJavaPixels([ThreadUtilities getJNIEnv], isdo);
// Currently do nothing
}
static void imageDataProvider_FreeTempPixels(void *info, const void *data, size_t size)
{
PRINT("imageDataProvider_FreeTempPixels")
......
......@@ -165,8 +165,11 @@ public class WindowsRootPaneUI extends BasicRootPaneUI {
}
public boolean postProcessKeyEvent(KeyEvent ev) {
if(ev.isConsumed()) {
// do not manage consumed event
if(ev.isConsumed() && ev.getKeyCode() != KeyEvent.VK_ALT) {
// mnemonic combination, it's consumed, but we need
// set altKeyPressed to false, otherwise after selection
// component by mnemonic combination a menu will be open
altKeyPressed = false;
return false;
}
if (ev.getKeyCode() == KeyEvent.VK_ALT) {
......
......@@ -1482,6 +1482,9 @@ public class ThreadPoolExecutor extends AbstractExecutorService {
/**
* Invokes {@code shutdown} when this executor is no longer
* referenced and it has no threads.
*
* <p>This method is invoked with privileges that are restricted by
* the security context of the caller that invokes the constructor.
*/
protected void finalize() {
SecurityManager sm = System.getSecurityManager();
......
......@@ -27,6 +27,7 @@ package sun.font;
import java.io.File;
import java.awt.Font;
import java.io.IOException;
import java.util.Collection;
import java.util.HashMap;
import java.util.concurrent.ConcurrentHashMap;
......@@ -132,6 +133,16 @@ public class FontFamily {
FileFont newFont = (FileFont)font;
File newDir = (new File(newFont.platName)).getParentFile();
if (existDir != null) {
try {
existDir = existDir.getCanonicalFile();
} catch (IOException ignored) {}
}
if (newDir != null) {
try {
newDir = newDir.getCanonicalFile();
} catch (IOException ignored) {}
}
return java.util.Objects.equals(newDir, existDir);
}
......
......@@ -51,6 +51,7 @@ public class CUPSPrinter {
private boolean initialized;
private static native String getCupsServer();
private static native int getCupsPort();
private static native String getCupsDefaultPrinter();
private static native boolean canConnect(String server, int port);
private static native boolean initIDs();
// These functions need to be synchronized as
......@@ -250,6 +251,15 @@ public class CUPSPrinter {
* Returns 2 values - index 0 is printer name, index 1 is the uri.
*/
static String[] getDefaultPrinter() {
// Try to get user/lpoptions-defined printer name from CUPS
// if not user-set, then go for server default destination
String printerInfo[] = new String[2];
printerInfo[0] = getCupsDefaultPrinter();
if (printerInfo[0] != null) {
printerInfo[1] = null;
return printerInfo.clone();
}
try {
URL url = new URL("http", getServer(), getPort(), "");
final HttpURLConnection urlConnection =
......@@ -285,7 +295,7 @@ public class CUPSPrinter {
attCl)) {
HashMap defaultMap = null;
String[] printerInfo = new String[2];
InputStream is = urlConnection.getInputStream();
HashMap[] responseMap = IPPPrintService.readIPPResponse(
is);
......
......@@ -43,6 +43,10 @@ typedef int (*fn_ippPort)(void);
typedef http_t* (*fn_httpConnect)(const char *, int);
typedef void (*fn_httpClose)(http_t *);
typedef char* (*fn_cupsGetPPD)(const char *);
typedef cups_dest_t* (*fn_cupsGetDest)(const char *name,
const char *instance, int num_dests, cups_dest_t *dests);
typedef int (*fn_cupsGetDests)(cups_dest_t **dests);
typedef void (*fn_cupsFreeDests)(int num_dests, cups_dest_t *dests);
typedef ppd_file_t* (*fn_ppdOpenFile)(const char *);
typedef void (*fn_ppdClose)(ppd_file_t *);
typedef ppd_option_t* (*fn_ppdFindOption)(ppd_file_t *, const char *);
......@@ -53,6 +57,9 @@ fn_ippPort j2d_ippPort;
fn_httpConnect j2d_httpConnect;
fn_httpClose j2d_httpClose;
fn_cupsGetPPD j2d_cupsGetPPD;
fn_cupsGetDest j2d_cupsGetDest;
fn_cupsGetDests j2d_cupsGetDests;
fn_cupsFreeDests j2d_cupsFreeDests;
fn_ppdOpenFile j2d_ppdOpenFile;
fn_ppdClose j2d_ppdClose;
fn_ppdFindOption j2d_ppdFindOption;
......@@ -106,6 +113,24 @@ Java_sun_print_CUPSPrinter_initIDs(JNIEnv *env,
return JNI_FALSE;
}
j2d_cupsGetDest = (fn_cupsGetDest)dlsym(handle, "cupsGetDest");
if (j2d_cupsGetDest == NULL) {
dlclose(handle);
return JNI_FALSE;
}
j2d_cupsGetDests = (fn_cupsGetDests)dlsym(handle, "cupsGetDests");
if (j2d_cupsGetDests == NULL) {
dlclose(handle);
return JNI_FALSE;
}
j2d_cupsFreeDests = (fn_cupsFreeDests)dlsym(handle, "cupsFreeDests");
if (j2d_cupsFreeDests == NULL) {
dlclose(handle);
return JNI_FALSE;
}
j2d_ppdOpenFile = (fn_ppdOpenFile)dlsym(handle, "ppdOpenFile");
if (j2d_ppdOpenFile == NULL) {
dlclose(handle);
......@@ -169,6 +194,30 @@ Java_sun_print_CUPSPrinter_getCupsPort(JNIEnv *env,
}
/*
* Gets CUPS default printer name.
*
*/
JNIEXPORT jstring JNICALL
Java_sun_print_CUPSPrinter_getCupsDefaultPrinter(JNIEnv *env,
jobject printObj)
{
jstring cDefPrinter = NULL;
cups_dest_t *dests;
char *defaultPrinter = NULL;
int num_dests = j2d_cupsGetDests(&dests);
int i = 0;
cups_dest_t *dest = j2d_cupsGetDest(NULL, NULL, num_dests, dests);
if (dest != NULL) {
defaultPrinter = dest->name;
if (defaultPrinter != NULL) {
cDefPrinter = JNU_NewStringPlatform(env, defaultPrinter);
}
}
j2d_cupsFreeDests(num_dests, dests);
return cDefPrinter;
}
/*
* Checks if connection can be made to the server.
*
......
......@@ -4625,6 +4625,10 @@ final public class AccessBridge extends AccessBridgeLoader {
private void _getVisibleChildrenCount(final AccessibleContext ac) {
if (ac == null)
return;
if(ac instanceof AccessibleExtendedTable) {
_getVisibleChildrenCount((AccessibleExtendedTable)ac);
return;
}
int numChildren = InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
......@@ -4666,6 +4670,83 @@ final public class AccessBridge extends AccessBridgeLoader {
}
}
/*
* Recursively descends AccessibleContext and gets the number
* of visible children. Stops search if get to invisible part of table.
*/
private void _getVisibleChildrenCount(final AccessibleExtendedTable acTable) {
if (acTable == null)
return;
int lastVisibleRow = -1;
int lastVisibleColumn = -1;
boolean foundVisible = false;
int rowCount = InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return acTable.getAccessibleRowCount();
}
}, acTable);
int columnCount = InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return acTable.getAccessibleColumnCount();
}
}, acTable);
for (int rowIdx = 0; rowIdx < rowCount; rowIdx++) {
for (int columnIdx = 0; columnIdx < columnCount; columnIdx++) {
if (lastVisibleRow != -1 && rowIdx > lastVisibleRow) {
continue;
}
if (lastVisibleColumn != -1 && columnIdx > lastVisibleColumn) {
continue;
}
int finalRowIdx = rowIdx;
int finalColumnIdx = columnIdx;
final AccessibleContext ac2 = InvocationUtils.invokeAndWait(new Callable<AccessibleContext>() {
@Override
public AccessibleContext call() throws Exception {
Accessible a = acTable.getAccessibleAt(finalRowIdx, finalColumnIdx);
if (a == null)
return null;
else
return a.getAccessibleContext();
}
}, acTable);
if (ac2 == null ||
(!InvocationUtils.invokeAndWait(new Callable<Boolean>() {
@Override
public Boolean call() throws Exception {
return ac2.getAccessibleStateSet().contains(AccessibleState.SHOWING);
}
}, acTable))
) {
if (foundVisible) {
if (columnIdx != 0 && lastVisibleColumn == -1) {
//the same row, so we found the last visible column
lastVisibleColumn = columnIdx - 1;
} else if (columnIdx == 0 && lastVisibleRow == -1) {
lastVisibleRow = rowIdx - 1;
}
}
continue;
}
foundVisible = true;
_visibleChildrenCount++;
if (InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return ac2.getAccessibleChildrenCount();
}
}, acTable) > 0) {
_getVisibleChildrenCount(ac2);
}
}
}
}
/**
* Gets the visible child of an AccessibleContext at the
* specified index
......@@ -4702,7 +4783,10 @@ final public class AccessBridge extends AccessBridgeLoader {
if (_visibleChild != null) {
return;
}
if(ac instanceof AccessibleExtendedTable) {
_getVisibleChild((AccessibleExtendedTable)ac, index);
return;
}
int numChildren = InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
......@@ -4711,7 +4795,7 @@ final public class AccessBridge extends AccessBridgeLoader {
}, ac);
for (int i = 0; i < numChildren; i++) {
final int idx=i;
final AccessibleContext ac2=InvocationUtils.invokeAndWait(new Callable<AccessibleContext>() {
final AccessibleContext ac2 = InvocationUtils.invokeAndWait(new Callable<AccessibleContext>() {
@Override
public AccessibleContext call() throws Exception {
Accessible a = ac.getAccessibleChild(idx);
......@@ -4748,6 +4832,82 @@ final public class AccessBridge extends AccessBridgeLoader {
}
}
private void _getVisibleChild(final AccessibleExtendedTable acTable, final int index) {
if (_visibleChild != null) {
return;
}
int lastVisibleRow = -1;
int lastVisibleColumn = -1;
boolean foundVisible = false;
int rowCount = InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return acTable.getAccessibleRowCount();
}
}, acTable);
int columnCount = InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return acTable.getAccessibleColumnCount();
}
}, acTable);
for (int rowIdx = 0; rowIdx < rowCount; rowIdx++) {
for (int columnIdx = 0; columnIdx < columnCount; columnIdx++) {
if (lastVisibleRow != -1 && rowIdx > lastVisibleRow) {
continue;
}
if (lastVisibleColumn != -1 && columnIdx > lastVisibleColumn) {
continue;
}
int finalRowIdx = rowIdx;
int finalColumnIdx = columnIdx;
final AccessibleContext ac2 = InvocationUtils.invokeAndWait(new Callable<AccessibleContext>() {
@Override
public AccessibleContext call() throws Exception {
Accessible a = acTable.getAccessibleAt(finalRowIdx, finalColumnIdx);
if (a == null)
return null;
else
return a.getAccessibleContext();
}
}, acTable);
if (ac2 == null ||
(!InvocationUtils.invokeAndWait(new Callable<Boolean>() {
@Override
public Boolean call() throws Exception {
return ac2.getAccessibleStateSet().contains(AccessibleState.SHOWING);
}
}, acTable))) {
if (foundVisible) {
if (columnIdx != 0 && lastVisibleColumn == -1) {
//the same row, so we found the last visible column
lastVisibleColumn = columnIdx - 1;
} else if (columnIdx == 0 && lastVisibleRow == -1) {
lastVisibleRow = rowIdx - 1;
}
}
continue;
}
foundVisible = true;
if (!_foundVisibleChild && _currentVisibleIndex == index) {
_visibleChild = ac2;
_foundVisibleChild = true;
return;
}
_currentVisibleIndex++;
if (InvocationUtils.invokeAndWait(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return ac2.getAccessibleChildrenCount();
}
}, acTable) > 0) {
_getVisibleChild(ac2, index);
}
}
}
}
/* ===== Java object memory management code ===== */
......@@ -7123,6 +7283,25 @@ final public class AccessBridge extends AccessBridgeLoader {
*/
private static class InvocationUtils {
/**
* Invokes a {@code Callable} in the {@code AppContext} of the given {@code Accessible}
* and waits for it to finish blocking the caller thread.
*
* @param callable the {@code Callable} to invoke
* @param accessibleTable the {@code AccessibleExtendedTable} which would be used to find the right context
* for the task execution
* @param <T> type parameter for the result value
*
* @return the result of the {@code Callable} execution
*/
public static <T> T invokeAndWait(final Callable<T> callable,
final AccessibleExtendedTable accessibleTable) {
if (accessibleTable instanceof AccessibleContext) {
return invokeAndWait(callable, (AccessibleContext)accessibleTable);
}
throw new RuntimeException("Unmapped AccessibleContext used to dispatch event: " + accessibleTable);
}
/**
* Invokes a {@code Callable} in the {@code AppContext} of the given {@code Accessible}
* and waits for it to finish blocking the caller thread.
......
/*
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code 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
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/* @test
@bug 8173145
@summary Menu is activated after using mnemonic Alt/Key combination
@modules java.desktop/com.sun.java.swing.plaf.windows
@run main Test8173145
*/
import java.awt.*;
import java.awt.event.KeyEvent;
import java.lang.reflect.InvocationTargetException;
import javax.swing.*;
public class Test8173145 {
private volatile static JButton btn;
private volatile static boolean uiCreated;
public static void main(String[] args) throws InvocationTargetException, InterruptedException, AWTException {
SwingUtilities.invokeAndWait(new Runnable() {
@Override
public void run() {
try {
uiCreated = createGUI();
} catch (Exception e) {
e.printStackTrace();
}
}
});
if (uiCreated) {
test();
} else {
//no windows l&f, skip the test
}
}
private static void test() {
final Robot robot;
try {
robot = new Robot();
} catch (AWTException e) {
throw new RuntimeException(e);
}
robot.setAutoDelay(100);
robot.waitForIdle();
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_M);
robot.keyRelease(KeyEvent.VK_M);
robot.keyRelease(KeyEvent.VK_ALT);
Component focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
if (focusOwner != btn) {
throw new RuntimeException("Wrong focus owner");
}
}
private static boolean createGUI() {
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
} catch (Exception e) {
return false;
}
JFrame f = new JFrame();
JPanel panel = new JPanel();
btn = new JButton("Mmmmm");
btn.setMnemonic(KeyEvent.VK_M);
btn.setDisplayedMnemonicIndex(0);
panel.add(btn);
JTextField tf = new JTextField();
tf.setColumns(10);
panel.add(tf);
f.setJMenuBar(getMenuBar());
f.add(panel);
f.pack();
f.setVisible(true);
tf.requestFocus();
return true;
}
static JMenuBar getMenuBar() {
JMenuBar menuBar;
JMenu menu;
menuBar = new JMenuBar();
menu = new JMenu("Menu");
menuBar.add(menu);
JMenuItem mi = new JMenuItem("test");
menu.add(mi);
return menuBar;
}
}
/*
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code 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
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* @test
* @bug 8163889
* @summary Printing crashes on OSX.
* @run main PrintCrashTest
*/
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.standard.Destination;
import java.awt.GraphicsEnvironment;
import java.awt.Rectangle;
import java.awt.Shape;
import java.awt.Transparency;
import java.awt.image.BufferedImage;
import java.awt.print.Printable;
import java.awt.print.PrinterJob;
import java.io.File;
public class PrintCrashTest {
public static void main(String[] args) throws Exception {
PrinterJob printerJob = PrinterJob.getPrinterJob();
printerJob.setPrintable((graphics, pageFormat, pageIndex) -> {
if (pageIndex != 0) {
return Printable.NO_SUCH_PAGE;
} else {
Shape shape = new Rectangle(110, 110, 10, 10);
Rectangle rect = shape.getBounds();
BufferedImage image = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice()
.getDefaultConfiguration().createCompatibleImage(rect.width, rect.height, Transparency.BITMASK);
graphics.drawImage(image, rect.x, rect.y, rect.width, rect.height, null);
return Printable.PAGE_EXISTS;
}
});
File file = null;
try {
HashPrintRequestAttributeSet hashPrintRequestAttributeSet = new HashPrintRequestAttributeSet();
file = File.createTempFile("out", "ps");
file.deleteOnExit();
Destination destination = new Destination(file.toURI());
hashPrintRequestAttributeSet.add(destination);
printerJob.print(hashPrintRequestAttributeSet);
} finally {
if (file != null) {
file.delete();
}
}
}
}
......@@ -21,4 +21,4 @@
# or visit www.oracle.com if you need additional information or have any
# questions.
#
tzdata2016j
tzdata2017a
......@@ -29,15 +29,15 @@
# tz@iana.org for general use in the future). For more, please see
# the file CONTRIBUTING in the tz distribution.
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-20):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -54,39 +54,33 @@
# A reliable and entertaining source about time zones is
# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
#
# European-style abbreviations are commonly used along the Mediterranean.
# For sub-Saharan Africa abbreviations were less standardized.
# Previous editions of this database used WAT, CAT, SAT, and EAT
# for +0:00 through +3:00, respectively,
# but Mark R V Murray reports that
# 'SAST' is the official abbreviation for +2:00 in the country of South Africa,
# 'CAT' is commonly used for +2:00 in countries north of South Africa, and
# 'WAT' is probably the best name for +1:00, as the common phrase for
# for UT +00 through +03, respectively,
# but in 1997 Mark R V Murray reported that
# 'SAST' is the official abbreviation for +02 in the country of South Africa,
# 'CAT' is commonly used for +02 in countries north of South Africa, and
# 'WAT' is probably the best name for +01, as the common phrase for
# the area that includes Nigeria is "West Africa".
# He has heard of "Western Sahara Time" for +0:00 but can find no reference.
#
# To make things confusing, 'WAT' seems to have been used for -1:00 long ago;
# I'd guess that this was because people needed _some_ name for -1:00,
# and at the time, far west Africa was the only major land area in -1:00.
# This usage is now obsolete, as the last use of -1:00 on the African
# mainland seems to have been 1976 in Western Sahara.
#
# To summarize, the following abbreviations seem to have some currency:
# -1:00 WAT West Africa Time (no longer used)
# 0:00 GMT Greenwich Mean Time
# 2:00 CAT Central Africa Time
# 2:00 SAST South Africa Standard Time
# and Murray suggests the following abbreviation:
# 1:00 WAT West Africa Time
# I realize that this leads to 'WAT' being used for both -1:00 and 1:00
# for times before 1976, but this is the best I can think of
# until we get more information.
#
# To summarize, the following abbreviations seemed to have some currency:
# +00 GMT Greenwich Mean Time
# +02 CAT Central Africa Time
# +02 SAST South Africa Standard Time
# and Murray suggested the following abbreviation:
# +01 WAT West Africa Time
# Murray's suggestion seems to have caught on in news reports and the like.
# I vaguely recall 'WAT' also being used for -01 in the past but
# cannot now come up with solid citations.
#
# I invented the following abbreviations; corrections are welcome!
# 2:00 WAST West Africa Summer Time
# 2:30 BEAT British East Africa Time (no longer used)
# 2:45 BEAUT British East Africa Unified Time (no longer used)
# 3:00 CAST Central Africa Summer Time (no longer used)
# 3:00 SAST South Africa Summer Time (no longer used)
# 3:00 EAT East Africa Time
# +02 WAST West Africa Summer Time
# +03 CAST Central Africa Summer Time (no longer used)
# +03 SAST South Africa Summer Time (no longer used)
# +03 EAT East Africa Time
# 'EAT' also seems to have caught on; the others are rare but are paired
# with better-attested non-DST abbreviations.
# Algeria
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
......@@ -144,17 +138,17 @@ Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
# Cape Verde / Cabo Verde
#
# Shanks gives 1907 for the transition to CVT.
# Shanks gives 1907 for the transition to +02.
# Perhaps the 1911-05-26 Portuguese decree
# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# merely made it official?
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
-2:00 - CVT 1942 Sep
-2:00 1:00 CVST 1945 Oct 15
-2:00 - CVT 1975 Nov 25 2:00
-1:00 - CVT
-2:00 - -02 1942 Sep
-2:00 1:00 -01 1945 Oct 15
-2:00 - -02 1975 Nov 25 2:00
-1:00 - -01
# Central African Republic
# See Africa/Lagos.
......@@ -411,7 +405,7 @@ Rule Ghana 1920 1942 - Sep 1 0:00 0:20 GHST
Rule Ghana 1920 1942 - Dec 31 0:00 0 GMT
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Accra -0:00:52 - LMT 1918
0:00 Ghana %s
0:00 Ghana GMT/+0020
# Guinea
# See Africa/Abidjan.
......@@ -420,20 +414,20 @@ Zone Africa/Accra -0:00:52 - LMT 1918
#
# Shanks gives 1911-05-26 for the transition to WAT,
# evidently confusing the date of the Portuguese decree
# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# with the date that it took effect, namely 1912-01-01.
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Bissau -1:02:20 - LMT 1912 Jan 1
-1:00 - WAT 1975
-1:00 - -01 1975
0:00 - GMT
# Kenya
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
3:00 - EAT 1930
2:30 - BEAT 1940
2:45 - BEAUT 1960
2:30 - +0230 1940
2:45 - +0245 1960
3:00 - EAT
Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia
Link Africa/Nairobi Africa/Asmara # Eritrea
......@@ -460,7 +454,7 @@ Link Africa/Nairobi Indian/Mayotte
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Monrovia -0:43:08 - LMT 1882
-0:43:08 - MMT 1919 Mar # Monrovia Mean Time
-0:44:30 - LRT 1972 May # Liberia Time
-0:44:30 - -004430 1972 May
0:00 - GMT
###############################################################################
......@@ -619,7 +613,7 @@ Rule Mauritius 2008 only - Oct lastSun 2:00 1:00 S
Rule Mauritius 2009 only - Mar lastSun 2:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
4:00 Mauritius MU%sT # Mauritius Time
4:00 Mauritius +04/+05
# Agalega Is, Rodriguez
# no information; probably like Indian/Mauritius
......@@ -938,14 +932,14 @@ Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
# since most of it was then controlled by Morocco.
Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún
-1:00 - WAT 1976 Apr 14
-1:00 - -01 1976 Apr 14
0:00 Morocco WE%sT
# Mozambique
#
# Shanks gives 1903-03-01 for the transition to CAT.
# Perhaps the 1911-05-26 Portuguese decree
# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
# merely made it official?
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
......@@ -972,16 +966,19 @@ Link Africa/Maputo Africa/Lusaka # Zambia
# the country are close to 40 minutes earlier in sunrise than the rest
# of the country.
#
# From Paul Eggert (2007-03-31):
# Apparently the Caprivi Strip informally observes Botswana time, but
# we have no details. In the meantime people there can use Africa/Gaborone.
# From Paul Eggert (2017-02-22):
# Although the Zambezi Region (formerly known as Caprivi) informally
# observes Botswana time, we have no details about historical practice.
# In the meantime people there can use Africa/Gaborone.
# See: Immanuel S. The Namibian. 2017-02-23.
# http://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
1:30 - SWAT 1903 Mar # SW Africa Time
1:30 - +0130 1903 Mar
2:00 - SAST 1942 Sep 20 2:00
2:00 1:00 SAST 1943 Mar 21 2:00
2:00 - SAST 1990 Mar 21 # independence
......@@ -1008,7 +1005,7 @@ Link Africa/Lagos Africa/Porto-Novo # Benin
# Réunion
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
4:00 - RET # Réunion Time
4:00 - +04
#
# Crozet Islands also observes Réunion time; see the 'antarctica' file.
#
......@@ -1043,7 +1040,7 @@ Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
# Seychelles
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
4:00 - SCT # Seychelles Time
4:00 - +04
# From Paul Eggert (2001-05-30):
# Aldabra, Farquhar, and Desroches, originally dependencies of the
# Seychelles, were transferred to the British Indian Ocean Territory
......
......@@ -133,7 +133,8 @@ Zone Antarctica/Mawson 0 - -00 1954 Feb 13
# O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
# Prat, -6230-05941
# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
# These locations have always used Santiago time; use TZ='America/Santiago'.
# These locations employ Region of Magallanes time; use
# TZ='America/Punta_Arenas'.
# China - year-round bases
# Great Wall, King George Island, -6213-05858, since 1985-02-20
......
......@@ -67,8 +67,8 @@ Zone Australia/Perth 7:43:24 - LMT 1895 Dec
8:00 Aus AW%sT 1943 Jul
8:00 AW AW%sT
Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
8:45 Aus ACW%sT 1943 Jul
8:45 AW ACW%sT
8:45 Aus +0845/+0945 1943 Jul
8:45 AW +0845/+0945
# Queensland
#
......@@ -235,7 +235,8 @@ Rule LH 2008 max - Apr Sun>=1 2:00 0 S
Rule LH 2008 max - Oct Sun>=1 2:00 0:30 D
Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
10:00 - AEST 1981 Mar
10:30 LH LH%sT
10:30 LH +1030/+1130 1985 Jul
10:30 LH +1030/+11
# Australian miscellany
#
......@@ -273,19 +274,19 @@ Zone Antarctica/Macquarie 0 - -00 1899 Nov
0 - -00 1948 Mar 25
10:00 Aus AE%sT 1967
10:00 AT AE%sT 2010 Apr 4 3:00
11:00 - MIST # Macquarie I Standard Time
11:00 - +11
# Christmas
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
7:00 - CXT # Christmas Island Time
7:00 - +07
# Cocos (Keeling) Is
# These islands were ruled by the Ross family from about 1830 to 1978.
# We don't know when standard time was introduced; for now, we guess 1900.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Cocos 6:27:40 - LMT 1900
6:30 - CCT # Cocos Islands Time
6:30 - +0630
# Fiji
......@@ -398,16 +399,16 @@ Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S
Rule Fiji 2015 max - Jan Sun>=15 3:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
12:00 Fiji FJ%sT # Fiji Time
12:00 Fiji +12/+13
# French Polynesia
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
-9:00 - GAMT # Gambier Time
-9:00 - -09
Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
-9:30 - MART # Marquesas Time
-9:30 - -0930
Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
-10:00 - TAHT # Tahiti Time
-10:00 - -10
# Clipperton (near North America) is administered from French Polynesia;
# it is uninhabited.
......@@ -422,15 +423,15 @@ Link Pacific/Guam Pacific/Saipan # N Mariana Is
# Kiribati
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
12:00 - GILT # Gilbert Is Time
12:00 - +12
Zone Pacific/Enderbury -11:24:20 - LMT 1901
-12:00 - PHOT 1979 Oct # Phoenix Is Time
-11:00 - PHOT 1995
13:00 - PHOT
-12:00 - -12 1979 Oct
-11:00 - -11 1995
13:00 - +13
Zone Pacific/Kiritimati -10:29:20 - LMT 1901
-10:40 - LINT 1979 Oct # Line Is Time
-10:00 - LINT 1995
14:00 - LINT
-10:40 - -1040 1979 Oct
-10:00 - -10 1995
14:00 - +14
# N Mariana Is
# See Pacific/Guam.
......@@ -438,31 +439,31 @@ Zone Pacific/Kiritimati -10:29:20 - LMT 1901
# Marshall Is
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Majuro 11:24:48 - LMT 1901
11:00 - MHT 1969 Oct # Marshall Islands Time
12:00 - MHT
11:00 - +11 1969 Oct
12:00 - +12
Zone Pacific/Kwajalein 11:09:20 - LMT 1901
11:00 - MHT 1969 Oct
-12:00 - KWAT 1993 Aug 20 # Kwajalein Time
12:00 - MHT
11:00 - +11 1969 Oct
-12:00 - -12 1993 Aug 20
12:00 - +12
# Micronesia
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Chuuk 10:07:08 - LMT 1901
10:00 - CHUT # Chuuk Time
10:00 - +10
Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
11:00 - PONT # Pohnpei Time
11:00 - +11
Zone Pacific/Kosrae 10:51:56 - LMT 1901
11:00 - KOST 1969 Oct # Kosrae Time
12:00 - KOST 1999
11:00 - KOST
11:00 - +11 1969 Oct
12:00 - +12 1999
11:00 - +11
# Nauru
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
11:30 - NRT 1942 Mar 15 # Nauru Time
9:00 - JST 1944 Aug 15
11:30 - NRT 1979 May
12:00 - NRT
11:30 - +1130 1942 Mar 15
9:00 - +09 1944 Aug 15
11:30 - +1130 1979 May
12:00 - +12
# New Caledonia
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
......@@ -473,7 +474,7 @@ Rule NC 1996 only - Dec 1 2:00s 1:00 S
Rule NC 1997 only - Mar 2 2:00s 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa
11:00 NC NC%sT
11:00 NC +11/+12
###############################################################################
......@@ -514,8 +515,8 @@ Zone Pacific/Auckland 11:39:04 - LMT 1868 Nov 2
11:30 NZ NZ%sT 1946 Jan 1
12:00 NZ NZ%sT
Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2
12:15 - CHAST 1946 Jan 1
12:45 Chatham CHA%sT
12:15 - +1215 1946 Jan 1
12:45 Chatham +1245/+1345
Link Pacific/Auckland Antarctica/McMurdo
......@@ -537,8 +538,8 @@ Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 HS
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
-10:30 - CKT 1978 Nov 12 # Cook Is Time
-10:00 Cook CK%sT
-10:30 - -1030 1978 Nov 12
-10:00 Cook -10/-0930
###############################################################################
......@@ -546,29 +547,29 @@ Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
# Niue
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
-11:20 - NUT 1951 # Niue Time
-11:30 - NUT 1978 Oct 1
-11:00 - NUT
-11:20 - -1120 1951
-11:30 - -1130 1978 Oct 1
-11:00 - -11
# Norfolk
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
11:12 - NMT 1951 # Norfolk Mean Time
11:30 - NFT 1974 Oct 27 02:00 # Norfolk T.
11:30 1:00 NFST 1975 Mar 2 02:00
11:30 - NFT 2015 Oct 4 02:00
11:00 - NFT
11:12 - +1112 1951
11:30 - +1130 1974 Oct 27 02:00
11:30 1:00 +1230 1975 Mar 2 02:00
11:30 - +1130 2015 Oct 4 02:00
11:00 - +11
# Palau (Belau)
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
9:00 - PWT # Palau Time
9:00 - +09
# Papua New Guinea
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
9:48:32 - PMMT 1895 # Port Moresby Mean Time
10:00 - PGT # Papua New Guinea Time
10:00 - +10
#
# From Paul Eggert (2014-10-13):
# Base the Bougainville entry on the Arawa-Kieta region, which appears to have
......@@ -583,28 +584,26 @@ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
# and seem to have controlled it until their 1945-08-21 surrender.
#
# The Autonomous Region of Bougainville switched from UT +10 to +11
# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
# abbreviate this as BST. See:
# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time".
# See:
# http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
#
Zone Pacific/Bougainville 10:22:16 - LMT 1880
9:48:32 - PMMT 1895
10:00 - PGT 1942 Jul
9:00 - JST 1945 Aug 21
10:00 - PGT 2014 Dec 28 2:00
11:00 - BST
10:00 - +10 1942 Jul
9:00 - +09 1945 Aug 21
10:00 - +10 2014 Dec 28 2:00
11:00 - +11
# Pitcairn
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
-8:30 - PNT 1998 Apr 27 0:00
-8:00 - PST # Pitcairn Standard Time
-8:30 - -0830 1998 Apr 27 0:00
-8:00 - -08
# American Samoa
Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
-11:22:48 - LMT 1911
-11:00 - NST 1967 Apr # N=Nome
-11:00 - BST 1983 Nov 30 # B=Bering
-11:00 - SST # S=Samoa
Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
......@@ -685,17 +684,17 @@ Rule WS 2012 max - Sep lastSun 3:00 1 D
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
-11:26:56 - LMT 1911
-11:30 - WSST 1950
-11:00 WS S%sT 2011 Dec 29 24:00 # S=Samoa
13:00 WS WS%sT
-11:30 - -1130 1950
-11:00 WS -11/-10 2011 Dec 29 24:00
13:00 WS +13/+14
# Solomon Is
# excludes Bougainville, for which see Papua New Guinea
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
11:00 - SBT # Solomon Is Time
11:00 - +11
# Tokelau Is
# Tokelau
#
# From Gwillim Law (2011-12-29)
# A correspondent informed me that Tokelau, like Samoa, will be skipping
......@@ -716,8 +715,8 @@ Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Fakaofo -11:24:56 - LMT 1901
-11:00 - TKT 2011 Dec 30 # Tokelau Time
13:00 - TKT
-11:00 - -11 2011 Dec 30
13:00 - +13
# Tonga
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
......@@ -736,7 +735,7 @@ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
# Tuvalu
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Funafuti 11:56:52 - LMT 1901
12:00 - TVT # Tuvalu Time
12:00 - +12
# US minor outlying islands
......@@ -760,10 +759,11 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
# Johnston
#
# From Paul Eggert (2014-03-11):
# From Paul Eggert (2017-02-10):
# Sometimes Johnston kept Hawaii time, and sometimes it was an hour behind.
# Details are uncertain. We have no data for Johnston after 1970, so
# treat it like Hawaii for now.
# treat it like Hawaii for now. Since Johnston is now uninhabited,
# its link to Pacific/Honolulu is in the 'backward' file.
#
# In his memoirs of June 6th to October 4, 1945
# <http://www.315bw.org/Herb_Bach.htm> (2005), Herbert C. Bach writes,
......@@ -783,8 +783,6 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
# See the table on page 4 where he lists GMT and local times for the tests; a
# footnote for the JI tests reads that local time is "JI time = Hawaii Time
# Minus One Hour".
#
# See 'northamerica' for Pacific/Johnston.
# Kingman
# uninhabited
......@@ -798,7 +796,7 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
# Wake
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Wake 11:06:28 - LMT 1901
12:00 - WAKT # Wake Time
12:00 - +12
# Vanuatu
......@@ -811,12 +809,12 @@ Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 S
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
11:00 Vanuatu VU%sT # Vanuatu Time
11:00 Vanuatu +11/+12
# Wallis and Futuna
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Pacific/Wallis 12:15:20 - LMT 1901
12:00 - WFT # Wallis & Futuna Time
12:00 - +12
###############################################################################
......@@ -827,15 +825,15 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
# tz@iana.org for general use in the future). For more, please see
# the file CONTRIBUTING in the tz distribution.
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-10):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -852,28 +850,19 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
# A reliable and entertaining source about time zones is
# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
#
# I invented the abbreviations marked '*' in the following table;
# the rest are from earlier versions of this file, or from other sources.
# The following abbreviations are from other sources.
# Corrections are welcome!
# std dst
# LMT Local Mean Time
# 8:00 AWST AWDT Western Australia
# 8:45 ACWST ACWDT Central Western Australia*
# 9:00 JST Japan
# 9:30 ACST ACDT Central Australia
# 10:00 AEST AEDT Eastern Australia
# 10:00 GST Guam through 2000
# 10:00 ChST Chamorro
# 10:30 LHST LHDT Lord Howe*
# 11:00 BST Bougainville*
# 11:30 NZMT NZST New Zealand through 1945
# 12:00 NZST NZDT New Zealand 1946-present
# 12:15 CHAST Chatham through 1945*
# 12:45 CHAST CHADT Chatham 1946-present*
# 13:00 WSST WSDT (western) Samoa 2011-present*
# -11:30 WSST Western Samoa through 1950*
# -11:00 SST Samoa
# -10:00 HST Hawaii
# - 8:00 PST Pitcairn*
#
# See the 'northamerica' file for Hawaii.
# See the 'southamerica' file for Easter I and the Galápagos Is.
......
......@@ -119,6 +119,7 @@ Link Pacific/Auckland NZ
Link Pacific/Chatham NZ-CHAT
Link America/Denver Navajo
Link Asia/Shanghai PRC
Link Pacific/Honolulu Pacific/Johnston
Link Pacific/Pohnpei Pacific/Ponape
Link Pacific/Pago_Pago Pacific/Samoa
Link Pacific/Chuuk Pacific/Truk
......
......@@ -29,15 +29,15 @@
# tz@iana.org for general use in the future). For more, please see
# the file CONTRIBUTING in the tz distribution.
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-10):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -79,26 +79,23 @@
# History of Summer Time
# <http://pcdsh01.on.br/HISTHV.htm>
# (1998-09-21, in Portuguese)
#
# I invented the abbreviations marked '*' in the following table;
# the rest are from earlier versions of this file, or from other sources.
# Corrections are welcome!
# std dst 2dst
# LMT Local Mean Time
# -4:00 AST ADT Atlantic
# -3:00 WGT WGST Western Greenland*
# -1:00 EGT EGST Eastern Greenland*
# 0:00 GMT BST BDST Greenwich, British Summer
# 0:00 GMT IST Greenwich, Irish Summer
# 0:00 WET WEST WEMT Western Europe
# 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
# 0:20 NET NEST Netherlands (1937-1940)*
# 1:00 BST British Standard (1968-1971)
# 1:00 CET CEST CEMT Central Europe
# 1:00:14 SET Swedish (1879-1899)*
# 2:00 EET EEST Eastern Europe
# 3:00 MSK MSD Moscow
# the rest are variants of the "xMT" pattern for a city's mean time,
# or are from other sources. Corrections are welcome!
# std dst 2dst
# LMT Local Mean Time
# -4:00 AST ADT Atlantic
# 0:00 GMT BST BDST Greenwich, British Summer
# 0:00 GMT IST Greenwich, Irish Summer
# 0:00 WET WEST WEMT Western Europe
# 0:19:32.13 AMT* NST* Amsterdam, Netherlands Summer (1835-1937)
# 1:00 BST British Standard (1968-1971)
# 1:00 CET CEST CEMT Central Europe
# 1:00:14 SET Swedish (1879-1899)
# 1:36:34 RMT* LST* Riga, Latvian Summer (1880-1926)*
# 2:00 EET EEST Eastern Europe
# 3:00 MSK MSD MDST* Moscow
# From Peter Ilieve (1994-12-04),
# The original six [EU members]: Belgium, France, (West) Germany, Italy,
......@@ -498,7 +495,7 @@ Link Europe/London Europe/Isle_of_Man
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
-0:25:21 - DMT 1916 May 21 2:00
-0:25:21 - DMT 1916 May 21 2:00 # Dublin MT
-0:25:21 1:00 IST 1916 Oct 1 2:00s
0:00 GB-Eire %s 1921 Dec 6 # independence
0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
......@@ -1087,16 +1084,16 @@ Rule Thule 2007 max - Nov Sun>=1 2:00 0 S
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
-3:00 - WGT 1980 Apr 6 2:00
-3:00 EU WG%sT 1996
-3:00 - -03 1980 Apr 6 2:00
-3:00 EU -03/-02 1996
0:00 - GMT
Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
-2:00 - CGT 1980 Apr 6 2:00
-2:00 C-Eur CG%sT 1981 Mar 29
-1:00 EU EG%sT
-2:00 - -02 1980 Apr 6 2:00
-2:00 C-Eur -02/-01 1981 Mar 29
-1:00 EU -01/+00
Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
-3:00 - WGT 1980 Apr 6 2:00
-3:00 EU WG%sT
-3:00 - -03 1980 Apr 6 2:00
-3:00 EU -03/-02
Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
-4:00 Thule A%sT
......@@ -1511,7 +1508,7 @@ Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
Rule Iceland 1967 only - Oct 29 1:00s 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Atlantic/Reykjavik -1:28 - LMT 1908
-1:00 Iceland IS%sT 1968 Apr 7 1:00s
-1:00 Iceland -01/+00 1968 Apr 7 1:00s
0:00 - GMT
# Italy
......@@ -1975,7 +1972,7 @@ Rule Neth 1945 only - Sep 16 2:00s 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Europe/Amsterdam 0:19:32 - LMT 1835
0:19:32 Neth %s 1937 Jul 1
0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
0:20 Neth +0020/+0120 1940 May 16 0:00
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Neth CE%sT 1977
1:00 EU CE%sT
......@@ -2192,16 +2189,34 @@ Zone Europe/Lisbon -0:36:45 - LMT 1884
0:00 W-Eur WE%sT 1992 Sep 27 1:00s
1:00 EU CE%sT 1996 Mar 31 1:00u
0:00 EU WE%sT
# This Zone can be simplified once we assume zic %z.
Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
-1:54:32 - HMT 1912 Jan 1 # Horta Mean Time
-2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
-1:00 Port AZO%sT 1983 Sep 25 1:00s
-1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
-2:00 Port -02/-01 1942 Apr 25 22:00s
-2:00 Port +00 1942 Aug 15 22:00s
-2:00 Port -02/-01 1943 Apr 17 22:00s
-2:00 Port +00 1943 Aug 28 22:00s
-2:00 Port -02/-01 1944 Apr 22 22:00s
-2:00 Port +00 1944 Aug 26 22:00s
-2:00 Port -02/-01 1945 Apr 21 22:00s
-2:00 Port +00 1945 Aug 25 22:00s
-2:00 Port -02/-01 1966 Apr 3 2:00
-1:00 Port -01/+00 1983 Sep 25 1:00s
-1:00 W-Eur -01/+00 1992 Sep 27 1:00s
0:00 EU WE%sT 1993 Mar 28 1:00u
-1:00 EU AZO%sT
-1:00 EU -01/+00
# This Zone can be simplified once we assume zic %z.
Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
-1:07:36 - FMT 1912 Jan 1 # Funchal Mean Time
-1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
-1:00 Port -01/+00 1942 Apr 25 22:00s
-1:00 Port +01 1942 Aug 15 22:00s
-1:00 Port -01/+00 1943 Apr 17 22:00s
-1:00 Port +01 1943 Aug 28 22:00s
-1:00 Port -01/+00 1944 Apr 22 22:00s
-1:00 Port +01 1944 Aug 26 22:00s
-1:00 Port -01/+00 1945 Apr 21 22:00s
-1:00 Port +01 1945 Aug 25 22:00s
-1:00 Port -01/+00 1966 Apr 3 2:00
0:00 Port WE%sT 1983 Sep 25 1:00s
0:00 EU WE%sT
......@@ -2559,10 +2574,8 @@ Zone Europe/Moscow 2:30:17 - LMT 1880
3:00 - MSK
# From Tim Parenti (2014-07-03):
# Europe/Simferopol covers...
# ** **** Crimea, Republic of
# ** **** Sevastopol
# From Paul Eggert (2016-12-06):
# Europe/Simferopol covers Crimea.
Zone Europe/Simferopol 2:16:24 - LMT 1880
2:16 - SMT 1924 May 2 # Simferopol Mean T
......@@ -3255,46 +3268,77 @@ Link Europe/Prague Europe/Bratislava
# See Europe/Belgrade.
# Spain
#
# From Paul Eggert (2016-12-14):
#
# The source for Europe/Madrid before 2013 is:
# Planesas P. La hora oficial en España y sus cambios.
# Anuario del Observatorio Astronómico de Madrid (2013, in Spanish).
# http://astronomia.ign.es/rknowsys-theme/images/webAstro/paginas/documentos/Anuario/lahoraoficialenespana.pdf
# As this source says that historical time in the Canaries is obscure,
# and it does not discuss Ceuta, stick with Shanks for now for that data.
#
# In the 1918 and 1919 fallback transitions in Spain, the clock for
# the hour-longer day officially kept going after midnight, so that
# the repeated instances of that day's 00:00 hour were 24 hours apart,
# with a fallback transition from the second occurrence of 00:59... to
# the next day's 00:00. Our data format cannot represent this
# directly, and instead repeats the first hour of the next day, with a
# fallback transition from the next day's 00:59... to 00:00.
# From Michael Deckers (2016-12-15):
# The Royal Decree of 1900-06-26 quoted by Planesas, online at
# https://www.boe.es/datos/pdfs/BOE//1900/209/A00383-00384.pdf
# says in its article 5 (my translation):
# These dispositions will enter into force beginning with the
# instant at which, according to the time indicated in article 1,
# the 1st day of January of 1901 will begin.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
# go with Shanks & Pottenger.
Rule Spain 1917 only - May 5 23:00s 1:00 S
Rule Spain 1917 1919 - Oct 6 23:00s 0 -
Rule Spain 1918 only - Apr 15 23:00s 1:00 S
Rule Spain 1919 only - Apr 5 23:00s 1:00 S
# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
Rule Spain 1924 only - Apr 16 23:00s 1:00 S
# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
Rule Spain 1924 only - Oct 4 23:00s 0 -
Rule Spain 1926 only - Apr 17 23:00s 1:00 S
# Whitman says no DST in 1929; go with Shanks & Pottenger.
Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
Rule Spain 1927 only - Apr 9 23:00s 1:00 S
Rule Spain 1928 only - Apr 14 23:00s 1:00 S
Rule Spain 1929 only - Apr 20 23:00s 1:00 S
# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
# go with Shanks & Pottenger.
Rule Spain 1937 only - May 22 23:00s 1:00 S
Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
Rule Spain 1938 only - Mar 22 23:00s 1:00 S
Rule Spain 1939 only - Apr 15 23:00s 1:00 S
Rule Spain 1940 only - Mar 16 23:00s 1:00 S
# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
Rule Spain 1942 only - Sep 1 22:00s 1:00 S
Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
Rule Spain 1943 only - Oct 3 22:00s 1:00 S
Rule Spain 1944 only - Oct 10 22:00s 1:00 S
Rule Spain 1945 only - Sep 30 1:00 1:00 S
Rule Spain 1946 only - Sep 30 0:00 0 -
Rule Spain 1918 only - Apr 15 23:00 1:00 S
Rule Spain 1918 1919 - Oct 6 24:00s 0 -
Rule Spain 1919 only - Apr 6 23:00 1:00 S
Rule Spain 1924 only - Apr 16 23:00 1:00 S
Rule Spain 1924 only - Oct 4 24:00s 0 -
Rule Spain 1926 only - Apr 17 23:00 1:00 S
Rule Spain 1926 1929 - Oct Sat>=1 24:00s 0 -
Rule Spain 1927 only - Apr 9 23:00 1:00 S
Rule Spain 1928 only - Apr 15 0:00 1:00 S
Rule Spain 1929 only - Apr 20 23:00 1:00 S
# Republican Spain during the civil war; it controlled Madrid until 1939-03-28.
Rule Spain 1937 only - Jun 16 23:00 1:00 S
Rule Spain 1937 only - Oct 2 24:00s 0 -
Rule Spain 1938 only - Apr 2 23:00 1:00 S
Rule Spain 1938 only - Apr 30 23:00 2:00 M
Rule Spain 1938 only - Oct 2 24:00 1:00 S
# The following rules are for unified Spain again.
#
# Planesas does not say what happened in Madrid between its fall on
# 1939-03-28 and the Nationalist spring-forward transition on
# 1939-04-15. For lack of better info, assume Madrid's clocks did not
# change during that period.
#
# The first rule is commented out, as it is redundant for Republican Spain.
#Rule Spain 1939 only - Apr 15 23:00 1:00 S
Rule Spain 1939 only - Oct 7 24:00s 0 -
Rule Spain 1942 only - May 2 23:00 1:00 S
Rule Spain 1942 only - Sep 1 1:00 0 -
Rule Spain 1943 1946 - Apr Sat>=13 23:00 1:00 S
Rule Spain 1943 1944 - Oct Sun>=1 1:00 0 -
Rule Spain 1945 1946 - Sep lastSun 1:00 0 -
Rule Spain 1949 only - Apr 30 23:00 1:00 S
Rule Spain 1949 only - Sep 30 1:00 0 -
Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
Rule Spain 1949 only - Oct 2 1:00 0 -
Rule Spain 1974 1975 - Apr Sat>=12 23:00 1:00 S
Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
Rule Spain 1976 only - Mar 27 23:00 1:00 S
Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
Rule Spain 1978 only - Oct 1 1:00 0 -
Rule Spain 1977 only - Apr 2 23:00 1:00 S
Rule Spain 1978 only - Apr 2 2:00s 1:00 S
Rule Spain 1978 only - Oct 1 2:00s 0 -
# Nationalist Spain during the civil war
#Rule NatSpain 1937 only - May 22 23:00 1:00 S
#Rule NatSpain 1937 1938 - Oct Sat>=1 24:00s 0 -
#Rule NatSpain 1938 only - Mar 26 23:00 1:00 S
# The following rules are copied from Morocco from 1967 through 1978.
Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
......@@ -3306,11 +3350,11 @@ Rule SpainAfrica 1977 only - Sep 28 0:00 0 -
Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
0:00 Spain WE%sT 1946 Sep 30
Zone Europe/Madrid -0:14:44 - LMT 1900 Dec 31 23:45:16
0:00 Spain WE%sT 1940 Mar 16 23:00
1:00 Spain CE%sT 1979
1:00 EU CE%sT
Zone Africa/Ceuta -0:21:16 - LMT 1901
Zone Africa/Ceuta -0:21:16 - LMT 1900 Dec 31 23:38:44
0:00 - WET 1918 May 6 23:00
0:00 1:00 WEST 1918 Oct 7 23:00
0:00 - WET 1924
......@@ -3319,7 +3363,7 @@ Zone Africa/Ceuta -0:21:16 - LMT 1901
1:00 - CET 1986
1:00 EU CE%sT
Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
-1:00 - CANT 1946 Sep 30 1:00 # Canaries T
-1:00 - -01 1946 Sep 30 1:00
0:00 - WET 1980 Apr 6 0:00s
0:00 1:00 WEST 1980 Sep 28 1:00u
0:00 EU WE%sT
......@@ -3732,7 +3776,7 @@ Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
# spelling, except omit the apostrophe as it is not allowed in
# portable Posix file names.
Zone Europe/Zaporozhye 2:20:40 - LMT 1880
2:20 - CUT 1924 May 2 # Central Ukraine T
2:20 - +0220 1924 May 2
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Aug 25
1:00 C-Eur CE%sT 1943 Oct 25
......
......@@ -81,5 +81,5 @@ Leap 2012 Jun 30 23:59:60 + S
Leap 2015 Jun 30 23:59:60 + S
Leap 2016 Dec 31 23:59:60 + S
# Updated through IERS Bulletin C52
# File expires on: 28 June 2017
# Updated through IERS Bulletin C53
# File expires on: 28 December 2017
......@@ -201,22 +201,6 @@ Zone CST6CDT -6:00 US C%sT
Zone MST7MDT -7:00 US M%sT
Zone PST8PDT -8:00 US P%sT
# From Bob Devine (1988-01-28):
# ...Alaska (and Hawaii) had the timezone names changed in 1967.
# old new
# Pacific Standard Time(PST) -same-
# Yukon Standard Time(YST) -same-
# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
# Nome Standard Time (NT) Bering Standard Time (BST)
#
# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
# The YST zone now covers nearly all of the state, AHST just part
# of the Aleutian islands. No DST.
# From Paul Eggert (1995-12-19):
# The tables below use 'NST', not 'NT', for Nome Standard Time.
# I invented 'CAWT' for Central Alaska War Time.
# From U. S. Naval Observatory (1989-01-19):
# USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
# USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
......@@ -273,6 +257,21 @@ Zone PST8PDT -8:00 US P%sT
# Samoa standard time
# The law doesn't give abbreviations.
#
# From Paul Eggert (2016-12-19):
# Here are URLs for the 1918 and 1966 legislation:
# http://uscode.house.gov/statviewer.htm?volume=40&page=451
# http://uscode.house.gov/statviewer.htm?volume=80&page=108
# Although the 1918 names were officially "United States Standard
# Eastern Time" and similarly for "Central", "Mountain", "Pacific",
# and "Alaska", in practice "Standard" was placed just before "Time",
# as codified in 1966. In practice, Alaska time was abbreviated "AST"
# before 1968. Summarizing the 1967 name changes:
# 1918 names 1967 names
# -08 Standard Pacific Time (PST) Pacific standard time (PST)
# -09 (unofficial) Yukon (YST) Yukon standard time (YST)
# -10 Standard Alaska Time (AST) Alaska-Hawaii standard time (AHST)
# -11 (unofficial) Nome (NST) Bering standard time (BST)
#
# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
# for time in Guam and the Northern Marianas. See the file "australasia".
......@@ -328,6 +327,15 @@ Zone PST8PDT -8:00 US P%sT
# Roberts, city administrator in Phenix City. as saying "We are in the Central
# time zone, but we do go by the Eastern time zone because so many people work
# in Columbus."
#
# From Paul Eggert (2017-02-22):
# Four cities are involved. The two not mentioned above are Smiths Station
# and Valley. Barbara Brooks, Valley's assistant treasurer, heard it started
# because West Point Pepperell textile mills were in Alabama while the
# corporate office was in Georgia, and residents voted to keep Eastern
# time even after the mills closed. See: Kazek K. Did you know which
# Alabama towns are in a different time zone? al.com 2017-02-06.
# http://www.al.com/living/index.ssf/2017/02/do_you_know_which_alabama_town.html
# From Paul Eggert (2014-09-06):
# Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208
......@@ -505,7 +513,7 @@ Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
-8:00 US P%sT
# Alaska
# AK%sT is the modern abbreviation for -9:00 per USNO.
# AK%sT is the modern abbreviation for -09 per USNO.
#
# From Paul Eggert (2001-05-30):
# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
......@@ -611,10 +619,8 @@ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
-9:00 US AK%sT
Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
-9:59:36 - LMT 1900 Aug 20 12:00
-10:00 - CAT 1942
-10:00 US CAT/CAWT 1945 Aug 14 23:00u
-10:00 US CAT/CAPT 1946 # Peace
-10:00 - CAT 1967 Apr
-10:00 - AST 1942
-10:00 US A%sT 1967 Apr
-10:00 - AHST 1969
-10:00 US AH%sT 1983 Oct 30 2:00
-9:00 US Y%sT 1983 Nov 30
......@@ -703,7 +709,6 @@ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
-10:30 1:00 HDT 1945 Sep 30 2:00
-10:30 - HST 1947 Jun 8 2:00
-10:00 - HST
Link Pacific/Honolulu Pacific/Johnston
# Now we turn to US areas that have diverged from the consensus since 1970.
......@@ -1091,15 +1096,15 @@ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
################################################################################
# From Paul Eggert (2014-10-31):
# From Paul Eggert (2017-02-10):
#
# Unless otherwise specified, the source for data through 1990 is:
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
# San Diego: ACS Publications, Inc. (2003).
# Unfortunately this book contains many errors and cites no sources.
#
# Gwillim Law writes that a good source
# for recent time zone data is the International Air Transport
# Many years ago Gwillim Law wrote that a good source
# for time zone data was the International Air Transport
# Association's Standard Schedules Information Manual (IATA SSIM),
# published semiannually. Law sent in several helpful summaries
# of the IATA's data after 1990. Except where otherwise noted,
......@@ -2757,15 +2762,15 @@ Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
# Belize
# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
Rule Belize 1973 only - Dec 5 0:00 1:00 D
Rule Belize 1974 only - Feb 9 0:00 0 S
Rule Belize 1982 only - Dec 18 0:00 1:00 D
Rule Belize 1983 only - Feb 12 0:00 0 S
Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 -0530
Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 CST
Rule Belize 1973 only - Dec 5 0:00 1:00 CDT
Rule Belize 1974 only - Feb 9 0:00 0 CST
Rule Belize 1982 only - Dec 18 0:00 1:00 CDT
Rule Belize 1983 only - Feb 12 0:00 0 CST
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Belize -5:52:48 - LMT 1912 Apr
-6:00 Belize C%sT
-6:00 Belize %s
# Bermuda
......@@ -3037,16 +3042,16 @@ Zone America/Havana -5:29:28 - LMT 1890
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule DR 1966 only - Oct 30 0:00 1:00 D
Rule DR 1967 only - Feb 28 0:00 0 S
Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
Rule DR 1970 only - Feb 21 0:00 0 S
Rule DR 1971 only - Jan 20 0:00 0 S
Rule DR 1972 1974 - Jan 21 0:00 0 S
Rule DR 1966 only - Oct 30 0:00 1:00 EDT
Rule DR 1967 only - Feb 28 0:00 0 EST
Rule DR 1969 1973 - Oct lastSun 0:00 0:30 -0430
Rule DR 1970 only - Feb 21 0:00 0 EST
Rule DR 1971 only - Jan 20 0:00 0 EST
Rule DR 1972 1974 - Jan 21 0:00 0 EST
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Santo_Domingo -4:39:36 - LMT 1890
-4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
-5:00 DR E%sT 1974 Oct 27
-5:00 DR %s 1974 Oct 27
-4:00 - AST 2000 Oct 29 2:00
-5:00 US E%sT 2000 Dec 3 1:00
-4:00 - AST
......@@ -3336,8 +3341,8 @@ Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
-4:00 - AST 1980 May
-3:00 - PMST 1987 # Pierre & Miquelon Time
-3:00 Canada PM%sT
-3:00 - -03 1987
-3:00 Canada -03/-02
# St Vincent and the Grenadines
# See America/Port_of_Spain.
......
......@@ -165,6 +165,7 @@ CH +4723+00832 Europe/Zurich
CI +0519-00402 Africa/Abidjan
CK -2114-15946 Pacific/Rarotonga
CL -3327-07040 America/Santiago Chile (most areas)
CL -5309-07055 America/Punta_Arenas Region of Magallanes
CL -2709-10926 Pacific/Easter Easter Island
CM +0403+00942 Africa/Douala
CN +3114+12128 Asia/Shanghai Beijing Time
......@@ -420,7 +421,6 @@ UA +5026+03031 Europe/Kiev Ukraine (most areas)
UA +4837+02218 Europe/Uzhgorod Ruthenia
UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
UG +0019+03225 Africa/Kampala
UM +1645-16931 Pacific/Johnston Johnston Atoll
UM +2813-17722 Pacific/Midway Midway Islands
UM +1917+16637 Pacific/Wake Wake Island
US +404251-0740023 America/New_York Eastern (most areas)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册