diff options
Diffstat (limited to 'java/openjdk8/files/patch-8u31-b13')
-rw-r--r-- | java/openjdk8/files/patch-8u31-b13 | 35573 |
1 files changed, 0 insertions, 35573 deletions
diff --git a/java/openjdk8/files/patch-8u31-b13 b/java/openjdk8/files/patch-8u31-b13 deleted file mode 100644 index 9b32ccbc8baf..000000000000 --- a/java/openjdk8/files/patch-8u31-b13 +++ /dev/null @@ -1,35573 +0,0 @@ ---- ./.hgtags Wed Sep 17 11:23:18 2014 -0700 -+++ ./.hgtags Mon Dec 08 12:28:03 2014 -0800 -@@ -314,6 +314,8 @@ - 1710841b0229403f4af85eac8b68ea5065a26c81 jdk8u20-b24 - 1710841b0229403f4af85eac8b68ea5065a26c81 jdk8u20-b25 - d1a7ea2c3e1091e0df1285963328a96f475f240d jdk8u20-b26 -+3229d7b76babcf6710b3a965a2eda3f3bb2aa972 jdk8u20-b31 -+9955a899edb359f2dc1704ea86044e9819cb805d jdk8u20-b32 - 97c6d6a8e5bb3dfc24b9a32711aa0906ea110e23 jdk8u25-b00 - c4cfb4376f5916c5d7eb1f39a0e23402de0d9818 jdk8u25-b01 - b4d29a751077e5500e766b8104dd1cb7148a550f jdk8u25-b02 -@@ -331,3 +333,19 @@ - 4429ea47ee6eca6b8a1dbda1950566ee821ba19d jdk8u25-b14 - 09eaef69f384ecf8ec0342b87a8b150740941140 jdk8u25-b15 - f0a48c214c46b7351ff8e6d6b6dc533463a4be21 jdk8u25-b16 -+d117f01bfb4f34668ac216c9837e88acead14dce jdk8u25-b17 -+efac90a2da447c2b2d43ee1b1e20c0828659f9c5 jdk8u25-b18 -+1a0b4ec68abc4e9248ca6041fff04612674a9b9f jdk8u25-b31 -+6db0898d3f90ad9eae2f017299314b88766446e3 jdk8u31-b00 -+85792859f3bdd6a2c1bdfcf2828bb2730e06ac3c jdk8u31-b01 -+4898a7460ae620ac5356cb224e1fdf3c29312533 jdk8u31-b02 -+886ace09d0934d5410572764685f13119d523823 jdk8u31-b03 -+e2d32fe85fb93ce5179c25f5bfd49750a85c9342 jdk8u31-b04 -+97de4d73edf1435c9b87d765d2ad91bb16c8d913 jdk8u31-b05 -+f1b61760d01de6ad8d360227ac6c2122765680a2 jdk8u31-b06 -+e9cbffb6c1119f3ef39c68db53c36c5e544c0d3c jdk8u31-b07 -+4cec543118e7720d6105f25b60742d25a458cab7 jdk8u31-b08 -+ea4b31ec437d74c62b844bd8b35f0bc3a27915b4 jdk8u31-b09 -+01a98532348477a84b6e3c322fdd12dfed28d96d jdk8u31-b10 -+ec85d5d0e3c05b0b6d61f4fc3f41313448ed9b05 jdk8u31-b11 -+ca98e3e9727ffdcde2c9980668d0c7f344261938 jdk8u31-b12 ---- ./common/autoconf/generated-configure.sh Wed Sep 17 11:23:18 2014 -0700 -+++ ./common/autoconf/generated-configure.sh Mon Dec 08 12:28:03 2014 -0800 -@@ -1024,6 +1024,7 @@ - with_update_version - with_user_release_suffix - with_build_number -+with_copyright_year - with_boot_jdk - with_boot_jdk_jvmargs - with_add_source_root -@@ -1774,6 +1775,7 @@ - Add a custom string to the version string if build - number isn't set.[username_builddateb00] - --with-build-number Set build number value for build [b00] -+ --with-copyright-year Set copyright year value for build [current year] - --with-boot-jdk path to Boot JDK (used to bootstrap build) [probed] - --with-boot-jdk-jvmargs specify JVM arguments to be passed to all - invocations of the Boot JDK, overriding the default -@@ -3868,7 +3870,7 @@ - #CUSTOM_AUTOCONF_INCLUDE - - # Do not change or remove the following line, it is needed for consistency checks: --DATE_WHEN_GENERATED=1410971760 -+DATE_WHEN_GENERATED=1416326200 - - ############################################################################### - # -@@ -11280,7 +11282,19 @@ - - - -- COPYRIGHT_YEAR=`date +'%Y'` -+ -+# Check whether --with-copyright-year was given. -+if test "${with_copyright_year+set}" = set; then : -+ withval=$with_copyright_year; -+fi -+ -+ if test "x$with_copyright_year" = xyes; then -+ as_fn_error $? "Copyright year must have a value" "$LINENO" 5 -+ elif test "x$with_copyright_year" != x; then -+ COPYRIGHT_YEAR="$with_copyright_year" -+ else -+ COPYRIGHT_YEAR=`date +'%Y'` -+ fi - - - if test "x$JDK_UPDATE_VERSION" != x; then ---- ./common/autoconf/jdk-options.m4 Wed Sep 17 11:23:18 2014 -0700 -+++ ./common/autoconf/jdk-options.m4 Mon Dec 08 12:28:03 2014 -0800 -@@ -510,7 +510,15 @@ - AC_SUBST(MACOSX_BUNDLE_NAME_BASE) - AC_SUBST(MACOSX_BUNDLE_ID_BASE) - -- COPYRIGHT_YEAR=`date +'%Y'` -+ AC_ARG_WITH(copyright-year, [AS_HELP_STRING([--with-copyright-year], -+ [Set copyright year value for build @<:@current year@:>@])]) -+ if test "x$with_copyright_year" = xyes; then -+ AC_MSG_ERROR([Copyright year must have a value]) -+ elif test "x$with_copyright_year" != x; then -+ COPYRIGHT_YEAR="$with_copyright_year" -+ else -+ COPYRIGHT_YEAR=`date +'%Y'` -+ fi - AC_SUBST(COPYRIGHT_YEAR) - - if test "x$JDK_UPDATE_VERSION" != x; then ---- ./corba/.hgtags Mon Sep 08 12:34:37 2014 -0700 -+++ ./corba/.hgtags Mon Dec 08 12:28:12 2014 -0800 -@@ -312,6 +312,8 @@ - 34c930eaa6b591621afde05ca2e24571c91cdc9b jdk8u20-b24 - 34c930eaa6b591621afde05ca2e24571c91cdc9b jdk8u20-b25 - 37bde23c96f66912c44b1b893c08d4ad4cff5f4e jdk8u20-b26 -+83bebea0c36c6ee9e663b41f9103ddcf1216ef55 jdk8u20-b31 -+117f50127c27826dbe4c9e6fe1916aeab4bceef9 jdk8u20-b32 - 08aa9f55fe5bce1f04cfd2958f71e8df18643e29 jdk8u25-b00 - 31f50e3c0dcbdfa7f11a895179065e6888c2cf3c jdk8u25-b01 - 162703b7c2f16ce00d1b54a8f95d12eda9753eba jdk8u25-b02 -@@ -329,3 +331,19 @@ - 7e9a2027d0214019d66325fa7ca59cf8281fb43e jdk8u25-b14 - 5b2cb4935667cd02d7974b3b6fb6bf4092b5acae jdk8u25-b15 - 28d7f90e04e46ce8c633a2fbf0157d9e77db17c3 jdk8u25-b16 -+f46df0af2ca8c7d896de375c8edac8ce09318318 jdk8u25-b17 -+ee069d67c12df902cdb06ecf1747f8ff9d495a61 jdk8u25-b18 -+8d0faa0eac61c04c6a5bbff2e084c9da0bd5251c jdk8u25-b31 -+69793b08060c9d216fa84d679c48b9e22d2400ac jdk8u31-b00 -+fd5f8e3713803ca2d7898407a53996f3aa41521e jdk8u31-b01 -+b6e2d1b1b24585bd02512e360d842d4713afa644 jdk8u31-b02 -+1a7cc737d8081ffef73d88e94995f80d6a3dc8e0 jdk8u31-b03 -+f24241b85fc90618d243f54202904ee202c44b7e jdk8u31-b04 -+a3b616778301fe101bf3dcfa145d3bb4e8fc8941 jdk8u31-b05 -+3de6161377bf492953260c7bf756f3ec0c6e6d60 jdk8u31-b06 -+3d42c53301dd951992a32613173dd6fbb13a28a8 jdk8u31-b07 -+b47677f7c1d122a2d05e03dec70de86feaedcd4c jdk8u31-b08 -+95163f85c9e961c5bf37ceac645a0e7de505ca3e jdk8u31-b09 -+474bf60980443dfae2fe6e121fef0caea4e014b3 jdk8u31-b10 -+7e2056eba0b62247407e065f3f88a89358fc26a6 jdk8u31-b11 -+285b0e589c50e46ca7ad3434221335901a547d66 jdk8u31-b12 ---- ./hotspot/.hgtags Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/.hgtags Mon Dec 08 12:28:35 2014 -0800 -@@ -501,6 +501,8 @@ - 00cf2b6f51b9560b01030e8f4c28c466f0b21fe3 hs25.20-b23 - 19408d5fd31c25ce60c43dd33e92b96e8df4a4ea jdk8u20-b25 - eaa4074a7e3975cd33ec55e6b584586e2ac681bd jdk8u20-b26 -+7c9925f21c2529a88eb64b8039cc080f60b85e01 jdk8u20-b31 -+7edb04063a423e278fe34a0006d25fee198f495e jdk8u20-b32 - a4d44dfb7d30eea54bc172e4429a655454ae0bbf jdk8u25-b00 - 9a2152fbd929b0d8b2f5c326a5526214ae71731a jdk8u25-b01 - d3d5604ea0dea3812e87ba76ac199d0a8be6f49f jdk8u25-b02 -@@ -518,3 +520,19 @@ - c77d5db189422e2eef0443ee212644e497113b18 jdk8u25-b14 - e62c06b887310b5bd23be9b817a9a6f0daf0d0e1 jdk8u25-b15 - 6467bdd4d22d8b140844dc847c43b9ba7cb0bbd1 jdk8u25-b16 -+28b50d07f6f8c5a567b6a25e95a423948114a004 jdk8u25-b17 -+639abc668bfe995dba811dd35411b9ea8a9041cd jdk8u25-b18 -+c3528699fb33fe3eb1d117504184ae7ab2507aa1 jdk8u25-b31 -+5bb683bbe2c74876d585b5c3232fc3aab7b23e97 jdk8u31-b00 -+5bb686ae3b89f8aa1c74331b2d24e2a5ebd43448 jdk8u31-b01 -+087678da96603c9705b38b6cc4a6569ac7b4420a jdk8u31-b02 -+401cbaa475b4efe53153119ab87a82b217980a7f jdk8u31-b03 -+060cdf93040c1bfa5fdf580da5e9999042632cc8 jdk8u31-b04 -+6e56d7f1634f6c4cd4196e699c06e6ca2e6d6efb jdk8u31-b05 -+271a32147391d08b0f338d9353330e2b5584d580 jdk8u31-b06 -+e9f815c3f21cf2febd8e3c185917c1519aa52d9a jdk8u31-b07 -+cc74ca22516644867be3b8db6c1f8d05ab4f6c27 jdk8u31-b08 -+245d29ed5db5ad6914eb0c9fe78b9ba26122c478 jdk8u31-b09 -+d7b6bdd51abe68b16411d5b292fb830a43c5bc09 jdk8u31-b10 -+9906d432d6dbd2cda242e3f3cfde7cf6c90245bf jdk8u31-b11 -+e13839545238d1ecf17f0489bb6fb765de46719a jdk8u31-b12 ---- ./hotspot/make/hotspot_version Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/make/hotspot_version Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - # --# Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved. -+# Copyright (c) 2006, 2015, 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 -@@ -31,11 +31,11 @@ - # - - # Don't put quotes (fail windows build). --HOTSPOT_VM_COPYRIGHT=Copyright 2014 -+HOTSPOT_VM_COPYRIGHT=Copyright 2015 - - HS_MAJOR_VER=25 --HS_MINOR_VER=25 --HS_BUILD_NUMBER=02 -+HS_MINOR_VER=31 -+HS_BUILD_NUMBER=07 - - JDK_MAJOR_VER=1 - JDK_MINOR_VER=8 ---- ./hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1128,51 +1128,82 @@ - // Hoist any int/ptr/long's in the first 6 to int regs. - // Hoist any flt/dbl's in the first 16 dbl regs. - int j = 0; // Count of actual args, not HALVES -- for( int i=0; i<total_args_passed; i++, j++ ) { -- switch( sig_bt[i] ) { -+ VMRegPair param_array_reg; // location of the argument in the parameter array -+ for (int i = 0; i < total_args_passed; i++, j++) { -+ param_array_reg.set_bad(); -+ switch (sig_bt[i]) { - case T_BOOLEAN: - case T_BYTE: - case T_CHAR: - case T_INT: - case T_SHORT: -- regs[i].set1( int_stk_helper( j ) ); break; -+ regs[i].set1(int_stk_helper(j)); -+ break; - case T_LONG: -- assert( sig_bt[i+1] == T_VOID, "expecting half" ); -+ assert(sig_bt[i+1] == T_VOID, "expecting half"); - case T_ADDRESS: // raw pointers, like current thread, for VM calls - case T_ARRAY: - case T_OBJECT: - case T_METADATA: -- regs[i].set2( int_stk_helper( j ) ); -+ regs[i].set2(int_stk_helper(j)); - break; - case T_FLOAT: -- if ( j < 16 ) { -- // V9ism: floats go in ODD registers -- regs[i].set1(as_FloatRegister(1 + (j<<1))->as_VMReg()); -- } else { -- // V9ism: floats go in ODD stack slot -- regs[i].set1(VMRegImpl::stack2reg(1 + (j<<1))); -+ // Per SPARC Compliance Definition 2.4.1, page 3P-12 available here -+ // http://www.sparc.org/wp-content/uploads/2014/01/SCD.2.4.1.pdf.gz -+ // -+ // "When a callee prototype exists, and does not indicate variable arguments, -+ // floating-point values assigned to locations %sp+BIAS+128 through %sp+BIAS+248 -+ // will be promoted to floating-point registers" -+ // -+ // By "promoted" it means that the argument is located in two places, an unused -+ // spill slot in the "parameter array" (starts at %sp+BIAS+128), and a live -+ // float register. In most cases, there are 6 or fewer arguments of any type, -+ // and the standard parameter array slots (%sp+BIAS+128 to %sp+BIAS+176 exclusive) -+ // serve as shadow slots. Per the spec floating point registers %d6 to %d16 -+ // require slots beyond that (up to %sp+BIAS+248). -+ // -+ { -+ // V9ism: floats go in ODD registers and stack slots -+ int float_index = 1 + (j << 1); -+ param_array_reg.set1(VMRegImpl::stack2reg(float_index)); -+ if (j < 16) { -+ regs[i].set1(as_FloatRegister(float_index)->as_VMReg()); -+ } else { -+ regs[i] = param_array_reg; -+ } - } - break; - case T_DOUBLE: -- assert( sig_bt[i+1] == T_VOID, "expecting half" ); -- if ( j < 16 ) { -- // V9ism: doubles go in EVEN/ODD regs -- regs[i].set2(as_FloatRegister(j<<1)->as_VMReg()); -- } else { -- // V9ism: doubles go in EVEN/ODD stack slots -- regs[i].set2(VMRegImpl::stack2reg(j<<1)); -+ { -+ assert(sig_bt[i + 1] == T_VOID, "expecting half"); -+ // V9ism: doubles go in EVEN/ODD regs and stack slots -+ int double_index = (j << 1); -+ param_array_reg.set2(VMRegImpl::stack2reg(double_index)); -+ if (j < 16) { -+ regs[i].set2(as_FloatRegister(double_index)->as_VMReg()); -+ } else { -+ // V9ism: doubles go in EVEN/ODD stack slots -+ regs[i] = param_array_reg; -+ } - } - break; -- case T_VOID: regs[i].set_bad(); j--; break; // Do not count HALVES -+ case T_VOID: -+ regs[i].set_bad(); -+ j--; -+ break; // Do not count HALVES - default: - ShouldNotReachHere(); - } -- if (regs[i].first()->is_stack()) { -- int off = regs[i].first()->reg2stack(); -+ // Keep track of the deepest parameter array slot. -+ if (!param_array_reg.first()->is_valid()) { -+ param_array_reg = regs[i]; -+ } -+ if (param_array_reg.first()->is_stack()) { -+ int off = param_array_reg.first()->reg2stack(); - if (off > max_stack_slots) max_stack_slots = off; - } -- if (regs[i].second()->is_stack()) { -- int off = regs[i].second()->reg2stack(); -+ if (param_array_reg.second()->is_stack()) { -+ int off = param_array_reg.second()->reg2stack(); - if (off > max_stack_slots) max_stack_slots = off; - } - } -@@ -1180,8 +1211,8 @@ - #else // _LP64 - // V8 convention: first 6 things in O-regs, rest on stack. - // Alignment is willy-nilly. -- for( int i=0; i<total_args_passed; i++ ) { -- switch( sig_bt[i] ) { -+ for (int i = 0; i < total_args_passed; i++) { -+ switch (sig_bt[i]) { - case T_ADDRESS: // raw pointers, like current thread, for VM calls - case T_ARRAY: - case T_BOOLEAN: -@@ -1192,23 +1223,23 @@ - case T_OBJECT: - case T_METADATA: - case T_SHORT: -- regs[i].set1( int_stk_helper( i ) ); -+ regs[i].set1(int_stk_helper(i)); - break; - case T_DOUBLE: - case T_LONG: -- assert( sig_bt[i+1] == T_VOID, "expecting half" ); -- regs[i].set_pair( int_stk_helper( i+1 ), int_stk_helper( i ) ); -+ assert(sig_bt[i + 1] == T_VOID, "expecting half"); -+ regs[i].set_pair(int_stk_helper(i + 1), int_stk_helper(i)); - break; - case T_VOID: regs[i].set_bad(); break; - default: - ShouldNotReachHere(); - } - if (regs[i].first()->is_stack()) { -- int off = regs[i].first()->reg2stack(); -+ int off = regs[i].first()->reg2stack(); - if (off > max_stack_slots) max_stack_slots = off; - } - if (regs[i].second()->is_stack()) { -- int off = regs[i].second()->reg2stack(); -+ int off = regs[i].second()->reg2stack(); - if (off > max_stack_slots) max_stack_slots = off; - } - } -@@ -1357,11 +1388,10 @@ - const Register rOop = src.first()->as_Register(); - const Register rHandle = L5; - int oop_slot = rOop->input_number() * VMRegImpl::slots_per_word + oop_handle_offset; -- int offset = oop_slot*VMRegImpl::stack_slot_size; -- Label skip; -+ int offset = oop_slot * VMRegImpl::stack_slot_size; - __ st_ptr(rOop, SP, offset + STACK_BIAS); - if (is_receiver) { -- *receiver_offset = oop_slot * VMRegImpl::stack_slot_size; -+ *receiver_offset = offset; - } - map->set_oop(VMRegImpl::stack2reg(oop_slot)); - __ add(SP, offset + STACK_BIAS, rHandle); ---- ./hotspot/src/cpu/sparc/vm/sparc.ad Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/cpu/sparc/vm/sparc.ad Mon Dec 08 12:28:35 2014 -0800 -@@ -1989,7 +1989,7 @@ - // to implement the UseStrictFP mode. - const bool Matcher::strict_fp_requires_explicit_rounding = false; - --// Are floats conerted to double when stored to stack during deoptimization? -+// Are floats converted to double when stored to stack during deoptimization? - // Sparc does not handle callee-save floats. - bool Matcher::float_in_double() { return false; } - -@@ -3218,7 +3218,7 @@ - // are owned by the CALLEE. Holes should not be nessecary in the - // incoming area, as the Java calling convention is completely under - // the control of the AD file. Doubles can be sorted and packed to --// avoid holes. Holes in the outgoing arguments may be nessecary for -+// avoid holes. Holes in the outgoing arguments may be necessary for - // varargs C calling conventions. - // Note 3: Region 0-3 is even aligned, with pad2 as needed. Region 3-5 is - // even aligned with pad0 as needed. -@@ -3284,7 +3284,7 @@ - %} - - // Body of function which returns an OptoRegs array locating -- // arguments either in registers or in stack slots for callin -+ // arguments either in registers or in stack slots for calling - // C. - c_calling_convention %{ - // This is obviously always outgoing ---- ./hotspot/src/os/bsd/vm/perfMemory_bsd.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/os/bsd/vm/perfMemory_bsd.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -197,7 +197,38 @@ - } - - --// check if the given path is considered a secure directory for -+// Check if the given statbuf is considered a secure directory for -+// the backing store files. Returns true if the directory is considered -+// a secure location. Returns false if the statbuf is a symbolic link or -+// if an error occurred. -+// -+static bool is_statbuf_secure(struct stat *statp) { -+ if (S_ISLNK(statp->st_mode) || !S_ISDIR(statp->st_mode)) { -+ // The path represents a link or some non-directory file type, -+ // which is not what we expected. Declare it insecure. -+ // -+ return false; -+ } -+ // We have an existing directory, check if the permissions are safe. -+ // -+ if ((statp->st_mode & (S_IWGRP|S_IWOTH)) != 0) { -+ // The directory is open for writing and could be subjected -+ // to a symlink or a hard link attack. Declare it insecure. -+ // -+ return false; -+ } -+ // See if the uid of the directory matches the effective uid of the process. -+ // -+ if (statp->st_uid != geteuid()) { -+ // The directory was not created by this user, declare it insecure. -+ // -+ return false; -+ } -+ return true; -+} -+ -+ -+// Check if the given path is considered a secure directory for - // the backing store files. Returns true if the directory exists - // and is considered a secure location. Returns false if the path - // is a symbolic link or if an error occurred. -@@ -211,27 +242,185 @@ - return false; - } - -- // the path exists, now check it's mode -- if (S_ISLNK(statbuf.st_mode) || !S_ISDIR(statbuf.st_mode)) { -- // the path represents a link or some non-directory file type, -- // which is not what we expected. declare it insecure. -- // -+ // The path exists, see if it is secure. -+ return is_statbuf_secure(&statbuf); -+} -+ -+ -+// Check if the given directory file descriptor is considered a secure -+// directory for the backing store files. Returns true if the directory -+// exists and is considered a secure location. Returns false if the path -+// is a symbolic link or if an error occurred. -+// -+static bool is_dirfd_secure(int dir_fd) { -+ struct stat statbuf; -+ int result = 0; -+ -+ RESTARTABLE(::fstat(dir_fd, &statbuf), result); -+ if (result == OS_ERR) { - return false; - } -- else { -- // we have an existing directory, check if the permissions are safe. -- // -- if ((statbuf.st_mode & (S_IWGRP|S_IWOTH)) != 0) { -- // the directory is open for writing and could be subjected -- // to a symlnk attack. declare it insecure. -- // -- return false; -+ -+ // The path exists, now check its mode. -+ return is_statbuf_secure(&statbuf); -+} -+ -+ -+// Check to make sure fd1 and fd2 are referencing the same file system object. -+// -+static bool is_same_fsobject(int fd1, int fd2) { -+ struct stat statbuf1; -+ struct stat statbuf2; -+ int result = 0; -+ -+ RESTARTABLE(::fstat(fd1, &statbuf1), result); -+ if (result == OS_ERR) { -+ return false; -+ } -+ RESTARTABLE(::fstat(fd2, &statbuf2), result); -+ if (result == OS_ERR) { -+ return false; -+ } -+ -+ if ((statbuf1.st_ino == statbuf2.st_ino) && -+ (statbuf1.st_dev == statbuf2.st_dev)) { -+ return true; -+ } else { -+ return false; -+ } -+} -+ -+ -+// Open the directory of the given path and validate it. -+// Return a DIR * of the open directory. -+// -+static DIR *open_directory_secure(const char* dirname) { -+ // Open the directory using open() so that it can be verified -+ // to be secure by calling is_dirfd_secure(), opendir() and then check -+ // to see if they are the same file system object. This method does not -+ // introduce a window of opportunity for the directory to be attacked that -+ // calling opendir() and is_directory_secure() does. -+ int result; -+ DIR *dirp = NULL; -+ RESTARTABLE(::open(dirname, O_RDONLY|O_NOFOLLOW), result); -+ if (result == OS_ERR) { -+ // Directory doesn't exist or is a symlink, so there is nothing to cleanup. -+ if (PrintMiscellaneous && Verbose) { -+ if (errno == ELOOP) { -+ warning("directory %s is a symlink and is not secure\n", dirname); -+ } else { -+ warning("could not open directory %s: %s\n", dirname, strerror(errno)); -+ } - } -+ return dirp; -+ } -+ int fd = result; -+ -+ // Determine if the open directory is secure. -+ if (!is_dirfd_secure(fd)) { -+ // The directory is not a secure directory. -+ os::close(fd); -+ return dirp; -+ } -+ -+ // Open the directory. -+ dirp = ::opendir(dirname); -+ if (dirp == NULL) { -+ // The directory doesn't exist, close fd and return. -+ os::close(fd); -+ return dirp; -+ } -+ -+ // Check to make sure fd and dirp are referencing the same file system object. -+ if (!is_same_fsobject(fd, dirfd(dirp))) { -+ // The directory is not secure. -+ os::close(fd); -+ os::closedir(dirp); -+ dirp = NULL; -+ return dirp; -+ } -+ -+ // Close initial open now that we know directory is secure -+ os::close(fd); -+ -+ return dirp; -+} -+ -+// NOTE: The code below uses fchdir(), open() and unlink() because -+// fdopendir(), openat() and unlinkat() are not supported on all -+// versions. Once the support for fdopendir(), openat() and unlinkat() -+// is available on all supported versions the code can be changed -+// to use these functions. -+ -+// Open the directory of the given path, validate it and set the -+// current working directory to it. -+// Return a DIR * of the open directory and the saved cwd fd. -+// -+static DIR *open_directory_secure_cwd(const char* dirname, int *saved_cwd_fd) { -+ -+ // Open the directory. -+ DIR* dirp = open_directory_secure(dirname); -+ if (dirp == NULL) { -+ // Directory doesn't exist or is insecure, so there is nothing to cleanup. -+ return dirp; -+ } -+ int fd = dirfd(dirp); -+ -+ // Open a fd to the cwd and save it off. -+ int result; -+ RESTARTABLE(::open(".", O_RDONLY), result); -+ if (result == OS_ERR) { -+ *saved_cwd_fd = -1; -+ } else { -+ *saved_cwd_fd = result; -+ } -+ -+ // Set the current directory to dirname by using the fd of the directory. -+ result = fchdir(fd); -+ -+ return dirp; -+} -+ -+// Close the directory and restore the current working directory. -+// -+static void close_directory_secure_cwd(DIR* dirp, int saved_cwd_fd) { -+ -+ int result; -+ // If we have a saved cwd change back to it and close the fd. -+ if (saved_cwd_fd != -1) { -+ result = fchdir(saved_cwd_fd); -+ ::close(saved_cwd_fd); -+ } -+ -+ // Close the directory. -+ os::closedir(dirp); -+} -+ -+// Check if the given file descriptor is considered a secure. -+// -+static bool is_file_secure(int fd, const char *filename) { -+ -+ int result; -+ struct stat statbuf; -+ -+ // Determine if the file is secure. -+ RESTARTABLE(::fstat(fd, &statbuf), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ warning("fstat failed on %s: %s\n", filename, strerror(errno)); -+ } -+ return false; -+ } -+ if (statbuf.st_nlink > 1) { -+ // A file with multiple links is not expected. -+ if (PrintMiscellaneous && Verbose) { -+ warning("file %s has multiple links\n", filename); -+ } -+ return false; - } - return true; - } - -- - // return the user name for the given user id - // - // the caller is expected to free the allocated memory. -@@ -317,9 +506,11 @@ - - const char* tmpdirname = os::get_temp_directory(); - -+ // open the temp directory - DIR* tmpdirp = os::opendir(tmpdirname); - - if (tmpdirp == NULL) { -+ // Cannot open the directory to get the user name, return. - return NULL; - } - -@@ -344,25 +535,14 @@ - strcat(usrdir_name, "/"); - strcat(usrdir_name, dentry->d_name); - -- DIR* subdirp = os::opendir(usrdir_name); -+ // open the user directory -+ DIR* subdirp = open_directory_secure(usrdir_name); - - if (subdirp == NULL) { - FREE_C_HEAP_ARRAY(char, usrdir_name, mtInternal); - continue; - } - -- // Since we don't create the backing store files in directories -- // pointed to by symbolic links, we also don't follow them when -- // looking for the files. We check for a symbolic link after the -- // call to opendir in order to eliminate a small window where the -- // symlink can be exploited. -- // -- if (!is_directory_secure(usrdir_name)) { -- FREE_C_HEAP_ARRAY(char, usrdir_name, mtInternal); -- os::closedir(subdirp); -- continue; -- } -- - struct dirent* udentry; - char* udbuf = NEW_C_HEAP_ARRAY(char, os::readdir_buf_size(usrdir_name), mtInternal); - errno = 0; -@@ -465,26 +645,6 @@ - } - - --// remove file --// --// this method removes the file with the given file name in the --// named directory. --// --static void remove_file(const char* dirname, const char* filename) { -- -- size_t nbytes = strlen(dirname) + strlen(filename) + 2; -- char* path = NEW_C_HEAP_ARRAY(char, nbytes, mtInternal); -- -- strcpy(path, dirname); -- strcat(path, "/"); -- strcat(path, filename); -- -- remove_file(path); -- -- FREE_C_HEAP_ARRAY(char, path, mtInternal); --} -- -- - // cleanup stale shared memory resources - // - // This method attempts to remove all stale shared memory files in -@@ -496,16 +656,11 @@ - // - static void cleanup_sharedmem_resources(const char* dirname) { - -- // open the user temp directory -- DIR* dirp = os::opendir(dirname); -- -+ int saved_cwd_fd; -+ // open the directory and set the current working directory to it -+ DIR* dirp = open_directory_secure_cwd(dirname, &saved_cwd_fd); - if (dirp == NULL) { -- // directory doesn't exist, so there is nothing to cleanup -- return; -- } -- -- if (!is_directory_secure(dirname)) { -- // the directory is not a secure directory -+ // directory doesn't exist or is insecure, so there is nothing to cleanup - return; - } - -@@ -519,6 +674,7 @@ - // - struct dirent* entry; - char* dbuf = NEW_C_HEAP_ARRAY(char, os::readdir_buf_size(dirname), mtInternal); -+ - errno = 0; - while ((entry = os::readdir(dirp, (struct dirent *)dbuf)) != NULL) { - -@@ -529,7 +685,7 @@ - if (strcmp(entry->d_name, ".") != 0 && strcmp(entry->d_name, "..") != 0) { - - // attempt to remove all unexpected files, except "." and ".." -- remove_file(dirname, entry->d_name); -+ unlink(entry->d_name); - } - - errno = 0; -@@ -552,11 +708,14 @@ - if ((pid == os::current_process_id()) || - (kill(pid, 0) == OS_ERR && (errno == ESRCH || errno == EPERM))) { - -- remove_file(dirname, entry->d_name); -+ unlink(entry->d_name); - } - errno = 0; - } -- os::closedir(dirp); -+ -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); -+ - FREE_C_HEAP_ARRAY(char, dbuf, mtInternal); - } - -@@ -613,19 +772,54 @@ - return -1; - } - -+ int saved_cwd_fd; -+ // open the directory and set the current working directory to it -+ DIR* dirp = open_directory_secure_cwd(dirname, &saved_cwd_fd); -+ if (dirp == NULL) { -+ // Directory doesn't exist or is insecure, so cannot create shared -+ // memory file. -+ return -1; -+ } -+ -+ // Open the filename in the current directory. -+ // Cannot use O_TRUNC here; truncation of an existing file has to happen -+ // after the is_file_secure() check below. - int result; -- -- RESTARTABLE(::open(filename, O_RDWR|O_CREAT|O_TRUNC, S_IREAD|S_IWRITE), result); -+ RESTARTABLE(::open(filename, O_RDWR|O_CREAT|O_NOFOLLOW, S_IREAD|S_IWRITE), result); - if (result == OS_ERR) { - if (PrintMiscellaneous && Verbose) { -- warning("could not create file %s: %s\n", filename, strerror(errno)); -+ if (errno == ELOOP) { -+ warning("file %s is a symlink and is not secure\n", filename); -+ } else { -+ warning("could not create file %s: %s\n", filename, strerror(errno)); -+ } - } -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); -+ - return -1; - } -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); - - // save the file descriptor - int fd = result; - -+ // check to see if the file is secure -+ if (!is_file_secure(fd, filename)) { -+ ::close(fd); -+ return -1; -+ } -+ -+ // truncate the file to get rid of any existing data -+ RESTARTABLE(::ftruncate(fd, (off_t)0), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ warning("could not truncate shared memory file: %s\n", strerror(errno)); -+ } -+ ::close(fd); -+ return -1; -+ } - // set the file size - RESTARTABLE(::ftruncate(fd, (off_t)size), result); - if (result == OS_ERR) { -@@ -683,8 +877,15 @@ - THROW_MSG_(vmSymbols::java_io_IOException(), strerror(errno), OS_ERR); - } - } -+ int fd = result; - -- return result; -+ // check to see if the file is secure -+ if (!is_file_secure(fd, filename)) { -+ ::close(fd); -+ return -1; -+ } -+ -+ return fd; - } - - // create a named shared memory region. returns the address of the -@@ -716,13 +917,21 @@ - char* dirname = get_user_tmp_dir(user_name); - char* filename = get_sharedmem_filename(dirname, vmid); - -+ // get the short filename -+ char* short_filename = strrchr(filename, '/'); -+ if (short_filename == NULL) { -+ short_filename = filename; -+ } else { -+ short_filename++; -+ } -+ - // cleanup any stale shared memory files - cleanup_sharedmem_resources(dirname); - - assert(((size > 0) && (size % os::vm_page_size() == 0)), - "unexpected PerfMemory region size"); - -- fd = create_sharedmem_resources(dirname, filename, size); -+ fd = create_sharedmem_resources(dirname, short_filename, size); - - FREE_C_HEAP_ARRAY(char, user_name, mtInternal); - FREE_C_HEAP_ARRAY(char, dirname, mtInternal); -@@ -837,12 +1046,12 @@ - // constructs for the file and the shared memory mapping. - if (mode == PerfMemory::PERF_MODE_RO) { - mmap_prot = PROT_READ; -- file_flags = O_RDONLY; -+ file_flags = O_RDONLY | O_NOFOLLOW; - } - else if (mode == PerfMemory::PERF_MODE_RW) { - #ifdef LATER - mmap_prot = PROT_READ | PROT_WRITE; -- file_flags = O_RDWR; -+ file_flags = O_RDWR | O_NOFOLLOW; - #else - THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(), - "Unsupported access mode"); ---- ./hotspot/src/os/linux/vm/perfMemory_linux.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/os/linux/vm/perfMemory_linux.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -197,7 +197,38 @@ - } - - --// check if the given path is considered a secure directory for -+// Check if the given statbuf is considered a secure directory for -+// the backing store files. Returns true if the directory is considered -+// a secure location. Returns false if the statbuf is a symbolic link or -+// if an error occurred. -+// -+static bool is_statbuf_secure(struct stat *statp) { -+ if (S_ISLNK(statp->st_mode) || !S_ISDIR(statp->st_mode)) { -+ // The path represents a link or some non-directory file type, -+ // which is not what we expected. Declare it insecure. -+ // -+ return false; -+ } -+ // We have an existing directory, check if the permissions are safe. -+ // -+ if ((statp->st_mode & (S_IWGRP|S_IWOTH)) != 0) { -+ // The directory is open for writing and could be subjected -+ // to a symlink or a hard link attack. Declare it insecure. -+ // -+ return false; -+ } -+ // See if the uid of the directory matches the effective uid of the process. -+ // -+ if (statp->st_uid != geteuid()) { -+ // The directory was not created by this user, declare it insecure. -+ // -+ return false; -+ } -+ return true; -+} -+ -+ -+// Check if the given path is considered a secure directory for - // the backing store files. Returns true if the directory exists - // and is considered a secure location. Returns false if the path - // is a symbolic link or if an error occurred. -@@ -211,22 +242,180 @@ - return false; - } - -- // the path exists, now check it's mode -- if (S_ISLNK(statbuf.st_mode) || !S_ISDIR(statbuf.st_mode)) { -- // the path represents a link or some non-directory file type, -- // which is not what we expected. declare it insecure. -- // -+ // The path exists, see if it is secure. -+ return is_statbuf_secure(&statbuf); -+} -+ -+ -+// Check if the given directory file descriptor is considered a secure -+// directory for the backing store files. Returns true if the directory -+// exists and is considered a secure location. Returns false if the path -+// is a symbolic link or if an error occurred. -+// -+static bool is_dirfd_secure(int dir_fd) { -+ struct stat statbuf; -+ int result = 0; -+ -+ RESTARTABLE(::fstat(dir_fd, &statbuf), result); -+ if (result == OS_ERR) { - return false; - } -- else { -- // we have an existing directory, check if the permissions are safe. -- // -- if ((statbuf.st_mode & (S_IWGRP|S_IWOTH)) != 0) { -- // the directory is open for writing and could be subjected -- // to a symlnk attack. declare it insecure. -- // -- return false; -+ -+ // The path exists, now check its mode. -+ return is_statbuf_secure(&statbuf); -+} -+ -+ -+// Check to make sure fd1 and fd2 are referencing the same file system object. -+// -+static bool is_same_fsobject(int fd1, int fd2) { -+ struct stat statbuf1; -+ struct stat statbuf2; -+ int result = 0; -+ -+ RESTARTABLE(::fstat(fd1, &statbuf1), result); -+ if (result == OS_ERR) { -+ return false; -+ } -+ RESTARTABLE(::fstat(fd2, &statbuf2), result); -+ if (result == OS_ERR) { -+ return false; -+ } -+ -+ if ((statbuf1.st_ino == statbuf2.st_ino) && -+ (statbuf1.st_dev == statbuf2.st_dev)) { -+ return true; -+ } else { -+ return false; -+ } -+} -+ -+ -+// Open the directory of the given path and validate it. -+// Return a DIR * of the open directory. -+// -+static DIR *open_directory_secure(const char* dirname) { -+ // Open the directory using open() so that it can be verified -+ // to be secure by calling is_dirfd_secure(), opendir() and then check -+ // to see if they are the same file system object. This method does not -+ // introduce a window of opportunity for the directory to be attacked that -+ // calling opendir() and is_directory_secure() does. -+ int result; -+ DIR *dirp = NULL; -+ RESTARTABLE(::open(dirname, O_RDONLY|O_NOFOLLOW), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ if (errno == ELOOP) { -+ warning("directory %s is a symlink and is not secure\n", dirname); -+ } else { -+ warning("could not open directory %s: %s\n", dirname, strerror(errno)); -+ } - } -+ return dirp; -+ } -+ int fd = result; -+ -+ // Determine if the open directory is secure. -+ if (!is_dirfd_secure(fd)) { -+ // The directory is not a secure directory. -+ os::close(fd); -+ return dirp; -+ } -+ -+ // Open the directory. -+ dirp = ::opendir(dirname); -+ if (dirp == NULL) { -+ // The directory doesn't exist, close fd and return. -+ os::close(fd); -+ return dirp; -+ } -+ -+ // Check to make sure fd and dirp are referencing the same file system object. -+ if (!is_same_fsobject(fd, dirfd(dirp))) { -+ // The directory is not secure. -+ os::close(fd); -+ os::closedir(dirp); -+ dirp = NULL; -+ return dirp; -+ } -+ -+ // Close initial open now that we know directory is secure -+ os::close(fd); -+ -+ return dirp; -+} -+ -+// NOTE: The code below uses fchdir(), open() and unlink() because -+// fdopendir(), openat() and unlinkat() are not supported on all -+// versions. Once the support for fdopendir(), openat() and unlinkat() -+// is available on all supported versions the code can be changed -+// to use these functions. -+ -+// Open the directory of the given path, validate it and set the -+// current working directory to it. -+// Return a DIR * of the open directory and the saved cwd fd. -+// -+static DIR *open_directory_secure_cwd(const char* dirname, int *saved_cwd_fd) { -+ -+ // Open the directory. -+ DIR* dirp = open_directory_secure(dirname); -+ if (dirp == NULL) { -+ // Directory doesn't exist or is insecure, so there is nothing to cleanup. -+ return dirp; -+ } -+ int fd = dirfd(dirp); -+ -+ // Open a fd to the cwd and save it off. -+ int result; -+ RESTARTABLE(::open(".", O_RDONLY), result); -+ if (result == OS_ERR) { -+ *saved_cwd_fd = -1; -+ } else { -+ *saved_cwd_fd = result; -+ } -+ -+ // Set the current directory to dirname by using the fd of the directory. -+ result = fchdir(fd); -+ -+ return dirp; -+} -+ -+// Close the directory and restore the current working directory. -+// -+static void close_directory_secure_cwd(DIR* dirp, int saved_cwd_fd) { -+ -+ int result; -+ // If we have a saved cwd change back to it and close the fd. -+ if (saved_cwd_fd != -1) { -+ result = fchdir(saved_cwd_fd); -+ ::close(saved_cwd_fd); -+ } -+ -+ // Close the directory. -+ os::closedir(dirp); -+} -+ -+// Check if the given file descriptor is considered a secure. -+// -+static bool is_file_secure(int fd, const char *filename) { -+ -+ int result; -+ struct stat statbuf; -+ -+ // Determine if the file is secure. -+ RESTARTABLE(::fstat(fd, &statbuf), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ warning("fstat failed on %s: %s\n", filename, strerror(errno)); -+ } -+ return false; -+ } -+ if (statbuf.st_nlink > 1) { -+ // A file with multiple links is not expected. -+ if (PrintMiscellaneous && Verbose) { -+ warning("file %s has multiple links\n", filename); -+ } -+ return false; - } - return true; - } -@@ -317,9 +506,11 @@ - - const char* tmpdirname = os::get_temp_directory(); - -+ // open the temp directory - DIR* tmpdirp = os::opendir(tmpdirname); - - if (tmpdirp == NULL) { -+ // Cannot open the directory to get the user name, return. - return NULL; - } - -@@ -344,7 +535,8 @@ - strcat(usrdir_name, "/"); - strcat(usrdir_name, dentry->d_name); - -- DIR* subdirp = os::opendir(usrdir_name); -+ // open the user directory -+ DIR* subdirp = open_directory_secure(usrdir_name); - - if (subdirp == NULL) { - FREE_C_HEAP_ARRAY(char, usrdir_name, mtInternal); -@@ -465,26 +657,6 @@ - } - - --// remove file --// --// this method removes the file with the given file name in the --// named directory. --// --static void remove_file(const char* dirname, const char* filename) { -- -- size_t nbytes = strlen(dirname) + strlen(filename) + 2; -- char* path = NEW_C_HEAP_ARRAY(char, nbytes, mtInternal); -- -- strcpy(path, dirname); -- strcat(path, "/"); -- strcat(path, filename); -- -- remove_file(path); -- -- FREE_C_HEAP_ARRAY(char, path, mtInternal); --} -- -- - // cleanup stale shared memory resources - // - // This method attempts to remove all stale shared memory files in -@@ -496,16 +668,11 @@ - // - static void cleanup_sharedmem_resources(const char* dirname) { - -- // open the user temp directory -- DIR* dirp = os::opendir(dirname); -- -+ int saved_cwd_fd; -+ // open the directory -+ DIR* dirp = open_directory_secure_cwd(dirname, &saved_cwd_fd); - if (dirp == NULL) { -- // directory doesn't exist, so there is nothing to cleanup -- return; -- } -- -- if (!is_directory_secure(dirname)) { -- // the directory is not a secure directory -+ // directory doesn't exist or is insecure, so there is nothing to cleanup - return; - } - -@@ -519,6 +686,7 @@ - // - struct dirent* entry; - char* dbuf = NEW_C_HEAP_ARRAY(char, os::readdir_buf_size(dirname), mtInternal); -+ - errno = 0; - while ((entry = os::readdir(dirp, (struct dirent *)dbuf)) != NULL) { - -@@ -527,9 +695,8 @@ - if (pid == 0) { - - if (strcmp(entry->d_name, ".") != 0 && strcmp(entry->d_name, "..") != 0) { -- - // attempt to remove all unexpected files, except "." and ".." -- remove_file(dirname, entry->d_name); -+ unlink(entry->d_name); - } - - errno = 0; -@@ -551,12 +718,14 @@ - // - if ((pid == os::current_process_id()) || - (kill(pid, 0) == OS_ERR && (errno == ESRCH || errno == EPERM))) { -- -- remove_file(dirname, entry->d_name); -+ unlink(entry->d_name); - } - errno = 0; - } -- os::closedir(dirp); -+ -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); -+ - FREE_C_HEAP_ARRAY(char, dbuf, mtInternal); - } - -@@ -613,19 +782,54 @@ - return -1; - } - -+ int saved_cwd_fd; -+ // open the directory and set the current working directory to it -+ DIR* dirp = open_directory_secure_cwd(dirname, &saved_cwd_fd); -+ if (dirp == NULL) { -+ // Directory doesn't exist or is insecure, so cannot create shared -+ // memory file. -+ return -1; -+ } -+ -+ // Open the filename in the current directory. -+ // Cannot use O_TRUNC here; truncation of an existing file has to happen -+ // after the is_file_secure() check below. - int result; -- -- RESTARTABLE(::open(filename, O_RDWR|O_CREAT|O_TRUNC, S_IREAD|S_IWRITE), result); -+ RESTARTABLE(::open(filename, O_RDWR|O_CREAT|O_NOFOLLOW, S_IREAD|S_IWRITE), result); - if (result == OS_ERR) { - if (PrintMiscellaneous && Verbose) { -- warning("could not create file %s: %s\n", filename, strerror(errno)); -+ if (errno == ELOOP) { -+ warning("file %s is a symlink and is not secure\n", filename); -+ } else { -+ warning("could not create file %s: %s\n", filename, strerror(errno)); -+ } - } -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); -+ - return -1; - } -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); - - // save the file descriptor - int fd = result; - -+ // check to see if the file is secure -+ if (!is_file_secure(fd, filename)) { -+ ::close(fd); -+ return -1; -+ } -+ -+ // truncate the file to get rid of any existing data -+ RESTARTABLE(::ftruncate(fd, (off_t)0), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ warning("could not truncate shared memory file: %s\n", strerror(errno)); -+ } -+ ::close(fd); -+ return -1; -+ } - // set the file size - RESTARTABLE(::ftruncate(fd, (off_t)size), result); - if (result == OS_ERR) { -@@ -683,8 +887,15 @@ - THROW_MSG_(vmSymbols::java_io_IOException(), strerror(errno), OS_ERR); - } - } -+ int fd = result; - -- return result; -+ // check to see if the file is secure -+ if (!is_file_secure(fd, filename)) { -+ ::close(fd); -+ return -1; -+ } -+ -+ return fd; - } - - // create a named shared memory region. returns the address of the -@@ -715,6 +926,13 @@ - - char* dirname = get_user_tmp_dir(user_name); - char* filename = get_sharedmem_filename(dirname, vmid); -+ // get the short filename -+ char* short_filename = strrchr(filename, '/'); -+ if (short_filename == NULL) { -+ short_filename = filename; -+ } else { -+ short_filename++; -+ } - - // cleanup any stale shared memory files - cleanup_sharedmem_resources(dirname); -@@ -722,7 +940,7 @@ - assert(((size > 0) && (size % os::vm_page_size() == 0)), - "unexpected PerfMemory region size"); - -- fd = create_sharedmem_resources(dirname, filename, size); -+ fd = create_sharedmem_resources(dirname, short_filename, size); - - FREE_C_HEAP_ARRAY(char, user_name, mtInternal); - FREE_C_HEAP_ARRAY(char, dirname, mtInternal); -@@ -837,12 +1055,12 @@ - // constructs for the file and the shared memory mapping. - if (mode == PerfMemory::PERF_MODE_RO) { - mmap_prot = PROT_READ; -- file_flags = O_RDONLY; -+ file_flags = O_RDONLY | O_NOFOLLOW; - } - else if (mode == PerfMemory::PERF_MODE_RW) { - #ifdef LATER - mmap_prot = PROT_READ | PROT_WRITE; -- file_flags = O_RDWR; -+ file_flags = O_RDWR | O_NOFOLLOW; - #else - THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(), - "Unsupported access mode"); ---- ./hotspot/src/os/solaris/vm/perfMemory_solaris.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/os/solaris/vm/perfMemory_solaris.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -199,7 +199,38 @@ - } - - --// check if the given path is considered a secure directory for -+// Check if the given statbuf is considered a secure directory for -+// the backing store files. Returns true if the directory is considered -+// a secure location. Returns false if the statbuf is a symbolic link or -+// if an error occurred. -+// -+static bool is_statbuf_secure(struct stat *statp) { -+ if (S_ISLNK(statp->st_mode) || !S_ISDIR(statp->st_mode)) { -+ // The path represents a link or some non-directory file type, -+ // which is not what we expected. Declare it insecure. -+ // -+ return false; -+ } -+ // We have an existing directory, check if the permissions are safe. -+ // -+ if ((statp->st_mode & (S_IWGRP|S_IWOTH)) != 0) { -+ // The directory is open for writing and could be subjected -+ // to a symlink or a hard link attack. Declare it insecure. -+ // -+ return false; -+ } -+ // See if the uid of the directory matches the effective uid of the process. -+ // -+ if (statp->st_uid != geteuid()) { -+ // The directory was not created by this user, declare it insecure. -+ // -+ return false; -+ } -+ return true; -+} -+ -+ -+// Check if the given path is considered a secure directory for - // the backing store files. Returns true if the directory exists - // and is considered a secure location. Returns false if the path - // is a symbolic link or if an error occurred. -@@ -213,27 +244,185 @@ - return false; - } - -- // the path exists, now check it's mode -- if (S_ISLNK(statbuf.st_mode) || !S_ISDIR(statbuf.st_mode)) { -- // the path represents a link or some non-directory file type, -- // which is not what we expected. declare it insecure. -- // -+ // The path exists, see if it is secure. -+ return is_statbuf_secure(&statbuf); -+} -+ -+ -+// Check if the given directory file descriptor is considered a secure -+// directory for the backing store files. Returns true if the directory -+// exists and is considered a secure location. Returns false if the path -+// is a symbolic link or if an error occurred. -+// -+static bool is_dirfd_secure(int dir_fd) { -+ struct stat statbuf; -+ int result = 0; -+ -+ RESTARTABLE(::fstat(dir_fd, &statbuf), result); -+ if (result == OS_ERR) { - return false; - } -- else { -- // we have an existing directory, check if the permissions are safe. -- // -- if ((statbuf.st_mode & (S_IWGRP|S_IWOTH)) != 0) { -- // the directory is open for writing and could be subjected -- // to a symlnk attack. declare it insecure. -- // -- return false; -+ -+ // The path exists, now check its mode. -+ return is_statbuf_secure(&statbuf); -+} -+ -+ -+// Check to make sure fd1 and fd2 are referencing the same file system object. -+// -+static bool is_same_fsobject(int fd1, int fd2) { -+ struct stat statbuf1; -+ struct stat statbuf2; -+ int result = 0; -+ -+ RESTARTABLE(::fstat(fd1, &statbuf1), result); -+ if (result == OS_ERR) { -+ return false; -+ } -+ RESTARTABLE(::fstat(fd2, &statbuf2), result); -+ if (result == OS_ERR) { -+ return false; -+ } -+ -+ if ((statbuf1.st_ino == statbuf2.st_ino) && -+ (statbuf1.st_dev == statbuf2.st_dev)) { -+ return true; -+ } else { -+ return false; -+ } -+} -+ -+ -+// Open the directory of the given path and validate it. -+// Return a DIR * of the open directory. -+// -+static DIR *open_directory_secure(const char* dirname) { -+ // Open the directory using open() so that it can be verified -+ // to be secure by calling is_dirfd_secure(), opendir() and then check -+ // to see if they are the same file system object. This method does not -+ // introduce a window of opportunity for the directory to be attacked that -+ // calling opendir() and is_directory_secure() does. -+ int result; -+ DIR *dirp = NULL; -+ RESTARTABLE(::open(dirname, O_RDONLY|O_NOFOLLOW), result); -+ if (result == OS_ERR) { -+ // Directory doesn't exist or is a symlink, so there is nothing to cleanup. -+ if (PrintMiscellaneous && Verbose) { -+ if (errno == ELOOP) { -+ warning("directory %s is a symlink and is not secure\n", dirname); -+ } else { -+ warning("could not open directory %s: %s\n", dirname, strerror(errno)); -+ } - } -+ return dirp; -+ } -+ int fd = result; -+ -+ // Determine if the open directory is secure. -+ if (!is_dirfd_secure(fd)) { -+ // The directory is not a secure directory. -+ os::close(fd); -+ return dirp; -+ } -+ -+ // Open the directory. -+ dirp = ::opendir(dirname); -+ if (dirp == NULL) { -+ // The directory doesn't exist, close fd and return. -+ os::close(fd); -+ return dirp; -+ } -+ -+ // Check to make sure fd and dirp are referencing the same file system object. -+ if (!is_same_fsobject(fd, dirp->dd_fd)) { -+ // The directory is not secure. -+ os::close(fd); -+ os::closedir(dirp); -+ dirp = NULL; -+ return dirp; -+ } -+ -+ // Close initial open now that we know directory is secure -+ os::close(fd); -+ -+ return dirp; -+} -+ -+// NOTE: The code below uses fchdir(), open() and unlink() because -+// fdopendir(), openat() and unlinkat() are not supported on all -+// versions. Once the support for fdopendir(), openat() and unlinkat() -+// is available on all supported versions the code can be changed -+// to use these functions. -+ -+// Open the directory of the given path, validate it and set the -+// current working directory to it. -+// Return a DIR * of the open directory and the saved cwd fd. -+// -+static DIR *open_directory_secure_cwd(const char* dirname, int *saved_cwd_fd) { -+ -+ // Open the directory. -+ DIR* dirp = open_directory_secure(dirname); -+ if (dirp == NULL) { -+ // Directory doesn't exist or is insecure, so there is nothing to cleanup. -+ return dirp; -+ } -+ int fd = dirp->dd_fd; -+ -+ // Open a fd to the cwd and save it off. -+ int result; -+ RESTARTABLE(::open(".", O_RDONLY), result); -+ if (result == OS_ERR) { -+ *saved_cwd_fd = -1; -+ } else { -+ *saved_cwd_fd = result; -+ } -+ -+ // Set the current directory to dirname by using the fd of the directory. -+ result = fchdir(fd); -+ -+ return dirp; -+} -+ -+// Close the directory and restore the current working directory. -+// -+static void close_directory_secure_cwd(DIR* dirp, int saved_cwd_fd) { -+ -+ int result; -+ // If we have a saved cwd change back to it and close the fd. -+ if (saved_cwd_fd != -1) { -+ result = fchdir(saved_cwd_fd); -+ ::close(saved_cwd_fd); -+ } -+ -+ // Close the directory. -+ os::closedir(dirp); -+} -+ -+// Check if the given file descriptor is considered a secure. -+// -+static bool is_file_secure(int fd, const char *filename) { -+ -+ int result; -+ struct stat statbuf; -+ -+ // Determine if the file is secure. -+ RESTARTABLE(::fstat(fd, &statbuf), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ warning("fstat failed on %s: %s\n", filename, strerror(errno)); -+ } -+ return false; -+ } -+ if (statbuf.st_nlink > 1) { -+ // A file with multiple links is not expected. -+ if (PrintMiscellaneous && Verbose) { -+ warning("file %s has multiple links\n", filename); -+ } -+ return false; - } - return true; - } - -- - // return the user name for the given user id - // - // the caller is expected to free the allocated memory. -@@ -308,9 +497,11 @@ - - const char* tmpdirname = os::get_temp_directory(); - -+ // open the temp directory - DIR* tmpdirp = os::opendir(tmpdirname); - - if (tmpdirp == NULL) { -+ // Cannot open the directory to get the user name, return. - return NULL; - } - -@@ -335,7 +526,8 @@ - strcat(usrdir_name, "/"); - strcat(usrdir_name, dentry->d_name); - -- DIR* subdirp = os::opendir(usrdir_name); -+ // open the user directory -+ DIR* subdirp = open_directory_secure(usrdir_name); - - if (subdirp == NULL) { - FREE_C_HEAP_ARRAY(char, usrdir_name, mtInternal); -@@ -504,26 +696,6 @@ - } - - --// remove file --// --// this method removes the file with the given file name in the --// named directory. --// --static void remove_file(const char* dirname, const char* filename) { -- -- size_t nbytes = strlen(dirname) + strlen(filename) + 2; -- char* path = NEW_C_HEAP_ARRAY(char, nbytes, mtInternal); -- -- strcpy(path, dirname); -- strcat(path, "/"); -- strcat(path, filename); -- -- remove_file(path); -- -- FREE_C_HEAP_ARRAY(char, path, mtInternal); --} -- -- - // cleanup stale shared memory resources - // - // This method attempts to remove all stale shared memory files in -@@ -535,16 +707,11 @@ - // - static void cleanup_sharedmem_resources(const char* dirname) { - -- // open the user temp directory -- DIR* dirp = os::opendir(dirname); -- -+ int saved_cwd_fd; -+ // open the directory -+ DIR* dirp = open_directory_secure_cwd(dirname, &saved_cwd_fd); - if (dirp == NULL) { -- // directory doesn't exist, so there is nothing to cleanup -- return; -- } -- -- if (!is_directory_secure(dirname)) { -- // the directory is not a secure directory -+ // directory doesn't exist or is insecure, so there is nothing to cleanup - return; - } - -@@ -558,6 +725,7 @@ - // - struct dirent* entry; - char* dbuf = NEW_C_HEAP_ARRAY(char, os::readdir_buf_size(dirname), mtInternal); -+ - errno = 0; - while ((entry = os::readdir(dirp, (struct dirent *)dbuf)) != NULL) { - -@@ -568,7 +736,7 @@ - if (strcmp(entry->d_name, ".") != 0 && strcmp(entry->d_name, "..") != 0) { - - // attempt to remove all unexpected files, except "." and ".." -- remove_file(dirname, entry->d_name); -+ unlink(entry->d_name); - } - - errno = 0; -@@ -591,11 +759,14 @@ - if ((pid == os::current_process_id()) || - (kill(pid, 0) == OS_ERR && (errno == ESRCH || errno == EPERM))) { - -- remove_file(dirname, entry->d_name); -+ unlink(entry->d_name); - } - errno = 0; - } -- os::closedir(dirp); -+ -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); -+ - FREE_C_HEAP_ARRAY(char, dbuf, mtInternal); - } - -@@ -652,19 +823,54 @@ - return -1; - } - -+ int saved_cwd_fd; -+ // open the directory and set the current working directory to it -+ DIR* dirp = open_directory_secure_cwd(dirname, &saved_cwd_fd); -+ if (dirp == NULL) { -+ // Directory doesn't exist or is insecure, so cannot create shared -+ // memory file. -+ return -1; -+ } -+ -+ // Open the filename in the current directory. -+ // Cannot use O_TRUNC here; truncation of an existing file has to happen -+ // after the is_file_secure() check below. - int result; -- -- RESTARTABLE(::open(filename, O_RDWR|O_CREAT|O_TRUNC, S_IREAD|S_IWRITE), result); -+ RESTARTABLE(::open(filename, O_RDWR|O_CREAT|O_NOFOLLOW, S_IREAD|S_IWRITE), result); - if (result == OS_ERR) { - if (PrintMiscellaneous && Verbose) { -- warning("could not create file %s: %s\n", filename, strerror(errno)); -+ if (errno == ELOOP) { -+ warning("file %s is a symlink and is not secure\n", filename); -+ } else { -+ warning("could not create file %s: %s\n", filename, strerror(errno)); -+ } - } -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); -+ - return -1; - } -+ // close the directory and reset the current working directory -+ close_directory_secure_cwd(dirp, saved_cwd_fd); - - // save the file descriptor - int fd = result; - -+ // check to see if the file is secure -+ if (!is_file_secure(fd, filename)) { -+ ::close(fd); -+ return -1; -+ } -+ -+ // truncate the file to get rid of any existing data -+ RESTARTABLE(::ftruncate(fd, (off_t)0), result); -+ if (result == OS_ERR) { -+ if (PrintMiscellaneous && Verbose) { -+ warning("could not truncate shared memory file: %s\n", strerror(errno)); -+ } -+ ::close(fd); -+ return -1; -+ } - // set the file size - RESTARTABLE(::ftruncate(fd, (off_t)size), result); - if (result == OS_ERR) { -@@ -700,8 +906,15 @@ - THROW_MSG_(vmSymbols::java_io_IOException(), strerror(errno), OS_ERR); - } - } -+ int fd = result; - -- return result; -+ // check to see if the file is secure -+ if (!is_file_secure(fd, filename)) { -+ ::close(fd); -+ return -1; -+ } -+ -+ return fd; - } - - // create a named shared memory region. returns the address of the -@@ -733,13 +946,21 @@ - char* dirname = get_user_tmp_dir(user_name); - char* filename = get_sharedmem_filename(dirname, vmid); - -+ // get the short filename -+ char* short_filename = strrchr(filename, '/'); -+ if (short_filename == NULL) { -+ short_filename = filename; -+ } else { -+ short_filename++; -+ } -+ - // cleanup any stale shared memory files - cleanup_sharedmem_resources(dirname); - - assert(((size > 0) && (size % os::vm_page_size() == 0)), - "unexpected PerfMemory region size"); - -- fd = create_sharedmem_resources(dirname, filename, size); -+ fd = create_sharedmem_resources(dirname, short_filename, size); - - FREE_C_HEAP_ARRAY(char, user_name, mtInternal); - FREE_C_HEAP_ARRAY(char, dirname, mtInternal); -@@ -854,12 +1075,12 @@ - // constructs for the file and the shared memory mapping. - if (mode == PerfMemory::PERF_MODE_RO) { - mmap_prot = PROT_READ; -- file_flags = O_RDONLY; -+ file_flags = O_RDONLY | O_NOFOLLOW; - } - else if (mode == PerfMemory::PERF_MODE_RW) { - #ifdef LATER - mmap_prot = PROT_READ | PROT_WRITE; -- file_flags = O_RDWR; -+ file_flags = O_RDWR | O_NOFOLLOW; - #else - THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(), - "Unsupported access mode"); ---- ./hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -909,7 +909,7 @@ - */ - char* hint = (char*) (Linux::initial_thread_stack_bottom() - - ((StackYellowPages + StackRedPages + 1) * page_size)); -- char* codebuf = os::reserve_memory(page_size, hint); -+ char* codebuf = os::attempt_reserve_memory_at(page_size, hint); - if ( (codebuf == NULL) || (!os::commit_memory(codebuf, page_size, true)) ) { - return; // No matter, we tried, best effort. - } ---- ./hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -89,8 +89,8 @@ - public: - ArgumentMap *_vars; - ArgumentMap *_stack; -- short _stack_height; -- short _max_stack; -+ int _stack_height; -+ int _max_stack; - bool _initialized; - ArgumentMap empty_map; - ---- ./hotspot/src/share/vm/classfile/systemDictionary.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/classfile/systemDictionary.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1866,11 +1866,12 @@ - InstanceKlass::cast(WK_KLASS(Reference_klass))->set_reference_type(REF_OTHER); - InstanceRefKlass::update_nonstatic_oop_maps(WK_KLASS(Reference_klass)); - -- initialize_wk_klasses_through(WK_KLASS_ENUM_NAME(PhantomReference_klass), scan, CHECK); -+ initialize_wk_klasses_through(WK_KLASS_ENUM_NAME(Cleaner_klass), scan, CHECK); - InstanceKlass::cast(WK_KLASS(SoftReference_klass))->set_reference_type(REF_SOFT); - InstanceKlass::cast(WK_KLASS(WeakReference_klass))->set_reference_type(REF_WEAK); - InstanceKlass::cast(WK_KLASS(FinalReference_klass))->set_reference_type(REF_FINAL); - InstanceKlass::cast(WK_KLASS(PhantomReference_klass))->set_reference_type(REF_PHANTOM); -+ InstanceKlass::cast(WK_KLASS(Cleaner_klass))->set_reference_type(REF_CLEANER); - - // JSR 292 classes - WKID jsr292_group_start = WK_KLASS_ENUM_NAME(MethodHandle_klass); ---- ./hotspot/src/share/vm/classfile/systemDictionary.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/classfile/systemDictionary.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -127,6 +127,7 @@ - do_klass(WeakReference_klass, java_lang_ref_WeakReference, Pre ) \ - do_klass(FinalReference_klass, java_lang_ref_FinalReference, Pre ) \ - do_klass(PhantomReference_klass, java_lang_ref_PhantomReference, Pre ) \ -+ do_klass(Cleaner_klass, sun_misc_Cleaner, Pre ) \ - do_klass(Finalizer_klass, java_lang_ref_Finalizer, Pre ) \ - \ - do_klass(Thread_klass, java_lang_Thread, Pre ) \ ---- ./hotspot/src/share/vm/classfile/verifier.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/classfile/verifier.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1553,14 +1553,14 @@ - case Bytecodes::_invokespecial : - case Bytecodes::_invokestatic : - verify_invoke_instructions( -- &bcs, code_length, ¤t_frame, -- &this_uninit, return_type, cp, CHECK_VERIFY(this)); -+ &bcs, code_length, ¤t_frame, (bci >= ex_min && bci < ex_max), -+ &this_uninit, return_type, cp, &stackmap_table, CHECK_VERIFY(this)); - no_control_flow = false; break; - case Bytecodes::_invokeinterface : - case Bytecodes::_invokedynamic : - verify_invoke_instructions( -- &bcs, code_length, ¤t_frame, -- &this_uninit, return_type, cp, CHECK_VERIFY(this)); -+ &bcs, code_length, ¤t_frame, (bci >= ex_min && bci < ex_max), -+ &this_uninit, return_type, cp, &stackmap_table, CHECK_VERIFY(this)); - no_control_flow = false; break; - case Bytecodes::_new : - { -@@ -2408,8 +2408,9 @@ - - void ClassVerifier::verify_invoke_init( - RawBytecodeStream* bcs, u2 ref_class_index, VerificationType ref_class_type, -- StackMapFrame* current_frame, u4 code_length, bool *this_uninit, -- constantPoolHandle cp, TRAPS) { -+ StackMapFrame* current_frame, u4 code_length, bool in_try_block, -+ bool *this_uninit, constantPoolHandle cp, StackMapTable* stackmap_table, -+ TRAPS) { - u2 bci = bcs->bci(); - VerificationType type = current_frame->pop_stack( - VerificationType::reference_check(), CHECK_VERIFY(this)); -@@ -2425,28 +2426,36 @@ - return; - } - -- // Check if this call is done from inside of a TRY block. If so, make -- // sure that all catch clause paths end in a throw. Otherwise, this -- // can result in returning an incomplete object. -- ExceptionTable exhandlers(_method()); -- int exlength = exhandlers.length(); -- for(int i = 0; i < exlength; i++) { -- u2 start_pc = exhandlers.start_pc(i); -- u2 end_pc = exhandlers.end_pc(i); -+ // If this invokespecial call is done from inside of a TRY block then make -+ // sure that all catch clause paths end in a throw. Otherwise, this can -+ // result in returning an incomplete object. -+ if (in_try_block) { -+ ExceptionTable exhandlers(_method()); -+ int exlength = exhandlers.length(); -+ for(int i = 0; i < exlength; i++) { -+ u2 start_pc = exhandlers.start_pc(i); -+ u2 end_pc = exhandlers.end_pc(i); - -- if (bci >= start_pc && bci < end_pc) { -- if (!ends_in_athrow(exhandlers.handler_pc(i))) { -- verify_error(ErrorContext::bad_code(bci), -- "Bad <init> method call from after the start of a try block"); -- return; -- } else if (VerboseVerification) { -- ResourceMark rm; -- tty->print_cr( -- "Survived call to ends_in_athrow(): %s", -- current_class()->name()->as_C_string()); -+ if (bci >= start_pc && bci < end_pc) { -+ if (!ends_in_athrow(exhandlers.handler_pc(i))) { -+ verify_error(ErrorContext::bad_code(bci), -+ "Bad <init> method call from after the start of a try block"); -+ return; -+ } else if (VerboseVerification) { -+ ResourceMark rm; -+ tty->print_cr( -+ "Survived call to ends_in_athrow(): %s", -+ current_class()->name()->as_C_string()); -+ } - } - } -- } -+ -+ // Check the exception handler target stackmaps with the locals from the -+ // incoming stackmap (before initialize_object() changes them to outgoing -+ // state). -+ verify_exception_handler_targets(bci, true, current_frame, -+ stackmap_table, CHECK_VERIFY(this)); -+ } // in_try_block - - current_frame->initialize_object(type, current_type()); - *this_uninit = true; -@@ -2500,6 +2509,13 @@ - } - } - } -+ // Check the exception handler target stackmaps with the locals from the -+ // incoming stackmap (before initialize_object() changes them to outgoing -+ // state). -+ if (in_try_block) { -+ verify_exception_handler_targets(bci, *this_uninit, current_frame, -+ stackmap_table, CHECK_VERIFY(this)); -+ } - current_frame->initialize_object(type, new_class_type); - } else { - verify_error(ErrorContext::bad_type(bci, current_frame->stack_top_ctx()), -@@ -2528,8 +2544,8 @@ - - void ClassVerifier::verify_invoke_instructions( - RawBytecodeStream* bcs, u4 code_length, StackMapFrame* current_frame, -- bool *this_uninit, VerificationType return_type, -- constantPoolHandle cp, TRAPS) { -+ bool in_try_block, bool *this_uninit, VerificationType return_type, -+ constantPoolHandle cp, StackMapTable* stackmap_table, TRAPS) { - // Make sure the constant pool item is the right type - u2 index = bcs->get_index_u2(); - Bytecodes::Code opcode = bcs->raw_code(); -@@ -2699,7 +2715,8 @@ - opcode != Bytecodes::_invokedynamic) { - if (method_name == vmSymbols::object_initializer_name()) { // <init> method - verify_invoke_init(bcs, index, ref_class_type, current_frame, -- code_length, this_uninit, cp, CHECK_VERIFY(this)); -+ code_length, in_try_block, this_uninit, cp, stackmap_table, -+ CHECK_VERIFY(this)); - } else { // other methods - // Ensures that target class is assignable to method class. - if (opcode == Bytecodes::_invokespecial) { ---- ./hotspot/src/share/vm/classfile/verifier.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/classfile/verifier.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -301,8 +301,9 @@ - - void verify_invoke_init( - RawBytecodeStream* bcs, u2 ref_index, VerificationType ref_class_type, -- StackMapFrame* current_frame, u4 code_length, bool* this_uninit, -- constantPoolHandle cp, TRAPS); -+ StackMapFrame* current_frame, u4 code_length, bool in_try_block, -+ bool* this_uninit, constantPoolHandle cp, StackMapTable* stackmap_table, -+ TRAPS); - - // Used by ends_in_athrow() to push all handlers that contain bci onto - // the handler_stack, if the handler is not already on the stack. -@@ -316,8 +317,8 @@ - - void verify_invoke_instructions( - RawBytecodeStream* bcs, u4 code_length, StackMapFrame* current_frame, -- bool* this_uninit, VerificationType return_type, -- constantPoolHandle cp, TRAPS); -+ bool in_try_block, bool* this_uninit, VerificationType return_type, -+ constantPoolHandle cp, StackMapTable* stackmap_table, TRAPS); - - VerificationType get_newarray_type(u2 index, u2 bci, TRAPS); - void verify_anewarray(u2 bci, u2 index, constantPoolHandle cp, ---- ./hotspot/src/share/vm/classfile/vmSymbols.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/classfile/vmSymbols.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -79,6 +79,7 @@ - template(java_lang_ref_WeakReference, "java/lang/ref/WeakReference") \ - template(java_lang_ref_FinalReference, "java/lang/ref/FinalReference") \ - template(java_lang_ref_PhantomReference, "java/lang/ref/PhantomReference") \ -+ template(sun_misc_Cleaner, "sun/misc/Cleaner") \ - template(java_lang_ref_Finalizer, "java/lang/ref/Finalizer") \ - template(java_lang_reflect_AccessibleObject, "java/lang/reflect/AccessibleObject") \ - template(java_lang_reflect_Method, "java/lang/reflect/Method") \ ---- ./hotspot/src/share/vm/code/dependencies.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/code/dependencies.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2005, 2014, 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 -@@ -544,7 +544,7 @@ - put_star = !Dependencies::is_concrete_klass((Klass*)arg.metadata_value()); - } else if (arg.is_method()) { - what = "method "; -- put_star = !Dependencies::is_concrete_method((Method*)arg.metadata_value()); -+ put_star = !Dependencies::is_concrete_method((Method*)arg.metadata_value(), NULL); - } else if (arg.is_klass()) { - what = "class "; - } else { -@@ -826,8 +826,8 @@ - // Static methods don't override non-static so punt - return true; - } -- if ( !Dependencies::is_concrete_method(lm) -- && !Dependencies::is_concrete_method(m) -+ if ( !Dependencies::is_concrete_method(lm, k) -+ && !Dependencies::is_concrete_method(m, ctxk) - && lm->method_holder()->is_subtype_of(m->method_holder())) - // Method m is overridden by lm, but both are non-concrete. - return true; -@@ -861,8 +861,17 @@ - if (doing_subtype_search()) { - return Dependencies::is_concrete_klass(k); - } else { -- Method* m = InstanceKlass::cast(k)->find_method(_name, _signature); -- if (m == NULL || !Dependencies::is_concrete_method(m)) return false; -+ // Search class hierarchy first. -+ Method* m = InstanceKlass::cast(k)->find_instance_method(_name, _signature); -+ if (!Dependencies::is_concrete_method(m, k)) { -+ // Check interface defaults also, if any exist. -+ Array<Method*>* default_methods = InstanceKlass::cast(k)->default_methods(); -+ if (default_methods == NULL) -+ return false; -+ m = InstanceKlass::cast(k)->find_method(default_methods, _name, _signature); -+ if (!Dependencies::is_concrete_method(m, NULL)) -+ return false; -+ } - _found_methods[_num_participants] = m; - // Note: If add_participant(k) is called, - // the method m will already be memoized for it. -@@ -1153,15 +1162,17 @@ - return true; - } - --bool Dependencies::is_concrete_method(Method* m) { -- // Statics are irrelevant to virtual call sites. -- if (m->is_static()) return false; -- -- // We could also return false if m does not yet appear to be -- // executed, if the VM version supports this distinction also. -- // Default methods are considered "concrete" as well. -- return !m->is_abstract() && -- !m->is_overpass(); // error functions aren't concrete -+bool Dependencies::is_concrete_method(Method* m, Klass * k) { -+ // NULL is not a concrete method, -+ // statics are irrelevant to virtual call sites, -+ // abstract methods are not concrete, -+ // overpass (error) methods are not concrete if k is abstract -+ // -+ // note "true" is conservative answer -- -+ // overpass clause is false if k == NULL, implies return true if -+ // answer depends on overpass clause. -+ return ! ( m == NULL || m -> is_static() || m -> is_abstract() || -+ m->is_overpass() && k != NULL && k -> is_abstract() ); - } - - -@@ -1186,16 +1197,6 @@ - return true; - } - --bool Dependencies::is_concrete_method(ciMethod* m) { -- // Statics are irrelevant to virtual call sites. -- if (m->is_static()) return false; -- -- // We could also return false if m does not yet appear to be -- // executed, if the VM version supports this distinction also. -- return !m->is_abstract(); --} -- -- - bool Dependencies::has_finalizable_subclass(ciInstanceKlass* k) { - return k->has_finalizable_subclass(); - } -@@ -1409,7 +1410,7 @@ - Klass* wit = wf.find_witness_definer(ctxk); - if (wit != NULL) return NULL; // Too many witnesses. - Method* fm = wf.found_method(0); // Will be NULL if num_parts == 0. -- if (Dependencies::is_concrete_method(m)) { -+ if (Dependencies::is_concrete_method(m, ctxk)) { - if (fm == NULL) { - // It turns out that m was always the only implementation. - fm = m; -@@ -1439,61 +1440,6 @@ - return wf.find_witness_definer(ctxk, changes); - } - --// Find the set of all non-abstract methods under ctxk that match m[0]. --// (The method m[0] must be defined or inherited in ctxk.) --// Include m itself in the set, unless it is abstract. --// Fill the given array m[0..(mlen-1)] with this set, and return the length. --// (The length may be zero if no concrete methods are found anywhere.) --// If there are too many concrete methods to fit in marray, return -1. --int Dependencies::find_exclusive_concrete_methods(Klass* ctxk, -- int mlen, -- Method* marray[]) { -- Method* m0 = marray[0]; -- ClassHierarchyWalker wf(m0); -- assert(wf.check_method_context(ctxk, m0), "proper context"); -- wf.record_witnesses(mlen); -- bool participants_hide_witnesses = true; -- Klass* wit = wf.find_witness_definer(ctxk); -- if (wit != NULL) return -1; // Too many witnesses. -- int num = wf.num_participants(); -- assert(num <= mlen, "oob"); -- // Keep track of whether m is also part of the result set. -- int mfill = 0; -- assert(marray[mfill] == m0, "sanity"); -- if (Dependencies::is_concrete_method(m0)) -- mfill++; // keep m0 as marray[0], the first result -- for (int i = 0; i < num; i++) { -- Method* fm = wf.found_method(i); -- if (fm == m0) continue; // Already put this guy in the list. -- if (mfill == mlen) { -- return -1; // Oops. Too many methods after all! -- } -- marray[mfill++] = fm; -- } --#ifndef PRODUCT -- // Make sure the dependency mechanism will pass this discovery: -- if (VerifyDependencies) { -- // Turn off dependency tracing while actually testing deps. -- FlagSetting fs(TraceDependencies, false); -- switch (mfill) { -- case 1: -- guarantee(NULL == (void *)check_unique_concrete_method(ctxk, marray[0]), -- "verify dep."); -- break; -- case 2: -- guarantee(NULL == (void *) -- check_exclusive_concrete_methods(ctxk, marray[0], marray[1]), -- "verify dep."); -- break; -- default: -- ShouldNotReachHere(); // mlen > 2 yet supported -- } -- } --#endif //PRODUCT -- return mfill; --} -- -- - Klass* Dependencies::check_has_no_finalizable_subclasses(Klass* ctxk, KlassDepChange* changes) { - Klass* search_at = ctxk; - if (changes != NULL) -@@ -1501,7 +1447,6 @@ - return find_finalizable_subclass(search_at); - } - -- - Klass* Dependencies::check_call_site_target_value(oop call_site, oop method_handle, CallSiteDepChange* changes) { - assert(call_site ->is_a(SystemDictionary::CallSite_klass()), "sanity"); - assert(method_handle->is_a(SystemDictionary::MethodHandle_klass()), "sanity"); ---- ./hotspot/src/share/vm/code/dependencies.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/code/dependencies.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2005, 2014, 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 -@@ -287,7 +287,7 @@ - // In that case, there would be a middle ground between concrete - // and abstract (as defined by the Java language and VM). - static bool is_concrete_klass(Klass* k); // k is instantiable -- static bool is_concrete_method(Method* m); // m is invocable -+ static bool is_concrete_method(Method* m, Klass* k); // m is invocable - static Klass* find_finalizable_subclass(Klass* k); - - // These versions of the concreteness queries work through the CI. -@@ -301,7 +301,6 @@ - // not go back into the VM to get their value; they must cache the - // bit in the CI, either eagerly or lazily.) - static bool is_concrete_klass(ciInstanceKlass* k); // k appears instantiable -- static bool is_concrete_method(ciMethod* m); // m appears invocable - static bool has_finalizable_subclass(ciInstanceKlass* k); - - // As a general rule, it is OK to compile under the assumption that -@@ -348,7 +347,6 @@ - static Klass* find_unique_concrete_subtype(Klass* ctxk); - static Method* find_unique_concrete_method(Klass* ctxk, Method* m); - static int find_exclusive_concrete_subtypes(Klass* ctxk, int klen, Klass* k[]); -- static int find_exclusive_concrete_methods(Klass* ctxk, int mlen, Method* m[]); - - // Create the encoding which will be stored in an nmethod. - void encode_content_bytes(); ---- ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -2760,10 +2760,12 @@ - } - } - --void CompactibleFreeListSpace:: par_get_chunk_of_blocks(size_t word_sz, size_t n, AdaptiveFreeList<FreeChunk>* fl) { -- assert(fl->count() == 0, "Precondition."); -- assert(word_sz < CompactibleFreeListSpace::IndexSetSize, -- "Precondition"); -+// Used by par_get_chunk_of_blocks() for the chunks from the -+// indexed_free_lists. Looks for a chunk with size that is a multiple -+// of "word_sz" and if found, splits it into "word_sz" chunks and add -+// to the free list "fl". "n" is the maximum number of chunks to -+// be added to "fl". -+bool CompactibleFreeListSpace:: par_get_chunk_of_blocks_IFL(size_t word_sz, size_t n, AdaptiveFreeList<FreeChunk>* fl) { - - // We'll try all multiples of word_sz in the indexed set, starting with - // word_sz itself and, if CMSSplitIndexedFreeListBlocks, try larger multiples, -@@ -2844,11 +2846,15 @@ - Mutex::_no_safepoint_check_flag); - ssize_t births = _indexedFreeList[word_sz].split_births() + num; - _indexedFreeList[word_sz].set_split_births(births); -- return; -+ return true; - } - } -+ return found; - } -- // Otherwise, we'll split a block from the dictionary. -+} -+ -+FreeChunk* CompactibleFreeListSpace::get_n_way_chunk_to_split(size_t word_sz, size_t n) { -+ - FreeChunk* fc = NULL; - FreeChunk* rem_fc = NULL; - size_t rem; -@@ -2859,16 +2865,12 @@ - fc = dictionary()->get_chunk(MAX2(n * word_sz, _dictionary->min_size()), - FreeBlockDictionary<FreeChunk>::atLeast); - if (fc != NULL) { -- _bt.allocated((HeapWord*)fc, fc->size(), true /* reducing */); // update _unallocated_blk -- dictionary()->dict_census_update(fc->size(), -- true /*split*/, -- false /*birth*/); - break; - } else { - n--; - } - } -- if (fc == NULL) return; -+ if (fc == NULL) return NULL; - // Otherwise, split up that block. - assert((ssize_t)n >= 1, "Control point invariant"); - assert(fc->is_free(), "Error: should be a free block"); -@@ -2890,10 +2892,14 @@ - // dictionary and return, leaving "fl" empty. - if (n == 0) { - returnChunkToDictionary(fc); -- assert(fl->count() == 0, "We never allocated any blocks"); -- return; -+ return NULL; - } - -+ _bt.allocated((HeapWord*)fc, fc->size(), true /* reducing */); // update _unallocated_blk -+ dictionary()->dict_census_update(fc->size(), -+ true /*split*/, -+ false /*birth*/); -+ - // First return the remainder, if any. - // Note that we hold the lock until we decide if we're going to give - // back the remainder to the dictionary, since a concurrent allocation -@@ -2926,7 +2932,24 @@ - _indexedFreeList[rem].return_chunk_at_head(rem_fc); - smallSplitBirth(rem); - } -- assert((ssize_t)n > 0 && fc != NULL, "Consistency"); -+ assert(n * word_sz == fc->size(), -+ err_msg("Chunk size " SIZE_FORMAT " is not exactly splittable by " -+ SIZE_FORMAT " sized chunks of size " SIZE_FORMAT, -+ fc->size(), n, word_sz)); -+ return fc; -+} -+ -+void CompactibleFreeListSpace:: par_get_chunk_of_blocks_dictionary(size_t word_sz, size_t targetted_number_of_chunks, AdaptiveFreeList<FreeChunk>* fl) { -+ -+ FreeChunk* fc = get_n_way_chunk_to_split(word_sz, targetted_number_of_chunks); -+ -+ if (fc == NULL) { -+ return; -+ } -+ -+ size_t n = fc->size() / word_sz; -+ -+ assert((ssize_t)n > 0, "Consistency"); - // Now do the splitting up. - // Must do this in reverse order, so that anybody attempting to - // access the main chunk sees it as a single free block until we -@@ -2974,6 +2997,20 @@ - assert(fl->tail()->next() == NULL, "List invariant."); - } - -+void CompactibleFreeListSpace:: par_get_chunk_of_blocks(size_t word_sz, size_t n, AdaptiveFreeList<FreeChunk>* fl) { -+ assert(fl->count() == 0, "Precondition."); -+ assert(word_sz < CompactibleFreeListSpace::IndexSetSize, -+ "Precondition"); -+ -+ if (par_get_chunk_of_blocks_IFL(word_sz, n, fl)) { -+ // Got it -+ return; -+ } -+ -+ // Otherwise, we'll split a block from the dictionary. -+ par_get_chunk_of_blocks_dictionary(word_sz, n, fl); -+} -+ - // Set up the space's par_seq_tasks structure for work claiming - // for parallel rescan. See CMSParRemarkTask where this is currently used. - // XXX Need to suitably abstract and generalize this and the next ---- ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -172,6 +172,20 @@ - // list of size "word_sz", and must now be decremented. - void par_get_chunk_of_blocks(size_t word_sz, size_t n, AdaptiveFreeList<FreeChunk>* fl); - -+ // Used by par_get_chunk_of_blocks() for the chunks from the -+ // indexed_free_lists. -+ bool par_get_chunk_of_blocks_IFL(size_t word_sz, size_t n, AdaptiveFreeList<FreeChunk>* fl); -+ -+ // Used by par_get_chunk_of_blocks_dictionary() to get a chunk -+ // evenly splittable into "n" "word_sz" chunks. Returns that -+ // evenly splittable chunk. May split a larger chunk to get the -+ // evenly splittable chunk. -+ FreeChunk* get_n_way_chunk_to_split(size_t word_sz, size_t n); -+ -+ // Used by par_get_chunk_of_blocks() for the chunks from the -+ // dictionary. -+ void par_get_chunk_of_blocks_dictionary(size_t word_sz, size_t n, AdaptiveFreeList<FreeChunk>* fl); -+ - // Allocation helper functions - // Allocate using a strategy that takes from the indexed free lists - // first. This allocation strategy assumes a companion sweeping ---- ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -737,7 +737,7 @@ - // Support for parallelizing survivor space rescan - if ((CMSParallelRemarkEnabled && CMSParallelSurvivorRemarkEnabled) || CMSParallelInitialMarkEnabled) { - const size_t max_plab_samples = -- ((DefNewGeneration*)_young_gen)->max_survivor_size()/MinTLABSize; -+ ((DefNewGeneration*)_young_gen)->max_survivor_size() / plab_sample_minimum_size(); - - _survivor_plab_array = NEW_C_HEAP_ARRAY(ChunkArray, ParallelGCThreads, mtGC); - _survivor_chunk_array = NEW_C_HEAP_ARRAY(HeapWord*, 2*max_plab_samples, mtGC); -@@ -795,6 +795,12 @@ - _inter_sweep_timer.start(); // start of time - } - -+size_t CMSCollector::plab_sample_minimum_size() { -+ // The default value of MinTLABSize is 2k, but there is -+ // no way to get the default value if the flag has been overridden. -+ return MAX2(ThreadLocalAllocBuffer::min_size() * HeapWordSize, 2 * K); -+} -+ - const char* ConcurrentMarkSweepGeneration::name() const { - return "concurrent mark-sweep generation"; - } ---- ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -763,6 +763,10 @@ - size_t* _cursor; - ChunkArray* _survivor_plab_array; - -+ // A bounded minimum size of PLABs, should not return too small values since -+ // this will affect the size of the data structures used for parallel young gen rescan -+ size_t plab_sample_minimum_size(); -+ - // Support for marking stack overflow handling - bool take_from_overflow_list(size_t num, CMSMarkStack* to_stack); - bool par_take_from_overflow_list(size_t num, ---- ./hotspot/src/share/vm/gc_implementation/g1/dirtyCardQueue.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/dirtyCardQueue.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2001, 2014, 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 -@@ -47,6 +47,13 @@ - // active field set to true. - PtrQueue(qset_, perm, true /* active */) { } - -+ // Flush before destroying; queue may be used to capture pending work while -+ // doing something else, with auto-flush on completion. -+ ~DirtyCardQueue() { if (!is_permanent()) flush(); } -+ -+ // Process queue entries and release resources. -+ void flush() { flush_impl(); } -+ - // Apply the closure to all elements, and reset the index to make the - // buffer empty. If a closure application returns "false", return - // "false" immediately, halting the iteration. If "consume" is true, ---- ./hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -173,7 +173,7 @@ - - // Should be called when we want to release the active region which - // is returned after it's been retired. -- HeapRegion* release(); -+ virtual HeapRegion* release(); - - #if G1_ALLOC_REGION_TRACING - void trace(const char* str, size_t word_size = 0, HeapWord* result = NULL); ---- ./hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -6628,6 +6628,35 @@ - _g1h->retire_gc_alloc_region(alloc_region, allocated_bytes, - GCAllocForTenured); - } -+ -+HeapRegion* OldGCAllocRegion::release() { -+ HeapRegion* cur = get(); -+ if (cur != NULL) { -+ // Determine how far we are from the next card boundary. If it is smaller than -+ // the minimum object size we can allocate into, expand into the next card. -+ HeapWord* top = cur->top(); -+ HeapWord* aligned_top = (HeapWord*)align_ptr_up(top, G1BlockOffsetSharedArray::N_bytes); -+ -+ size_t to_allocate_words = pointer_delta(aligned_top, top, HeapWordSize); -+ -+ if (to_allocate_words != 0) { -+ // We are not at a card boundary. Fill up, possibly into the next, taking the -+ // end of the region and the minimum object size into account. -+ to_allocate_words = MIN2(pointer_delta(cur->end(), cur->top(), HeapWordSize), -+ MAX2(to_allocate_words, G1CollectedHeap::min_fill_size())); -+ -+ // Skip allocation if there is not enough space to allocate even the smallest -+ // possible object. In this case this region will not be retained, so the -+ // original problem cannot occur. -+ if (to_allocate_words >= G1CollectedHeap::min_fill_size()) { -+ HeapWord* dummy = attempt_allocation(to_allocate_words, true /* bot_updates */); -+ CollectedHeap::fill_with_object(dummy, to_allocate_words); -+ } -+ } -+ } -+ return G1AllocRegion::release(); -+} -+ - // Heap region set verification - - class VerifyRegionListsClosure : public HeapRegionClosure { ---- ./hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -183,6 +183,13 @@ - public: - OldGCAllocRegion() - : G1AllocRegion("Old GC Alloc Region", true /* bot_updates */) { } -+ -+ // This specialization of release() makes sure that the last card that has been -+ // allocated into has been completely filled by a dummy object. -+ // This avoids races when remembered set scanning wants to update the BOT of the -+ // last card in the retained old gc alloc region, and allocation threads -+ // allocating into that card at the same time. -+ virtual HeapRegion* release(); - }; - - // The G1 STW is alive closure. ---- ./hotspot/src/share/vm/gc_implementation/g1/ptrQueue.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/ptrQueue.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2001, 2014, 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 -@@ -31,11 +31,15 @@ - #include "runtime/thread.inline.hpp" - - PtrQueue::PtrQueue(PtrQueueSet* qset, bool perm, bool active) : -- _qset(qset), _buf(NULL), _index(0), _active(active), -+ _qset(qset), _buf(NULL), _index(0), _sz(0), _active(active), - _perm(perm), _lock(NULL) - {} - --void PtrQueue::flush() { -+PtrQueue::~PtrQueue() { -+ assert(_perm || (_buf == NULL), "queue must be flushed before delete"); -+} -+ -+void PtrQueue::flush_impl() { - if (!_perm && _buf != NULL) { - if (_index == _sz) { - // No work to do. ---- ./hotspot/src/share/vm/gc_implementation/g1/ptrQueue.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/ptrQueue.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2001, 2014, 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 -@@ -65,15 +65,18 @@ - Mutex* _lock; - - PtrQueueSet* qset() { return _qset; } -+ bool is_permanent() const { return _perm; } -+ -+ // Process queue entries and release resources, if not permanent. -+ void flush_impl(); - - public: - // Initialize this queue to contain a null buffer, and be part of the - // given PtrQueueSet. - PtrQueue(PtrQueueSet* qset, bool perm = false, bool active = false); -- // Release any contained resources. -- virtual void flush(); -- // Calls flush() when destroyed. -- ~PtrQueue() { flush(); } -+ -+ // Requires queue flushed or permanent. -+ ~PtrQueue(); - - // Associate a lock with a ptr queue. - void set_lock(Mutex* lock) { _lock = lock; } ---- ./hotspot/src/share/vm/gc_implementation/g1/satbQueue.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/satbQueue.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -39,7 +39,7 @@ - // first before we flush it, otherwise we might end up with an - // enqueued buffer with refs into the CSet which breaks our invariants. - filter(); -- PtrQueue::flush(); -+ flush_impl(); - } - - // This method removes entries from an SATB buffer that will not be ---- ./hotspot/src/share/vm/gc_implementation/g1/satbQueue.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/g1/satbQueue.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2001, 2014, 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 -@@ -58,9 +58,8 @@ - // field to true. This is done in JavaThread::initialize_queues(). - PtrQueue(qset, perm, false /* active */) { } - -- // Overrides PtrQueue::flush() so that it can filter the buffer -- // before it is flushed. -- virtual void flush(); -+ // Process queue entries and free resources. -+ void flush(); - - // Overrides PtrQueue::should_enqueue_buffer(). See the method's - // definition for more information. ---- ./hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -62,7 +62,8 @@ - ParGCAllocBuffer(size_t word_sz); - - static const size_t min_size() { -- return ThreadLocalAllocBuffer::min_size(); -+ // Make sure that we return something that is larger than AlignmentReserve -+ return align_object_size(MAX2(MinTLABSize / HeapWordSize, (uintx)oopDesc::header_size())) + AlignmentReserve; - } - - static const size_t max_size() { ---- ./hotspot/src/share/vm/interpreter/linkResolver.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/interpreter/linkResolver.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -320,7 +320,7 @@ - // First check in default method array - if (!resolved_method->is_abstract() && - (InstanceKlass::cast(klass())->default_methods() != NULL)) { -- int index = InstanceKlass::find_method_index(InstanceKlass::cast(klass())->default_methods(), name, signature, false); -+ int index = InstanceKlass::find_method_index(InstanceKlass::cast(klass())->default_methods(), name, signature, false, false); - if (index >= 0 ) { - vtable_index = InstanceKlass::cast(klass())->default_vtable_indices()->at(index); - } ---- ./hotspot/src/share/vm/memory/referenceProcessor.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/memory/referenceProcessor.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -118,6 +118,7 @@ - _discoveredWeakRefs = &_discoveredSoftRefs[_max_num_q]; - _discoveredFinalRefs = &_discoveredWeakRefs[_max_num_q]; - _discoveredPhantomRefs = &_discoveredFinalRefs[_max_num_q]; -+ _discoveredCleanerRefs = &_discoveredPhantomRefs[_max_num_q]; - - // Initialize all entries to NULL - for (uint i = 0; i < _max_num_q * number_of_subclasses_of_ref(); i++) { -@@ -245,6 +246,13 @@ - phantom_count = - process_discovered_reflist(_discoveredPhantomRefs, NULL, false, - is_alive, keep_alive, complete_gc, task_executor); -+ -+ // Process cleaners, but include them in phantom statistics. We expect -+ // Cleaner references to be temporary, and don't want to deal with -+ // possible incompatibilities arising from making it more visible. -+ phantom_count += -+ process_discovered_reflist(_discoveredCleanerRefs, NULL, false, -+ is_alive, keep_alive, complete_gc, task_executor); - } - - // Weak global JNI references. It would make more sense (semantically) to -@@ -882,6 +890,7 @@ - balance_queues(_discoveredWeakRefs); - balance_queues(_discoveredFinalRefs); - balance_queues(_discoveredPhantomRefs); -+ balance_queues(_discoveredCleanerRefs); - } - - size_t -@@ -1041,6 +1050,9 @@ - case REF_PHANTOM: - list = &_discoveredPhantomRefs[id]; - break; -+ case REF_CLEANER: -+ list = &_discoveredCleanerRefs[id]; -+ break; - case REF_NONE: - // we should not reach here if we are an InstanceRefKlass - default: -@@ -1305,6 +1317,17 @@ - preclean_discovered_reflist(_discoveredPhantomRefs[i], is_alive, - keep_alive, complete_gc, yield); - } -+ -+ // Cleaner references. Included in timing for phantom references. We -+ // expect Cleaner references to be temporary, and don't want to deal with -+ // possible incompatibilities arising from making it more visible. -+ for (uint i = 0; i < _max_num_q; i++) { -+ if (yield->should_return()) { -+ return; -+ } -+ preclean_discovered_reflist(_discoveredCleanerRefs[i], is_alive, -+ keep_alive, complete_gc, yield); -+ } - } - } - -@@ -1373,6 +1396,7 @@ - case 1: return "WeakRef"; - case 2: return "FinalRef"; - case 3: return "PhantomRef"; -+ case 4: return "CleanerRef"; - } - ShouldNotReachHere(); - return NULL; ---- ./hotspot/src/share/vm/memory/referenceProcessor.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/memory/referenceProcessor.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -263,9 +263,10 @@ - DiscoveredList* _discoveredWeakRefs; - DiscoveredList* _discoveredFinalRefs; - DiscoveredList* _discoveredPhantomRefs; -+ DiscoveredList* _discoveredCleanerRefs; - - public: -- static int number_of_subclasses_of_ref() { return (REF_PHANTOM - REF_OTHER); } -+ static int number_of_subclasses_of_ref() { return (REF_CLEANER - REF_OTHER); } - - uint num_q() { return _num_q; } - uint max_num_q() { return _max_num_q; } ---- ./hotspot/src/share/vm/memory/referenceType.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/memory/referenceType.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -35,7 +35,8 @@ - REF_SOFT, // Subclass of java/lang/ref/SoftReference - REF_WEAK, // Subclass of java/lang/ref/WeakReference - REF_FINAL, // Subclass of java/lang/ref/FinalReference -- REF_PHANTOM // Subclass of java/lang/ref/PhantomReference -+ REF_PHANTOM, // Subclass of java/lang/ref/PhantomReference -+ REF_CLEANER // Subclass of sun/misc/Cleaner - }; - - #endif // SHARE_VM_MEMORY_REFRERENCETYPE_HPP ---- ./hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -235,22 +235,19 @@ - } - - size_t ThreadLocalAllocBuffer::initial_desired_size() { -- size_t init_sz; -+ size_t init_sz = 0; - - if (TLABSize > 0) { -- init_sz = MIN2(TLABSize / HeapWordSize, max_size()); -- } else if (global_stats() == NULL) { -- // Startup issue - main thread initialized before heap initialized. -- init_sz = min_size(); -- } else { -+ init_sz = TLABSize / HeapWordSize; -+ } else if (global_stats() != NULL) { - // Initial size is a function of the average number of allocating threads. - unsigned nof_threads = global_stats()->allocating_threads_avg(); - - init_sz = (Universe::heap()->tlab_capacity(myThread()) / HeapWordSize) / - (nof_threads * target_refills()); - init_sz = align_object_size(init_sz); -- init_sz = MIN2(MAX2(init_sz, min_size()), max_size()); - } -+ init_sz = MIN2(MAX2(init_sz, min_size()), max_size()); - return init_sz; - } - ---- ./hotspot/src/share/vm/memory/threadLocalAllocBuffer.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/memory/threadLocalAllocBuffer.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -105,7 +105,7 @@ - // do nothing. tlabs must be inited by initialize() calls - } - -- static const size_t min_size() { return align_object_size(MinTLABSize / HeapWordSize); } -+ static const size_t min_size() { return align_object_size(MinTLABSize / HeapWordSize) + alignment_reserve(); } - static const size_t max_size() { assert(_max_size != 0, "max_size not set up"); return _max_size; } - static void set_max_size(size_t max_size) { _max_size = max_size; } - ---- ./hotspot/src/share/vm/oops/instanceKlass.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/oops/instanceKlass.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -1435,32 +1435,41 @@ - } - - Method* InstanceKlass::find_method_impl(Symbol* name, Symbol* signature, bool skipping_overpass) const { -- return InstanceKlass::find_method_impl(methods(), name, signature, skipping_overpass); -+ return InstanceKlass::find_method_impl(methods(), name, signature, skipping_overpass, false); - } - - // find_instance_method looks up the name/signature in the local methods array - // and skips over static methods - Method* InstanceKlass::find_instance_method( - Array<Method*>* methods, Symbol* name, Symbol* signature) { -- Method* meth = InstanceKlass::find_method(methods, name, signature); -- if (meth != NULL && meth->is_static()) { -- meth = NULL; -- } -+ Method* meth = InstanceKlass::find_method_impl(methods, name, signature, false, true); - return meth; - } - -+// find_instance_method looks up the name/signature in the local methods array -+// and skips over static methods -+Method* InstanceKlass::find_instance_method(Symbol* name, Symbol* signature) { -+ return InstanceKlass::find_instance_method(methods(), name, signature); -+} -+ - // find_method looks up the name/signature in the local methods array - Method* InstanceKlass::find_method( - Array<Method*>* methods, Symbol* name, Symbol* signature) { -- return InstanceKlass::find_method_impl(methods, name, signature, false); -+ return InstanceKlass::find_method_impl(methods, name, signature, false, false); - } - - Method* InstanceKlass::find_method_impl( -- Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass) { -- int hit = find_method_index(methods, name, signature, skipping_overpass); -+ Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass, bool skipping_static) { -+ int hit = find_method_index(methods, name, signature, skipping_overpass, skipping_static); - return hit >= 0 ? methods->at(hit): NULL; - } - -+bool InstanceKlass::method_matches(Method* m, Symbol* signature, bool skipping_overpass, bool skipping_static) { -+ return (m->signature() == signature) && -+ (!skipping_overpass || !m->is_overpass()) && -+ (!skipping_static || !m->is_static()); -+} -+ - // Used directly for default_methods to find the index into the - // default_vtable_indices, and indirectly by find_method - // find_method_index looks in the local methods array to return the index -@@ -1469,13 +1478,14 @@ - // is important during method resolution to prefer a static method, for example, - // over an overpass method. - int InstanceKlass::find_method_index( -- Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass) { -+ Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass, bool skipping_static) { - int hit = binary_search(methods, name); - if (hit != -1) { - Method* m = methods->at(hit); -+ - // Do linear search to find matching signature. First, quick check - // for common case, ignoring overpasses if requested. -- if ((m->signature() == signature) && (!skipping_overpass || !m->is_overpass())) return hit; -+ if (method_matches(m, signature, skipping_overpass, skipping_static)) return hit; - - // search downwards through overloaded methods - int i; -@@ -1483,18 +1493,18 @@ - Method* m = methods->at(i); - assert(m->is_method(), "must be method"); - if (m->name() != name) break; -- if ((m->signature() == signature) && (!skipping_overpass || !m->is_overpass())) return i; -+ if (method_matches(m, signature, skipping_overpass, skipping_static)) return i; - } - // search upwards - for (i = hit + 1; i < methods->length(); ++i) { - Method* m = methods->at(i); - assert(m->is_method(), "must be method"); - if (m->name() != name) break; -- if ((m->signature() == signature) && (!skipping_overpass || !m->is_overpass())) return i; -+ if (method_matches(m, signature, skipping_overpass, skipping_static)) return i; - } - // not found - #ifdef ASSERT -- int index = skipping_overpass ? -1 : linear_search(methods, name, signature); -+ int index = skipping_overpass || skipping_static ? -1 : linear_search(methods, name, signature); - assert(index == -1, err_msg("binary search should have found entry %d", index)); - #endif - } ---- ./hotspot/src/share/vm/oops/instanceKlass.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/oops/instanceKlass.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -515,10 +515,16 @@ - // find a local method (returns NULL if not found) - Method* find_method(Symbol* name, Symbol* signature) const; - static Method* find_method(Array<Method*>* methods, Symbol* name, Symbol* signature); -+ -+ // find a local method, but skip static methods -+ Method* find_instance_method(Symbol* name, Symbol* signature); - static Method* find_instance_method(Array<Method*>* methods, Symbol* name, Symbol* signature); - -+ // true if method matches signature and conforms to skipping_X conditions. -+ static bool method_matches(Method* m, Symbol* signature, bool skipping_overpass, bool skipping_static); -+ - // find a local method index in default_methods (returns -1 if not found) -- static int find_method_index(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass); -+ static int find_method_index(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass, bool skipping_static); - - // lookup operation (returns NULL if not found) - Method* uncached_lookup_method(Symbol* name, Symbol* signature, MethodLookupMode mode) const; -@@ -1050,7 +1056,7 @@ - - // find a local method (returns NULL if not found) - Method* find_method_impl(Symbol* name, Symbol* signature, bool skipping_overpass) const; -- static Method* find_method_impl(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass); -+ static Method* find_method_impl(Array<Method*>* methods, Symbol* name, Symbol* signature, bool skipping_overpass, bool skipping_static); - - // Free CHeap allocated fields. - void release_C_heap_structures(); ---- ./hotspot/src/share/vm/opto/ifnode.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/opto/ifnode.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -503,7 +503,7 @@ - jint off = 0; - if (l->is_top()) { - return 0; -- } else if (l->is_Add()) { -+ } else if (l->Opcode() == Op_AddI) { - if ((off = l->in(1)->find_int_con(0)) != 0) { - ind = l->in(2); - } else if ((off = l->in(2)->find_int_con(0)) != 0) { ---- ./hotspot/src/share/vm/runtime/arguments.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/runtime/arguments.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -63,7 +63,7 @@ - #endif // INCLUDE_ALL_GCS - - // Note: This is a special bug reporting site for the JVM --#define DEFAULT_VENDOR_URL_BUG "http://bugreport.sun.com/bugreport/crash.jsp" -+#define DEFAULT_VENDOR_URL_BUG "http://bugreport.java.com/bugreport/crash.jsp" - #define DEFAULT_JAVA_LAUNCHER "generic" - - // Disable options not supported in this release, with a warning if they ---- ./hotspot/src/share/vm/runtime/vmStructs.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/runtime/vmStructs.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -670,6 +670,7 @@ - static_field(SystemDictionary, WK_KLASS(WeakReference_klass), Klass*) \ - static_field(SystemDictionary, WK_KLASS(FinalReference_klass), Klass*) \ - static_field(SystemDictionary, WK_KLASS(PhantomReference_klass), Klass*) \ -+ static_field(SystemDictionary, WK_KLASS(Cleaner_klass), Klass*) \ - static_field(SystemDictionary, WK_KLASS(Finalizer_klass), Klass*) \ - static_field(SystemDictionary, WK_KLASS(Thread_klass), Klass*) \ - static_field(SystemDictionary, WK_KLASS(ThreadGroup_klass), Klass*) \ ---- ./hotspot/src/share/vm/utilities/defaultStream.hpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/utilities/defaultStream.hpp Mon Dec 08 12:28:35 2014 -0800 -@@ -41,6 +41,8 @@ - - void init(); - void init_log(); -+ fileStream* open_file(const char* log_name); -+ void start_log(); - void finish_log(); - void finish_log_on_error(char *buf, int buflen); - public: ---- ./hotspot/src/share/vm/utilities/ostream.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/utilities/ostream.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -360,7 +360,6 @@ - - #define EXTRACHARLEN 32 - #define CURRENTAPPX ".current" --#define FILENAMEBUFLEN 1024 - // convert YYYY-MM-DD HH:MM:SS to YYYY-MM-DD_HH-MM-SS - char* get_datetime_string(char *buf, size_t len) { - os::local_time_string(buf, len); -@@ -394,7 +393,6 @@ - buffer_length = strlen(log_name) + 1; - } - -- // const char* star = strchr(basename, '*'); - const char* pts = strstr(basename, "%p"); - int pid_pos = (pts == NULL) ? -1 : (pts - nametail); - -@@ -409,6 +407,11 @@ - buffer_length += strlen(tms); - } - -+ // File name is too long. -+ if (buffer_length > JVM_MAXPATHLEN) { -+ return NULL; -+ } -+ - // Create big enough buffer. - char *buf = NEW_C_HEAP_ARRAY(char, buffer_length, mtInternal); - -@@ -481,46 +484,88 @@ - void test_loggc_filename() { - int pid; - char tms[32]; -- char i_result[FILENAMEBUFLEN]; -+ char i_result[JVM_MAXPATHLEN]; - const char* o_result; - get_datetime_string(tms, sizeof(tms)); - pid = os::current_process_id(); - - // test.log -- jio_snprintf(i_result, sizeof(char)*FILENAMEBUFLEN, "test.log", tms); -+ jio_snprintf(i_result, JVM_MAXPATHLEN, "test.log", tms); - o_result = make_log_name_internal("test.log", NULL, pid, tms); - assert(strcmp(i_result, o_result) == 0, "failed on testing make_log_name(\"test.log\", NULL)"); - FREE_C_HEAP_ARRAY(char, o_result, mtInternal); - - // test-%t-%p.log -- jio_snprintf(i_result, sizeof(char)*FILENAMEBUFLEN, "test-%s-pid%u.log", tms, pid); -+ jio_snprintf(i_result, JVM_MAXPATHLEN, "test-%s-pid%u.log", tms, pid); - o_result = make_log_name_internal("test-%t-%p.log", NULL, pid, tms); - assert(strcmp(i_result, o_result) == 0, "failed on testing make_log_name(\"test-%%t-%%p.log\", NULL)"); - FREE_C_HEAP_ARRAY(char, o_result, mtInternal); - - // test-%t%p.log -- jio_snprintf(i_result, sizeof(char)*FILENAMEBUFLEN, "test-%spid%u.log", tms, pid); -+ jio_snprintf(i_result, JVM_MAXPATHLEN, "test-%spid%u.log", tms, pid); - o_result = make_log_name_internal("test-%t%p.log", NULL, pid, tms); - assert(strcmp(i_result, o_result) == 0, "failed on testing make_log_name(\"test-%%t%%p.log\", NULL)"); - FREE_C_HEAP_ARRAY(char, o_result, mtInternal); - - // %p%t.log -- jio_snprintf(i_result, sizeof(char)*FILENAMEBUFLEN, "pid%u%s.log", pid, tms); -+ jio_snprintf(i_result, JVM_MAXPATHLEN, "pid%u%s.log", pid, tms); - o_result = make_log_name_internal("%p%t.log", NULL, pid, tms); - assert(strcmp(i_result, o_result) == 0, "failed on testing make_log_name(\"%%p%%t.log\", NULL)"); - FREE_C_HEAP_ARRAY(char, o_result, mtInternal); - - // %p-test.log -- jio_snprintf(i_result, sizeof(char)*FILENAMEBUFLEN, "pid%u-test.log", pid); -+ jio_snprintf(i_result, JVM_MAXPATHLEN, "pid%u-test.log", pid); - o_result = make_log_name_internal("%p-test.log", NULL, pid, tms); - assert(strcmp(i_result, o_result) == 0, "failed on testing make_log_name(\"%%p-test.log\", NULL)"); - FREE_C_HEAP_ARRAY(char, o_result, mtInternal); - - // %t.log -- jio_snprintf(i_result, sizeof(char)*FILENAMEBUFLEN, "%s.log", tms); -+ jio_snprintf(i_result, JVM_MAXPATHLEN, "%s.log", tms); - o_result = make_log_name_internal("%t.log", NULL, pid, tms); - assert(strcmp(i_result, o_result) == 0, "failed on testing make_log_name(\"%%t.log\", NULL)"); - FREE_C_HEAP_ARRAY(char, o_result, mtInternal); -+ -+ { -+ // longest filename -+ char longest_name[JVM_MAXPATHLEN]; -+ memset(longest_name, 'a', sizeof(longest_name)); -+ longest_name[JVM_MAXPATHLEN - 1] = '\0'; -+ o_result = make_log_name_internal((const char*)&longest_name, NULL, pid, tms); -+ assert(strcmp(longest_name, o_result) == 0, err_msg("longest name does not match. expected '%s' but got '%s'", longest_name, o_result)); -+ FREE_C_HEAP_ARRAY(char, o_result, mtInternal); -+ } -+ -+ { -+ // too long file name -+ char too_long_name[JVM_MAXPATHLEN + 100]; -+ int too_long_length = sizeof(too_long_name); -+ memset(too_long_name, 'a', too_long_length); -+ too_long_name[too_long_length - 1] = '\0'; -+ o_result = make_log_name_internal((const char*)&too_long_name, NULL, pid, tms); -+ assert(o_result == NULL, err_msg("Too long file name should return NULL, but got '%s'", o_result)); -+ } -+ -+ { -+ // too long with timestamp -+ char longest_name[JVM_MAXPATHLEN]; -+ memset(longest_name, 'a', JVM_MAXPATHLEN); -+ longest_name[JVM_MAXPATHLEN - 3] = '%'; -+ longest_name[JVM_MAXPATHLEN - 2] = 't'; -+ longest_name[JVM_MAXPATHLEN - 1] = '\0'; -+ o_result = make_log_name_internal((const char*)&longest_name, NULL, pid, tms); -+ assert(o_result == NULL, err_msg("Too long file name after timestamp expansion should return NULL, but got '%s'", o_result)); -+ } -+ -+ { -+ // too long with pid -+ char longest_name[JVM_MAXPATHLEN]; -+ memset(longest_name, 'a', JVM_MAXPATHLEN); -+ longest_name[JVM_MAXPATHLEN - 3] = '%'; -+ longest_name[JVM_MAXPATHLEN - 2] = 'p'; -+ longest_name[JVM_MAXPATHLEN - 1] = '\0'; -+ o_result = make_log_name_internal((const char*)&longest_name, NULL, pid, tms); -+ assert(o_result == NULL, err_msg("Too long file name after pid expansion should return NULL, but got '%s'", o_result)); -+ } - } - #endif // PRODUCT - -@@ -629,9 +674,16 @@ - _bytes_written = 0L; - _file_name = make_log_name(file_name, NULL); - -+ if (_file_name == NULL) { -+ warning("Cannot open file %s: file name is too long.\n", file_name); -+ _need_close = false; -+ UseGCLogFileRotation = false; -+ return; -+ } -+ - // gc log file rotation - if (UseGCLogFileRotation && NumberOfGCLogFiles > 1) { -- char tempbuf[FILENAMEBUFLEN]; -+ char tempbuf[JVM_MAXPATHLEN]; - jio_snprintf(tempbuf, sizeof(tempbuf), "%s.%d" CURRENTAPPX, _file_name, _cur_file_num); - _file = fopen(tempbuf, "w"); - } else { -@@ -663,10 +715,10 @@ - // concurrent GC threads to run parallel with VMThread at safepoint, write and rotate_log - // must be synchronized. - void gcLogFileStream::rotate_log(bool force, outputStream* out) { -- char time_msg[FILENAMEBUFLEN]; -+ char time_msg[O_BUFLEN]; - char time_str[EXTRACHARLEN]; -- char current_file_name[FILENAMEBUFLEN]; -- char renamed_file_name[FILENAMEBUFLEN]; -+ char current_file_name[JVM_MAXPATHLEN]; -+ char renamed_file_name[JVM_MAXPATHLEN]; - - if (!should_rotate(force)) { - return; -@@ -705,12 +757,15 @@ - // have a form of extended_filename.<i>.current where i is the current rotation - // file number. After it reaches max file size, the file will be saved and renamed - // with .current removed from its tail. -- size_t filename_len = strlen(_file_name); - if (_file != NULL) { -- jio_snprintf(renamed_file_name, filename_len + EXTRACHARLEN, "%s.%d", -+ jio_snprintf(renamed_file_name, JVM_MAXPATHLEN, "%s.%d", - _file_name, _cur_file_num); -- jio_snprintf(current_file_name, filename_len + EXTRACHARLEN, "%s.%d" CURRENTAPPX, -- _file_name, _cur_file_num); -+ int result = jio_snprintf(current_file_name, JVM_MAXPATHLEN, -+ "%s.%d" CURRENTAPPX, _file_name, _cur_file_num); -+ if (result >= JVM_MAXPATHLEN) { -+ warning("Cannot create new log file name: %s: file name is too long.\n", current_file_name); -+ return; -+ } - - const char* msg = force ? "GC log rotation request has been received." - : "GC log file has reached the maximum size."; -@@ -749,19 +804,23 @@ - - _cur_file_num++; - if (_cur_file_num > NumberOfGCLogFiles - 1) _cur_file_num = 0; -- jio_snprintf(current_file_name, filename_len + EXTRACHARLEN, "%s.%d" CURRENTAPPX, -+ int result = jio_snprintf(current_file_name, JVM_MAXPATHLEN, "%s.%d" CURRENTAPPX, - _file_name, _cur_file_num); -+ if (result >= JVM_MAXPATHLEN) { -+ warning("Cannot create new log file name: %s: file name is too long.\n", current_file_name); -+ return; -+ } -+ - _file = fopen(current_file_name, "w"); - - if (_file != NULL) { - _bytes_written = 0L; - _need_close = true; - // reuse current_file_name for time_msg -- jio_snprintf(current_file_name, filename_len + EXTRACHARLEN, -+ jio_snprintf(current_file_name, JVM_MAXPATHLEN, - "%s.%d", _file_name, _cur_file_num); - jio_snprintf(time_msg, sizeof(time_msg), "%s GC log file created %s\n", -- os::local_time_string((char *)time_str, sizeof(time_str)), -- current_file_name); -+ os::local_time_string((char *)time_str, sizeof(time_str)), current_file_name); - write(time_msg, strlen(time_msg)); - - if (out != NULL) { -@@ -809,32 +868,64 @@ - return _log_file != NULL; - } - -+fileStream* defaultStream::open_file(const char* log_name) { -+ const char* try_name = make_log_name(log_name, NULL); -+ if (try_name == NULL) { -+ warning("Cannot open file %s: file name is too long.\n", log_name); -+ return NULL; -+ } -+ -+ fileStream* file = new(ResourceObj::C_HEAP, mtInternal) fileStream(try_name); -+ FREE_C_HEAP_ARRAY(char, try_name, mtInternal); -+ if (file->is_open()) { -+ return file; -+ } -+ -+ // Try again to open the file in the temp directory. -+ delete file; -+ char warnbuf[O_BUFLEN*2]; -+ jio_snprintf(warnbuf, sizeof(warnbuf), "Warning: Cannot open log file: %s\n", log_name); -+ // Note: This feature is for maintainer use only. No need for L10N. -+ jio_print(warnbuf); -+ try_name = make_log_name(log_name, os::get_temp_directory()); -+ if (try_name == NULL) { -+ warning("Cannot open file %s: file name is too long for directory %s.\n", log_name, os::get_temp_directory()); -+ return NULL; -+ } -+ -+ jio_snprintf(warnbuf, sizeof(warnbuf), -+ "Warning: Forcing option -XX:LogFile=%s\n", try_name); -+ jio_print(warnbuf); -+ -+ file = new(ResourceObj::C_HEAP, mtInternal) fileStream(try_name); -+ FREE_C_HEAP_ARRAY(char, try_name, mtInternal); -+ if (file->is_open()) { -+ return file; -+ } -+ -+ delete file; -+ return NULL; -+} -+ - void defaultStream::init_log() { - // %%% Need a MutexLocker? - const char* log_name = LogFile != NULL ? LogFile : "hotspot_%p.log"; -- const char* try_name = make_log_name(log_name, NULL); -- fileStream* file = new(ResourceObj::C_HEAP, mtInternal) fileStream(try_name); -- if (!file->is_open()) { -- // Try again to open the file. -- char warnbuf[O_BUFLEN*2]; -- jio_snprintf(warnbuf, sizeof(warnbuf), -- "Warning: Cannot open log file: %s\n", try_name); -- // Note: This feature is for maintainer use only. No need for L10N. -- jio_print(warnbuf); -- FREE_C_HEAP_ARRAY(char, try_name, mtInternal); -- try_name = make_log_name(log_name, os::get_temp_directory()); -- jio_snprintf(warnbuf, sizeof(warnbuf), -- "Warning: Forcing option -XX:LogFile=%s\n", try_name); -- jio_print(warnbuf); -- delete file; -- file = new(ResourceObj::C_HEAP, mtInternal) fileStream(try_name); -+ fileStream* file = open_file(log_name); -+ -+ if (file != NULL) { -+ _log_file = file; -+ _outer_xmlStream = new(ResourceObj::C_HEAP, mtInternal) xmlStream(file); -+ start_log(); -+ } else { -+ // and leave xtty as NULL -+ LogVMOutput = false; -+ DisplayVMOutput = true; -+ LogCompilation = false; - } -- FREE_C_HEAP_ARRAY(char, try_name, mtInternal); -+} - -- if (file->is_open()) { -- _log_file = file; -- xmlStream* xs = new(ResourceObj::C_HEAP, mtInternal) xmlStream(file); -- _outer_xmlStream = xs; -+void defaultStream::start_log() { -+ xmlStream*xs = _outer_xmlStream; - if (this == tty) xtty = xs; - // Write XML header. - xs->print_cr("<?xml version='1.0' encoding='UTF-8'?>"); -@@ -889,13 +980,6 @@ - xs->head("tty"); - // All further non-markup text gets copied to the tty: - xs->_text = this; // requires friend declaration! -- } else { -- delete(file); -- // and leave xtty as NULL -- LogVMOutput = false; -- DisplayVMOutput = true; -- LogCompilation = false; -- } - } - - // finish_log() is called during normal VM shutdown. finish_log_on_error() is ---- ./hotspot/src/share/vm/utilities/vmError.cpp Mon Sep 08 12:35:01 2014 -0700 -+++ ./hotspot/src/share/vm/utilities/vmError.cpp Mon Dec 08 12:28:35 2014 -0800 -@@ -22,6 +22,7 @@ - * - */ - -+#include <fcntl.h> - #include "precompiled.hpp" - #include "compiler/compileBroker.hpp" - #include "gc_interface/collectedHeap.hpp" -@@ -836,7 +837,8 @@ - static int expand_and_open(const char* pattern, char* buf, size_t buflen, size_t pos) { - int fd = -1; - if (Arguments::copy_expand_pid(pattern, strlen(pattern), &buf[pos], buflen - pos)) { -- fd = open(buf, O_RDWR | O_CREAT | O_TRUNC, 0666); -+ // the O_EXCL flag will cause the open to fail if the file exists -+ fd = open(buf, O_RDWR | O_CREAT | O_EXCL, 0666); - } - return fd; - } ---- ./jaxp/.hgtags Mon Sep 08 12:36:00 2014 -0700 -+++ ./jaxp/.hgtags Mon Dec 08 12:29:23 2014 -0800 -@@ -314,6 +314,8 @@ - dd09d8b9edefb5684941941e5d9b35c84ee066f3 jdk8u20-b24 - dd09d8b9edefb5684941941e5d9b35c84ee066f3 jdk8u20-b25 - 938b9d502c2b0f9684151e1b1f47cf7052db1502 jdk8u20-b26 -+f734649a3f89316d84fc669fdbf7bbff92e7291a jdk8u20-b31 -+d791a17744d50a456d60ee5118d8cb9633bb36d2 jdk8u20-b32 - 65e5ee249ebc81c0ccfff23946a0a2a6d4becdcc jdk8u25-b00 - b29277565edfdece4e3928b135d4fd86ae141e4f jdk8u25-b01 - 09df5bda467090041090873f71d418eebcadf516 jdk8u25-b02 -@@ -331,3 +333,19 @@ - 90f3b8b970a8bb3173083111248372afdc61652d jdk8u25-b14 - f5ac2e242bb95be0a3deddf37362178202086137 jdk8u25-b15 - df68b132a471ed1e825a79bd1d8acb47d2bcc04f jdk8u25-b16 -+7a721e57b38ff6c1d34af0b86f6482540a815d90 jdk8u25-b17 -+fddbc00bde281d7d437b052262e921ed51de8b9a jdk8u25-b18 -+30420a31a81f21e363f412ae9801b7467c8cc908 jdk8u25-b31 -+19b6e16343925a4bf27879795b530d4f64e5d262 jdk8u31-b00 -+469792d179304c9b3218930112547577e1aecb77 jdk8u31-b01 -+adbd3e31ef1a95b3f80a77dfbb843d52c053c6d3 jdk8u31-b02 -+d7961ca9afbc744674eb3ffda8ef2003158f3ea6 jdk8u31-b03 -+3bcd38c92f216e6e0fd74742720b6f786301953e jdk8u31-b04 -+17bca3fe325b353929e0eda3f1aaa7cc2806b93d jdk8u31-b05 -+a1ab81b8cc36b156f272b20da62922d7f8aa6fe9 jdk8u31-b06 -+573b761785f798a8b5366a87aceb7324b312f747 jdk8u31-b07 -+43f0821902a71c1fccc99be36a0b205b1ae79183 jdk8u31-b08 -+630b05fb2ddcdaeda6269ddb74357f651b73d6d7 jdk8u31-b09 -+b5165ac3556e95c42a295d3cbeef8cd6e5607b25 jdk8u31-b10 -+f475dbc70345904bda6b520af43955e244292886 jdk8u31-b11 -+6563e438377f2086253577e08593b1ddfb901eff jdk8u31-b12 ---- ./jaxp/src/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java Mon Sep 08 12:36:00 2014 -0700 -+++ ./jaxp/src/com/sun/org/apache/xerces/internal/impl/XML11EntityScanner.java Mon Dec 08 12:29:23 2014 -0800 -@@ -147,8 +147,9 @@ - fCurrentEntity.lineNumber++; - fCurrentEntity.columnNumber = 1; - if (fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = (char)c; -- load(1, false, true); -+ load(1, false, false); - } - if (c == '\r' && external) { - int cc = fCurrentEntity.ch[fCurrentEntity.position++]; -@@ -306,9 +307,10 @@ - - if (XML11Char.isXML11NameStart(ch)) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = ch; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - fCurrentEntity.columnNumber++; - String symbol = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 1); - return symbol; -@@ -317,9 +319,10 @@ - } - else if (XML11Char.isXML11NameHighSurrogate(ch)) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = ch; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - --fCurrentEntity.position; - --fCurrentEntity.startPosition; - return null; -@@ -332,10 +335,11 @@ - return null; - } - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(2); - fCurrentEntity.ch[0] = ch; - fCurrentEntity.ch[1] = ch2; - offset = 0; -- if (load(2, false, true)) { -+ if (load(2, false, false)) { - fCurrentEntity.columnNumber += 2; - String symbol = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 2); - return symbol; -@@ -464,9 +468,10 @@ - - if (XML11Char.isXML11NCNameStart(ch)) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = ch; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - fCurrentEntity.columnNumber++; - String symbol = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 1); - return symbol; -@@ -475,9 +480,10 @@ - } - else if (XML11Char.isXML11NameHighSurrogate(ch)) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = ch; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - --fCurrentEntity.position; - --fCurrentEntity.startPosition; - return null; -@@ -490,10 +496,11 @@ - return null; - } - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(2); - fCurrentEntity.ch[0] = ch; - fCurrentEntity.ch[1] = ch2; - offset = 0; -- if (load(2, false, true)) { -+ if (load(2, false, false)) { - fCurrentEntity.columnNumber += 2; - String symbol = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 2); - return symbol; -@@ -628,9 +635,10 @@ - - if (XML11Char.isXML11NCNameStart(ch)) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = ch; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - fCurrentEntity.columnNumber++; - String name = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 1); - qname.setValues(null, name, name, null); -@@ -640,9 +648,10 @@ - } - else if (XML11Char.isXML11NameHighSurrogate(ch)) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = ch; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - --fCurrentEntity.startPosition; - --fCurrentEntity.position; - return false; -@@ -655,10 +664,11 @@ - return false; - } - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(2); - fCurrentEntity.ch[0] = ch; - fCurrentEntity.ch[1] = ch2; - offset = 0; -- if (load(2, false, true)) { -+ if (load(2, false, false)) { - fCurrentEntity.columnNumber += 2; - String name = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 2); - qname.setValues(null, name, name, null); -@@ -835,8 +845,9 @@ - load(0, true, true); - } - else if (fCurrentEntity.position == fCurrentEntity.count - 1) { -+ invokeListeners(0); - fCurrentEntity.ch[0] = fCurrentEntity.ch[fCurrentEntity.count - 1]; -- load(1, false, true); -+ load(1, false, false); - fCurrentEntity.position = 0; - fCurrentEntity.startPosition = 0; - } -@@ -976,8 +987,9 @@ - load(0, true, true); - } - else if (fCurrentEntity.position == fCurrentEntity.count - 1) { -+ invokeListeners(0); - fCurrentEntity.ch[0] = fCurrentEntity.ch[fCurrentEntity.count - 1]; -- load(1, false, true); -+ load(1, false, false); - fCurrentEntity.startPosition = 0; - fCurrentEntity.position = 0; - } -@@ -1346,8 +1358,9 @@ - else if (c == '\n' && (cc == '\r' ) && fCurrentEntity.isExternal()) { - // handle newlines - if (fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = (char)cc; -- load(1, false, true); -+ load(1, false, false); - } - int ccc = fCurrentEntity.ch[++fCurrentEntity.position]; - if (ccc == '\n' || ccc == 0x85) { -@@ -1408,8 +1421,9 @@ - fCurrentEntity.lineNumber++; - fCurrentEntity.columnNumber = 1; - if (fCurrentEntity.position == fCurrentEntity.count - 1) { -+ invokeListeners(0); - fCurrentEntity.ch[0] = (char)c; -- entityChanged = load(1, true, true); -+ entityChanged = load(1, true, false); - if (!entityChanged) { - // the load change the position to be 1, - // need to restore it when entity not changed ---- ./jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java Mon Sep 08 12:36:00 2014 -0700 -+++ ./jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLEntityScanner.java Mon Dec 08 12:29:23 2014 -0800 -@@ -538,8 +538,9 @@ - fCurrentEntity.lineNumber++; - fCurrentEntity.columnNumber = 1; - if (fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = (char)c; -- load(1, false, true); -+ load(1, false, false); - } - if (c == '\r' && isExternal) { - if (fCurrentEntity.ch[fCurrentEntity.position++] != '\n') { -@@ -670,9 +671,10 @@ - int offset = fCurrentEntity.position; - if (XMLChar.isNameStart(fCurrentEntity.ch[offset])) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = fCurrentEntity.ch[offset]; - offset = 0; -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - fCurrentEntity.columnNumber++; - String symbol = fSymbolTable.addSymbol(fCurrentEntity.ch, 0, 1); - -@@ -776,10 +778,11 @@ - - if (XMLChar.isNameStart(fCurrentEntity.ch[offset])) { - if (++fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = fCurrentEntity.ch[offset]; - offset = 0; - -- if (load(1, false, true)) { -+ if (load(1, false, false)) { - fCurrentEntity.columnNumber++; - //adding into symbol table. - //XXX We are trying to add single character in SymbolTable?????? -@@ -906,8 +909,9 @@ - if (fCurrentEntity.position == fCurrentEntity.count) { - load(0, true, true); - } else if (fCurrentEntity.position == fCurrentEntity.count - 1) { -+ invokeListeners(0); - fCurrentEntity.ch[0] = fCurrentEntity.ch[fCurrentEntity.count - 1]; -- load(1, false, true); -+ load(1, false, false); - fCurrentEntity.position = 0; - } - -@@ -1054,8 +1058,9 @@ - if (fCurrentEntity.position == fCurrentEntity.count) { - load(0, true, true); - } else if (fCurrentEntity.position == fCurrentEntity.count - 1) { -+ invokeListeners(0); - fCurrentEntity.ch[0] = fCurrentEntity.ch[fCurrentEntity.count - 1]; -- load(1, false, true); -+ load(1, false, false); - fCurrentEntity.position = 0; - } - -@@ -1427,8 +1432,9 @@ - } else if (c == '\n' && cc == '\r' && isExternal) { - // handle newlines - if (fCurrentEntity.position == fCurrentEntity.count) { -+ invokeListeners(1); - fCurrentEntity.ch[0] = (char)cc; -- load(1, false, true); -+ load(1, false, false); - } - fCurrentEntity.position++; - if (fCurrentEntity.ch[fCurrentEntity.position] == '\n') { -@@ -1502,8 +1508,9 @@ - fCurrentEntity.lineNumber++; - fCurrentEntity.columnNumber = 1; - if (fCurrentEntity.position == fCurrentEntity.count - 1) { -+ invokeListeners(0); - fCurrentEntity.ch[0] = (char)c; -- entityChanged = load(1, true, true); -+ entityChanged = load(1, true, false); - if (!entityChanged){ - // the load change the position to be 1, - // need to restore it when entity not changed ---- ./jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java Mon Sep 08 12:36:00 2014 -0700 -+++ ./jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java Mon Dec 08 12:29:23 2014 -0800 -@@ -54,6 +54,7 @@ - import com.sun.org.apache.xerces.internal.util.SymbolTable; - import com.sun.org.apache.xerces.internal.util.XMLSymbols; - import com.sun.org.apache.xerces.internal.utils.SecuritySupport; -+import com.sun.org.apache.xerces.internal.utils.XMLSecurityManager; - import com.sun.org.apache.xerces.internal.utils.XMLSecurityPropertyManager; - import com.sun.org.apache.xerces.internal.xni.XNIException; - import com.sun.org.apache.xerces.internal.xni.grammars.Grammar; -@@ -983,6 +984,18 @@ - */ - public void reset(XMLComponentManager componentManager) throws XMLConfigurationException { - -+ XMLSecurityPropertyManager spm = (XMLSecurityPropertyManager)componentManager.getProperty(XML_SECURITY_PROPERTY_MANAGER); -+ if (spm == null) { -+ spm = new XMLSecurityPropertyManager(); -+ setProperty(XML_SECURITY_PROPERTY_MANAGER, spm); -+ } -+ -+ XMLSecurityManager sm = (XMLSecurityManager)componentManager.getProperty(SECURITY_MANAGER); -+ if (sm == null) -+ setProperty(SECURITY_MANAGER,new XMLSecurityManager(true)); -+ -+ faccessExternalSchema = spm.getValue(XMLSecurityPropertyManager.Property.ACCESS_EXTERNAL_SCHEMA); -+ - fGrammarBucket.reset(); - - fSubGroupHandler.reset(); -@@ -1066,9 +1079,6 @@ - // get generate-synthetic-annotations feature - fSchemaHandler.setGenerateSyntheticAnnotations(componentManager.getFeature(GENERATE_SYNTHETIC_ANNOTATIONS, false)); - fSchemaHandler.reset(componentManager); -- -- XMLSecurityPropertyManager spm = (XMLSecurityPropertyManager)componentManager.getProperty(XML_SECURITY_PROPERTY_MANAGER); -- faccessExternalSchema = spm.getValue(XMLSecurityPropertyManager.Property.ACCESS_EXTERNAL_SCHEMA); - } - - private void initGrammarBucket(){ ---- ./jaxp/src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java Mon Sep 08 12:36:00 2014 -0700 -+++ ./jaxp/src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java Mon Dec 08 12:29:23 2014 -0800 -@@ -227,7 +227,7 @@ - "\u4E0D\u660E\u306A\u8EF8\u30C8\u30E9\u30D0\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u3067\u3059: {0}"}, - - { ER_AXIS_NOT_SUPPORTED, -- "\u8EF8traverser\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"}, -+ "\u8EF8\u30C8\u30E9\u30D0\u30FC\u30B5\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"}, - - { ER_NO_DTMIDS_AVAIL, - "DTM ID\u306F\u3053\u308C\u4EE5\u4E0A\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093"}, -@@ -326,7 +326,7 @@ - "XMLReader\u306FstartParse\u30EA\u30AF\u30A8\u30B9\u30C8\u3088\u308A\u524D\u306B\u3067\u304D\u307E\u305B\u3093"}, - - { ER_AXIS_TRAVERSER_NOT_SUPPORTED, -- "\u8EF8traverser\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"}, -+ "\u8EF8\u30C8\u30E9\u30D0\u30FC\u30B5\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"}, - - { ER_ERRORHANDLER_CREATED_WITH_NULL_PRINTWRITER, - "null PrintWriter\u306B\u3088\u3063\u3066ListingErrorHandler\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002"}, ---- ./jaxws/.hgtags Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/.hgtags Mon Dec 08 12:29:31 2014 -0800 -@@ -312,6 +312,8 @@ - 1277c0d492fd9253f1ea2730eb160953397bd939 jdk8u20-b24 - 1277c0d492fd9253f1ea2730eb160953397bd939 jdk8u20-b25 - 7025a2c10ea4116ce8f31bb1e305f732aa1025f0 jdk8u20-b26 -+7053deda0ffd69046ef480b3595cf13451b477ec jdk8u20-b31 -+2f39063fee48f96fe9cacf704ce30c6fc333ae73 jdk8u20-b32 - efc85d318f4697f40bdd1f3757677be97f1758d9 jdk8u25-b00 - a76779e1b0376650dfc29a1f3b14760f05e0fc6d jdk8u25-b01 - 3d31955043b9f1807c9d695c7b5d604d11c132cf jdk8u25-b02 -@@ -329,3 +331,19 @@ - 392a9579cc95d27806c1dde16eee776524a49761 jdk8u25-b14 - d3a96bbb88521188a3af1a34dd9523f13afa521d jdk8u25-b15 - 4570a7d00aa9bd3df028f52d6f9d8c434163b689 jdk8u25-b16 -+d47a47f961ee423ce03623098f62d79254c6f328 jdk8u25-b17 -+cb0ad90bfe3c497c7236c5480447c4bde110934f jdk8u25-b18 -+a345282d661be80f2cdee3c43e12fbe01e7ff6d5 jdk8u25-b31 -+3a676fe898c93ad3afcaa55a71da96455e5f230e jdk8u31-b00 -+1c73ca9179f22d4a73d1a248a3254f891c71ee30 jdk8u31-b01 -+c1f1ed28e0bb68d7536fb30bb6f1a3623816b12a jdk8u31-b02 -+31893650acaf8935ad395d04cbc1575bada97622 jdk8u31-b03 -+60ee8e1e63aee861ea7606c5825c15209bb10aa2 jdk8u31-b04 -+e4e3070ba39416ea1f20a6583276117c5498466f jdk8u31-b05 -+90cd67a6b6e5e4db93155cc0260a94b55b35bc74 jdk8u31-b06 -+06807f9a68358f9684ab59b249760ba2b47cc07b jdk8u31-b07 -+45193c5ae26d67cd3dc6961506d8c06803ff646c jdk8u31-b08 -+9a310a2276f9a01822b3cfc91268a67cbaaafd0a jdk8u31-b09 -+dd0467f3fe130884849ad8fb226d76f02b4cbde4 jdk8u31-b10 -+497c783d228ed188d61964edd409794af3ad3e5c jdk8u31-b11 -+959e8fca46155528c8147da69a7c49edfb002cb1 jdk8u31-b12 ---- ./jaxws/src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -38,6 +38,9 @@ - - /** - * Utils class. -+ * -+ * WARNING: If you are doing any changes don't forget to change other Utils classes in different packages. -+ * - * Has *package private* access to avoid inappropriate usage. - */ - final class Utils { -@@ -51,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -69,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -38,6 +38,9 @@ - - /** - * Utils class. -+ * -+ * WARNING: If you are doing any changes don't forget to change other Utils classes in different packages. -+ * - * Has *package private* access to avoid inappropriate usage. - */ - final class Utils { -@@ -51,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -69,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/RuntimeBuiltinLeafInfoImpl.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/RuntimeBuiltinLeafInfoImpl.java Mon Dec 08 12:29:31 2014 -0800 -@@ -43,6 +43,8 @@ - import java.net.URI; - import java.net.URISyntaxException; - import java.net.URL; -+import java.security.AccessController; -+import java.security.PrivilegedAction; - import java.util.ArrayList; - import java.util.Calendar; - import java.util.Collections; -@@ -197,7 +199,15 @@ - - static { - -- QName[] qnames = (System.getProperty(MAP_ANYURI_TO_URI) == null) ? new QName[] { -+ String MAP_ANYURI_TO_URI_VALUE = AccessController.doPrivileged( -+ new PrivilegedAction<String>() { -+ @Override -+ public String run() { -+ return System.getProperty(MAP_ANYURI_TO_URI); -+ } -+ } -+ ); -+ QName[] qnames = (MAP_ANYURI_TO_URI_VALUE == null) ? new QName[] { - createXS("string"), - createXS("anySimpleType"), - createXS("normalizedString"), -@@ -310,7 +320,7 @@ - return v.toExternalForm(); - } - }); -- if (System.getProperty(MAP_ANYURI_TO_URI) == null) { -+ if (MAP_ANYURI_TO_URI_VALUE == null) { - secondaryList.add( - new StringImpl<URI>(URI.class, createXS("string")) { - public URI parse(CharSequence text) throws SAXException { -@@ -774,17 +784,18 @@ - } - }); - primaryList.add( -- new StringImpl<BigDecimal>(BigDecimal.class, -- createXS("decimal") -+ new StringImpl<BigDecimal>(BigDecimal.class, -+ createXS("decimal") - ) { -- public BigDecimal parse(CharSequence text) { -- return DatatypeConverterImpl._parseDecimal(text.toString()); -+ public BigDecimal parse(CharSequence text) { -+ return DatatypeConverterImpl._parseDecimal(text.toString()); -+ } -+ -+ public String print(BigDecimal v) { -+ return DatatypeConverterImpl._printDecimal(v); -+ } - } -- -- public String print(BigDecimal v) { -- return DatatypeConverterImpl._printDecimal(v); -- } -- }); -+ ); - primaryList.add( - new StringImpl<QName>(QName.class, - createXS("QName") -@@ -812,7 +823,7 @@ - w.getNamespaceContext().declareNamespace(v.getNamespaceURI(),v.getPrefix(),false); - } - }); -- if (System.getProperty(MAP_ANYURI_TO_URI) != null) { -+ if (MAP_ANYURI_TO_URI_VALUE != null) { - primaryList.add( - new StringImpl<URI>(URI.class, createXS("anyURI")) { - public URI parse(CharSequence text) throws SAXException { -@@ -830,16 +841,17 @@ - }); - } - primaryList.add( -- new StringImpl<Duration>(Duration.class, createXS("duration")) { -- public String print(Duration duration) { -- return duration.toString(); -+ new StringImpl<Duration>(Duration.class, createXS("duration")) { -+ public String print(Duration duration) { -+ return duration.toString(); -+ } -+ -+ public Duration parse(CharSequence lexical) { -+ TODO.checkSpec("JSR222 Issue #42"); -+ return DatatypeConverterImpl.getDatatypeFactory().newDuration(lexical.toString()); -+ } - } -- -- public Duration parse(CharSequence lexical) { -- TODO.checkSpec("JSR222 Issue #42"); -- return DatatypeConverterImpl.getDatatypeFactory().newDuration(lexical.toString()); -- } -- }); -+ ); - primaryList.add( - new StringImpl<Void>(Void.class) { - // 'void' binding isn't defined by the spec, but when the JAX-RPC processes user-defined ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -38,6 +38,9 @@ - - /** - * Utils class. -+ * -+ * WARNING: If you are doing any changes don't forget to change other Utils classes in different packages. -+ * - * Has *package private* access to avoid inappropriate usage. - */ - final class Utils { -@@ -51,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -69,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ArrayBeanInfoImpl.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ArrayBeanInfoImpl.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -79,19 +79,19 @@ - - @Override - public void startElement(UnmarshallingContext.State state, TagName ea) { -- state.target = new ArrayList(); -+ state.setTarget(new ArrayList()); - } - - @Override - public void leaveElement(UnmarshallingContext.State state, TagName ea) { -- state.target = toArray((List)state.target); -+ state.setTarget(toArray((List)state.getTarget())); - } - - @Override - public void childElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - if(ea.matches("","item")) { -- state.loader = itemLoader; -- state.receiver = this; -+ state.setLoader(itemLoader); -+ state.setReceiver(this); - } else { - super.childElement(state,ea); - } -@@ -103,9 +103,9 @@ - } - - public void receive(UnmarshallingContext.State state, Object o) { -- ((List)state.target).add(o); -+ ((List)state.getTarget()).add(o); - } -- }; -+ } - - protected Object toArray( List list ) { - int len = list.size(); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ContentHandlerAdaptor.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ContentHandlerAdaptor.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -25,10 +25,6 @@ - - package com.sun.xml.internal.bind.v2.runtime; - --import java.io.IOException; -- --import javax.xml.stream.XMLStreamException; -- - import com.sun.istack.internal.FinalArrayList; - import com.sun.istack.internal.SAXException2; - -@@ -36,6 +32,9 @@ - import org.xml.sax.SAXException; - import org.xml.sax.helpers.DefaultHandler; - -+import javax.xml.stream.XMLStreamException; -+import java.io.IOException; -+ - /** - * Receives SAX2 events and send the equivalent events to - * {@link XMLSerializer} -@@ -70,14 +69,14 @@ - private boolean containsPrefixMapping(String prefix, String uri) { - for( int i=0; i<prefixMap.size(); i+=2 ) { - if(prefixMap.get(i).equals(prefix) -- && prefixMap.get(i+1).equals(uri)) -+ && prefixMap.get(i+1).equals(uri)) - return true; - } - return false; - } - - public void startElement(String namespaceURI, String localName, String qName, Attributes atts) -- throws SAXException { -+ throws SAXException { - try { - flushText(); - -@@ -92,13 +91,13 @@ - serializer.startElement(namespaceURI,localName, p,null); - - // declare namespace events -- for( int i=0; i<prefixMap.size(); i+=2 ) { -+ for (int i = 0; i < prefixMap.size(); i += 2) { - // forcibly set this binding, instead of using declareNsUri. - // this guarantees that namespaces used in DOM will show up - // as-is in the marshalled output (instead of reassigned to something else, - // which may happen if you'd use declareNsUri.) - serializer.getNamespaceContext().force( -- prefixMap.get(i+1), prefixMap.get(i) ); -+ prefixMap.get(i + 1), prefixMap.get(i)); - } - // make sure namespaces needed by attributes are bound - for( int i=0; i<len; i++ ) { -@@ -108,7 +107,7 @@ - String prefix = getPrefix(qname); - - serializer.getNamespaceContext().declareNamespace( -- atts.getURI(i), prefix, true ); -+ atts.getURI(i), prefix, true ); - } - - serializer.endNamespaceDecls(null); -@@ -128,9 +127,10 @@ - } - } - -+ // make sure namespaces needed by attributes are bound - private String getPrefix(String qname) { - int idx = qname.indexOf(':'); -- String prefix = (idx==-1)?qname:qname.substring(0,idx); -+ String prefix = (idx == -1) ? "" : qname.substring(0, idx); - return prefix; - } - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ElementBeanInfoImpl.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ElementBeanInfoImpl.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -208,8 +208,8 @@ - - @Override - public final void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { -- state.loader = core; -- state.intercepter = this; -+ state.setLoader(core); -+ state.setIntercepter(this); - - // TODO: make sure there aren't too many duplicate of this code - // create the object to unmarshal -@@ -231,21 +231,21 @@ - fireBeforeUnmarshal(ElementBeanInfoImpl.this, child, state); - - context.recordOuterPeer(child); -- UnmarshallingContext.State p = state.prev; -- p.backup = p.target; -- p.target = child; -+ UnmarshallingContext.State p = state.getPrev(); -+ p.setBackup(p.getTarget()); -+ p.setTarget(child); - - core.startElement(state,ea); - } - - public Object intercept(UnmarshallingContext.State state, Object o) throws SAXException { -- JAXBElement e = (JAXBElement)state.target; -- state.target = state.backup; -- state.backup = null; -+ JAXBElement e = (JAXBElement)state.getTarget(); -+ state.setTarget(state.getBackup()); -+ state.setBackup(null); - -- if (state.nil) { -+ if (state.isNil()) { - e.setNil(true); -- state.nil = false; -+ state.setNil(false); - } - - if(o!=null) ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -38,6 +38,9 @@ - - /** - * Utils class. -+ * -+ * WARNING: If you are doing any changes don't forget to change other Utils classes in different packages. -+ * - * Has *package private* access to avoid inappropriate usage. - */ - final class Utils { -@@ -51,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -69,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ValueListBeanInfoImpl.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ValueListBeanInfoImpl.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -90,7 +90,7 @@ - idx = p; - } - -- state.target = toArray(r); -+ state.setTarget(toArray(r)); - } - }; - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/ArrayERProperty.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/ArrayERProperty.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -98,7 +98,7 @@ - UnmarshallingContext context = state.getContext(); - context.startScope(1); - // inherit the target so that our children can access its target -- state.target = state.prev.target; -+ state.setTarget(state.getPrev().getTarget()); - - // start it now, so that even if there's no children we can still return empty collection - context.getScope(0).start(acc,lister); -@@ -116,8 +116,8 @@ - super.childElement(state,ea); - return; - } -- state.loader = child.loader; -- state.receiver = child.receiver; -+ state.setLoader(child.loader); -+ state.setReceiver(child.receiver); - } - - @Override ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/SingleMapNodeProperty.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/SingleMapNodeProperty.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -148,18 +148,18 @@ - public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - // create or obtain the Map object - try { -- target.set((BeanT)state.prev.target); -+ target.set((BeanT)state.getPrev().getTarget()); - map.set(acc.get(target.get())); - depthCounter++; - if(map.get() == null) { - map.set(ClassFactory.create(mapImplClass)); - } - map.get().clear(); -- state.target = map.get(); -+ state.setTarget(map.get()); - } catch (AccessorException e) { - // recover from error by setting a dummy Map that receives and discards the values - handleGenericException(e,true); -- state.target = new HashMap(); -+ state.setTarget(new HashMap()); - } - } - -@@ -180,7 +180,7 @@ - @Override - public void childElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - if(ea.matches(entryTag)) { -- state.loader = entryLoader; -+ state.setLoader(entryLoader); - } else { - super.childElement(state,ea); - } -@@ -200,26 +200,26 @@ - private final Loader entryLoader = new Loader(false) { - @Override - public void startElement(UnmarshallingContext.State state, TagName ea) { -- state.target = new Object[2]; // this is inefficient -+ state.setTarget(new Object[2]); // this is inefficient - } - - @Override - public void leaveElement(UnmarshallingContext.State state, TagName ea) { -- Object[] keyValue = (Object[])state.target; -- Map map = (Map) state.prev.target; -+ Object[] keyValue = (Object[])state.getTarget(); -+ Map map = (Map) state.getPrev().getTarget(); - map.put(keyValue[0],keyValue[1]); - } - - @Override - public void childElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - if(ea.matches(keyTag)) { -- state.loader = keyLoader; -- state.receiver = keyReceiver; -+ state.setLoader(keyLoader); -+ state.setReceiver(keyReceiver); - return; - } - if(ea.matches(valueTag)) { -- state.loader = valueLoader; -- state.receiver = valueReceiver; -+ state.setLoader(valueLoader); -+ state.setReceiver(valueReceiver); - return; - } - super.childElement(state,ea); -@@ -237,7 +237,7 @@ - this.index = index; - } - public void receive(UnmarshallingContext.State state, Object o) { -- ((Object[])state.target)[index] = o; -+ ((Object[])state.getTarget())[index] = o; - } - } - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -38,6 +38,9 @@ - - /** - * Utils class. -+ * -+ * WARNING: If you are doing any changes don't forget to change other Utils classes in different packages. -+ * - * Has *package private* access to avoid inappropriate usage. - */ - final class Utils { -@@ -51,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -69,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Accessor.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Accessor.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -148,7 +148,7 @@ - - public void receive(UnmarshallingContext.State state, Object o) throws SAXException { - try { -- set((BeanT) state.target, (ValueT) o); -+ set((BeanT) state.getTarget(), (ValueT) o); - } catch (AccessorException e) { - Loader.handleGenericException(e, true); - } catch (IllegalAccessError iae) { ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -38,6 +38,9 @@ - - /** - * Utils class. -+ * -+ * WARNING: If you are doing any changes don't forget to change other Utils classes in different packages. -+ * - * Has *package private* access to avoid inappropriate usage. - */ - final class Utils { -@@ -51,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -69,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/DefaultValueLoaderDecorator.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/DefaultValueLoaderDecorator.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -44,10 +44,10 @@ - @Override - public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - // install the default value, but don't override the one given by the parent loader -- if(state.elementDefaultValue==null) -- state.elementDefaultValue = defaultValue; -+ if(state.getElementDefaultValue() == null) -+ state.setElementDefaultValue(defaultValue); - -- state.loader = l; -+ state.setLoader(l); - l.startElement(state,ea); - } - } ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Discarder.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Discarder.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -44,8 +44,8 @@ - - @Override - public void childElement(UnmarshallingContext.State state, TagName ea) { -- state.target = null; -+ state.setTarget(null); - // registering this allows the discarder to process the whole subtree. -- state.loader = this; -+ state.setLoader(this); - } - } ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/DomLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/DomLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -99,10 +99,10 @@ - @Override - public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - UnmarshallingContext context = state.getContext(); -- if (state.target == null) -- state.target = new State(context); -+ if (state.getTarget() == null) -+ state.setTarget(new State(context)); - -- State s = (State) state.target; -+ State s = (State) state.getTarget(); - try { - s.declarePrefixes(context, context.getNewlyDeclaredPrefixes()); - s.handler.startElement(ea.uri, ea.local, ea.getQname(), ea.atts); -@@ -114,10 +114,10 @@ - - @Override - public void childElement(UnmarshallingContext.State state, TagName ea) throws SAXException { -- state.loader = this; -- State s = (State) state.prev.target; -+ state.setLoader(this); -+ State s = (State) state.getPrev().getTarget(); - s.depth++; -- state.target = s; -+ state.setTarget(s); - } - - @Override -@@ -125,7 +125,7 @@ - if(text.length()==0) - return; // there's no point in creating an empty Text node in DOM. - try { -- State s = (State) state.target; -+ State s = (State) state.getTarget(); - s.handler.characters(text.toString().toCharArray(),0,text.length()); - } catch( SAXException e ) { - state.getContext().handleError(e); -@@ -135,7 +135,7 @@ - - @Override - public void leaveElement(UnmarshallingContext.State state, TagName ea) throws SAXException { -- State s = (State) state.target; -+ State s = (State) state.getTarget(); - UnmarshallingContext context = state.getContext(); - - try { -@@ -157,7 +157,7 @@ - } - - // we are done -- state.target = s.getElement(); -+ state.setTarget(s.getElement()); - } - } - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/LeafPropertyLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/LeafPropertyLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -47,7 +47,7 @@ - - public void text(UnmarshallingContext.State state, CharSequence text) throws SAXException { - try { -- xacc.parse(state.prev.target,text); -+ xacc.parse(state.getPrev().getTarget(), text); - } catch (AccessorException e) { - handleGenericException(e,true); - } catch (RuntimeException e) { ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/LeafPropertyXsiLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/LeafPropertyXsiLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -55,9 +55,9 @@ - - @Override - public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { -- state.loader = selectLoader(state, ea); -- -- state.loader.startElement(state, ea); -+ final Loader loader = selectLoader(state, ea); -+ state.setLoader(loader); -+ loader.startElement(state, ea); - } - - protected Loader selectLoader(UnmarshallingContext.State state, TagName ea) throws SAXException { ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Loader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Loader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -88,8 +88,8 @@ - public void childElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - // notify the error, then recover by ignoring the whole element. - reportUnexpectedChildElement(ea, true); -- state.loader = Discarder.INSTANCE; -- state.receiver = null; -+ state.setLoader(Discarder.INSTANCE); -+ state.setReceiver(null); - } - - @SuppressWarnings({"StringEquality"}) -@@ -195,10 +195,10 @@ - UnmarshallingContext context = state.getContext(); - Unmarshaller.Listener listener = context.parent.getListener(); - if(beanInfo.hasBeforeUnmarshalMethod()) { -- beanInfo.invokeBeforeUnmarshalMethod(context.parent, child, state.prev.target); -+ beanInfo.invokeBeforeUnmarshalMethod(context.parent, child, state.getPrev().getTarget()); - } - if(listener!=null) { -- listener.beforeUnmarshal(child, state.prev.target); -+ listener.beforeUnmarshal(child, state.getPrev().getTarget()); - } - } - } -@@ -215,10 +215,10 @@ - UnmarshallingContext context = state.getContext(); - Unmarshaller.Listener listener = context.parent.getListener(); - if(beanInfo.hasAfterUnmarshalMethod()) { -- beanInfo.invokeAfterUnmarshalMethod(context.parent, child, state.target); -+ beanInfo.invokeAfterUnmarshalMethod(context.parent, child, state.getTarget()); - } - if(listener!=null) -- listener.afterUnmarshal(child, state.target); -+ listener.afterUnmarshal(child, state.getTarget()); - } - } - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/ProxyLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/ProxyLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -41,7 +41,7 @@ - @Override - public final void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - Loader loader = selectLoader(state,ea); -- state.loader = loader; -+ state.setLoader(loader); - loader.startElement(state,ea); - } - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/SAXConnector.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/SAXConnector.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -144,17 +144,7 @@ - if( qname==null || qname.length()==0 ) - qname=local; - -- -- boolean ignorable = true; -- StructureLoader sl; -- -- // not null only if element content is processed (StructureLoader is used) -- // ugly -- if((sl = this.context.getStructureLoader()) != null) { -- ignorable = ((ClassBeanInfoImpl)sl.getBeanInfo()).hasElementOnlyContentModel(); -- } -- -- processText(ignorable); -+ processText(!context.getCurrentState().isMixed()); - - tagName.uri = uri; - tagName.local = local; -@@ -204,7 +194,7 @@ - } - - private void processText( boolean ignorable ) throws SAXException { -- if( predictor.expectText() && (!ignorable || !WhiteSpaceProcessor.isWhiteSpace(buffer))) -+ if (predictor.expectText() && (!ignorable || !WhiteSpaceProcessor.isWhiteSpace(buffer))) - next.text(buffer); - buffer.setLength(0); - } ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Scope.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/Scope.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -97,7 +97,7 @@ - public void add( Accessor<BeanT,PropT> acc, Lister<BeanT,PropT,ItemT,PackT> lister, ItemT value) throws SAXException{ - try { - if(!hasStarted()) { -- this.bean = (BeanT)context.getCurrentState().target; -+ this.bean = (BeanT)context.getCurrentState().getTarget(); - this.acc = acc; - this.lister = lister; - this.pack = lister.startPacking(bean,acc); -@@ -121,7 +121,7 @@ - public void start( Accessor<BeanT,PropT> acc, Lister<BeanT,PropT,ItemT,PackT> lister) throws SAXException{ - try { - if(!hasStarted()) { -- this.bean = (BeanT)context.getCurrentState().target; -+ this.bean = (BeanT)context.getCurrentState().getTarget(); - this.acc = acc; - this.lister = lister; - this.pack = lister.startPacking(bean,acc); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/StAXStreamConnector.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/StAXStreamConnector.java Mon Dec 08 12:29:31 2014 -0800 -@@ -70,7 +70,7 @@ - // Quick hack until SJSXP fixes 6270116 - boolean isZephyr = readerClass.getName().equals("com.sun.xml.internal.stream.XMLReaderImpl"); - if (getBoolProp(reader,"org.codehaus.stax2.internNames") && -- getBoolProp(reader,"org.codehaus.stax2.internNsUris")) -+ getBoolProp(reader,"org.codehaus.stax2.internNsUris")) - ; // no need for interning - else - if (isZephyr) -@@ -219,8 +219,8 @@ - int nsCount = staxStreamReader.getNamespaceCount(); - for (int i = 0; i < nsCount; i++) { - visitor.startPrefixMapping( -- fixNull(staxStreamReader.getNamespacePrefix(i)), -- fixNull(staxStreamReader.getNamespaceURI(i))); -+ fixNull(staxStreamReader.getNamespacePrefix(i)), -+ fixNull(staxStreamReader.getNamespaceURI(i))); - } - - // fire startElement -@@ -310,13 +310,13 @@ - protected void handleCharacters() throws XMLStreamException, SAXException { - if( predictor.expectText() ) - buffer.append( -- staxStreamReader.getTextCharacters(), -- staxStreamReader.getTextStart(), -- staxStreamReader.getTextLength() ); -+ staxStreamReader.getTextCharacters(), -+ staxStreamReader.getTextStart(), -+ staxStreamReader.getTextLength() ); - } - - private void processText( boolean ignorable ) throws SAXException { -- if( predictor.expectText() && (!ignorable || !WhiteSpaceProcessor.isWhiteSpace(buffer))) { -+ if( predictor.expectText() && (!ignorable || !WhiteSpaceProcessor.isWhiteSpace(buffer) || context.getCurrentState().isMixed())) { - if(textReported) { - textReported = false; - } else { ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/StructureLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/StructureLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -172,7 +172,7 @@ - - context.recordInnerPeer(child); - -- state.target = child; -+ state.setTarget(child); - - fireBeforeUnmarshal(beanInfo, child, state); - -@@ -197,7 +197,7 @@ - String qname = atts.getQName(i); - if(atts.getURI(i).equals(WellKnownNamespace.XML_SCHEMA_INSTANCE)) - continue; // xsi:* attributes are meant to be processed by us, not by user apps. -- Object o = state.target; -+ Object o = state.getTarget(); - Map<QName,String> map = attCatchAll.get(o); - if(map==null) { - // TODO: use ClassFactory.inferImplClass(sig,knownImplClasses) -@@ -250,8 +250,8 @@ - } - } - -- state.loader = child.loader; -- state.receiver = child.receiver; -+ state.setLoader(child.loader); -+ state.setReceiver(child.receiver); - } - - @Override -@@ -273,7 +273,7 @@ - @Override - public void leaveElement(UnmarshallingContext.State state, TagName ea) throws SAXException { - state.getContext().endScope(frameSize); -- fireAfterUnmarshal(beanInfo, state.target, state.prev); -+ fireAfterUnmarshal(beanInfo, state.getTarget(), state.getPrev()); - } - - private static final QNameMap<TransducedAccessor> EMPTY = new QNameMap<TransducedAccessor>(); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/TextLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/TextLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -51,7 +51,7 @@ - - public void text(UnmarshallingContext.State state, CharSequence text) throws SAXException { - try { -- state.target = xducer.parse(text); -+ state.setTarget(xducer.parse(text)); - } catch (AccessorException e) { - handleGenericException(e,true); - } catch (RuntimeException e) { ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/UnmarshallingContext.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/UnmarshallingContext.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -35,8 +35,6 @@ - import java.util.List; - import java.util.Map; - import java.util.concurrent.Callable; --import java.util.logging.Level; --import java.util.logging.Logger; - - import javax.xml.XMLConstants; - import javax.xml.bind.JAXBElement; -@@ -198,20 +196,19 @@ - /** - * Loader that owns this element. - */ -- public Loader loader; -+ private Loader loader; - /** - * Once {@link #loader} is completed, this receiver - * receives the result. - */ -- public Receiver receiver; -+ private Receiver receiver; - -- public Intercepter intercepter; -- -+ private Intercepter intercepter; - - /** - * Object being unmarshalled by this {@link #loader}. - */ -- public Object target; -+ private Object target; - - /** - * Hack for making JAXBElement unmarshalling work. -@@ -240,7 +237,7 @@ - * @see ElementBeanInfoImpl.IntercepterLoader#startElement(State, TagName) - * @see ElementBeanInfoImpl.IntercepterLoader#intercept(State, Object) - */ -- public Object backup; -+ private Object backup; - - /** - * Number of {@link UnmarshallingContext#nsBind}s declared thus far. -@@ -256,17 +253,22 @@ - * or by a child {@link Loader} when - * {@link Loader#startElement(State, TagName)} is called. - */ -- public String elementDefaultValue; -+ private String elementDefaultValue; - - /** - * {@link State} for the parent element - * - * {@link State} objects form a doubly linked list. - */ -- public State prev; -+ private State prev; - private State next; - -- public boolean nil = false; -+ private boolean nil = false; -+ -+ /** -+ * specifies that we are working with mixed content -+ */ -+ private boolean mixed = false; - - /** - * Gets the context. -@@ -280,6 +282,8 @@ - this.prev = prev; - if (prev!=null) { - prev.next = this; -+ if (prev.mixed) // parent is in mixed mode -+ this.mixed = true; - } - } - -@@ -289,7 +293,7 @@ - } - if (next==null) { - assert current == this; -- allocateMoreStates(); -+ next = new State(this); - } - nil = false; - State n = next; -@@ -304,11 +308,71 @@ - assert prev!=null; - loader = null; - nil = false; -+ mixed = false; - receiver = null; - intercepter = null; - elementDefaultValue = null; - target = null; - current = prev; -+ next = null; -+ } -+ -+ public boolean isMixed() { -+ return mixed; -+ } -+ -+ public Object getTarget() { -+ return target; -+ } -+ -+ public void setLoader(Loader loader) { -+ if (loader instanceof StructureLoader) // set mixed mode -+ mixed = !((StructureLoader)loader).getBeanInfo().hasElementOnlyContentModel(); -+ this.loader = loader; -+ } -+ -+ public void setReceiver(Receiver receiver) { -+ this.receiver = receiver; -+ } -+ -+ public State getPrev() { -+ return prev; -+ } -+ -+ public void setIntercepter(Intercepter intercepter) { -+ this.intercepter = intercepter; -+ } -+ -+ public void setBackup(Object backup) { -+ this.backup = backup; -+ } -+ -+ public void setTarget(Object target) { -+ this.target = target; -+ } -+ -+ public Object getBackup() { -+ return backup; -+ } -+ -+ public boolean isNil() { -+ return nil; -+ } -+ -+ public void setNil(boolean nil) { -+ this.nil = nil; -+ } -+ -+ public Loader getLoader() { -+ return loader; -+ } -+ -+ public String getElementDefaultValue() { -+ return elementDefaultValue; -+ } -+ -+ public void setElementDefaultValue(String elementDefaultValue) { -+ this.elementDefaultValue = elementDefaultValue; - } - } - -@@ -348,7 +412,6 @@ - this.parent = _parent; - this.assoc = assoc; - this.root = this.current = new State(null); -- allocateMoreStates(); - } - - public void reset(InfosetScanner scanner,boolean isInplaceMode, JaxBeanInfo expectedType, IDResolver idResolver) { -@@ -395,23 +458,6 @@ - return null; - } - -- /** -- * Allocates a few more {@link State}s. -- * -- * Allocating multiple {@link State}s at once allows those objects -- * to be allocated near each other, which reduces the working set -- * of CPU. It improves the chance the relevant data is in the cache. -- */ -- private void allocateMoreStates() { -- // this method should be used only when we run out of a state. -- assert current.next==null; -- -- State s = current; -- for (int i=0; i<8; i++) { -- s = new State(s); -- } -- } -- - public void clearStates() { - State last = current; - while (last.next != null) last = last.next; -@@ -515,16 +561,15 @@ - - @Override - public void text(CharSequence pcdata) throws SAXException { -- State cur = current; - pushCoordinator(); - try { -- if(cur.elementDefaultValue!=null) { -- if(pcdata.length()==0) { -+ if (current.elementDefaultValue != null) { -+ if (pcdata.length() == 0) { - // send the default value into the unmarshaller instead -- pcdata = cur.elementDefaultValue; -+ pcdata = current.elementDefaultValue; - } - } -- cur.loader.text(cur,pcdata); -+ current.loader.text(current, pcdata); - } finally { - popCoordinator(); - } ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/ValuePropertyLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/ValuePropertyLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -49,18 +49,17 @@ - - public void text(UnmarshallingContext.State state, CharSequence text) throws SAXException { - try { -- xacc.parse(state.target,text); -+ xacc.parse(state.getTarget(),text); - } catch (AccessorException e) { - handleGenericException(e,true); - } catch (RuntimeException e) { -- if(state.prev != null) { -- if(state.prev.target instanceof JAXBElement) { -- ; // do nothing - issue 601 - don't report exceptions like -- // NumberFormatException when unmarshalling "nillable" element -- // (I suppose JAXBElement indicates this -- } else { -+ if(state.getPrev() != null) { -+ if (!(state.getPrev().getTarget() instanceof JAXBElement)) - handleParseConversionException(state,e); -- } -+ // else -+ // do nothing - issue 601 - don't report exceptions like -+ // NumberFormatException when unmarshalling "nillable" element -+ // (I suppose JAXBElement indicates this - } else { - handleParseConversionException(state,e); - } ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/XsiNilLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/XsiNilLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -62,7 +62,7 @@ - onNil(state); - boolean hasOtherAttributes = (ea.atts.getLength() - 1) > 0; - // see issues 6759703 and 565 - need to preserve attributes even if the element is nil; only when the type is stored in JAXBElement -- if (!(hasOtherAttributes && (state.prev.target instanceof JAXBElement))) { -+ if (!(hasOtherAttributes && (state.getPrev().getTarget() instanceof JAXBElement))) { - return Discarder.INSTANCE; - } - } -@@ -96,8 +96,8 @@ - @Override - protected void onNil(UnmarshallingContext.State state) throws SAXException { - try { -- acc.set(state.prev.target,null); -- state.prev.nil = true; -+ acc.set(state.getPrev().getTarget(),null); -+ state.getPrev().setNil(true); - } catch (AccessorException e) { - handleGenericException(e,true); - } -@@ -113,7 +113,7 @@ - @Override - protected void onNil(UnmarshallingContext.State state) { - // let the receiver add this to the lister -- state.target = null; -+ state.setTarget(null); - } - } - } ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/XsiTypeLoader.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/XsiTypeLoader.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -61,7 +61,7 @@ - beanInfo = defaultBeanInfo; - - Loader loader = beanInfo.getLoader(null,false); -- state.loader = loader; -+ state.setLoader(loader); - loader.startElement(state,ea); - } - ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/util/XmlFactory.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/util/XmlFactory.java Mon Dec 08 12:29:31 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2013, 2014, 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 -@@ -25,8 +25,10 @@ - - package com.sun.xml.internal.bind.v2.util; - --import com.sun.xml.internal.bind.Util; - import com.sun.xml.internal.bind.v2.Messages; -+ -+import java.security.AccessController; -+import java.security.PrivilegedAction; - import java.util.logging.Level; - import java.util.logging.Logger; - import javax.xml.XMLConstants; -@@ -43,8 +45,6 @@ - import org.xml.sax.SAXNotRecognizedException; - import org.xml.sax.SAXNotSupportedException; - --import static com.sun.xml.internal.bind.Util.getSystemProperty; -- - /** - * Provides helper methods for creating properly configured XML parser - * factory instances with namespace support turned on and configured for -@@ -68,7 +68,14 @@ - */ - private static final String DISABLE_XML_SECURITY = "com.sun.xml.internal.bind.disableXmlSecurity"; - -- public static final boolean XML_SECURITY_DISABLED = Boolean.parseBoolean(getSystemProperty(DISABLE_XML_SECURITY)); -+ private static final boolean XML_SECURITY_DISABLED = AccessController.doPrivileged( -+ new PrivilegedAction<Boolean>() { -+ @Override -+ public Boolean run() { -+ return Boolean.getBoolean(DISABLE_XML_SECURITY); -+ } -+ } -+ ); - - private static boolean isXMLSecurityDisabled(boolean runtimeSetting) { - return XML_SECURITY_DISABLED || runtimeSetting; ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -54,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -72,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/spi/ProviderImpl.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/spi/ProviderImpl.java Mon Dec 08 12:29:31 2014 -0800 -@@ -147,19 +147,12 @@ - } - - public EndpointReference readEndpointReference(final Source eprInfoset) { -- // EPR constructors are private, so we need privilege escalation. -- // this unmarshalling can only access instances of a fixed, known set of classes, -- // so doing that shouldn't introduce security vulnerability. -- return AccessController.doPrivileged(new PrivilegedAction<EndpointReference>() { -- public EndpointReference run() { -- try { -- Unmarshaller unmarshaller = eprjc.get().createUnmarshaller(); -- return (EndpointReference) unmarshaller.unmarshal(eprInfoset); -- } catch (JAXBException e) { -- throw new WebServiceException("Error creating Marshaller or marshalling.", e); -- } -- } -- }); -+ try { -+ Unmarshaller unmarshaller = eprjc.get().createUnmarshaller(); -+ return (EndpointReference) unmarshaller.unmarshal(eprInfoset); -+ } catch (JAXBException e) { -+ throw new WebServiceException("Error creating Marshaller or marshalling.", e); -+ } - } - - public <T> T getPort(EndpointReference endpointReference, Class<T> clazz, WebServiceFeature... webServiceFeatures) { ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/spi/db/Utils.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/spi/db/Utils.java Mon Dec 08 12:29:31 2014 -0800 -@@ -54,17 +54,20 @@ - - static { // we statically initializing REFLECTION_NAVIGATOR property - try { -- Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); -- //noinspection unchecked -- final Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ final Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); - - // requires accessClassInPackage privilege -- AccessController.doPrivileged( -- new PrivilegedAction<Object>() { -+ final Method getInstance = AccessController.doPrivileged( -+ new PrivilegedAction<Method>() { - @Override -- public Object run() { -- getInstance.setAccessible(true); -- return null; -+ public Method run() { -+ try { -+ Method getInstance = refNav.getDeclaredMethod("getInstance"); -+ getInstance.setAccessible(true); -+ return getInstance; -+ } catch (NoSuchMethodException e) { -+ throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); -+ } - } - } - ); -@@ -72,16 +75,10 @@ - //noinspection unchecked - REFLECTION_NAVIGATOR = (Navigator<Type, Class, Field, Method>) getInstance.invoke(null); - } catch (ClassNotFoundException e) { -- e.printStackTrace(); - throw new IllegalStateException("Can't find ReflectionNavigator class"); - } catch (InvocationTargetException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance throws the exception"); -- } catch (NoSuchMethodException e) { -- e.printStackTrace(); -- throw new IllegalStateException("ReflectionNavigator.getInstance can't be found"); - } catch (IllegalAccessException e) { -- e.printStackTrace(); - throw new IllegalStateException("ReflectionNavigator.getInstance method is inaccessible"); - } catch (SecurityException e) { - LOGGER.log(Level.FINE, "Unable to access ReflectionNavigator.getInstance", e); ---- ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/XmlUtil.java Mon Sep 08 12:36:09 2014 -0700 -+++ ./jaxws/src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/XmlUtil.java Mon Dec 08 12:29:31 2014 -0800 -@@ -63,6 +63,8 @@ - import java.io.OutputStreamWriter; - import java.io.Writer; - import java.net.URL; -+import java.security.AccessController; -+import java.security.PrivilegedAction; - import java.util.ArrayList; - import java.util.Enumeration; - import java.util.Iterator; -@@ -84,12 +86,16 @@ - - private static final Logger LOGGER = Logger.getLogger(XmlUtil.class.getName()); - -- private static boolean XML_SECURITY_DISABLED; -+ private static final String DISABLE_XML_SECURITY = "com.sun.xml.internal.ws.disableXmlSecurity"; - -- static { -- String disableXmlSecurity = System.getProperty("com.sun.xml.internal.ws.disableXmlSecurity"); -- XML_SECURITY_DISABLED = disableXmlSecurity == null || !Boolean.valueOf(disableXmlSecurity); -- } -+ private static boolean XML_SECURITY_DISABLED = AccessController.doPrivileged( -+ new PrivilegedAction<Boolean>() { -+ @Override -+ public Boolean run() { -+ return Boolean.getBoolean(DISABLE_XML_SECURITY); -+ } -+ } -+ ); - - public static String getPrefix(String s) { - int i = s.indexOf(':'); ---- ./jdk/.hgtags Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/.hgtags Mon Dec 08 12:29:42 2014 -0800 -@@ -312,6 +312,8 @@ - dfb9f24d56b51e5a2ca26e77fc69a2464d51a4d3 jdk8u20-b24 - dfb9f24d56b51e5a2ca26e77fc69a2464d51a4d3 jdk8u20-b25 - dd229c5f57bff4e75a70908294a13072b9a48385 jdk8u20-b26 -+684a13a7d2ccc91d2ad709ecad1fddbcc992ee5a jdk8u20-b31 -+eb459e6ac74a7db7b49393e470d04b6d854dfa89 jdk8u20-b32 - abca9f6f1a10e9f91b2538bbe7870f54f550d986 jdk8u25-b00 - 7d0627679c9fdeaaaa9fe15c7cc11af0763621ec jdk8u25-b01 - b0277ec994b751ebb761814675352506cd56bcd6 jdk8u25-b02 -@@ -332,3 +334,19 @@ - 0000000000000000000000000000000000000000 jdk8u25-b16 - 0000000000000000000000000000000000000000 jdk8u25-b16 - d067890f970f3a712f870f6311d20f3359b6eaf0 jdk8u25-b16 -+67b22a82345bfa1ae1492679bdf3c4d54f4eacde jdk8u25-b17 -+a4e88eaf15ea0569f3275a807a976fe0e04a086c jdk8u25-b18 -+556c79ef8a1d2fa38f79b3d3e102e80e0b0c9731 jdk8u25-b31 -+f935349e2c065487c745bc41f81ddc7869bd2d2d jdk8u31-b00 -+caebf6158e9d522df41a2c89a1602e5013bac401 jdk8u31-b01 -+b1cef4d76664564732004cf3aedb0cbaa1972683 jdk8u31-b02 -+649c7ba692012fd93c532fea133cf14785674387 jdk8u31-b03 -+ab6aa5ee3897ebfe4a04722a594fb2cecd6f3bef jdk8u31-b04 -+1e79baf89075967bddc64921d2680d8c1123f654 jdk8u31-b05 -+b6aeaae6dd9d3a17564130af142b4734c643267e jdk8u31-b06 -+34a484abc5d5391623294743d15e234a99d04dd7 jdk8u31-b07 -+ca1adc7c848370dda8dbf9e3a970c3e6427fb05b jdk8u31-b08 -+1c0cc3bbe07d52906d7ffbb72fa4733c327f1326 jdk8u31-b09 -+291505d802d9075e227f9ee865a67234e1d737cf jdk8u31-b10 -+a21dd7999d1e4ba612c951c2c78504d23eb7243a jdk8u31-b11 -+6a12f34816d2ee12368274fc21225384a8893426 jdk8u31-b12 ---- ./jdk/make/data/tzdata/VERSION Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/VERSION Mon Dec 08 12:29:42 2014 -0800 -@@ -1,24 +1,24 @@ - # - # 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. Oracle designates this - # particular file as subject to the "Classpath" exception as provided - # by Oracle in the LICENSE file that accompanied this code. --# -+# - # 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. - # --tzdata2014c -+tzdata2014j ---- ./jdk/make/data/tzdata/africa Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/africa Mon Dec 08 12:29:42 2014 -0800 -@@ -21,36 +21,35 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2013-02-21): -+# From Paul Eggert (2014-10-31): - # --# A good source for time zone historical data outside the U.S. is -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Another source occasionally used is Edward W. Whitman, World Time Differences, - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which - # I found in the UCLA library. - # - # For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 - # - # A reliable and entertaining source about time zones is - # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997). -@@ -58,13 +57,13 @@ - # 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 --# the area that includes Nigeria is ``West Africa''. --# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference. -+# '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 -+# 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; -+# 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 -@@ -77,7 +76,7 @@ - # 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 -+# 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. - # -@@ -88,7 +87,6 @@ - # 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 --# 4:00 EAST East Africa Summer Time (no longer used) - - # Algeria - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -117,9 +115,9 @@ - # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's - # more precise 0:09:21. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01 -- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -- 0:00 Algeria WE%sT 1940 Feb 25 2:00 -+Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01 -+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -+ 0:00 Algeria WE%sT 1940 Feb 25 2:00 - 1:00 Algeria CE%sT 1946 Oct 7 - 0:00 - WET 1956 Jan 29 - 1:00 - CET 1963 Apr 14 -@@ -129,92 +127,71 @@ - 1:00 - CET - - # Angola --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Luanda 0:52:56 - LMT 1892 -- 0:52:04 - AOT 1911 May 26 # Angola Time -- 1:00 - WAT -- - # Benin --# Whitman says they switched to 1:00 in 1946, not 1934; --# go with Shanks & Pottenger. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Porto-Novo 0:10:28 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- 1:00 - WAT -+# See Africa/Lagos. - - # Botswana --# From Paul Eggert (2013-02-21): --# Milne says they were regulated by the Cape Town Signal in 1899; --# assume they switched to 2:00 when Cape Town did. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Gaborone 1:43:40 - LMT 1885 -- 1:30 - SAST 1903 Mar -- 2:00 - CAT 1943 Sep 19 2:00 -- 2:00 1:00 CAST 1944 Mar 19 2:00 -- 2:00 - CAT -+# See Africa/Maputo. - - # Burkina Faso --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Ouagadougou -0:06:04 - LMT 1912 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Burundi --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bujumbura 1:57:28 - LMT 1890 -- 2:00 - CAT -+# See Africa/Maputo. - - # Cameroon --# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Douala 0:38:48 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - - # Cape Verde -+# -+# Shanks gives 1907 for the transition to CVT. -+# Perhaps the 1911-05-26 Portuguese decree -+# http://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 -+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 -+ -2:00 - CVT 1975 Nov 25 2:00 - -1:00 - CVT - - # Central African Republic --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bangui 1:14:20 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - - # Chad - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Ndjamena 1:00:12 - LMT 1912 -+Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena - 1:00 - WAT 1979 Oct 14 - 1:00 1:00 WAST 1980 Mar 8 - 1:00 - WAT - - # Comoros --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro -- 3:00 - EAT -+# See Africa/Nairobi. - --# Democratic Republic of Congo --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9 -- 1:00 - WAT --Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9 -- 2:00 - CAT -+# Democratic Republic of the Congo -+# See Africa/Lagos for the western part and Africa/Maputo for the eastern. - - # Republic of the Congo --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Brazzaville 1:01:08 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - --# Cote D'Ivoire -+# Côte d'Ivoire / Ivory Coast - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Abidjan -0:16:08 - LMT 1912 - 0:00 - GMT -+Link Africa/Abidjan Africa/Bamako # Mali -+Link Africa/Abidjan Africa/Banjul # Gambia -+Link Africa/Abidjan Africa/Conakry # Guinea -+Link Africa/Abidjan Africa/Dakar # Senegal -+Link Africa/Abidjan Africa/Freetown # Sierra Leone -+Link Africa/Abidjan Africa/Lome # Togo -+Link Africa/Abidjan Africa/Nouakchott # Mauritania -+Link Africa/Abidjan Africa/Ouagadougou # Burkina Faso -+Link Africa/Abidjan Africa/Sao_Tome # São Tomé and Príncipe -+Link Africa/Abidjan Atlantic/St_Helena # St Helena - - # Djibouti --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul -- 3:00 - EAT -+# See Africa/Nairobi. - - ############################################################################### - -@@ -254,30 +231,26 @@ - # Egyptians would approve the cancellation." - # - # Egypt to cancel daylight saving time --# <a href="http://www.almasryalyoum.com/en/node/407168"> - # http://www.almasryalyoum.com/en/node/407168 --# </a> - # or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_egypt04.html"> - # http://www.worldtimezone.com/dst_news/dst_news_egypt04.html --# </a> - Rule Egypt 1995 2010 - Apr lastFri 0:00s 1:00 S --Rule Egypt 1995 2005 - Sep lastThu 23:00s 0 - -+Rule Egypt 1995 2005 - Sep lastThu 24:00 0 - - # From Steffen Thorsen (2006-09-19): - # The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports: - # Egypt will turn back clocks by one hour at the midnight of Thursday - # after observing the daylight saving time since May. - # http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf --Rule Egypt 2006 only - Sep 21 23:00s 0 - -+Rule Egypt 2006 only - Sep 21 24:00 0 - - # From Dirk Losch (2007-08-14): - # I received a mail from an airline which says that the daylight - # saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07. --# From Jesper Norgaard Welen (2007-08-15): [The following agree:] -+# From Jesper Nørgaard Welen (2007-08-15): [The following agree:] - # http://www.nentjes.info/Bill/bill5.htm - # http://www.timeanddate.com/worldclock/city.html?n=53 - # From Steffen Thorsen (2007-09-04): The official information...: - # http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm --Rule Egypt 2007 only - Sep Thu>=1 23:00s 0 - -+Rule Egypt 2007 only - Sep Thu>=1 24:00 0 - - # From Abdelrahman Hassan (2007-09-06): - # Due to the Hijri (lunar Islamic calendar) year being 11 days shorter - # than the year of the Gregorian calendar, Ramadan shifts earlier each -@@ -311,15 +284,9 @@ - # - # timeanddate[2] and another site I've found[3] also support that. - # --# [1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=492263"> --# https://bugzilla.redhat.com/show_bug.cgi?id=492263 --# </a> --# [2] <a href="http://www.timeanddate.com/worldclock/clockchange.html?n=53"> --# http://www.timeanddate.com/worldclock/clockchange.html?n=53 --# </a> --# [3] <a href="http://wwp.greenwichmeantime.com/time-zone/africa/egypt/"> --# http://wwp.greenwichmeantime.com/time-zone/africa/egypt/ --# </a> -+# [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263 -+# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53 -+# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/ - - # From Arthur David Olson (2009-04-20): - # In 2009 (and for the next several years), Ramadan ends before the fourth -@@ -329,14 +296,10 @@ - # From Steffen Thorsen (2009-08-11): - # We have been able to confirm the August change with the Egyptian Cabinet - # Information and Decision Support Center: --# <a href="http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html"> - # http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html --# </a> - # - # The Middle East News Agency --# <a href="http://www.mena.org.eg/index.aspx"> - # http://www.mena.org.eg/index.aspx --# </a> - # also reports "Egypt starts winter time on August 21" - # today in article numbered "71, 11/08/2009 12:25 GMT." - # Only the title above is available without a subscription to their service, -@@ -344,67 +307,93 @@ - # (at least today). - - # From Alexander Krivenyshev (2010-07-20): --# According to News from Egypt - Al-Masry Al-Youm Egypt's cabinet has -+# According to News from Egypt - Al-Masry Al-Youm Egypt's cabinet has - # decided that Daylight Saving Time will not be used in Egypt during - # Ramadan. - # - # Arabic translation: --# "Clocks to go back during Ramadan--and then forward again" --# <a href="http://www.almasryalyoum.com/en/news/clocks-go-back-during-ramadan-and-then-forward-again"> -+# "Clocks to go back during Ramadan - and then forward again" - # http://www.almasryalyoum.com/en/news/clocks-go-back-during-ramadan-and-then-forward-again --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_egypt02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_egypt02.html --# </a> - - # From Ahmad El-Dardiry (2014-05-07): - # Egypt is to change back to Daylight system on May 15 - # http://english.ahram.org.eg/NewsContent/1/64/100735/Egypt/Politics-/Egypts-government-to-reapply-daylight-saving-time-.aspx - --# From Gunther Vermier (2015-05-13): -+# From Gunther Vermier (2014-05-13): - # our Egypt office confirms that the change will be at 15 May "midnight" (24:00) - --# From Paul Eggert (2014-05-13): -+# From Imed Chihi (2014-06-04): -+# We have finally "located" a precise official reference about the DST changes -+# in Egypt. The Ministers Cabinet decision is explained at -+# http://www.cabinet.gov.eg/Media/CabinetMeetingsDetails.aspx?id=347 ... -+# [T]his (Arabic) site is not accessible outside Egypt, but the page ... -+# translates into: "With regard to daylight saving time, it is scheduled to -+# take effect at exactly twelve o'clock this evening, Thursday, 15 MAY 2014, -+# to be suspended by twelve o'clock on the evening of Thursday, 26 JUN 2014, -+# and re-established again at the end of the month of Ramadan, at twelve -+# o'clock on the evening of Thursday, 31 JUL 2014." This statement has been -+# reproduced by other (more accessible) sites[, e.g.,]... -+# http://elgornal.net/news/news.aspx?id=4699258 -+ -+# From Paul Eggert (2014-06-04): - # Sarah El Deeb and Lee Keath of AP report that the Egyptian government says - # the change is because of blackouts in Cairo, even though Ahram Online (cited --# above) says DST had no affect on electricity consumption. The AP story says --# DST will not be observed during Ramadan. There is no information about when --# DST will end. See: -+# above) says DST had no affect on electricity consumption. There is -+# no information about when DST will end this fall. See: - # http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833 - # --# For now, guess that later transitions will use 2010's rules, and that --# Egypt will agree with Morocco (see below) about the date Ramadan starts and --# ends, though (unlike Morocco) it will switch at 00:00 standard time. In --# Egypt the spring-forward transitions are removed for 2020-2022, when the --# guessed spring-forward date falls during the estimated Ramadan, and all --# transitions removed for 2023-2038, where the estimated Ramadan falls entirely --# outside the guessed daylight-saving time. Ramadan intrudes on the guessed --# DST starting in 2039, but that's beyond our somewhat-arbitrary cutoff. -- --Rule Egypt 2008 only - Aug lastThu 23:00s 0 - --Rule Egypt 2009 only - Aug 20 23:00s 0 - --Rule Egypt 2010 only - Aug 11 0:00 0 - --Rule Egypt 2010 only - Sep 10 0:00 1:00 S --Rule Egypt 2010 only - Sep lastThu 23:00s 0 - -+# For now, guess that later spring and fall transitions will use -+# 2010's rules, and guess that Egypt will switch to standard time at -+# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the -+# first Friday after Ramadan. To implement this, -+# transition dates for 2015 through 2037 were determined by running -+# the following program under GNU Emacs 24.3, with the results integrated -+# by hand into the table below. Ramadan again intrudes on the guessed -+# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff. -+# (let ((islamic-year 1436)) -+# (while (< islamic-year 1460) -+# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year))) -+# (b (calendar-islamic-to-absolute (list 10 1 islamic-year))) -+# (friday 5)) -+# (while (/= friday (mod a 7)) -+# (setq a (1- a))) -+# (while (/= friday (mod b 7)) -+# (setq b (1+ b))) -+# (setq a (1- a)) -+# (setq b (1- b)) -+# (setq a (calendar-gregorian-from-absolute a)) -+# (setq b (calendar-gregorian-from-absolute b)) -+# (insert -+# (format -+# (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n" -+# "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n") -+# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) -+# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) -+# (setq islamic-year (+ 1 islamic-year)))) -+Rule Egypt 2008 only - Aug lastThu 24:00 0 - -+Rule Egypt 2009 only - Aug 20 24:00 0 - -+Rule Egypt 2010 only - Aug 10 24:00 0 - -+Rule Egypt 2010 only - Sep 9 24:00 1:00 S -+Rule Egypt 2010 only - Sep lastThu 24:00 0 - - Rule Egypt 2014 only - May 15 24:00 1:00 S --Rule Egypt 2014 only - Jun 29 0:00s 0 - --Rule Egypt 2014 only - Jul 29 0:00s 1:00 S --Rule Egypt 2014 max - Sep lastThu 23:00s 0 - -+Rule Egypt 2014 only - Jun 26 24:00 0 - -+Rule Egypt 2014 only - Jul 31 24:00 1:00 S -+Rule Egypt 2014 max - Sep lastThu 24:00 0 - - Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S --Rule Egypt 2015 only - Jun 18 0:00s 0 - --Rule Egypt 2015 only - Jul 18 0:00s 1:00 S --Rule Egypt 2016 only - Jun 7 0:00s 0 - --Rule Egypt 2016 only - Jul 7 0:00s 1:00 S --Rule Egypt 2017 only - May 27 0:00s 0 - --Rule Egypt 2017 only - Jun 26 0:00s 1:00 S --Rule Egypt 2018 only - May 16 0:00s 0 - --Rule Egypt 2018 only - Jun 15 0:00s 1:00 S --Rule Egypt 2019 only - May 6 0:00s 0 - --Rule Egypt 2019 only - Jun 5 0:00s 1:00 S --Rule Egypt 2020 only - May 24 0:00s 1:00 S --Rule Egypt 2021 only - May 13 0:00s 1:00 S --Rule Egypt 2022 only - May 3 0:00s 1:00 S -+Rule Egypt 2015 only - Jun 11 24:00 0 - -+Rule Egypt 2015 only - Jul 23 24:00 1:00 S -+Rule Egypt 2016 only - Jun 2 24:00 0 - -+Rule Egypt 2016 only - Jul 7 24:00 1:00 S -+Rule Egypt 2017 only - May 25 24:00 0 - -+Rule Egypt 2017 only - Jun 29 24:00 1:00 S -+Rule Egypt 2018 only - May 10 24:00 0 - -+Rule Egypt 2018 only - Jun 14 24:00 1:00 S -+Rule Egypt 2019 only - May 2 24:00 0 - -+Rule Egypt 2019 only - Jun 6 24:00 1:00 S -+Rule Egypt 2020 only - May 28 24:00 1:00 S -+Rule Egypt 2021 only - May 13 24:00 1:00 S -+Rule Egypt 2022 only - May 5 24:00 1:00 S - Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] -@@ -412,60 +401,44 @@ - 2:00 Egypt EE%sT - - # Equatorial Guinea --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Malabo 0:35:08 - LMT 1912 -- 0:00 - GMT 1963 Dec 15 -- 1:00 - WAT -+# See Africa/Lagos. - - # Eritrea --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Asmara 2:35:32 - LMT 1870 -- 2:35:32 - AMT 1890 # Asmara Mean Time -- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT -- 3:00 - EAT -- - # Ethiopia --# From Paul Eggert (2006-03-22): --# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones --# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890. --# We'll guess that 38E50 is for Adis Dera. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Addis_Ababa 2:34:48 - LMT 1870 -- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT -- 3:00 - EAT -+# See Africa/Nairobi. - - # Gabon --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Libreville 0:37:48 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - - # Gambia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Banjul -1:06:36 - LMT 1912 -- -1:06:36 - BMT 1935 # Banjul Mean Time -- -1:00 - WAT 1964 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Ghana - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --# Whitman says DST was observed from 1931 to ``the present''; --# go with Shanks & Pottenger. --Rule Ghana 1936 1942 - Sep 1 0:00 0:20 GHST --Rule Ghana 1936 1942 - Dec 31 0:00 0 GMT -+# Whitman says DST was observed from 1931 to "the present"; -+# Shanks & Pottenger say 1936 to 1942; -+# and September 1 to January 1 is given by: -+# Scott Keltie J, Epstein M (eds), The Statesman's Year-Book, -+# 57th ed. Macmillan, London (1920), OCLC 609408015, pp xxviii. -+# For lack of better info, assume DST was observed from 1920 to 1942. -+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 - - # Guinea --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Conakry -0:54:52 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- -1:00 - WAT 1960 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Guinea-Bissau -+# -+# 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 -+# with the date that it took effect, namely 1912-01-01. -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bissau -1:02:20 - LMT 1911 May 26 -+Zone Africa/Bissau -1:02:20 - LMT 1912 Jan 1 - -1:00 - WAT 1975 - 0:00 - GMT - -@@ -476,13 +449,18 @@ - 2:30 - BEAT 1940 - 2:45 - BEAUT 1960 - 3:00 - EAT -+Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia -+Link Africa/Nairobi Africa/Asmara # Eritrea -+Link Africa/Nairobi Africa/Dar_es_Salaam # Tanzania -+Link Africa/Nairobi Africa/Djibouti -+Link Africa/Nairobi Africa/Kampala # Uganda -+Link Africa/Nairobi Africa/Mogadishu # Somalia -+Link Africa/Nairobi Indian/Antananarivo # Madagascar -+Link Africa/Nairobi Indian/Comoro -+Link Africa/Nairobi Indian/Mayotte - - # Lesotho --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Maseru 1:50:00 - LMT 1903 Mar -- 2:00 - SAST 1943 Sep 19 2:00 -- 2:00 1:00 SAST 1944 Mar 19 2:00 -- 2:00 - SAST -+# See Africa/Johannesburg. - - # Liberia - # From Paul Eggert (2006-03-22): -@@ -549,38 +527,22 @@ - 2:00 - EET 1982 - 1:00 Libya CE%sT 1990 May 4 - # The 1996 and 1997 entries are from Shanks & Pottenger; --# the IATA SSIM data contain some obvious errors. -+# the IATA SSIM data entries contain some obvious errors. - 2:00 - EET 1996 Sep 30 - 1:00 Libya CE%sT 1997 Oct 4 -- 2:00 - EET 2012 Nov 10 2:00 -- 1:00 Libya CE%sT 2013 Oct 25 2:00 -+ 2:00 - EET 2012 Nov 10 2:00 -+ 1:00 Libya CE%sT 2013 Oct 25 2:00 - 2:00 - EET - - # Madagascar --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul -- 3:00 - EAT 1954 Feb 27 23:00s -- 3:00 1:00 EAST 1954 May 29 23:00s -- 3:00 - EAT -+# See Africa/Nairobi. - - # Malawi --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar -- 2:00 - CAT -+# See Africa/Maputo. - - # Mali --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bamako -0:32:00 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- -1:00 - WAT 1960 Jun 20 -- 0:00 - GMT -- - # Mauritania --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Nouakchott -1:03:48 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- -1:00 - WAT 1960 Nov 28 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Mauritius - -@@ -604,9 +566,7 @@ - - # From Steffen Thorsen (2008-07-10): - # According to --# <a href="http://www.lexpress.mu/display_article.php?news_id=111216"> - # http://www.lexpress.mu/display_article.php?news_id=111216 --# </a> - # (in French), Mauritius will start and end their DST a few days earlier - # than previously announced (2008-11-01 to 2009-03-31). The new start - # date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time -@@ -621,22 +581,17 @@ - - # From Alex Krivenyshev (2008-07-11): - # Seems that English language article "The revival of daylight saving --# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally -+# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally - # published on Monday, June 30, 2008... - # - # I guess that article in French "Le gouvernement avance l'introduction --# de l'heure d'ete" stating that DST in Mauritius starting on October 26 --# and ending on March 27, 2009 is the most recent one. --# ... --# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html"> -+# de l'heure d'été" stating that DST in Mauritius starting on October 26 -+# and ending on March 27, 2009 is the most recent one.... - # http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html --# </a> - - # From Riad M. Hossen Ally (2008-08-03): - # The Government of Mauritius weblink --# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD"> - # http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD --# </a> - # Cabinet Decision of July 18th, 2008 states as follows: - # - # 4. ...Cabinet has agreed to the introduction into the National Assembly -@@ -646,33 +601,25 @@ - # States of America. It will start at two o'clock in the morning on the - # last Sunday of October and will end at two o'clock in the morning on - # the last Sunday of March the following year. The summer time for the --# year 2008 - 2009 will, therefore, be effective as from 26 October 2008 -+# year 2008-2009 will, therefore, be effective as from 26 October 2008 - # and end on 29 March 2009. - - # From Ed Maste (2008-10-07): - # THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the - # beginning / ending of summer time is 2 o'clock standard time in the - # morning of the last Sunday of October / last Sunday of March. --# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf"> - # http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf --# </a> - - # From Steffen Thorsen (2009-06-05): - # According to several sources, Mauritius will not continue to observe - # DST the coming summer... - # - # Some sources, in French: --# <a href="http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB"> - # http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB --# </a> --# <a href="http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-"> - # http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints- --# </a> - # - # Our wrap-up: --# <a href="http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html"> - # http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html --# </a> - - # From Arthur David Olson (2009-07-11): - # The "mauritius-dst-will-not-repeat" wrapup includes this: -@@ -685,18 +632,16 @@ - 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 -+Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis - 4:00 Mauritius MU%sT # Mauritius Time - # Agalega Is, Rodriguez - # no information; probably like Indian/Mauritius - - # Mayotte --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou -- 3:00 - EAT -+# See Africa/Nairobi. - - # Morocco --# See the `europe' file for Spanish Morocco (Africa/Ceuta). -+# See the 'europe' file for Spanish Morocco (Africa/Ceuta). - - # From Alex Krivenyshev (2008-05-09): - # Here is an article that Morocco plan to introduce Daylight Saving Time between -@@ -704,60 +649,44 @@ - # - # "... Morocco is to save energy by adjusting its clock during summer so it will - # be one hour ahead of GMT between 1 June and 27 September, according to --# Communication Minister and Gov ernment Spokesman, Khalid Naciri...." -+# Communication Minister and Government Spokesman, Khalid Naciri...." - # --# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html"> - # http://www.worldtimezone.net/dst_news/dst_news_morocco01.html --# </a> --# OR --# <a href="http://en.afrik.com/news11892.html"> - # http://en.afrik.com/news11892.html --# </a> - - # From Alex Krivenyshev (2008-05-09): --# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse: --# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view"> -+# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe -+# Presse: - # http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view --# </a> - # - # Morocco shifts to daylight time on June 1st through September 27, Govt. - # spokesman. - - # From Patrice Scattolin (2008-05-09): - # According to this article: --# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html"> - # http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html --# </a> --# (and republished here: --# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html"> --# http://www.actu.ma/heure-dete-comment_i127896_0.html --# </a> --# ) --# the changes occurs at midnight: -+# (and republished here: <http://www.actu.ma/heure-dete-comment_i127896_0.html>) -+# the changes occur at midnight: - # --# saturday night may 31st at midnight (which in french is to be --# intrepreted as the night between saturday and sunday) --# sunday night the 28th at midnight -+# Saturday night May 31st at midnight (which in French is to be -+# interpreted as the night between Saturday and Sunday) -+# Sunday night the 28th at midnight - # --# Seeing that the 28th is monday, I am guessing that she intends to say --# the midnight of the 28th which is the midnight between sunday and --# monday, which jives with other sources that say that it's inclusive --# june1st to sept 27th. -+# Seeing that the 28th is Monday, I am guessing that she intends to say -+# the midnight of the 28th which is the midnight between Sunday and -+# Monday, which jives with other sources that say that it's inclusive -+# June 1st to Sept 27th. - # - # The decision was taken by decree *2-08-224 *but I can't find the decree - # published on the web. - # - # It's also confirmed here: --# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm"> - # http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm --# </a> --# on a government portal as being between june 1st and sept 27th (not yet --# posted in english). -+# on a government portal as being between June 1st and Sept 27th (not yet -+# posted in English). - # --# The following google query will generate many relevant hits: --# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search"> -+# The following Google query will generate many relevant hits: - # http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search --# </a> - - # From Steffen Thorsen (2008-08-27): - # Morocco will change the clocks back on the midnight between August 31 -@@ -765,47 +694,32 @@ - # of September: - # - # One article about it (in French): --# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default"> - # http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default --# </a> - # - # We have some further details posted here: --# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html"> - # http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html --# </a> - - # From Steffen Thorsen (2009-03-17): - # Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according - # to many sources, such as --# <a href="http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html"> - # http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html --# </a> --# <a href="http://www.medi1sat.ma/fr/depeche.aspx?idp=2312"> - # http://www.medi1sat.ma/fr/depeche.aspx?idp=2312 --# </a> - # (French) - # - # Our summary: --# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html"> - # http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html --# </a> - - # From Alexander Krivenyshev (2009-03-17): - # Here is a link to official document from Royaume du Maroc Premier Ministre, --# Ministere de la Modernisation des Secteurs Publics -+# Ministère de la Modernisation des Secteurs Publics - # - # Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967) - # concerning the amendment of the legal time, the Ministry of Modernization of - # Public Sectors announced that the official time in the Kingdom will be - # advanced 60 minutes from Sunday 31 May 2009 at midnight. - # --# <a href="http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf"> - # http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf --# </a> --# --# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_morocco03.html --# </a> - - # From Steffen Thorsen (2010-04-13): - # Several news media in Morocco report that the Ministry of Modernization -@@ -813,51 +727,33 @@ - # 2010-05-02 to 2010-08-08. - # - # Example: --# <a href="http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html"> - # http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html --# </a> - # (French) - # Our page: --# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html"> - # http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html --# </a> - - # From Dan Abitol (2011-03-30): - # ...Rules for Africa/Casablanca are the following (24h format) --# The 3rd april 2011 at 00:00:00, [it] will be 3rd april 1:00:00 --# The 31th july 2011 at 00:59:59, [it] will be 31th July 00:00:00 -+# The 3rd April 2011 at 00:00:00, [it] will be 3rd April 01:00:00 -+# The 31st July 2011 at 00:59:59, [it] will be 31st July 00:00:00 - # ...Official links of change in morocco - # The change was broadcast on the FM Radio - # I ve called ANRT (telecom regulations in Morocco) at - # +212.537.71.84.00 --# <a href="http://www.anrt.net.ma/fr/"> - # http://www.anrt.net.ma/fr/ --# </a> - # They said that --# <a href="http://www.map.ma/fr/sections/accueil/l_heure_legale_au_ma/view"> - # http://www.map.ma/fr/sections/accueil/l_heure_legale_au_ma/view --# </a> - # is the official publication to look at. - # They said that the decision was already taken. - # - # More articles in the press --# <a href="http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-lev"> --# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-lev --# </a> --# e.html --# <a href="http://www.lematin.ma/Actualite/Express/Article.asp?id=148923"> -+# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html - # http://www.lematin.ma/Actualite/Express/Article.asp?id=148923 --# </a> --# <a href="http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim"> - # http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim --# anche-prochain-5538.html --# </a> - - # From Petr Machata (2011-03-30): - # They have it written in English here: --# <a href="http://www.map.ma/eng/sections/home/morocco_to_spring_fo/view"> - # http://www.map.ma/eng/sections/home/morocco_to_spring_fo/view --# </a> - # - # It says there that "Morocco will resume its standard time on July 31, - # 2011 at midnight." Now they don't say whether they mean midnight of -@@ -865,20 +761,16 @@ - # also been like that in the past. - - # From Alexander Krivenyshev (2012-03-09): --# According to Infomédiaire web site from Morocco (infomediaire.ma), --# on March 9, 2012, (in French) Heure légale: --# Le Maroc adopte officiellement l'heure d'été --# <a href="http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9"> -+# According to Infomédiaire web site from Morocco (infomediaire.ma), -+# on March 9, 2012, (in French) Heure légale: -+# Le Maroc adopte officiellement l'heure d'été - # http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9 --# </a> - # Governing Council adopted draft decree, that Morocco DST starts on - # the last Sunday of March (March 25, 2012) and ends on - # last Sunday of September (September 30, 2012) - # except the month of Ramadan. - # or (brief) --# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco06.html"> - # http://www.worldtimezone.com/dst_news/dst_news_morocco06.html --# </a> - - # From Arthur David Olson (2012-03-10): - # The infomediaire.ma source indicates that the system is to be in -@@ -889,17 +781,13 @@ - - # From Christophe Tropamer (2012-03-16): - # Seen Morocco change again: --# <a href="http://www.le2uminutes.com/actualite.php"> - # http://www.le2uminutes.com/actualite.php --# </a> --# "...à partir du dernier dimance d'avril et non fins mars, --# comme annoncé précédemment." -+# "...à partir du dernier dimanche d'avril et non fins mars, -+# comme annoncé précédemment." - - # From Milamber Space Network (2012-07-17): - # The official return to GMT is announced by the Moroccan government: --# <a href="http://www.mmsp.gov.ma/fr/actualites.aspx?id=288"> - # http://www.mmsp.gov.ma/fr/actualites.aspx?id=288 [in French] --# </a> - # - # Google translation, lightly edited: - # Back to the standard time of the Kingdom (GMT) -@@ -917,7 +805,7 @@ - # announced a bit in advance. On 2012-07-11 the Moroccan government - # announced that year's Ramadan daylight-saving transitions would be - # 2012-07-20 and 2012-08-20; see --# <http://www.mmsp.gov.ma/fr/actualites.aspx?id=288>. -+# http://www.mmsp.gov.ma/fr/actualites.aspx?id=288 - - # From Andrew Paprocki (2013-07-02): - # Morocco announced that the year's Ramadan daylight-savings -@@ -937,39 +825,36 @@ - # From Sebastien Willemijns (2014-03-18): - # http://www.afriquinfos.com/articles/2014/3/18/maroc-heure-dete-avancez-tous-horloges-247891.asp - --# From Paul Eggert (2014-03-19): --# To estimate what the Moroccan government will do in future years, --# transition dates for 2014 through 2038 were determined by running --# the following program under GNU Emacs 24.3: --# --# (let ((islamic-year 1435)) --# (while (< islamic-year 1461) --# (let ((a --# (calendar-gregorian-from-absolute --# (calendar-islamic-to-absolute (list 9 1 islamic-year)))) --# (b --# (calendar-gregorian-from-absolute --# (calendar-islamic-to-absolute (list 10 1 islamic-year))))) --# (insert --# (format --# (concat "Rule\tMorocco\t%d\tonly\t-\t%s\t %2d\t 3:00\t0\t-\n" --# "Rule\tMorocco\t%d\tonly\t-\t%s\t %2d\t 2:00\t1:00\tS\n") --# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) --# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) -+# From Milamber Space Network (2014-06-05): -+# The Moroccan government has recently announced that the country will return -+# to standard time at 03:00 on Saturday, June 28, 2014 local time.... DST -+# will resume again at 02:00 on Saturday, August 2, 2014.... -+# http://www.mmsp.gov.ma/fr/actualites.aspx?id=586 -+ -+# From Paul Eggert (2014-06-05): -+# For now, guess that later spring and fall transitions will use 2014's rules, -+# and guess that Morocco will switch to standard time at 03:00 the last -+# Saturday before Ramadan, and back to DST at 02:00 the first Saturday after -+# Ramadan. To implement this, transition dates for 2015 through 2037 were -+# determined by running the following program under GNU Emacs 24.3, with the -+# results integrated by hand into the table below. -+# (let ((islamic-year 1436)) -+# (while (< islamic-year 1460) -+# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year))) -+# (b (calendar-islamic-to-absolute (list 10 1 islamic-year))) -+# (saturday 6)) -+# (while (/= saturday (mod (setq a (1- a)) 7))) -+# (while (/= saturday (mod b 7)) -+# (setq b (1+ b))) -+# (setq a (calendar-gregorian-from-absolute a)) -+# (setq b (calendar-gregorian-from-absolute b)) -+# (insert -+# (format -+# (concat "Rule\tMorocco\t%d\tonly\t-\t%s\t%2d\t 3:00\t0\t-\n" -+# "Rule\tMorocco\t%d\tonly\t-\t%s\t%2d\t 2:00\t1:00\tS\n") -+# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) -+# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) - # (setq islamic-year (+ 1 islamic-year)))) --# --# with spring-forward transitions removed for 2023-2025, when the --# normal spring-forward date falls during the estimated Ramadan; with --# all transitions removed for 2026-2035, where the estimated Ramadan --# falls entirely outside daylight-saving time; and with fall-back --# transitions removed for 2036-2037, where the normal fall-back --# date falls during the estimated Ramadan. Normally, the table would --# stop after 2037 because 32-bit time_t values roll around early in 2038, --# but that would imply a prediction of perpetual DST after March 2038 --# due to the year-2037 glitches. So, this table instead stops after --# 2038, the first non-glitchy year after the 32-bit rollover. --# An advantage of stopping after 2038 is that it lets zic guess --# TZ='WET0WEST,M3.5.0,M10.5.0/3' for time stamps far in the future. - - # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S - -@@ -991,46 +876,44 @@ - Rule Morocco 2008 only - Jun 1 0:00 1:00 S - Rule Morocco 2008 only - Sep 1 0:00 0 - - Rule Morocco 2009 only - Jun 1 0:00 1:00 S --Rule Morocco 2009 only - Aug 21 0:00 0 - -+Rule Morocco 2009 only - Aug 21 0:00 0 - - Rule Morocco 2010 only - May 2 0:00 1:00 S - Rule Morocco 2010 only - Aug 8 0:00 0 - - Rule Morocco 2011 only - Apr 3 0:00 1:00 S --Rule Morocco 2011 only - Jul 31 0 0 - --Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S --Rule Morocco 2012 only - Sep 30 3:00 0 - --Rule Morocco 2012 only - Jul 20 3:00 0 - --Rule Morocco 2012 only - Aug 20 2:00 1:00 S --Rule Morocco 2013 only - Jul 7 3:00 0 - --Rule Morocco 2013 only - Aug 10 2:00 1:00 S --Rule Morocco 2013 2035 - Oct lastSun 3:00 0 - --Rule Morocco 2014 2022 - Mar lastSun 2:00 1:00 S --Rule Morocco 2014 only - Jun 29 3:00 0 - --Rule Morocco 2014 only - Jul 29 2:00 1:00 S --Rule Morocco 2015 only - Jun 18 3:00 0 - --Rule Morocco 2015 only - Jul 18 2:00 1:00 S --Rule Morocco 2016 only - Jun 7 3:00 0 - --Rule Morocco 2016 only - Jul 7 2:00 1:00 S --Rule Morocco 2017 only - May 27 3:00 0 - --Rule Morocco 2017 only - Jun 26 2:00 1:00 S --Rule Morocco 2018 only - May 16 3:00 0 - --Rule Morocco 2018 only - Jun 15 2:00 1:00 S --Rule Morocco 2019 only - May 6 3:00 0 - --Rule Morocco 2019 only - Jun 5 2:00 1:00 S --Rule Morocco 2020 only - Apr 24 3:00 0 - --Rule Morocco 2020 only - May 24 2:00 1:00 S --Rule Morocco 2021 only - Apr 13 3:00 0 - --Rule Morocco 2021 only - May 13 2:00 1:00 S --Rule Morocco 2022 only - Apr 3 3:00 0 - --Rule Morocco 2022 only - May 3 2:00 1:00 S --Rule Morocco 2023 only - Apr 22 2:00 1:00 S --Rule Morocco 2024 only - Apr 10 2:00 1:00 S --Rule Morocco 2025 only - Mar 31 2:00 1:00 S --Rule Morocco 2026 max - Mar lastSun 2:00 1:00 S --Rule Morocco 2036 only - Oct 21 3:00 0 - --Rule Morocco 2037 only - Oct 11 3:00 0 - --Rule Morocco 2038 only - Sep 30 3:00 0 - --Rule Morocco 2038 only - Oct 30 2:00 1:00 S --Rule Morocco 2038 max - Oct lastSun 3:00 0 - -+Rule Morocco 2011 only - Jul 31 0 0 - -+Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S -+Rule Morocco 2012 only - Sep 30 3:00 0 - -+Rule Morocco 2012 only - Jul 20 3:00 0 - -+Rule Morocco 2012 only - Aug 20 2:00 1:00 S -+Rule Morocco 2013 only - Jul 7 3:00 0 - -+Rule Morocco 2013 only - Aug 10 2:00 1:00 S -+Rule Morocco 2013 max - Oct lastSun 3:00 0 - -+Rule Morocco 2014 2022 - Mar lastSun 2:00 1:00 S -+Rule Morocco 2014 only - Jun 28 3:00 0 - -+Rule Morocco 2014 only - Aug 2 2:00 1:00 S -+Rule Morocco 2015 only - Jun 13 3:00 0 - -+Rule Morocco 2015 only - Jul 18 2:00 1:00 S -+Rule Morocco 2016 only - Jun 4 3:00 0 - -+Rule Morocco 2016 only - Jul 9 2:00 1:00 S -+Rule Morocco 2017 only - May 20 3:00 0 - -+Rule Morocco 2017 only - Jul 1 2:00 1:00 S -+Rule Morocco 2018 only - May 12 3:00 0 - -+Rule Morocco 2018 only - Jun 16 2:00 1:00 S -+Rule Morocco 2019 only - May 4 3:00 0 - -+Rule Morocco 2019 only - Jun 8 2:00 1:00 S -+Rule Morocco 2020 only - Apr 18 3:00 0 - -+Rule Morocco 2020 only - May 30 2:00 1:00 S -+Rule Morocco 2021 only - Apr 10 3:00 0 - -+Rule Morocco 2021 only - May 15 2:00 1:00 S -+Rule Morocco 2022 only - Apr 2 3:00 0 - -+Rule Morocco 2022 only - May 7 2:00 1:00 S -+Rule Morocco 2023 only - Apr 22 2:00 1:00 S -+Rule Morocco 2024 only - Apr 13 2:00 1:00 S -+Rule Morocco 2025 only - Apr 5 2:00 1:00 S -+Rule Morocco 2026 max - Mar lastSun 2:00 1:00 S -+Rule Morocco 2035 only - Oct 27 3:00 0 - -+Rule Morocco 2036 only - Oct 18 3:00 0 - -+Rule Morocco 2037 only - Oct 10 3:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26 -@@ -1049,21 +932,34 @@ - # Assume that this has been true since Western Sahara switched to GMT, - # since most of it was then controlled by Morocco. - --Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan -+Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún - -1:00 - WAT 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 -+# merely made it official? -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Maputo 2:10:20 - LMT 1903 Mar - 2:00 - CAT -+Link Africa/Maputo Africa/Blantyre # Malawi -+Link Africa/Maputo Africa/Bujumbura # Burundi -+Link Africa/Maputo Africa/Gaborone # Botswana -+Link Africa/Maputo Africa/Harare # Zimbabwe -+Link Africa/Maputo Africa/Kigali # Rwanda -+Link Africa/Maputo Africa/Lubumbashi # E Dem. Rep. of Congo -+Link Africa/Maputo Africa/Lusaka # Zambia - - # Namibia - # The 1994-04-03 transition is from Shanks & Pottenger. - # Shanks & Pottenger report no DST after 1998-04; go with IATA. - --# From Petronella Sibeene (2007-03-30) in --# <http://allafrica.com/stories/200703300178.html>: -+# From Petronella Sibeene (2007-03-30): -+# http://allafrica.com/stories/200703300178.html - # While the entire country changes its time, Katima Mulilo and other - # settlements in Caprivi unofficially will not because the sun there - # rises and sets earlier compared to other regions. Chief of -@@ -1080,34 +976,41 @@ - 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 -- 2:00 - SAST 1942 Sep 20 2:00 -- 2:00 1:00 SAST 1943 Mar 21 2:00 -+ 1:30 - SWAT 1903 Mar # SW Africa Time -+ 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 - 2:00 - CAT 1994 Apr 3 - 1:00 Namibia WA%sT - - # Niger --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Niamey 0:08:28 - LMT 1912 -- -1:00 - WAT 1934 Feb 26 -- 0:00 - GMT 1960 -- 1:00 - WAT -+# See Africa/Lagos. - - # Nigeria - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Lagos 0:13:36 - LMT 1919 Sep - 1:00 - WAT -+Link Africa/Lagos Africa/Bangui # Central African Republic -+Link Africa/Lagos Africa/Brazzaville # Rep. of the Congo -+Link Africa/Lagos Africa/Douala # Cameroon -+Link Africa/Lagos Africa/Kinshasa # Dem. Rep. of the Congo (west) -+Link Africa/Lagos Africa/Libreville # Gabon -+Link Africa/Lagos Africa/Luanda # Angola -+Link Africa/Lagos Africa/Malabo # Equatorial Guinea -+Link Africa/Lagos Africa/Niamey # Niger -+Link Africa/Lagos Africa/Porto-Novo # Benin - --# Reunion -+# Réunion - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis -- 4:00 - RET # Reunion Time -+Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis -+ 4:00 - RET # Réunion Time - # --# Scattered Islands (Iles Eparses) administered from Reunion are as follows. -+# Crozet Islands also observes Réunion time; see the 'antarctica' file. -+# -+# Scattered Islands (Îles Éparses) administered from Réunion are as follows. - # The following information about them is taken from --# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French; --# no longer available as of 1999-08-17). -+# Îles Éparses (<http://www.outre-mer.gouv.fr/domtom/ile.htm>, 1997-07-22, -+# in French; no longer available as of 1999-08-17). - # We have no info about their time zone histories. - # - # Bassas da India - uninhabited -@@ -1117,37 +1020,24 @@ - # Tromelin - inhabited until at least 1958 - - # Rwanda --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Kigali 2:00:16 - LMT 1935 Jun -- 2:00 - CAT -+# See Africa/Maputo. - - # St Helena --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown -- -0:22:48 - JMT 1951 # Jamestown Mean Time -- 0:00 - GMT -+# See Africa/Abidjan. - # The other parts of the St Helena territory are similar: - # Tristan da Cunha: on GMT, say Whitman and the CIA --# Ascension: on GMT, says usno1995 and the CIA -+# Ascension: on GMT, say the USNO (1995-12-21) and the CIA - # Gough (scientific station since 1955; sealers wintered previously): - # on GMT, says the CIA --# Inaccessible, Nightingale: no information, but probably GMT -+# Inaccessible, Nightingale: uninhabited - --# Sao Tome and Principe --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Sao_Tome 0:26:56 - LMT 1884 -- -0:36:32 - LMT 1912 # Lisbon Mean Time -- 0:00 - GMT -- -+# São Tomé and Príncipe - # Senegal --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Dakar -1:09:44 - LMT 1912 -- -1:00 - WAT 1941 Jun -- 0:00 - GMT -+# See Africa/Abidjan. - - # Seychelles - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria -+Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria - 4:00 - SCT # Seychelles Time - # From Paul Eggert (2001-05-30): - # Aldabra, Farquhar, and Desroches, originally dependencies of the -@@ -1157,24 +1047,10 @@ - # Possibly the islands were uninhabited. - - # Sierra Leone --# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger. --Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST --Rule SL 1935 1942 - Oct 1 0:00 0 WAT --Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST --Rule SL 1957 1962 - Sep 1 0:00 0 GMT --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Freetown -0:53:00 - LMT 1882 -- -0:53:00 - FMT 1913 Jun # Freetown Mean Time -- -1:00 SL %s 1957 -- 0:00 SL %s -+# See Africa/Abidjan. - - # Somalia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov -- 3:00 - EAT 1931 -- 2:30 - BEAT 1957 -- 3:00 - EAT -+# See Africa/Nairobi. - - # South Africa - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1184,15 +1060,18 @@ - Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8 - 1:30 - SAST 1903 Mar - 2:00 SA SAST -+Link Africa/Johannesburg Africa/Maseru # Lesotho -+Link Africa/Johannesburg Africa/Mbabane # Swaziland -+# - # Marion and Prince Edward Is - # scientific station since 1947 - # no information - - # Sudan - # --# From <a href="http://www.sunanews.net/sn13jane.html"> --# Sudan News Agency (2000-01-13) --# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen: -+# From <http://www.sunanews.net/sn13jane.html> -+# Sudan News Agency (2000-01-13), -+# also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen: - # Clocks will be moved ahead for 60 minutes all over the Sudan as of noon - # Saturday.... This was announced Thursday by Caretaker State Minister for - # Manpower Abdul-Rahman Nur-Eddin. -@@ -1211,26 +1090,18 @@ - Link Africa/Khartoum Africa/Juba - - # Swaziland --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar -- 2:00 - SAST -+# See Africa/Johannesburg. - - # Tanzania --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931 -- 3:00 - EAT 1948 -- 2:45 - BEAUT 1961 -- 3:00 - EAT -+# See Africa/Nairobi. - - # Togo --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Lome 0:04:52 - LMT 1893 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Tunisia - - # From Gwillim Law (2005-04-30): --# My correspondent, Risto Nykanen, has alerted me to another adoption of DST, -+# My correspondent, Risto Nykänen, has alerted me to another adoption of DST, - # this time in Tunisia. According to Yahoo France News - # <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP - # and dated 2005-04-26, "Tunisia has decided to advance its official time by -@@ -1239,8 +1110,8 @@ - # Saturday." (My translation) - # - # From Oscar van Vlijmen (2005-05-02): --# LaPresse, the first national daily newspaper ... --# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html> -+# La Presse, the first national daily newspaper ... -+# http://www.lapresse.tn/archives/archives280405/actualites/lheure.html - # ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30, - # 1h standard time. - # -@@ -1253,18 +1124,12 @@ - # From Steffen Thorsen (2009-03-16): - # According to several news sources, Tunisia will not observe DST this year. - # (Arabic) --# <a href="http://www.elbashayer.com/?page=viewn&nid=42546"> - # http://www.elbashayer.com/?page=viewn&nid=42546 --# </a> --# <a href="http://www.babnet.net/kiwidetail-15295.asp"> - # http://www.babnet.net/kiwidetail-15295.asp --# </a> - # - # We have also confirmed this with the US embassy in Tunisia. - # We have a wrap-up about this on the following page: --# <a href="http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html"> - # http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html --# </a> - - # From Alexander Krivenyshev (2009-03-17): - # Here is a link to Tunis Afrique Presse News Agency -@@ -1272,20 +1137,17 @@ - # Standard time to be kept the whole year long (tap.info.tn): - # - # (in English) --# <a href="http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157"> - # http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157 --# </a> - # - # (in Arabic) --# <a href="http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1"> - # http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1 --# </a> - --# From Arthur David Olson (2009--3-18): --# The Tunis Afrique Presse News Agency notice contains this: "This measure is due to the fact --# that the fasting month of ramadan coincides with the period concerned by summer time. --# Therefore, the standard time will be kept unchanged the whole year long." --# So foregoing DST seems to be an exception (albeit one that may be repeated in the future). -+# From Arthur David Olson (2009-03-18): -+# The Tunis Afrique Presse News Agency notice contains this: "This measure is -+# due to the fact that the fasting month of Ramadan coincides with the period -+# concerned by summer time. Therefore, the standard time will be kept -+# unchanged the whole year long." So foregoing DST seems to be an exception -+# (albeit one that may be repeated in the future). - - # From Alexander Krivenyshev (2010-03-27): - # According to some news reports Tunis confirmed not to use DST in 2010 -@@ -1297,12 +1159,8 @@ - # coincided with the month of Ramadan..." - # - # (in Arabic) --# <a href="http://www.moheet.com/show_news.aspx?nid=358861&pg=1"> - # http://www.moheet.com/show_news.aspx?nid=358861&pg=1 --# <a href="http://www.almadenahnews.com/newss/news.php?c=118&id=38036"> - # http://www.almadenahnews.com/newss/news.php?c=118&id=38036 --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_tunis02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_tunis02.html - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1337,23 +1195,12 @@ - # Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Tunis 0:40:44 - LMT 1881 May 12 -- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time - 1:00 Tunisia CE%sT - - # Uganda --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Kampala 2:09:40 - LMT 1928 Jul -- 3:00 - EAT 1930 -- 2:30 - BEAT 1948 -- 2:45 - BEAUT 1957 -- 3:00 - EAT -+# See Africa/Nairobi. - - # Zambia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar -- 2:00 - CAT -- - # Zimbabwe --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Harare 2:04:12 - LMT 1903 Mar -- 2:00 - CAT -+# See Africa/Maputo. ---- ./jdk/make/data/tzdata/antarctica Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/antarctica Mon Dec 08 12:29:42 2014 -0800 -@@ -21,19 +21,16 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - - # From Paul Eggert (1999-11-15): - # To keep things manageable, we list only locations occupied year-round; see --# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/"> - # COMNAP - Stations and Bases --# </a> -+# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/ - # and --# <a href="http://www.spri.cam.ac.uk/bob/periant.htm"> - # Summary of the Peri-Antarctic Islands (1998-07-23) --# </a> -+# http://www.spri.cam.ac.uk/bob/periant.htm - # for information. - # Unless otherwise specified, we have no time zone information. - # -@@ -78,19 +75,19 @@ - - # Argentina - year-round bases - # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05 --# Esperanza, San Martin Land, -6323-05659, since 1952-12-17 --# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01 --# Marambio, Seymour I, -6414-05637, since 1969-10-29 -+# Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01 -+# Esperanza, Hope Bay, -6323-05659, since 1952-12-17 -+# Marambio, -6414-05637, since 1969-10-29 - # Orcadas, Laurie I, -6016-04444, since 1904-02-22 --# San Martin, Debenham I, -6807-06708, since 1951-03-21 -+# San Martín, Barry I, -6808-06706, since 1951-03-21 - # (except 1960-03 / 1976-03-21) - - # Australia - territories - # Heard Island, McDonald Islands (uninhabited) - # previously sealers and scientific personnel wintered --# <a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html"> - # Margaret Turner reports --# </a> (1999-09-30) that they're UTC+5, with no DST; -+# http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html -+# (1999-09-30) that they're UTC+5, with no DST; - # presumably this is when they have visitors. - # - # year-round bases -@@ -107,14 +104,10 @@ - # The changes occurred on 2009-10-18 at 02:00 (local times). - # - # Government source: (Australian Antarctic Division) --# <a href="http://www.aad.gov.au/default.asp?casid=37079"> - # http://www.aad.gov.au/default.asp?casid=37079 --# </a> - # - # We have more background information here: --# <a href="http://www.timeanddate.com/news/time/antarctica-new-times.html"> - # http://www.timeanddate.com/news/time/antarctica-new-times.html --# </a> - - # From Steffen Thorsen (2010-03-10): - # We got these changes from the Australian Antarctic Division: ... -@@ -129,50 +122,49 @@ - # - Mawson station stays on UTC+5. - # - # Background: --# <a href="http://www.timeanddate.com/news/time/antartica-time-changes-2010.html"> - # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html --# </a> - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Antarctica/Casey 0 - zzz 1969 -- 8:00 - WST 2009 Oct 18 2:00 -- # Western (Aus) Standard Time -- 11:00 - CAST 2010 Mar 5 2:00 -- # Casey Time -- 8:00 - WST 2011 Oct 28 2:00 -+ 8:00 - AWST 2009 Oct 18 2:00 -+ # Australian Western Std Time -+ 11:00 - CAST 2010 Mar 5 2:00 # Casey Time -+ 8:00 - AWST 2011 Oct 28 2:00 - 11:00 - CAST 2012 Feb 21 17:00u -- 8:00 - WST -+ 8:00 - AWST - Zone Antarctica/Davis 0 - zzz 1957 Jan 13 -- 7:00 - DAVT 1964 Nov # Davis Time -+ 7:00 - DAVT 1964 Nov # Davis Time - 0 - zzz 1969 Feb -- 7:00 - DAVT 2009 Oct 18 2:00 -+ 7:00 - DAVT 2009 Oct 18 2:00 - 5:00 - DAVT 2010 Mar 10 20:00u -- 7:00 - DAVT 2011 Oct 28 2:00 -+ 7:00 - DAVT 2011 Oct 28 2:00 - 5:00 - DAVT 2012 Feb 21 20:00u - 7:00 - DAVT - Zone Antarctica/Mawson 0 - zzz 1954 Feb 13 -- 6:00 - MAWT 2009 Oct 18 2:00 -- # Mawson Time -+ 6:00 - MAWT 2009 Oct 18 2:00 # Mawson Time - 5:00 - MAWT - # References: --# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html"> - # Casey Weather (1998-02-26) --# </a> --# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html"> -+# http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html - # Davis Station, Antarctica (1998-02-26) --# </a> --# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html"> -+# http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html - # Mawson Station, Antarctica (1998-02-25) --# </a> -+# http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html -+ -+# Belgium - year-round base -+# Princess Elisabeth, Queen Maud Land, -713412+0231200, since 2007 - - # Brazil - year-round base --# Comandante Ferraz, King George Island, -6205+05824, since 1983/4 -+# Ferraz, King George Island, -6205+05824, since 1983/4 -+ -+# Bulgaria - year-round base -+# St. Kliment Ohridski, Livingston Island, -623829-0602153, since 1988 - - # Chile - year-round bases and towns - # Escudero, South Shetland Is, -621157-0585735, since 1994 --# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07 --# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02 --# Capitan Arturo Prat, -6230-05941 -+# Frei Montalva, King George Island, -6214-05848, since 1969-03-07 -+# 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'. - -@@ -180,31 +172,35 @@ - # Great Wall, King George Island, -6213-05858, since 1985-02-20 - # Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26 - --# France - year-round bases -+# France - year-round bases (also see "France & Italy") - # - # From Antoine Leca (1997-01-20): --# Time data are from Nicole Pailleau at the IFRTP -+# Time data entries are from Nicole Pailleau at the IFRTP - # (French Institute for Polar Research and Technology). --# She confirms that French Southern Territories and Terre Adelie bases --# don't observe daylight saving time, even if Terre Adelie supplies came -+# She confirms that French Southern Territories and Terre Adélie bases -+# don't observe daylight saving time, even if Terre Adélie supplies came - # from Tasmania. - # - # French Southern Territories with year-round inhabitants - # --# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950 --# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964 --# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951; -+# Alfred Faure, Possession Island, Crozet Islands, -462551+0515152, since 1964; -+# sealing & whaling stations operated variously 1802/1911+; -+# see Indian/Reunion. -+# -+# Martin-de-Viviès, Amsterdam Island, -374105+0773155, since 1950 -+# Port-aux-Français, Kerguelen Islands, -492110+0701303, since 1951; - # whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956 - # - # St Paul Island - near Amsterdam, uninhabited - # fishing stations operated variously 1819/1931 - # - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Francais -+Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français - 5:00 - TFT # ISO code TF Time - # - # year-round base in the main continent --# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11 -+# Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11 -+# <http://en.wikipedia.org/wiki/Dumont_d'Urville_Station> (2005-12-05) - # - # Another base at Port-Martin, 50km east, began operation in 1947. - # It was destroyed by fire on 1952-01-14. -@@ -214,20 +210,22 @@ - 10:00 - PMT 1952 Jan 14 # Port-Martin Time - 0 - zzz 1956 Nov - 10:00 - DDUT # Dumont-d'Urville Time --# Reference: --# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station"> --# Dumont d'Urville Station (2005-12-05) --# </a> -+ -+# France & Italy - year-round base -+# Concordia, -750600+1232000, since 2005 - - # Germany - year-round base --# Georg von Neumayer, -7039-00815 -+# Neumayer III, -704080-0081602, since 2009 - --# India - year-round base --# Dakshin Gangotri, -7005+01200 -+# India - year-round bases -+# Bharati, -692428+0761114, since 2012 -+# Maitri, -704558+0114356, since 1989 -+ -+# Italy - year-round base (also see "France & Italy") -+# Zuchelli, Terra Nova Bay, -744140+1640647, since 1986 - - # Japan - year-round bases --# Dome Fuji, -7719+03942 --# Syowa, -690022+0393524 -+# Syowa (also known as Showa), -690022+0393524, since 1957 - # - # From Hideyuki Suzuki (1999-02-06): - # In all Japanese stations, +0300 is used as the standard time. -@@ -239,11 +237,11 @@ - Zone Antarctica/Syowa 0 - zzz 1957 Jan 29 - 3:00 - SYOT # Syowa Time - # See: --# <a href="http://www.nipr.ac.jp/english/ara01.html"> - # NIPR Antarctic Research Activities (1999-08-17) --# </a> -+# http://www.nipr.ac.jp/english/ara01.html - - # S Korea - year-round base -+# Jang Bogo, Terra Nova Bay, -743700+1641205 since 2014 - # King Sejong, King George Island, -6213-05847, since 1988 - - # New Zealand - claims -@@ -287,11 +285,14 @@ - Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Antarctica/Troll 0 - zzz 2005 Feb 12 -- 0:00 Troll %s -+ 0:00 Troll %s - - # Poland - year-round base - # Arctowski, King George Island, -620945-0582745, since 1977 - -+# Romania - year-bound base -+# Law-Racoviță, Larsemann Hills, -692319+0762251, since 1986 -+ - # Russia - year-round bases - # Bellingshausen, King George Island, -621159-0585337, since 1968-02-22 - # Mirny, Davis coast, -6633+09301, since 1956-02 -@@ -301,8 +302,8 @@ - # year-round from 1960/61 to 1992 - - # Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11 --# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP"> --# From Craig Mundell (1994-12-15)</a>: -+# From Craig Mundell (1994-12-15): -+# http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP - # Vostok, which is one of the Russian stations, is set on the same - # time as Moscow, Russia. - # -@@ -317,7 +318,7 @@ - # - # From Paul Eggert (2001-05-04): - # This seems to be hopelessly confusing, so I asked Lee Hotz about it --# in person. He said that some Antartic locations set their local -+# in person. He said that some Antarctic locations set their local - # time so that noon is the warmest part of the day, and that this - # changes during the year and does not necessarily correspond to mean - # solar noon. So the Vostok time might have been whatever the clocks -@@ -329,9 +330,12 @@ - - # S Africa - year-round bases - # Marion Island, -4653+03752 --# Sanae, -7141-00250 -+# SANAE IV, Vesleskarvet, Queen Maud Land, -714022-0025026, since 1997 - --# UK -+# Ukraine - year-round base -+# Vernadsky (formerly Faraday), Galindez Island, -651445-0641526, since 1954 -+ -+# United Kingdom - # - # British Antarctic Territories (BAT) claims - # South Orkney Islands -@@ -387,7 +391,7 @@ - # but that he found it more convenient to keep GMT+12 - # as supplies for the station were coming from McMurdo Sound, - # which was on GMT+12 because New Zealand was on GMT+12 all year --# at that time (1957). (Source: Siple's book 90 degrees SOUTH.) -+# at that time (1957). (Source: Siple's book 90 Degrees South.) - # - # From Susan Smith - # http://www.cybertours.com/whs/pole10.html ---- ./jdk/make/data/tzdata/asia Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/asia Mon Dec 08 12:29:42 2014 -0800 -@@ -21,41 +21,44 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2013-08-11): -+# From Paul Eggert (2014-10-31): - # --# A good source for time zone historical data outside the U.S. is -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Another source occasionally used is Edward W. Whitman, World Time Differences, - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which - # I found in the UCLA library. - # - # For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 -+# -+# For Russian data circa 1919, a source is: -+# Byalokoz EL. New Counting of Time in Russia since July 1, 1919. -+# (See the 'europe' file for a fuller citation.) - # - # 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; -+# 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 -@@ -66,17 +69,19 @@ - # 3:30 IRST IRDT Iran - # 4:00 GST Gulf* - # 5:30 IST India --# 7:00 ICT Indochina* -+# 7:00 ICT Indochina, most times and locations* - # 7:00 WIB west Indonesia (Waktu Indonesia Barat) - # 8:00 WITA central Indonesia (Waktu Indonesia Tengah) - # 8:00 CST China --# 9:00 CJT Central Japanese Time (1896/1937)* -+# 8:00 IDT Indochina, 1943-45, 1947-55, 1960-75 (some locations)* -+# 8:00 JWST Western Standard Time (Japan, 1896/1937)* -+# 9:00 JCST Central Standard Time (Japan, 1896/1937) - # 9:00 WIT east Indonesia (Waktu Indonesia Timur) - # 9:00 JST JDT Japan - # 9:00 KST KDT Korea --# 9:30 CST (Australian) Central Standard Time -+# 9:30 ACST Australian Central Standard Time - # --# See the `europe' file for Russia and Turkey in Asia. -+# See the 'europe' file for Russia and Turkey in Asia. - - # From Guy Harris: - # Incorporates data for Singapore from Robert Elz' asia 1.1, as well as -@@ -86,7 +91,7 @@ - - ############################################################################### - --# These rules are stolen from the `europe' file. -+# These rules are stolen from the 'europe' file. - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule EUAsia 1981 max - Mar lastSun 1:00u 1:00 S - Rule EUAsia 1979 1995 - Sep lastSun 1:00u 0 - -@@ -138,11 +143,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2 - 3:00 - YERT 1957 Mar # Yerevan Time -- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s -+ 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s - 3:00 1:00 YERST 1991 Sep 23 # independence -- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s -+ 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s - 4:00 - AMT 1997 -- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s -+ 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s - 4:00 - AMT - - # Azerbaijan -@@ -155,16 +160,16 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Baku 3:19:24 - LMT 1924 May 2 - 3:00 - BAKT 1957 Mar # Baku Time -- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s -+ 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s - 3:00 1:00 BAKST 1991 Aug 30 # independence - 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00 -- 4:00 - AZT 1996 # Azerbaijan time -+ 4:00 - AZT 1996 # Azerbaijan Time - 4:00 EUAsia AZ%sT 1997 - 4:00 Azer AZ%sT - - # Bahrain - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Bahrain 3:22:20 - LMT 1920 # Al Manamah -+Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah - 4:00 - GST 1972 Jun - 3:00 - AST - -@@ -174,13 +179,8 @@ - # Daylight Saving Time from June 16 to Sept 30 - # - # Bangladesh to introduce daylight saving time likely from June 16 --# <a href="http://www.asiantribune.com/?q=node/17288"> - # http://www.asiantribune.com/?q=node/17288 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html --# </a> - # - # "... Bangladesh government has decided to switch daylight saving time from - # June -@@ -195,17 +195,11 @@ - # the 19th and 20th, and they have not set the end date yet. - # - # Some sources: --# <a href="http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601"> - # http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601 --# </a> --# <a href="http://bdnews24.com/details.php?id=85889&cid=2"> - # http://bdnews24.com/details.php?id=85889&cid=2 --# </a> - # - # Our wrap-up: --# <a href="http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html"> - # http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html --# </a> - - # From A. N. M. Kamrus Saadat (2009-06-15): - # Finally we've got the official mail regarding DST start time where DST start -@@ -220,13 +214,8 @@ - # - # Following report by same newspaper-"The Daily Star Friday": - # "DST change awaits cabinet decision-Clock won't go back by 1-hr from Oct 1" --# <a href="http://www.thedailystar.net/newDesign/news-details.php?nid=107021"> - # http://www.thedailystar.net/newDesign/news-details.php?nid=107021 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html --# </a> - - # From Steffen Thorsen (2009-10-13): - # IANS (Indo-Asian News Service) now reports: -@@ -235,22 +224,15 @@ - # "continue for an indefinite period." - # - # One of many places where it is published: --# <a href="http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html"> - # http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html --# </a> - - # From Alexander Krivenyshev (2009-12-24): - # According to Bangladesh newspaper "The Daily Star," - # Bangladesh will change its clock back to Standard Time on Dec 31, 2009. - # - # Clock goes back 1-hr on Dec 31 night. --# <a href="http://www.thedailystar.net/newDesign/news-details.php?nid=119228"> - # http://www.thedailystar.net/newDesign/news-details.php?nid=119228 --# </a> --# and --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh05.html --# </a> - # - # "...The government yesterday decided to put the clock back by one hour - # on December 31 midnight and the new time will continue until March 31, -@@ -260,17 +242,12 @@ - # From Alexander Krivenyshev (2010-03-22): - # According to Bangladesh newspaper "The Daily Star," - # Cabinet cancels Daylight Saving Time --# <a href="http://www.thedailystar.net/newDesign/latest_news.php?nid=22817"> - # http://www.thedailystar.net/newDesign/latest_news.php?nid=22817 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh06.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh06.html --# </a> - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Dhaka 2009 only - Jun 19 23:00 1:00 S --Rule Dhaka 2009 only - Dec 31 23:59 0 - -+Rule Dhaka 2009 only - Dec 31 24:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Dhaka 6:01:40 - LMT 1890 -@@ -301,7 +278,7 @@ - - # Brunei - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan -+Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan - 7:30 - BNT 1933 - 8:00 - BNT - -@@ -310,19 +287,15 @@ - # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon -- 6:24:40 - RMT 1920 # Rangoon Mean Time? -- 6:30 - BURT 1942 May # Burma Time -- 9:00 - JST 1945 May 3 -- 6:30 - MMT # Myanmar Time -+Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon -+ 6:24:40 - RMT 1920 # Rangoon Mean Time? -+ 6:30 - BURT 1942 May # Burma Time -+ 9:00 - JST 1945 May 3 -+ 6:30 - MMT # Myanmar Time - - # Cambodia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9 -- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT? -- 7:00 - ICT 1912 May -- 8:00 - ICT 1931 May -- 7:00 - ICT -+# See Asia/Bangkok. -+ - - # China - -@@ -332,12 +305,12 @@ - # From Bob Devine (1988-01-28): - # No they don't. See TIME mag, 1986-02-17 p.52. Even though - # China is across 4 physical time zones, before Feb 1, 1986 only the --# Peking (Bejing) time zone was recognized. Since that date, China --# has two of 'em -- Peking's and Urumqi (named after the capital of -+# Peking (Beijing) time zone was recognized. Since that date, China -+# has two of 'em - Peking's and Ürümqi (named after the capital of - # the Xinjiang Uyghur Autonomous Region). I don't know about DST for it. - # - # . . .I just deleted the DST table and this editor makes it too --# painful to suck in another copy.. So, here is what I have for -+# painful to suck in another copy. So, here is what I have for - # DST start/end dates for Peking's time zone (info from AP): - # - # 1986 May 4 - Sept 14 -@@ -347,15 +320,16 @@ - # CHINA 8 H AHEAD OF UTC ALL OF CHINA, INCL TAIWAN - # CHINA 9 H AHEAD OF UTC APR 17 - SEP 10 - --# From Paul Eggert (2006-03-22): --# Shanks & Pottenger write that China (except for Hong Kong and Macau) --# has had a single time zone since 1980 May 1, observing summer DST --# from 1986 through 1991; this contradicts Devine's --# note about Time magazine, though apparently _something_ happened in 1986. --# Go with Shanks & Pottenger for now. I made up names for the other --# pre-1980 time zones. -+# From Paul Eggert (2008-02-11): -+# Jim Mann, "A clumsy embrace for another western custom: China on daylight -+# time - sort of", Los Angeles Times, 1986-05-05 ... [says] that China began -+# observing daylight saving time in 1986. - --# From Shanks & Pottenger: -+# From Paul Eggert (2014-06-30): -+# Shanks & Pottenger have China switching to a single time zone in 1980, but -+# this doesn't seem to be correct. They also write that China observed summer -+# DST from 1986 through 1991, which seems to match the above commentary, so -+# go with them for DST rules as follows: - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Shang 1940 only - Jun 3 0:00 1:00 D - Rule Shang 1940 1941 - Oct 1 0:00 0 S -@@ -369,7 +343,7 @@ - # historic timezones from some Taiwan websites. And yes, there are official - # Chinese names for these locales (before 1949). - # --# From Jesper Norgaard Welen (2006-07-14): -+# From Jesper Nørgaard Welen (2006-07-14): - # I have investigated the timezones around 1970 on the - # http://www.astro.com/atlas site [with provinces and county - # boundaries summarized below].... A few other exceptions were two -@@ -380,65 +354,97 @@ - # (could be true), for the moment I am assuming that those two - # counties are mistakes in the astro.com data. - --# From Paul Eggert (2008-02-11): --# I just now checked Google News for western news sources that talk --# about China's single time zone, and couldn't find anything before 1986 --# talking about China being in one time zone. (That article was: Jim --# Mann, "A clumsy embrace for another western custom: China on daylight --# time--sort of", Los Angeles Times, 1986-05-05. By the way, this --# article confirms the tz database's data claiming that China began --# observing daylight saving time in 1986. -+# From Paul Eggert (2014-06-30): -+# Alois Treindl kindly sent me translations of the following two sources: - # --# From Thomas S. Mullaney (2008-02-11): --# I think you're combining two subjects that need to treated --# separately: daylight savings (which, you're correct, wasn't --# implemented until the 1980s) and the unified time zone centered near --# Beijing (which was implemented in 1949). Briefly, there was also a --# "Lhasa Time" in Tibet and "Urumqi Time" in Xinjiang. The first was --# ceased, and the second eventually recognized (again, in the 1980s). -+# (1) -+# Guo Qingsheng (National Time-Service Center, CAS, Xi'an 710600, China) -+# Beijing Time at the Beginning of the PRC -+# China Historical Materials of Science and Technology -+# (Zhongguo ke ji shi liao, 中国科技史料), Vol. 24, No. 1 (2003) -+# It gives evidence that at the beginning of the PRC, Beijing time was -+# officially apparent solar time! However, Guo also says that the -+# evidence is dubious, as the relevant institute of astronomy had not -+# been taken over by the PRC yet. It's plausible that apparent solar -+# time was announced but never implemented, and that people continued -+# to use UT+8. As the Shanghai radio station (and I presume the -+# observatory) was still under control of French missionaries, it -+# could well have ignored any such mandate. - # --# From Paul Eggert (2008-06-30): --# There seems to be a good chance China switched to a single time zone in 1949 --# rather than in 1980 as Shanks & Pottenger have it, but we don't have a --# reliable documentary source saying so yet, so for now we still go with --# Shanks & Pottenger. -- --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) -+# (2) -+# Guo Qing-sheng (Shaanxi Astronomical Observatory, CAS, Xi'an 710600, China) -+# A Study on the Standard Time Changes for the Past 100 Years in China -+# [undated and unknown publication location] -+# It says several things: -+# * The Qing dynasty used local apparent solar time throughout China. -+# * The Republic of China instituted Beijing mean solar time effective -+# the official calendar book of 1914. -+# * The French Concession in Shanghai set up signal stations in -+# French docks in the 1890s, controlled by Xujiahui (Zikawei) -+# Observatory and set to local mean time. -+# * "From the end of the 19th century" it changed to UT+8. -+# * Chinese Customs (by then reduced to a tool of foreign powers) -+# eventually standardized on this time for all ports, and it -+# became used by railways as well. -+# * In 1918 the Central Observatory proposed dividing China into -+# five time zones (see below for details). This caught on -+# at first only in coastal areas observing UT+8. -+# * During WWII all of China was in theory was at UT+7. In practice -+# this was ignored in the west, and I presume was ignored in -+# Japanese-occupied territory. -+# * Japanese-occupied Manchuria was at UT+9, i.e., Japan time. -+# * The five-zone plan was resurrected after WWII and officially put into -+# place (with some modifications) in March 1948. It's not clear -+# how well it was observed in areas under Nationalist control. -+# * The People's Liberation Army used UT+8 during the civil war. -+# -+# An AP article "Shanghai Internat'l Area Little Changed" in the -+# Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is -+# different - the occupied districts going by Tokyo time, an hour -+# ahead of that prevailing in the rest of Shanghai." Guess that the -+# Xujiahui Observatory was under French control and stuck with UT+8. -+# -+# In earlier versions of this file, China had many separate Zone entries, but -+# this was based on what were apparently incorrect data in Shanks & Pottenger. -+# This has now been simplified to the two entries Asia/Shanghai and -+# Asia/Urumqi, with the others being links for backward compatibility. -+# Proposed in 1918 and theoretically in effect until 1949 (although in practice -+# mainly observed in coastal areas), the five zones were: -+# -+# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5 -+# Asia/Harbin (currently a link to Asia/Shanghai) - # Heilongjiang (except Mohe county), Jilin --Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin -- 8:30 - CHAT 1932 Mar # Changbai Time -- 8:00 - CST 1940 -- 9:00 - CHAT 1966 May -- 8:30 - CHAT 1980 May -- 8:00 PRC C%sT --# Zhongyuan Time ("Central plain Time") -+# -+# Zhongyuan Time ("Central plain Time") UT+8 -+# Asia/Shanghai - # most of China --# Milne gives 8:05:56.7; round to nearest. --Zone Asia/Shanghai 8:05:57 - LMT 1928 -- 8:00 Shang C%sT 1949 -- 8:00 PRC C%sT --# Long-shu Time (probably due to Long and Shu being two names of that area) -+# This currently represents most other zones as well, -+# as apparently these regions have been the same since 1970. -+# Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest. -+# Guo says Shanghai switched to UT+8 "from the end of the 19th century". -+# -+# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7 -+# Asia/Chongqing (currently a link to Asia/Shanghai) - # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan; - # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong - # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing, - # Yangchun, Yangjiang, Yu'nan, and Yunfu. --Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking -- 7:00 - LONT 1980 May # Long-shu Time -- 8:00 PRC C%sT --# Xin-zang Time ("Xinjiang-Tibet Time") -+# -+# Xin-zang Time ("Xinjiang-Tibet Time") UT+6 -+# Asia/Urumqi -+# This currently represents Kunlun Time as well, -+# as apparently the two regions have been the same since 1970. - # The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai; - # the Guangdong counties Xuwen, Haikang, Suixi, Lianjiang, - # Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi; - # east Tibet, including Lhasa, Chamdo, Shigaise, Jimsar, Shawan and Hutubi; --# east Xinjiang, including Urumqi, Turpan, Karamay, Korla, Minfeng, Jinghe, -+# east Xinjiang, including Ürümqi, Turpan, Karamay, Korla, Minfeng, Jinghe, - # Wusu, Qiemo, Xinyan, Wulanwusu, Jinghe, Yumin, Tacheng, Tuoli, Emin, - # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami, - # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan. --Zone Asia/Urumqi 5:50:20 - LMT 1928 # or Urumchi -- 6:00 - URUT 1980 May # Urumqi Time -- 8:00 PRC C%sT --# Kunlun Time -+# -+# Kunlun Time UT+5.5 -+# Asia/Kashgar (currently a link to Asia/Urumqi) - # West Tibet, including Pulan, Aheqi, Shufu, Shule; - # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke, - # Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding, -@@ -455,9 +461,9 @@ - # population of Xinjiang, typically use "Xinjiang time" which is two - # hours behind Beijing time, or UTC +0600. The government of the Xinjiang - # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as --# local governments such as the Urumqi city government use both times in -+# local governments such as the Ürümqi city government use both times in - # publications, referring to what is popularly called Xinjiang time as --# "Urumqi time." When Uyghurs make an appointment in the Uyghur language -+# "Ürümqi time." When Uyghurs make an appointment in the Uyghur language - # they almost invariably use Xinjiang time. - # - # (Their ethnic Han compatriots would typically have no clue of its -@@ -469,21 +475,6 @@ - # the province not having dual times but four times in use at the same - # time. Some areas remained on standard Xinjiang time or Beijing time and - # others moving their clocks ahead.) --# --# ...an example of an official website using of Urumqi time. --# --# The first few lines of the Google translation of --# <a href="http://www.fjysgl.gov.cn/show.aspx?id=2379&cid=39"> --# http://www.fjysgl.gov.cn/show.aspx?id=2379&cid=39 --# </a> --# (retrieved 2009-10-13) --# > Urumqi fire seven people are missing the alleged losses of at least --# > 500 million yuan --# > --# > (Reporter Dong Liu) the day before 20:20 or so (Urumqi Time 18:20), --# > Urumqi City Department of International Plaza Luther Qiantang River --# > burst fire. As of yesterday, 18:30, Urumqi City Fire officers and men --# > have worked continuously for 22 hours... - - # From Luther Ma (2009-11-19): - # With the risk of being redundant to previous answers these are the most common -@@ -494,7 +485,7 @@ - # 3. Urumqi... - # 4. Kashgar... - # ... --# 5. It seems that Uyghurs in Urumqi has been using Xinjiang since at least the -+# 5. It seems that Uyghurs in Ürümqi has been using Xinjiang since at least the - # 1960's. I know of one Han, now over 50, who grew up in the surrounding - # countryside and used Xinjiang time as a child. - # -@@ -506,10 +497,55 @@ - # Autonomous Region under the PRC. (Before that Uyghurs, of course, would also - # not be using Beijing time, but some local time.) - --Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar -- 5:30 - KAST 1940 # Kashgar Time -- 5:00 - KAST 1980 May -+# From David Cochrane (2014-03-26): -+# Just a confirmation that Ürümqi time was implemented in Ürümqi on 1 Feb 1986: -+# http://content.time.com/time/magazine/article/0,9171,960684,00.html -+ -+# From Luther Ma (2014-04-22): -+# I have interviewed numerous people of various nationalities and from -+# different localities in Xinjiang and can confirm the information in Guo's -+# report regarding Xinjiang, as well as the Time article reference by David -+# Cochrane. Whether officially recognized or not (and both are officially -+# recognized), two separate times have been in use in Xinjiang since at least -+# the Cultural Revolution: Xinjiang Time (XJT), aka Ürümqi Time or local time; -+# and Beijing Time. There is no confusion in Xinjiang as to which name refers -+# to which time. Both are widely used in the province, although in some -+# population groups might be use one to the exclusion of the other. The only -+# problem is that computers and smart phones list Ürümqi (or Kashgar) as -+# having the same time as Beijing. -+ -+# From Paul Eggert (2014-06-30): -+# In the early days of the PRC, Tibet was given its own time zone (UT+6) but -+# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun, -+# Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN -+# 978-0231142861 (2008), translator's introduction by Matthew Akester, p x. -+# As this is before our 1970 cutoff, Tibet doesn't need a separate zone. -+# -+# Xinjiang Time is well-documented as being officially recognized. E.g., see -+# "The Working-Calendar for The Xinjiang Uygur Autonomous Region Government" -+# <http://www.sinkiang.gov.cn/service/ourworking/> (2014-04-22). -+# Unfortunately, we have no good records of time in Xinjiang before 1986. -+# During the 20th century parts of Xinjiang were ruled by the Qing dynasty, -+# the Republic of China, various warlords, the First and Second East Turkestan -+# Republics, the Soviet Union, the Kuomintang, and the People's Republic of -+# China, and tracking down all these organizations' timekeeping rules would be -+# quite a trick. Approximate this lost history by a transition from LMT to -+# XJT at the start of 1928, the year of accession of the warlord Jin Shuren, -+# which happens to be the date given by Shanks & Pottenger (no doubt as a -+# guess) as the transition from LMT. Ignore the usage of UT+8 before -+# 1986-02-01 under the theory that the transition date to UT+8 is unknown and -+# that the sort of users who prefer Asia/Urumqi now typically ignored the -+# UT+8 mandate back then. -+ -+# Zone NAME GMTOFF RULES FORMAT [UNTIL] -+# Beijing time, used throughout China; represented by Shanghai. -+Zone Asia/Shanghai 8:05:43 - LMT 1901 -+ 8:00 Shang C%sT 1949 - 8:00 PRC C%sT -+# Xinjiang time, used by many in western China; represented by Ürümqi / Ürümchi -+# / Wulumuqi. (Please use Asia/Shanghai if you prefer Beijing time.) -+Zone Asia/Urumqi 5:50:20 - LMT 1928 -+ 6:00 - XJT - - - # Hong Kong (Xianggang) -@@ -524,15 +560,11 @@ - # and incorrect rules. Although the exact switch over time is missing, I - # think 3:30 is correct. The official DST record for Hong Kong can be - # obtained from --# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm"> - # http://www.hko.gov.hk/gts/time/Summertime.htm --# </a>. - - # From Arthur David Olson (2009-10-28): - # Here are the dates given at --# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm"> - # http://www.hko.gov.hk/gts/time/Summertime.htm --# </a> - # as of 2009-10-28: - # Year Period - # 1941 1 Apr to 30 Sep -@@ -612,35 +644,113 @@ - - # Taiwan - --# Shanks & Pottenger write that Taiwan observed DST during 1945, when it --# was still controlled by Japan. This is hard to believe, but we don't --# have any other information. -- - # From smallufo (2010-04-03): --# According to Taiwan's CWB, --# <a href="http://www.cwb.gov.tw/V6/astronomy/cdata/summert.htm"> -+# According to Taiwan's CWB [Central Weather Bureau], - # http://www.cwb.gov.tw/V6/astronomy/cdata/summert.htm --# </a> - # Taipei has DST in 1979 between July 1st and Sep 30. - --# From Arthur David Olson (2010-04-07): --# Here's Google's translation of the table at the bottom of the "summert.htm" page: --# Decade Name Start and end date --# Republic of China 34 years to 40 years (AD 1945-1951 years) Summer Time May 1 to September 30 --# 41 years of the Republic of China (AD 1952) Daylight Saving Time March 1 to October 31 --# Republic of China 42 years to 43 years (AD 1953-1954 years) Daylight Saving Time April 1 to October 31 --# In the 44 years to 45 years (AD 1955-1956 years) Daylight Saving Time April 1 to September 30 --# Republic of China 46 years to 48 years (AD 1957-1959) Summer Time April 1 to September 30 --# Republic of China 49 years to 50 years (AD 1960-1961) Summer Time June 1 to September 30 --# Republic of China 51 years to 62 years (AD 1962-1973 years) Stop Summer Time --# Republic of China 63 years to 64 years (1974-1975 AD) Daylight Saving Time April 1 to September 30 --# Republic of China 65 years to 67 years (1976-1978 AD) Stop Daylight Saving Time --# Republic of China 68 years (AD 1979) Daylight Saving Time July 1 to September 30 --# Republic of China since 69 years (AD 1980) Stop Daylight Saving Time -+# From Yu-Cheng Chuang (2013-07-12): -+# On Dec 28, 1895, the Meiji Emperor announced Ordinance No. 167 of -+# Meiji Year 28 "The clause about standard time", mentioned that -+# Taiwan and Penghu Islands, as well as Yaeyama and Miyako Islands -+# (both in Okinawa) adopt the Western Standard Time which is based on -+# 120E. The adoption began from Jan 1, 1896. The original text can be -+# found on Wikisource: -+# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時) -+# ... This could be the first adoption of time zone in Taiwan, because -+# during the Qing Dynasty, it seems that there was no time zone -+# declared officially. -+# -+# Later, in the beginning of World War II, on Sep 25, 1937, the Showa -+# Emperor announced Ordinance No. 529 of Showa Year 12 "The clause of -+# revision in the ordinance No. 167 of Meiji year 28 about standard -+# time", in which abolished the adoption of Western Standard Time in -+# western islands (listed above), which means the whole Japan -+# territory, including later occupations, adopt Japan Central Time -+# (UTC+9). The adoption began on Oct 1, 1937. The original text can -+# be found on Wikisource: -+# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件 -+# -+# That is, the time zone of Taipei switched to UTC+9 on Oct 1, 1937. -+ -+# From Yu-Cheng Chuang (2014-07-02): -+# I've found more evidence about when the time zone was switched from UTC+9 -+# back to UTC+8 after WW2. I believe it was on Sep 21, 1945. In a document -+# during Japanese era [1] in which the officer told the staff to change time -+# zone back to Western Standard Time (UTC+8) on Sep 21. And in another -+# history page of National Cheng Kung University [2], on Sep 21 there is a -+# note "from today, switch back to Western Standard Time". From these two -+# materials, I believe that the time zone change happened on Sep 21. And -+# today I have found another monthly journal called "The Astronomical Herald" -+# from The Astronomical Society of Japan [3] in which it mentioned the fact -+# that: -+# -+# 1. Standard Time of the Country (Japan) was adopted on Jan 1, 1888, using -+# the time at 135E (GMT+9) -+# -+# 2. Standard Time of the Country was renamed to Central Standard Time, on Jan -+# 1, 1898, and on the same day, the new territories Taiwan and Penghu islands, -+# as well as Yaeyama and Miyako islands, adopted a new time zone called -+# Western Standard Time, which is in GMT+8. -+# -+# 3. Western Standard Time was deprecated on Sep 30, 1937. From then all the -+# territories of Japan adopted the same time zone, which is Central Standard -+# Time. -+# -+# [1] Academica Historica, Taiwan: -+# http://163.29.208.22:8080/govsaleShowImage/connect_img.php?s=00101738900090036&e=00101738900090037 -+# [2] Nat'l Cheng Kung University 70th Anniversary Special Site: -+# http://www.ncku.edu.tw/~ncku70/menu/001/01_01.htm -+# [3] Yukio Niimi, The Standard Time in Japan (1997), p.475: -+# http://www.asj.or.jp/geppou/archive_open/1997/pdf/19971001c.pdf -+ -+# Yu-Cheng Chuang (2014-07-03): -+# I finally have found the real official gazette about changing back to -+# Western Standard Time on Sep 21 in Taiwan. It's Taiwan Governor-General -+# Bulletin No. 386 in Showa 20 years (1945), published on Sep 19, 1945. [1] ... -+# [It] abolishes Bulletin No. 207 in Showa 12 years (1937), which is a local -+# bulletin in Taiwan for that Ordinance No. 529. It also mentioned that 1am on -+# Sep 21, 1945 will be 12am on Sep 21. I think this bulletin is much more -+# official than the one I mentioned in my first mail, because it's from the -+# top-level government in Taiwan. If you're going to quote any resource, this -+# would be a good one. -+# [1] Taiwan Governor-General Gazette, No. 1018, Sep 19, 1945: -+# http://db2.th.gov.tw/db2/view/viewImg.php?imgcode=0072031018a&num=19&bgn=019&end=019&otherImg=&type=gener -+ -+# From Yu-Cheng Chuang (2014-07-02): -+# In 1946, DST in Taiwan was from May 15 and ended on Sep 30. The info from -+# Central Weather Bureau website was not correct. -+# -+# Original Bulletin: -+# http://subtpg.tpg.gov.tw/og/image2.asp?f=03502F0AKM1AF -+# http://subtpg.tpg.gov.tw/og/image2.asp?f=0350300AKM1B0 (cont.) -+# -+# In 1947, DST in Taiwan was expanded to Oct 31. There is a backup of that -+# telegram announcement from Taiwan Province Government: -+# -+# http://subtpg.tpg.gov.tw/og/image2.asp?f=0360310AKZ431 -+# -+# Here is a brief translation: -+# -+# The Summer Time this year is adopted from midnight Apr 15 until Sep 20 -+# midnight. To save (energy?) consumption, we're expanding Summer Time -+# adoption till Oct 31 midnight. -+# -+# The Central Weather Bureau website didn't mention that, however it can -+# be found from historical government announcement database. -+ -+# From Paul Eggert (2014-07-03): -+# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01 -+# until 1945-09-21 at 01:00, overriding Shanks & Pottenger. -+# Likewise, use Yu-Cheng Chuang's data for DST in Taiwan. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Taiwan 1945 1951 - May 1 0:00 1:00 D --Rule Taiwan 1945 1951 - Oct 1 0:00 0 S -+Rule Taiwan 1946 only - May 15 0:00 1:00 D -+Rule Taiwan 1946 only - Oct 1 0:00 0 S -+Rule Taiwan 1947 only - Apr 15 0:00 1:00 D -+Rule Taiwan 1947 only - Nov 1 0:00 0 S -+Rule Taiwan 1948 1951 - May 1 0:00 1:00 D -+Rule Taiwan 1948 1951 - Oct 1 0:00 0 S - Rule Taiwan 1952 only - Mar 1 0:00 1:00 D - Rule Taiwan 1952 1954 - Nov 1 0:00 0 S - Rule Taiwan 1953 1959 - Apr 1 0:00 1:00 D -@@ -648,11 +758,14 @@ - Rule Taiwan 1960 1961 - Jun 1 0:00 1:00 D - Rule Taiwan 1974 1975 - Apr 1 0:00 1:00 D - Rule Taiwan 1974 1975 - Oct 1 0:00 0 S --Rule Taiwan 1979 only - Jun 30 0:00 1:00 D --Rule Taiwan 1979 only - Sep 30 0:00 0 S -+Rule Taiwan 1979 only - Jul 1 0:00 1:00 D -+Rule Taiwan 1979 only - Oct 1 0:00 0 S - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Taipei 8:06:00 - LMT 1896 # or Taibei or T'ai-pei -+# Taipei or Taibei or T'ai-pei -+Zone Asia/Taipei 8:06:00 - LMT 1896 Jan 1 -+ 8:00 - JWST 1937 Oct 1 -+ 9:00 - JST 1945 Sep 21 1:00 - 8:00 Taiwan C%sT - - # Macau (Macao, Aomen) -@@ -672,7 +785,7 @@ - Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S - Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Macau 7:34:20 - LMT 1912 -+Zone Asia/Macau 7:34:20 - LMT 1912 Jan 1 - 8:00 Macau MO%sT 1999 Dec 20 # return to China - 8:00 PRC C%sT - -@@ -721,7 +834,7 @@ - # republic has changed its time zone back to that of Moscow. As a result it - # is now just four hours ahead of Greenwich Mean Time, rather than five hours - # ahead. The switch was decreed by the pro-Western president of Georgia, --# Mikhail Saakashvili, who said the change was partly prompted by the process -+# Mikheil Saakashvili, who said the change was partly prompted by the process - # of integration into Europe. - - # From Teimuraz Abashidze (2005-11-07): -@@ -734,29 +847,31 @@ - # I don't know what can be done, especially knowing that some years ago our - # DST rules where changed THREE TIMES during one month. - -+# Milne 1899 says Tbilisi (Tiflis) time was 2:59:05.7. -+# Byalokoz 1919 says Georgia was 2:59:11. -+# Go with Byalokoz. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Tbilisi 2:59:16 - LMT 1880 -- 2:59:16 - TBMT 1924 May 2 # Tbilisi Mean Time -+Zone Asia/Tbilisi 2:59:11 - LMT 1880 -+ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time - 3:00 - TBIT 1957 Mar # Tbilisi Time -- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s -+ 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s - 3:00 1:00 TBIST 1991 Apr 9 # independence -- 3:00 RussiaAsia GE%sT 1992 # Georgia Time -+ 3:00 RussiaAsia GE%sT 1992 # Georgia Time - 3:00 E-EurAsia GE%sT 1994 Sep lastSun - 4:00 E-EurAsia GE%sT 1996 Oct lastSun - 4:00 1:00 GEST 1997 Mar lastSun - 4:00 E-EurAsia GE%sT 2004 Jun 27 -- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00 -+ 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00 - 4:00 - GET - - # East Timor - - # See Indonesia for the 1945 transition. - --# From Joao Carrascalao, brother of the former governor of East Timor, in --# <a href="http://etan.org/et99c/december/26-31/30ETMAY.htm"> -+# From João Carrascalão, brother of the former governor of East Timor, in - # East Timor may be late for its millennium --# </a> (1999-12-26/31): -+# <http://etan.org/et99c/december/26-31/30ETMAY.htm> (1999-12-26/31): - # Portugal tried to change the time forward in 1974 because the sun - # rises too early but the suggestion raised a lot of problems with the - # Timorese and I still don't think it would work today because it -@@ -766,25 +881,25 @@ - # We don't have any record of the above attempt. - # Most likely our records are incomplete, but we have no better data. - --# <a href="http://www.hri.org/news/world/undh/last/00-08-16.undh.html"> - # From Manoel de Almeida e Silva, Deputy Spokesman for the UN Secretary-General --# (2000-08-16)</a>: -+# http://www.hri.org/news/world/undh/2000/00-08-16.undh.html -+# (2000-08-16): - # The Cabinet of the East Timor Transition Administration decided - # today to advance East Timor's time by one hour. The time change, - # which will be permanent, with no seasonal adjustment, will happen at - # midnight on Saturday, September 16. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Dili 8:22:20 - LMT 1912 -+Zone Asia/Dili 8:22:20 - LMT 1912 Jan 1 - 8:00 - TLT 1942 Feb 21 23:00 # E Timor Time - 9:00 - JST 1945 Sep 23 - 9:00 - TLT 1976 May 3 -- 8:00 - WITA 2000 Sep 17 00:00 -+ 8:00 - WITA 2000 Sep 17 0:00 - 9:00 - TLT - - # India - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata -+Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata - 5:53:20 - HMT 1941 Oct # Howrah Mean Time? - 6:30 - BURT 1942 May 15 # Burma Time - 5:30 - IST 1942 Sep -@@ -797,8 +912,12 @@ - - # Indonesia - # -+# From Paul Eggert (2014-09-06): -+# The 1876 Report of the Secretary of the [US] Navy, p 306 says that Batavia -+# civil time was 7:07:12.5; round to even for Jakarta. -+# - # From Gwillim Law (2001-05-28), overriding Shanks & Pottenger: --# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime> -+# http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime - # says that Indonesia's time zones changed on 1988-01-01. Looking at some - # time zone maps, I think that must refer to Western Borneo (Kalimantan Barat - # and Kalimantan Tengah) switching from UTC+8 to UTC+7. -@@ -810,7 +929,7 @@ - # other formal surrender ceremonies were September 9, 11, and 13, plus - # September 12 for the regional surrender to Mountbatten in Singapore. - # These would be the earliest possible times for a change. --# Regimes horaires pour le monde entier, by Henri Le Corre, (Editions -+# Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions - # Traditionnelles, 1987, Paris) says that Java and Madura switched - # from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura - # (Hollandia). For now, assume all Indonesian locations other than Jayapura -@@ -835,7 +954,7 @@ - # Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13, - # but this must be a typo. - 7:07:12 - BMT 1923 Dec 31 23:47:12 # Batavia -- 7:20 - JAVT 1932 Nov # Java Time -+ 7:20 - JAVT 1932 Nov # Java Time - 7:30 - WIB 1942 Mar 23 - 9:00 - JST 1945 Sep 23 - 7:30 - WIB 1948 May -@@ -861,7 +980,7 @@ - # Maluku Islands, West Papua, Papua - Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov - 9:00 - WIT 1944 Sep 1 -- 9:30 - CST 1964 -+ 9:30 - ACST 1964 - 9:00 - WIT - - # Iran -@@ -927,7 +1046,7 @@ - # Several of my users have reported that Iran will not observe DST anymore: - # http://www.irna.ir/en/news/view/line-17/0603193812164948.htm - # --# From Reuters (2007-09-16), with a heads-up from Jesper Norgaard Welen: -+# From Reuters (2007-09-16), with a heads-up from Jesper Nørgaard Welen: - # ... the Guardian Council ... approved a law on Sunday to re-introduce - # daylight saving time ... - # http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916 -@@ -993,7 +1112,7 @@ - Rule Iran 2036 2037 - Sep 21 0:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Tehran 3:25:44 - LMT 1916 -- 3:25:44 - TMT 1946 # Tehran Mean Time -+ 3:25:44 - TMT 1946 # Tehran Mean Time - 3:30 - IRST 1977 Nov - 4:00 Iran IR%sT 1979 - 3:30 Iran IR%sT -@@ -1018,17 +1137,11 @@ - # From Steffen Thorsen (2008-03-10): - # The cabinet in Iraq abolished DST last week, according to the following - # news sources (in Arabic): --# <a href="http://www.aljeeran.net/wesima_articles/news-20080305-98602.html"> - # http://www.aljeeran.net/wesima_articles/news-20080305-98602.html --# </a> --# <a href="http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10"> - # http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10 --# </a> - # - # We have published a short article in English about the change: --# <a href="http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html"> - # http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html --# </a> - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Iraq 1982 only - May 1 0:00 1:00 D -@@ -1037,14 +1150,14 @@ - Rule Iraq 1984 1985 - Apr 1 0:00 1:00 D - Rule Iraq 1985 1990 - Sep lastSun 1:00s 0 S - Rule Iraq 1986 1990 - Mar lastSun 1:00s 1:00 D --# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the `:01' is a typo. -+# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the ':01' is a typo. - # Shanks & Pottenger say Iraq did not observe DST 1992/1997; ignore this. - # - Rule Iraq 1991 2007 - Apr 1 3:00s 1:00 D - Rule Iraq 1991 2007 - Oct 1 3:00s 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Baghdad 2:57:40 - LMT 1890 -- 2:57:36 - BMT 1918 # Baghdad Mean Time? -+ 2:57:36 - BMT 1918 # Baghdad Mean Time? - 3:00 - AST 1982 May - 3:00 Iraq A%sT - -@@ -1272,7 +1385,7 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Jerusalem 2:20:54 - LMT 1880 -- 2:20:40 - JMT 1918 # Jerusalem Mean Time? -+ 2:20:40 - JMT 1918 # Jerusalem Mean Time? - 2:00 Zion I%sT - - -@@ -1281,15 +1394,15 @@ - - # Japan - --# `9:00' and `JST' is from Guy Harris. -+# '9:00' and 'JST' is from Guy Harris. - - # From Paul Eggert (1995-03-06): - # Today's _Asahi Evening News_ (page 4) reports that Japan had --# daylight saving between 1948 and 1951, but ``the system was discontinued --# because the public believed it would lead to longer working hours.'' -+# daylight saving between 1948 and 1951, but "the system was discontinued -+# because the public believed it would lead to longer working hours." - --# From Mayumi Negishi in the 2005-08-10 Japan Times --# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>: -+# From Mayumi Negishi in the 2005-08-10 Japan Times: -+# http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm - # Occupation authorities imposed daylight-saving time on Japan on - # [1948-05-01].... But lack of prior debate and the execution of - # daylight-saving time just three days after the bill was passed generated -@@ -1313,7 +1426,8 @@ - - # From Hideyuki Suzuki (1998-11-09): - # 'Tokyo' usually stands for the former location of Tokyo Astronomical --# Observatory: E 139 44' 40".90 (9h 18m 58s.727), N 35 39' 16".0. -+# Observatory: 139 degrees 44' 40.90" E (9h 18m 58.727s), -+# 35 degrees 39' 16.0" N. - # This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996' - # edited by National Astronomical Observatory of Japan.... - # JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST). -@@ -1321,10 +1435,10 @@ - - # From Hideyuki Suzuki (1998-11-16): - # The ordinance No. 51 (1886) established "standard time" in Japan, --# which stands for the time on E 135 degree. -+# which stands for the time on 135 degrees E. - # In the ordinance No. 167 (1895), "standard time" was renamed to "central - # standard time". And the same ordinance also established "western standard --# time", which stands for the time on E 120 degree.... But "western standard -+# time", which stands for the time on 120 degrees E.... But "western standard - # time" was abolished in the ordinance No. 529 (1937). In the ordinance No. - # 167, there is no mention regarding for what place western standard time is - # standard.... -@@ -1332,27 +1446,33 @@ - # I wrote "ordinance" above, but I don't know how to translate. - # In Japanese it's "chokurei", which means ordinance from emperor. - --# Shanks & Pottenger claim JST in use since 1896, and that a few --# places (e.g. Ishigaki) use +0800; go with Suzuki. Guess that all --# ordinances took effect on Jan 1. -+# From Yu-Cheng Chuang (2013-07-12): -+# ...the Meiji Emperor announced Ordinance No. 167 of Meiji Year 28 "The clause -+# about standard time" ... The adoption began from Jan 1, 1896. -+# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時) -+# -+# ...the Showa Emperor announced Ordinance No. 529 of Showa Year 12 ... which -+# means the whole Japan territory, including later occupations, adopt Japan -+# Central Time (UTC+9). The adoption began on Oct 1, 1937. -+# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u -- 9:00 - JST 1896 -- 9:00 - CJT 1938 -+ 9:00 - JST 1896 Jan 1 -+ 9:00 - JCST 1937 Oct 1 - 9:00 Japan J%sT - # Since 1938, all Japanese possessions have been like Asia/Tokyo. - - # Jordan - # --# From <a href="http://star.arabia.com/990701/JO9.html"> --# Jordan Week (1999-07-01) </a> via Steffen Thorsen (1999-09-09): -+# From <http://star.arabia.com/990701/JO9.html> -+# Jordan Week (1999-07-01) via Steffen Thorsen (1999-09-09): - # Clocks in Jordan were forwarded one hour on Wednesday at midnight, - # in accordance with the government's decision to implement summer time - # all year round. - # --# From <a href="http://star.arabia.com/990930/JO9.html"> --# Jordan Week (1999-09-30) </a> via Steffen Thorsen (1999-11-09): -+# From <http://star.arabia.com/990930/JO9.html> -+# Jordan Week (1999-09-30) via Steffen Thorsen (1999-11-09): - # Winter time starts today Thursday, 30 September. Clocks will be turned back - # by one hour. This is the latest government decision and it's final! - # The decision was taken because of the increase in working hours in -@@ -1372,9 +1492,7 @@ - - # From Steffen Thorsen (2009-04-02): - # This single one might be good enough, (2009-03-24, Arabic): --# <a href="http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279"> - # http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279 --# </a> - # - # Google's translation: - # -@@ -1465,9 +1583,8 @@ - # - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00. - # - Oral switched from +5:00 to +4:00 in spring 1989. - --# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm"> --# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21): --# </a> -+# From Kazakhstan Embassy's News Bulletin #11 -+# <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21): - # The Government of Kazakhstan passed a resolution March 15 abolishing - # daylight saving time citing lack of economic benefits and health - # complications coupled with a decrease in productivity. -@@ -1500,10 +1617,10 @@ - 6:00 - KIZT 1982 Apr 1 - 5:00 RussiaAsia KIZ%sT 1991 - 5:00 - KIZT 1991 Dec 16 # independence -- 5:00 - QYZT 1992 Jan 19 2:00 -+ 5:00 - QYZT 1992 Jan 19 2:00 - 6:00 RussiaAsia QYZ%sT 2005 Mar 15 - 6:00 - QYZT --# Aqtobe (aka Aktobe, formerly Akt'ubinsk) -+# Aqtobe (aka Aktobe, formerly Aktyubinsk) - Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2 - 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time - 5:00 - AKTT 1981 Apr 1 -@@ -1523,7 +1640,7 @@ - 6:00 - SHET 1982 Apr 1 - 5:00 RussiaAsia SHE%sT 1991 - 5:00 - SHET 1991 Dec 16 # independence -- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time -+ 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time - 4:00 RussiaAsia AQT%sT 2005 Mar 15 - 5:00 - AQTT - # West Kazakhstan -@@ -1532,7 +1649,7 @@ - 5:00 - URAT 1981 Apr 1 - 5:00 1:00 URAST 1981 Oct 1 - 6:00 - URAT 1982 Apr 1 -- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00 -+ 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00 - 4:00 RussiaAsia URA%sT 1991 - 4:00 - URAT 1991 Dec 16 # independence - 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time -@@ -1543,7 +1660,7 @@ - - # From Paul Eggert (2005-08-15): - # According to an article dated today in the Kyrgyzstan Development Gateway --# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml> -+# http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml - # Kyrgyzstan is canceling the daylight saving time system. I take the article - # to mean that they will leave their clocks at 6 hours ahead of UTC. - # From Malik Abdugaliev (2005-09-21): -@@ -1558,68 +1675,92 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2 - 5:00 - FRUT 1930 Jun 21 # Frunze Time -- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s -- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence -- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time -+ 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s -+ 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence -+ 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time - 6:00 - KGT - - ############################################################################### - - # Korea (North and South) - --# From Annie I. Bang (2006-07-10) in --# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>: --# The Ministry of Commerce, Industry and Energy has already --# commissioned a research project [to reintroduce DST] and has said --# the system may begin as early as 2008.... Korea ran a daylight --# saving program from 1949-61 but stopped it during the 1950-53 Korean War. -+# From Annie I. Bang (2006-07-10): -+# http://www.koreaherald.com/view.php?ud=200607100012 -+# Korea ran a daylight saving program from 1949-61 but stopped it -+# during the 1950-53 Korean War. The system was temporarily enforced -+# between 1987 and 1988 ... - --# From Shanks & Pottenger: -+# From Sanghyuk Jung (2014-10-29): -+# http://mm.icann.org/pipermail/tz/2014-October/021830.html -+# According to the Korean Wikipedia -+# http://ko.wikipedia.org/wiki/한국_표준시 -+# [oldid=12896437 2014-09-04 08:03 UTC] -+# DST in Republic of Korea was as follows.... And I checked old -+# newspapers in Korean, all articles correspond with data in Wikipedia. -+# For example, the article in 1948 (Korean Language) proved that DST -+# started at June 1 in that year. For another example, the article in -+# 1988 said that DST started at 2:00 AM in that year. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule ROK 1960 only - May 15 0:00 1:00 D --Rule ROK 1960 only - Sep 13 0:00 0 S --Rule ROK 1987 1988 - May Sun>=8 0:00 1:00 D --Rule ROK 1987 1988 - Oct Sun>=8 0:00 0 S -+Rule ROK 1948 only - Jun 1 0:00 1:00 D -+Rule ROK 1948 only - Sep 13 0:00 0 S -+Rule ROK 1949 only - Apr 3 0:00 1:00 D -+Rule ROK 1949 1951 - Sep Sun>=8 0:00 0 S -+Rule ROK 1950 only - Apr 1 0:00 1:00 D -+Rule ROK 1951 only - May 6 0:00 1:00 D -+Rule ROK 1955 only - May 5 0:00 1:00 D -+Rule ROK 1955 only - Sep 9 0:00 0 S -+Rule ROK 1956 only - May 20 0:00 1:00 D -+Rule ROK 1956 only - Sep 30 0:00 0 S -+Rule ROK 1957 1960 - May Sun>=1 0:00 1:00 D -+Rule ROK 1957 1960 - Sep Sun>=18 0:00 0 S -+Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D -+Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S -+ -+# From Paul Eggert (2014-10-30): -+# The Korean Wikipedia entry gives the following sources for UT offsets: -+# -+# 1908: Official Journal Article No. 3994 (Edict No. 5) -+# 1912: Governor-General of Korea Official Gazette Issue No. 367 -+# (Announcement No. 338) -+# 1954: Presidential Decree No. 876 (1954-03-17) -+# 1961: Law No. 676 (1961-08-07) -+# 1987: Law No. 3919 (1986-12-31) -+# -+# The Wikipedia entry also has confusing information about a change -+# to UT+9 in April 1910, but then what would be the point of the later change -+# to UT+9 on 1912-01-01? Omit the 1910 change for now. -+# -+# I guessed that time zone abbreviations through 1945 followed the same -+# rules as discussed under Taiwan, with nominal switches from JST to KST -+# when the respective cities were taken over by the Allies after WWII. -+# -+# For Pyongyang we have no information; guess no changes since World War II. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Seoul 8:27:52 - LMT 1890 -- 8:30 - KST 1904 Dec -- 9:00 - KST 1928 -- 8:30 - KST 1932 -+Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1 -+ 8:30 - KST 1912 Jan 1 -+ 9:00 - JCST 1937 Oct 1 -+ 9:00 - JST 1945 Sep 8 - 9:00 - KST 1954 Mar 21 -- 8:00 ROK K%sT 1961 Aug 10 -- 8:30 - KST 1968 Oct -+ 8:30 ROK K%sT 1961 Aug 10 - 9:00 ROK K%sT --Zone Asia/Pyongyang 8:23:00 - LMT 1890 -- 8:30 - KST 1904 Dec -- 9:00 - KST 1928 -- 8:30 - KST 1932 -- 9:00 - KST 1954 Mar 21 -- 8:00 - KST 1961 Aug 10 -+Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1 -+ 8:30 - KST 1912 Jan 1 -+ 9:00 - JCST 1937 Oct 1 -+ 9:00 - JST 1945 Aug 24 - 9:00 - KST - - ############################################################################### - - # Kuwait - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# From the Arab Times (2007-03-14): --# The Civil Service Commission (CSC) has approved a proposal forwarded --# by MP Ahmad Baqer on implementing the daylight saving time (DST) in --# Kuwait starting from April until the end of Sept this year, reports Al-Anba. --# <http://www.arabtimesonline.com/arabtimes/kuwait/Viewdet.asp?ID=9950>. --# From Paul Eggert (2007-03-29): --# We don't know the details, or whether the approval means it'll happen, --# so for now we assume no DST. - Zone Asia/Kuwait 3:11:56 - LMT 1950 - 3:00 - AST - - # Laos --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Vientiane 6:50:24 - LMT 1906 Jun 9 # or Viangchan -- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT? -- 7:00 - ICT 1912 May -- 8:00 - ICT 1931 May -- 7:00 - ICT -+# See Asia/Bangkok. -+ - - # Lebanon - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1657,8 +1798,8 @@ - Rule NBorneo 1935 1941 - Dec 14 0:00 0 - - # - # peninsular Malaysia --# The data here are taken from Mok Ly Yng (2003-10-30) --# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>. -+# taken from Mok Ly Yng (2003-10-30) -+# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1 - 6:55:25 - SMT 1905 Jun 1 # Singapore M.T. -@@ -1670,12 +1811,12 @@ - 7:30 - MALT 1982 Jan 1 - 8:00 - MYT # Malaysia Time - # Sabah & Sarawak --# From Paul Eggert (2006-03-22): --# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982 --# transition dates are from Mok Ly Yng. -+# From Paul Eggert (2014-08-12): -+# The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945 -+# and 1982 transition dates are from Mok Ly Yng. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Kuching 7:21:20 - LMT 1926 Mar -- 7:30 - BORT 1933 # Borneo Time -+ 7:30 - BORT 1933 # Borneo Time - 8:00 NBorneo BOR%sT 1942 Feb 16 - 9:00 - JST 1945 Sep 12 - 8:00 - BORT 1982 Jan 1 -@@ -1683,22 +1824,21 @@ - - # Maldives - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Maldives 4:54:00 - LMT 1880 # Male -- 4:54:00 - MMT 1960 # Male Mean Time -- 5:00 - MVT # Maldives Time -+Zone Indian/Maldives 4:54:00 - LMT 1880 # Male -+ 4:54:00 - MMT 1960 # Male Mean Time -+ 5:00 - MVT # Maldives Time - - # Mongolia - - # Shanks & Pottenger say that Mongolia has three time zones, but --# usno1995 and the CIA map Standard Time Zones of the World (2005-03) --# both say that it has just one. -+# The USNO (1995-12-21) and the CIA map Standard Time Zones of the World -+# (2005-03) both say that it has just one. - - # From Oscar van Vlijmen (1999-12-11): --# <a href="http://www.mongoliatourism.gov.mn/general.htm"> - # General Information Mongolia --# </a> (1999-09) -+# <http://www.mongoliatourism.gov.mn/general.htm> (1999-09) - # "Time: Mongolia has two time zones. Three westernmost provinces of --# Bayan-Ulgii, Uvs, and Hovd are one hour earlier than the capital city, and -+# Bayan-Ölgii, Uvs, and Hovd are one hour earlier than the capital city, and - # the rest of the country follows the Ulaanbaatar time, which is UTC/GMT plus - # eight hours." - -@@ -1709,7 +1849,7 @@ - # of implementation may have been different.... - # Some maps in the past have indicated that there was an additional time - # zone in the eastern part of Mongolia, including the provinces of Dornod, --# Suhbaatar, and possibly Khentij. -+# Sükhbaatar, and possibly Khentii. - - # From Paul Eggert (1999-12-15): - # Naming and spelling is tricky in Mongolia. -@@ -1723,10 +1863,10 @@ - # (adopted DST on 2001-04-27 02:00 local time, ending 2001-09-28), - # there are three time zones. - # --# Provinces [at 7:00]: Bayan-ulgii, Uvs, Khovd, Zavkhan, Govi-Altai --# Provinces [at 8:00]: Khovsgol, Bulgan, Arkhangai, Khentii, Tov, --# Bayankhongor, Ovorkhangai, Dundgovi, Dornogovi, Omnogovi --# Provinces [at 9:00]: Dornod, Sukhbaatar -+# Provinces [at 7:00]: Bayan-Ölgii, Uvs, Khovd, Zavkhan, Govi-Altai -+# Provinces [at 8:00]: Khövsgöl, Bulgan, Arkhangai, Khentii, Töv, -+# Bayankhongor, Övörkhangai, Dundgovi, Dornogovi, Ömnögovi -+# Provinces [at 9:00]: Dornod, Sükhbaatar - # - # [The province of Selenge is omitted from the above lists.] - -@@ -1743,16 +1883,16 @@ - # We have wildly conflicting information about Mongolia's time zones. - # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says - # there is only one time zone and that DST is observed, citing Microsoft --# Windows XP as the source. Risto Nykanen (2005-05-16) reports that -+# Windows XP as the source. Risto Nykänen (2005-05-16) reports that - # travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST. - # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in - # Washington, DC says there are two time zones, with DST observed. - # He also found --# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&> -+# http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1& - # which also says that there is DST, and which has a comment by "Toddius" - # (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones. - # The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT --# and some Eastern provinces are +9 GMT but Sukhbaatar Aimag is SUHK +8.5 GMT. -+# and some Eastern provinces are +9 GMT but Sükhbaatar Aimag is SUHK +8.5 GMT. - # The SUKH timezone is new this year, it is one of the few things the - # parliament passed during the tumultuous winter session." - # For now, let's ignore this information, until we have more confirmation. -@@ -1768,29 +1908,23 @@ - # +08:00 instead. Different sources appear to disagree with the tz - # database on this, e.g.: - # --# <a href="http://www.timeanddate.com/worldclock/city.html?n=1026"> - # http://www.timeanddate.com/worldclock/city.html?n=1026 --# </a> --# <a href="http://www.worldtimeserver.com/current_time_in_MN.aspx"> - # http://www.worldtimeserver.com/current_time_in_MN.aspx --# </a> - # - # both say GMT+08:00. - - # From Steffen Thorsen (2008-03-31): - # eznis airways, which operates several domestic flights, has a flight - # schedule here: --# <a href="http://www.eznis.com/Container.jsp?id=112"> - # http://www.eznis.com/Container.jsp?id=112 --# </a> - # (click the English flag for English) - # --# There it appears that flights between Choibalsan and Ulaanbatar arrive -+# There it appears that flights between Choibalsan and Ulaanbaatar arrive - # about 1:35 - 1:50 hours later in local clock time, no matter the --# direction, while Ulaanbaatar-Khvod takes 2 hours in the Eastern --# direction and 3:35 back, which indicates that Ulaanbatar and Khvod are -+# direction, while Ulaanbaatar-Khovd takes 2 hours in the Eastern -+# direction and 3:35 back, which indicates that Ulaanbaatar and Khovd are - # in different time zones (like we know about), while Choibalsan and --# Ulaanbatar are in the same time zone (correction needed). -+# Ulaanbaatar are in the same time zone (correction needed). - - # From Arthur David Olson (2008-05-19): - # Assume that Choibalsan is indeed offset by 8:00. -@@ -1806,7 +1940,7 @@ - # (1996-09) says 1996-10-25. Go with Shanks & Pottenger through 1998. - # - # Shanks & Pottenger say that the Sept. 1984 through Sept. 1990 switches --# in Choibalsan (more precisely, in Dornod and Sukhbaatar) took place -+# in Choibalsan (more precisely, in Dornod and Sükhbaatar) took place - # at 02:00 standard time, not at 00:00 local time as in the rest of - # the country. That would be odd, and possibly is a result of their - # correction of 02:00 (in the previous edition) not being done correctly -@@ -1822,13 +1956,13 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta - Zone Asia/Hovd 6:06:36 - LMT 1905 Aug -- 6:00 - HOVT 1978 # Hovd Time -+ 6:00 - HOVT 1978 # Hovd Time - 7:00 Mongol HOV%sT - # Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga - Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug -- 7:00 - ULAT 1978 # Ulaanbaatar Time -+ 7:00 - ULAT 1978 # Ulaanbaatar Time - 8:00 Mongol ULA%sT --# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan, -+# Choibalsan, a.k.a. Bajan Tümen, Bajan Tumen, Chojbalsan, - # Choybalsan, Sanbejse, Tchoibalsan - Zone Asia/Choibalsan 7:38:00 - LMT 1905 Aug - 7:00 - ULAT 1978 -@@ -1860,7 +1994,7 @@ - # 00:01 was to make it clear which day it was on. - - # From Paul Eggert (2002-03-15): --# Jesper Norgaard found this URL: -+# Jesper Nørgaard found this URL: - # http://www.pak.gov.pk/public/news/app/app06_dec.htm - # (dated 2001-12-06) which says that the Cabinet adopted a scheme "to - # advance the clocks by one hour on the night between the first -@@ -1892,43 +2026,30 @@ - # Here is an article that Pakistan plan to introduce Daylight Saving Time - # on June 1, 2008 for 3 months. - # --# "... The federal cabinet on Wednesday announced a new conservation plan to help --# reduce load shedding by approving the closure of commercial centres at 9pm and --# moving clocks forward by one hour for the next three months. --# ...." -+# "... The federal cabinet on Wednesday announced a new conservation plan to -+# help reduce load shedding by approving the closure of commercial centres at -+# 9pm and moving clocks forward by one hour for the next three months. ...." - # --# <a href="http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html"> - # http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html --# </a> --# OR --# <a href="http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4"> - # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4 --# </a> - - # From Arthur David Olson (2008-05-19): - # XXX--midnight transitions is a guess; 2008 only is a guess. - - # From Alexander Krivenyshev (2008-08-28): - # Pakistan government has decided to keep the watches one-hour advanced --# for another 2 months--plan to return to Standard Time on October 31 -+# for another 2 months - plan to return to Standard Time on October 31 - # instead of August 31. - # --# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html --# </a> --# OR --# <a href="http://dailymailnews.com/200808/28/news/dmbrn03.html"> - # http://dailymailnews.com/200808/28/news/dmbrn03.html --# </a> - - # From Alexander Krivenyshev (2009-04-08): - # Based on previous media reports that "... proposed plan to - # advance clocks by one hour from May 1 will cause disturbance - # to the working schedules rather than bringing discipline in - # official working." --# <a href="http://www.thenews.com.pk/daily_detail.asp?id=171280"> - # http://www.thenews.com.pk/daily_detail.asp?id=171280 --# </a> - # - # recent news that instead of May 2009 - Pakistan plan to - # introduce DST from April 15, 2009 -@@ -1936,15 +2057,8 @@ - # FYI: Associated Press Of Pakistan - # April 08, 2009 - # Cabinet okays proposal to advance clocks by one hour from April 15 --# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1"> - # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1 --# </a> --# --# or --# --# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html --# </a> - # - # .... - # The Federal Cabinet on Wednesday approved the proposal to -@@ -1957,34 +2071,20 @@ - # clocks backward by one hour from October 1. A formal announcement to - # this effect will be made after the Prime Minister grants approval in - # this regard." --# <a href="http://www.thenews.com.pk/updates.asp?id=87168"> - # http://www.thenews.com.pk/updates.asp?id=87168 --# </a> - - # From Alexander Krivenyshev (2009-09-28): - # According to Associated Press Of Pakistan, it is confirmed that --# Pakistan clocks across the country would be turned back by an hour from October --# 1, 2009. -+# Pakistan clocks across the country would be turned back by an hour from -+# October 1, 2009. - # - # "Clocks to go back one hour from 1 Oct" --# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2"> - # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm"> - # http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm --# </a> -- -+# - # From Steffen Thorsen (2009-09-29): --# Alexander Krivenyshev wrote: --# > According to Associated Press Of Pakistan, it is confirmed that --# > Pakistan clocks across the country would be turned back by an hour from October --# > 1, 2009. --# - # Now they seem to have changed their mind, November 1 is the new date: --# <a href="http://www.thenews.com.pk/top_story_detail.asp?Id=24742"> - # http://www.thenews.com.pk/top_story_detail.asp?Id=24742 --# </a> - # "The country's clocks will be reversed by one hour on November 1. - # Officials of Federal Ministry for Interior told this to Geo News on - # Monday." -@@ -1996,11 +2096,9 @@ - # - # We have confirmed this year's end date with both with the Ministry of - # Water and Power and the Pakistan Electric Power Company: --# <a href="http://www.timeanddate.com/news/time/pakistan-ends-dst09.html"> - # http://www.timeanddate.com/news/time/pakistan-ends-dst09.html --# </a> - --# From Christoph Goehre (2009-10-01): -+# From Christoph Göhre (2009-10-01): - # [T]he German Consulate General in Karachi reported me today that Pakistan - # will go back to standard time on 1st of November. - -@@ -2016,22 +2114,17 @@ - # Now, it seems that the decision to not observe DST in final: - # - # "Govt Withdraws Plan To Advance Clocks" --# <a href="http://www.apakistannews.com/govt-withdraws-plan-to-advance-clocks-172041"> - # http://www.apakistannews.com/govt-withdraws-plan-to-advance-clocks-172041 --# </a> - # - # "People laud PM's announcement to end DST" --# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2"> - # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2 --# </a> - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S - Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 - - Rule Pakistan 2008 only - Jun 1 0:00 1:00 S --Rule Pakistan 2008 only - Nov 1 0:00 0 - -+Rule Pakistan 2008 2009 - Nov 1 0:00 0 - - Rule Pakistan 2009 only - Apr 15 0:00 1:00 S --Rule Pakistan 2009 only - Nov 1 0:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Karachi 4:28:12 - LMT 1907 -@@ -2105,10 +2198,9 @@ - # the PA has decided to implement DST in April. - - # From Paul Eggert (1999-09-20): --# Daoud Kuttab writes in --# <a href="http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html"> --# Holiday havoc --# </a> (Jerusalem Post, 1999-04-22) that -+# Daoud Kuttab writes in Holiday havoc -+# http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html -+# (Jerusalem Post, 1999-04-22) that - # the Palestinian National Authority changed to DST on 1999-04-15. - # I vaguely recall that they switch back in October (sorry, forgot the source). - # For now, let's assume that the spring switch was at 24:00, -@@ -2121,7 +2213,7 @@ - # A user from Gaza reported that Gaza made the change early because of - # the Ramadan. Next year Ramadan will be even earlier, so I think - # there is a good chance next year's end date will be around two weeks --# earlier--the same goes for Jordan. -+# earlier - the same goes for Jordan. - - # From Steffen Thorsen (2006-08-17): - # I was informed by a user in Bethlehem that in Bethlehem it started the -@@ -2140,7 +2232,7 @@ - # I guess it is likely that next year's date will be moved as well, - # because of the Ramadan. - --# From Jesper Norgaard Welen (2007-09-18): -+# From Jesper Nørgaard Welen (2007-09-18): - # According to Steffen Thorsen's web site the Gaza Strip and the rest of the - # Palestinian territories left DST early on 13.th. of September at 2:00. - -@@ -2157,16 +2249,9 @@ - # Gaza Strip (as Egypt) ended DST at midnight Thursday (Aug 28, 2008), while - # the West Bank will end Daylight Saving Time at midnight Sunday (Aug 31, 2008). - # --# <a href="http://www.guardian.co.uk/world/feedarticle/7759001"> - # http://www.guardian.co.uk/world/feedarticle/7759001 --# </a> --# <a href="http://www.abcnews.go.com/International/wireStory?id=5676087"> - # http://www.abcnews.go.com/International/wireStory?id=5676087 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html"> - # http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html --# </a> - - # From Alexander Krivenyshev (2009-03-26): - # According to the Palestine News Network (arabic.pnn.ps), Palestinian -@@ -2174,24 +2259,17 @@ - # 26 and continue until the night of 27 September 2009. - # - # (in Arabic) --# <a href="http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850"> - # http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850 --# </a> - # --# or - # (English translation) --# <a href="http://www.worldtimezone.com/dst_news/dst_news_westbank01.html"> - # http://www.worldtimezone.com/dst_news/dst_news_westbank01.html --# </a> - - # From Steffen Thorsen (2009-08-31): - # Palestine's Council of Ministers announced that they will revert back to - # winter time on Friday, 2009-09-04. - # - # One news source: --# <a href="http://www.safa.ps/ara/?action=showdetail&seid=4158"> - # http://www.safa.ps/ara/?action=showdetail&seid=4158 --# </a> - # (Palestinian press agency, Arabic), - # Google translate: "Decided that the Palestinian government in Ramallah - # headed by Salam Fayyad, the start of work in time for the winter of -@@ -2200,9 +2278,7 @@ - # - # We are not sure if Gaza will do the same, last year they had a different - # end date, we will keep this page updated: --# <a href="http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html"> - # http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html --# </a> - - # From Alexander Krivenyshev (2009-09-02): - # Seems that Gaza Strip will go back to Winter Time same date as West Bank. -@@ -2212,51 +2288,35 @@ - # - # "Winter time unite the West Bank and Gaza" - # (from Palestinian National Authority): --# <a href="http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505 - # http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html> - # http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html --# </a> - - # From Alexander Krivenyshev (2010-03-19): - # According to Voice of Palestine DST will last for 191 days, from March - # 26, 2010 till "the last Sunday before the tenth day of Tishri - # (October), each year" (October 03, 2010?) - # --# <a href="http://palvoice.org/forums/showthread.php?t=245697"> - # http://palvoice.org/forums/showthread.php?t=245697 --# </a> - # (in Arabic) --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_westbank03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_westbank03.html --# </a> - - # From Steffen Thorsen (2010-03-24): - # ...Ma'an News Agency reports that Hamas cabinet has decided it will - # start one day later, at 12:01am. Not sure if they really mean 12:01am or - # noon though: - # --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=271178"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=271178 --# </a> - # (Ma'an News Agency) - # "At 12:01am Friday, clocks in Israel and the West Bank will change to - # 1:01am, while Gaza clocks will change at 12:01am Saturday morning." - - # From Steffen Thorsen (2010-08-11): - # According to several sources, including --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=306795"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=306795 --# </a> - # the clocks were set back one hour at 2010-08-11 00:00:00 local time in - # Gaza and the West Bank. - # Some more background info: --# <a href="http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html"> - # http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html --# </a> - - # From Steffen Thorsen (2011-08-26): - # Gaza and the West Bank did go back to standard time in the beginning of -@@ -2264,13 +2324,9 @@ - # 00:00 (so two periods of DST in 2011). The pause was because of - # Ramadan. - # --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=416217"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=416217 --# </a> - # Additional info: --# <a href="http://www.timeanddate.com/news/time/palestine-dst-2011.html"> - # http://www.timeanddate.com/news/time/palestine-dst-2011.html --# </a> - - # From Alexander Krivenyshev (2011-08-27): - # According to the article in The Jerusalem Post: -@@ -2280,14 +2336,9 @@ - # The Hamas government said on Saturday that it won't observe summertime after - # the Muslim feast of Id al-Fitr, which begins on Tuesday..." - # ... --# <a href="http://www.jpost.com/MiddleEast/Article.aspx?id=235650"> - # http://www.jpost.com/MiddleEast/Article.aspx?id=235650 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html --# </a> --# The rules for Egypt are stolen from the `africa' file. -+# The rules for Egypt are stolen from the 'africa' file. - - # From Steffen Thorsen (2011-09-30): - # West Bank did end Daylight Saving Time this morning/midnight (2011-09-30 -@@ -2295,26 +2346,18 @@ - # So West Bank and Gaza now have the same time again. - # - # Many sources, including: --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=424808"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=424808 --# </a> - - # From Steffen Thorsen (2012-03-26): - # Palestinian news sources tell that both Gaza and West Bank will start DST - # on Friday (Thursday midnight, 2012-03-29 24:00). - # Some of many sources in Arabic: --# <a href="http://www.samanews.com/index.php?act=Show&id=122638"> - # http://www.samanews.com/index.php?act=Show&id=122638 --# </a> - # --# <a href="http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html"> - # http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html --# </a> - # - # Our brief summary: --# <a href="http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html"> - # http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html --# </a> - - # From Steffen Thorsen (2013-03-26): - # The following news sources tells that Palestine will "start daylight saving -@@ -2374,10 +2417,10 @@ - 2:00 EgyptAsia EE%sT 1967 Jun 5 - 2:00 Zion I%sT 1996 - 2:00 Jordan EE%sT 1999 -- 2:00 Palestine EE%sT 2008 Aug 29 0:00 -+ 2:00 Palestine EE%sT 2008 Aug 29 0:00 - 2:00 - EET 2008 Sep - 2:00 Palestine EE%sT 2010 -- 2:00 - EET 2010 Mar 27 0:01 -+ 2:00 - EET 2010 Mar 27 0:01 - 2:00 Palestine EE%sT 2011 Aug 1 - 2:00 - EET 2012 - 2:00 Palestine EE%sT -@@ -2393,25 +2436,27 @@ - # no information - - # Philippines --# On 1844-08-16, Narciso Claveria, governor-general of the -+# On 1844-08-16, Narciso Clavería, governor-general of the - # Philippines, issued a proclamation announcing that 1844-12-30 was to --# be immediately followed by 1845-01-01. Robert H. van Gent has a --# transcript of the decree in <http://www.phys.uu.nl/~vgent/idl/idl.htm>. --# The rest of the data are from Shanks & Pottenger. -+# be immediately followed by 1845-01-01; see R.H. van Gent's -+# History of the International Date Line -+# http://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm -+# The rest of the data entries are from Shanks & Pottenger. - --# From Paul Eggert (2006-04-25): --# Tomorrow's Manila Standard reports that the Philippines Department of --# Trade and Industry is considering adopting DST this June when the --# rainy season begins. See --# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>. --# For now, we'll ignore this, since it's not definite and we lack details. --# --# From Jesper Norgaard Welen (2006-04-26): -+# From Jesper Nørgaard Welen (2006-04-26): - # ... claims that Philippines had DST last time in 1990: - # http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/ - # [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires, - # but no details] - -+# From Paul Eggert (2014-08-14): -+# The following source says DST may be instituted November-January and again -+# March-June, but this is not definite. It also says DST was last proclaimed -+# during the Ramos administration (1992-1998); but again, no details. -+# Carcamo D. PNoy urged to declare use of daylight saving time. -+# Philippine Star 2014-08-05 -+# http://www.philstar.com/headlines/2014/08/05/1354152/pnoy-urged-declare-use-daylight-saving-time -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Phil 1936 only - Nov 1 0:00 1:00 S - Rule Phil 1937 only - Feb 1 0:00 0 - -@@ -2428,18 +2473,39 @@ - - # Qatar - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha -+Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha - 4:00 - GST 1972 Jun - 3:00 - AST - - # Saudi Arabia -+# -+# From Paul Eggert (2014-07-15): -+# Time in Saudi Arabia and other countries in the Arabian peninsula was not -+# standardized until relatively recently; we don't know when, and possibly it -+# has never been made official. Richard P Hunt, in "Islam city yielding to -+# modern times", New York Times (1961-04-09), p 20, wrote that only airlines -+# observed standard time, and that people in Jeddah mostly observed quasi-solar -+# time, doing so by setting their watches at sunrise to 6 o'clock (or to 12 -+# o'clock for "Arab" time). -+# -+# The TZ database cannot represent quasi-solar time; airline time is the best -+# we can do. The 1946 foreign air news digest of the U.S. Civil Aeronautics -+# Board (OCLC 42299995) reported that the "... Arabian Government, inaugurated -+# a weekly Dhahran-Cairo service, via the Saudi Arabian cities of Riyadh and -+# Jidda, on March 14, 1947". Shanks & Pottenger guessed 1950; go with the -+# earlier date. -+# -+# Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two -+# time zones; the other zone, at UTC+4, was in the far eastern part of -+# the country. Ignore this, as it's before our 1970 cutoff. -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Riyadh 3:06:52 - LMT 1950 -+Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14 - 3:00 - AST - - # Singapore --# The data here are taken from Mok Ly Yng (2003-10-30) --# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>. -+# taken from Mok Ly Yng (2003-10-30) -+# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1 - 6:55:25 - SMT 1905 Jun 1 # Singapore M.T. -@@ -2465,26 +2531,24 @@ - - # From Paul Eggert (1996-09-03): - # "Sri Lanka advances clock by an hour to avoid blackout" --# (www.virtual-pc.com/lankaweb/news/items/240596-2.html, 1996-05-24, -+# (<http://www.virtual-pc.com/lankaweb/news/items/240596-2.html>, 1996-05-24, - # no longer available as of 1999-08-17) --# reported ``the country's standard time will be put forward by one hour at --# midnight Friday (1830 GMT) `in the light of the present power crisis'.'' -+# reported "the country's standard time will be put forward by one hour at -+# midnight Friday (1830 GMT) 'in the light of the present power crisis'." - # - # From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted --# by Shamindra in --# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net"> --# Daily News - Hot News Section (1996-10-26) --# </a>: -+# by Shamindra in Daily News - Hot News Section -+# <news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net> (1996-10-26): - # With effect from 12.30 a.m. on 26th October 1996 - # Sri Lanka will be six (06) hours ahead of GMT. - --# From Jesper Norgaard Welen (2006-04-14), quoting Sri Lanka News Online -+# From Jesper Nørgaard Welen (2006-04-14), quoting Sri Lanka News Online - # <http://news.sinhalaya.com/wmview.php?ArtID=11002> (2006-04-13): - # 0030 hrs on April 15, 2006 (midnight of April 14, 2006 +30 minutes) - # at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006). - - # From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in: --# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML> -+# http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML - # [The Tamil Tigers] never accepted the original 1996 time change and simply - # kept their clocks set five and a half hours ahead of Greenwich Mean - # Time (GMT), in line with neighbor India. -@@ -2498,7 +2562,7 @@ - # twice in 1996 and probably SL Government or its standardization - # agencies never declared an abbreviation as a national standard. - # --# I recollect before the recent change the government annoucemments -+# I recollect before the recent change the government announcements - # mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka - # Time and no mention was made about the abbreviation. - # -@@ -2508,7 +2572,7 @@ - # item.... - # - # Within Sri Lanka I think LKT is well known among computer users and --# adminsitrators. In my opinion SLT may not be a good choice because the -+# administrators. In my opinion SLT may not be a good choice because the - # nation's largest telcom / internet operator Sri Lanka Telcom is well - # known by that abbreviation - simply as SLT (there IP domains are - # slt.lk and sltnet.lk). -@@ -2523,13 +2587,13 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Colombo 5:19:24 - LMT 1880 -- 5:19:32 - MMT 1906 # Moratuwa Mean Time -+ 5:19:32 - MMT 1906 # Moratuwa Mean Time - 5:30 - IST 1942 Jan 5 - 5:30 0:30 IHST 1942 Sep -- 5:30 1:00 IST 1945 Oct 16 2:00 -- 5:30 - IST 1996 May 25 0:00 -- 6:30 - LKT 1996 Oct 26 0:30 -- 6:00 - LKT 2006 Apr 15 0:30 -+ 5:30 1:00 IST 1945 Oct 16 2:00 -+ 5:30 - IST 1996 May 25 0:00 -+ 6:30 - LKT 1996 Oct 26 0:30 -+ 6:00 - LKT 2006 Apr 15 0:30 - 5:30 - IST - - # Syria -@@ -2580,7 +2644,7 @@ - # Today the AP reported "Syria will switch to summertime at midnight Thursday." - # http://www.iht.com/articles/ap/2007/03/29/africa/ME-GEN-Syria-Time-Change.php - Rule Syria 2007 only - Mar lastFri 0:00 1:00 S --# From Jesper Norgard (2007-10-27): -+# From Jesper Nørgaard (2007-10-27): - # The sister center ICARDA of my work CIMMYT is confirming that Syria DST will - # not take place 1st November at 0:00 o'clock but 1st November at 24:00 or - # rather Midnight between Thursday and Friday. This does make more sense than -@@ -2589,7 +2653,7 @@ - # it is implemented at midnight of the last workday before weekend... - # - # From Steffen Thorsen (2007-10-27): --# Jesper Norgaard Welen wrote: -+# Jesper Nørgaard Welen wrote: - # - # > "Winter local time in Syria will be observed at midnight of Thursday 1 - # > November 2007, and the clock will be put back 1 hour." -@@ -2605,8 +2669,7 @@ - - # From Stephen Colebourne (2008-03-17): - # For everyone's info, I saw an IATA time zone change for [Syria] for --# this month (March 2008) in the last day or so...This is the data IATA --# are now using: -+# this month (March 2008) in the last day or so.... - # Country Time Standard --- DST Start --- --- DST End --- DST - # Name Zone Variation Time Date Time Date - # Variation -@@ -2618,16 +2681,15 @@ - # From Arthur David Olson (2008-03-17): - # Here's a link to English-language coverage by the Syrian Arab News - # Agency (SANA)... --# <a href="http://www.sana.sy/eng/21/2008/03/11/165173.htm"> - # http://www.sana.sy/eng/21/2008/03/11/165173.htm --# </a>...which reads (in part) "The Cabinet approved the suggestion of the -+# ...which reads (in part) "The Cabinet approved the suggestion of the - # Ministry of Electricity to begin daylight savings time on Friday April - # 4th, advancing clocks one hour ahead on midnight of Thursday April 3rd." - # Since Syria is two hours east of UTC, the 2200 and 2100 transition times - # shown above match up with midnight in Syria. - - # From Arthur David Olson (2008-03-18): --# My buest guess at a Syrian rule is "the Friday nearest April 1"; -+# My best guess at a Syrian rule is "the Friday nearest April 1"; - # coding that involves either using a "Mar Fri>=29" construct that old time zone - # compilers can't handle or having multiple Rules (a la Israel). - # For now, use "Apr Fri>=1", and go with IATA on a uniform Sep 30 end. -@@ -2640,37 +2702,27 @@ - # winter time on 2008-11-01 at 00:00 local daylight time (delaying/setting - # clocks back 60 minutes). - # --# <a href="http://sana.sy/ara/2/2008/10/07/195459.htm"> - # http://sana.sy/ara/2/2008/10/07/195459.htm --# </a> - - # From Steffen Thorsen (2009-03-19): - # Syria will start DST on 2009-03-27 00:00 this year according to many sources, - # two examples: - # --# <a href="http://www.sana.sy/eng/21/2009/03/17/217563.htm"> - # http://www.sana.sy/eng/21/2009/03/17/217563.htm --# </a> - # (English, Syrian Arab News # Agency) --# <a href="http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209"> - # http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209 --# </a> - # (Arabic, gov-site) - # - # We have not found any sources saying anything about when DST ends this year. - # - # Our summary --# <a href="http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html"> - # http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html --# </a> - - # From Steffen Thorsen (2009-10-27): - # The Syrian Arab News Network on 2009-09-29 reported that Syria will - # revert back to winter (standard) time on midnight between Thursday - # 2009-10-29 and Friday 2009-10-30: --# <a href="http://www.sana.sy/ara/2/2009/09/29/247012.htm"> - # http://www.sana.sy/ara/2/2009/09/29/247012.htm (Arabic) --# </a> - - # From Arthur David Olson (2009-10-28): - # We'll see if future DST switching times turn out to be end of the last -@@ -2681,23 +2733,17 @@ - # The "Syrian News Station" reported on 2010-03-16 that the Council of - # Ministers has decided that Syria will start DST on midnight Thursday - # 2010-04-01: (midnight between Thursday and Friday): --# <a href="http://sns.sy/sns/?path=news/read/11421"> - # http://sns.sy/sns/?path=news/read/11421 (Arabic) --# </a> - - # From Steffen Thorsen (2012-03-26): - # Today, Syria's government announced that they will start DST early on Friday - # (00:00). This is a bit earlier than the past two years. - # - # From Syrian Arab News Agency, in Arabic: --# <a href="http://www.sana.sy/ara/2/2012/03/26/408215.htm"> - # http://www.sana.sy/ara/2/2012/03/26/408215.htm --# </a> - # - # Our brief summary: --# <a href="http://www.timeanddate.com/news/time/syria-dst-2012.html"> - # http://www.timeanddate.com/news/time/syria-dst-2012.html --# </a> - - # From Arthur David Olson (2012-03-27): - # Assume last Friday in March going forward XXX. -@@ -2710,7 +2756,7 @@ - Rule Syria 2009 max - Oct lastFri 0:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq -+Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq - 2:00 Syria EE%sT - - # Tajikistan -@@ -2718,24 +2764,26 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2 - 5:00 - DUST 1930 Jun 21 # Dushanbe Time -- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s -- 5:00 1:00 DUSST 1991 Sep 9 2:00s -- 5:00 - TJT # Tajikistan Time -+ 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s -+ 5:00 1:00 DUSST 1991 Sep 9 2:00s -+ 5:00 - TJT # Tajikistan Time - - # Thailand - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Bangkok 6:42:04 - LMT 1880 - 6:42:04 - BMT 1920 Apr # Bangkok Mean Time - 7:00 - ICT -+Link Asia/Bangkok Asia/Phnom_Penh # Cambodia -+Link Asia/Bangkok Asia/Vientiane # Laos - - # Turkmenistan - # From Shanks & Pottenger. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad - 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time -- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00 -+ 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00 - 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence -- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00 -+ 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00 - 5:00 - TMT - - # United Arab Emirates -@@ -2744,8 +2792,9 @@ - 4:00 - GST - - # Uzbekistan -+# Byalokoz 1919 says Uzbekistan was 4:27:53. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Samarkand 4:27:12 - LMT 1924 May 2 -+Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2 - 4:00 - SAMT 1930 Jun 21 # Samarkand Time - 5:00 - SAMT 1981 Apr 1 - 5:00 1:00 SAMST 1981 Oct 1 -@@ -2753,31 +2802,75 @@ - 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence - 5:00 RussiaAsia UZ%sT 1992 - 5:00 - UZT --Zone Asia/Tashkent 4:37:12 - LMT 1924 May 2 -+# Milne says Tashkent was 4:37:10.8; round to nearest. -+Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2 - 5:00 - TAST 1930 Jun 21 # Tashkent Time -- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00 -+ 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00 - 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence - 5:00 RussiaAsia UZ%sT 1992 - 5:00 - UZT - - # Vietnam - --# From Paul Eggert (2013-02-21): -+# From Paul Eggert (2014-10-04): - # Milne gives 7:16:56 for the meridian of Saigon in 1899, as being - # used in Lower Laos, Cambodia, and Annam. But this is quite a ways - # from Saigon's location. For now, ignore this and stick with Shanks --# and Pottenger. -+# and Pottenger for LMT before 1906. - - # From Arthur David Olson (2008-03-18): --# The English-language name of Vietnam's most populous city is "Ho Chi Min City"; --# we use Ho_Chi_Minh below to avoid a name of more than 14 characters. -+# The English-language name of Vietnam's most populous city is "Ho Chi Minh -+# City"; use Ho_Chi_Minh below to avoid a name of more than 14 characters. - --# From Shanks & Pottenger: -+# From Paul Eggert (2014-10-21) after a heads-up from Trần Ngọc Quân: -+# Trần Tiến Bình's authoritative book "Lịch Việt Nam: thế kỷ XX-XXI (1901-2100)" -+# (Nhà xuất bản Văn Hoá - Thông Tin, Hanoi, 2005), pp 49-50, -+# is quoted verbatim in: -+# http://www.thoigian.com.vn/?mPage=P80D01 -+# is translated by Brian Inglis in: -+# http://mm.icann.org/pipermail/tz/2014-October/021654.html -+# and is the basis for the information below. -+# -+# The 1906 transition was effective July 1 and standardized Indochina to -+# Phù Liễn Observatory, legally 104 deg. 17'17" east of Paris. -+# It's unclear whether this meant legal Paris Mean Time (00:09:21) or -+# the Paris Meridian (2 deg. 20'14.03" E); the former yields 07:06:30.1333... -+# and the latter 07:06:29.333... so either way it rounds to 07:06:30, -+# which is used below even though the modern-day Phù Liễn Observatory -+# is closer to 07:06:31. Abbreviate Phù Liễn Mean Time as PLMT. -+# -+# The following transitions occurred in Indochina in general (before 1954) -+# and in South Vietnam in particular (after 1954): -+# To 07:00 on 1911-05-01. -+# To 08:00 on 1942-12-31 at 23:00. -+# To 09:00 in 1945-03-14 at 23:00. -+# To 07:00 on 1945-09-02 in Vietnam. -+# To 08:00 on 1947-04-01 in French-controlled Indochina. -+# To 07:00 on 1955-07-01 in South Vietnam. -+# To 08:00 on 1959-12-31 at 23:00 in South Vietnam. -+# To 07:00 on 1975-06-13 in South Vietnam. -+# -+# Trần cites the following sources; it's unclear which supplied the info above. -+# -+# Hoàng Xuân Hãn: "Lịch và lịch Việt Nam". Tập san Khoa học Xã hội, -+# No. 9, Paris, February 1982. -+# -+# Lê Thành Lân: "Lịch và niên biểu lịch sử hai mươi thế kỷ (0001-2010)", -+# NXB Thống kê, Hanoi, 2000. -+# -+# Lê Thành Lân: "Lịch hai thế kỷ (1802-2010) và các lịch vĩnh cửu", -+# NXB Thuận Hoá, Huế, 1995. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jun 9 -- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT? -- 7:00 - ICT 1912 May -- 8:00 - ICT 1931 May -+Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jul 1 -+ 7:06:30 - PLMT 1911 May 1 -+ 7:00 - ICT 1942 Dec 31 23:00 -+ 8:00 - IDT 1945 Mar 14 23:00 -+ 9:00 - JST 1945 Sep 2 -+ 7:00 - ICT 1947 Apr 1 -+ 8:00 - IDT 1955 Jul 1 -+ 7:00 - ICT 1959 Dec 31 23:00 -+ 8:00 - IDT 1975 Jun 13 - 7:00 - ICT - - # Yemen ---- ./jdk/make/data/tzdata/australasia Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/australasia Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - -@@ -36,13 +35,13 @@ - # Please see the notes below for the controversy about "EST" versus "AEST" etc. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Aus 1917 only - Jan 1 0:01 1:00 - --Rule Aus 1917 only - Mar 25 2:00 0 - --Rule Aus 1942 only - Jan 1 2:00 1:00 - --Rule Aus 1942 only - Mar 29 2:00 0 - --Rule Aus 1942 only - Sep 27 2:00 1:00 - --Rule Aus 1943 1944 - Mar lastSun 2:00 0 - --Rule Aus 1943 only - Oct 3 2:00 1:00 - -+Rule Aus 1917 only - Jan 1 0:01 1:00 D -+Rule Aus 1917 only - Mar 25 2:00 0 S -+Rule Aus 1942 only - Jan 1 2:00 1:00 D -+Rule Aus 1942 only - Mar 29 2:00 0 S -+Rule Aus 1942 only - Sep 27 2:00 1:00 D -+Rule Aus 1943 1944 - Mar lastSun 2:00 0 S -+Rule Aus 1943 only - Oct 3 2:00 1:00 D - # Go with Whitman and the Australian National Standards Commission, which - # says W Australia didn't use DST in 1943/1944. Ignore Whitman's claim that - # 1944/1945 was just like 1943/1944. -@@ -50,26 +49,26 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # Northern Territory - Zone Australia/Darwin 8:43:20 - LMT 1895 Feb -- 9:00 - CST 1899 May -- 9:30 Aus CST -+ 9:00 - ACST 1899 May -+ 9:30 Aus AC%sT - # Western Australia - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AW 1974 only - Oct lastSun 2:00s 1:00 - --Rule AW 1975 only - Mar Sun>=1 2:00s 0 - --Rule AW 1983 only - Oct lastSun 2:00s 1:00 - --Rule AW 1984 only - Mar Sun>=1 2:00s 0 - --Rule AW 1991 only - Nov 17 2:00s 1:00 - --Rule AW 1992 only - Mar Sun>=1 2:00s 0 - --Rule AW 2006 only - Dec 3 2:00s 1:00 - --Rule AW 2007 2009 - Mar lastSun 2:00s 0 - --Rule AW 2007 2008 - Oct lastSun 2:00s 1:00 - -+Rule AW 1974 only - Oct lastSun 2:00s 1:00 D -+Rule AW 1975 only - Mar Sun>=1 2:00s 0 S -+Rule AW 1983 only - Oct lastSun 2:00s 1:00 D -+Rule AW 1984 only - Mar Sun>=1 2:00s 0 S -+Rule AW 1991 only - Nov 17 2:00s 1:00 D -+Rule AW 1992 only - Mar Sun>=1 2:00s 0 S -+Rule AW 2006 only - Dec 3 2:00s 1:00 D -+Rule AW 2007 2009 - Mar lastSun 2:00s 0 S -+Rule AW 2007 2008 - Oct lastSun 2:00s 1:00 D - Zone Australia/Perth 7:43:24 - LMT 1895 Dec -- 8:00 Aus WST 1943 Jul -- 8:00 AW WST -+ 8:00 Aus AW%sT 1943 Jul -+ 8:00 AW AW%sT - Zone Australia/Eucla 8:35:28 - LMT 1895 Dec -- 8:45 Aus CWST 1943 Jul -- 8:45 AW CWST -+ 8:45 Aus ACW%sT 1943 Jul -+ 8:45 AW ACW%sT - - # Queensland - # -@@ -85,150 +84,150 @@ - # so use Lindeman. - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AQ 1971 only - Oct lastSun 2:00s 1:00 - --Rule AQ 1972 only - Feb lastSun 2:00s 0 - --Rule AQ 1989 1991 - Oct lastSun 2:00s 1:00 - --Rule AQ 1990 1992 - Mar Sun>=1 2:00s 0 - --Rule Holiday 1992 1993 - Oct lastSun 2:00s 1:00 - --Rule Holiday 1993 1994 - Mar Sun>=1 2:00s 0 - -+Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D -+Rule AQ 1972 only - Feb lastSun 2:00s 0 S -+Rule AQ 1989 1991 - Oct lastSun 2:00s 1:00 D -+Rule AQ 1990 1992 - Mar Sun>=1 2:00s 0 S -+Rule Holiday 1992 1993 - Oct lastSun 2:00s 1:00 D -+Rule Holiday 1993 1994 - Mar Sun>=1 2:00s 0 S - Zone Australia/Brisbane 10:12:08 - LMT 1895 -- 10:00 Aus EST 1971 -- 10:00 AQ EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AQ AE%sT - Zone Australia/Lindeman 9:55:56 - LMT 1895 -- 10:00 Aus EST 1971 -- 10:00 AQ EST 1992 Jul -- 10:00 Holiday EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AQ AE%sT 1992 Jul -+ 10:00 Holiday AE%sT - - # South Australia - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 - --Rule AS 1986 only - Oct 19 2:00s 1:00 - --Rule AS 1987 2007 - Oct lastSun 2:00s 1:00 - --Rule AS 1972 only - Feb 27 2:00s 0 - --Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 - --Rule AS 1986 1990 - Mar Sun>=15 2:00s 0 - --Rule AS 1991 only - Mar 3 2:00s 0 - --Rule AS 1992 only - Mar 22 2:00s 0 - --Rule AS 1993 only - Mar 7 2:00s 0 - --Rule AS 1994 only - Mar 20 2:00s 0 - --Rule AS 1995 2005 - Mar lastSun 2:00s 0 - --Rule AS 2006 only - Apr 2 2:00s 0 - --Rule AS 2007 only - Mar lastSun 2:00s 0 - --Rule AS 2008 max - Apr Sun>=1 2:00s 0 - --Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 - -+Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 D -+Rule AS 1986 only - Oct 19 2:00s 1:00 D -+Rule AS 1987 2007 - Oct lastSun 2:00s 1:00 D -+Rule AS 1972 only - Feb 27 2:00s 0 S -+Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 S -+Rule AS 1986 1990 - Mar Sun>=15 2:00s 0 S -+Rule AS 1991 only - Mar 3 2:00s 0 S -+Rule AS 1992 only - Mar 22 2:00s 0 S -+Rule AS 1993 only - Mar 7 2:00s 0 S -+Rule AS 1994 only - Mar 20 2:00s 0 S -+Rule AS 1995 2005 - Mar lastSun 2:00s 0 S -+Rule AS 2006 only - Apr 2 2:00s 0 S -+Rule AS 2007 only - Mar lastSun 2:00s 0 S -+Rule AS 2008 max - Apr Sun>=1 2:00s 0 S -+Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb -- 9:00 - CST 1899 May -- 9:30 Aus CST 1971 -- 9:30 AS CST -+ 9:00 - ACST 1899 May -+ 9:30 Aus AC%sT 1971 -+ 9:30 AS AC%sT - - # Tasmania - # - # From Paul Eggert (2005-08-16): --# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml> -+# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml - # says King Island didn't observe DST from WWII until late 1971. - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AT 1967 only - Oct Sun>=1 2:00s 1:00 - --Rule AT 1968 only - Mar lastSun 2:00s 0 - --Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 - --Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 - --Rule AT 1972 only - Feb lastSun 2:00s 0 - --Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 - --Rule AT 1982 1983 - Mar lastSun 2:00s 0 - --Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 - --Rule AT 1986 only - Oct Sun>=15 2:00s 1:00 - --Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 - --Rule AT 1987 only - Oct Sun>=22 2:00s 1:00 - --Rule AT 1988 1990 - Oct lastSun 2:00s 1:00 - --Rule AT 1991 1999 - Oct Sun>=1 2:00s 1:00 - --Rule AT 1991 2005 - Mar lastSun 2:00s 0 - --Rule AT 2000 only - Aug lastSun 2:00s 1:00 - --Rule AT 2001 max - Oct Sun>=1 2:00s 1:00 - --Rule AT 2006 only - Apr Sun>=1 2:00s 0 - --Rule AT 2007 only - Mar lastSun 2:00s 0 - --Rule AT 2008 max - Apr Sun>=1 2:00s 0 - -+Rule AT 1967 only - Oct Sun>=1 2:00s 1:00 D -+Rule AT 1968 only - Mar lastSun 2:00s 0 S -+Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 D -+Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 S -+Rule AT 1972 only - Feb lastSun 2:00s 0 S -+Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 S -+Rule AT 1982 1983 - Mar lastSun 2:00s 0 S -+Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 S -+Rule AT 1986 only - Oct Sun>=15 2:00s 1:00 D -+Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 S -+Rule AT 1987 only - Oct Sun>=22 2:00s 1:00 D -+Rule AT 1988 1990 - Oct lastSun 2:00s 1:00 D -+Rule AT 1991 1999 - Oct Sun>=1 2:00s 1:00 D -+Rule AT 1991 2005 - Mar lastSun 2:00s 0 S -+Rule AT 2000 only - Aug lastSun 2:00s 1:00 D -+Rule AT 2001 max - Oct Sun>=1 2:00s 1:00 D -+Rule AT 2006 only - Apr Sun>=1 2:00s 0 S -+Rule AT 2007 only - Mar lastSun 2:00s 0 S -+Rule AT 2008 max - Apr Sun>=1 2:00s 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Hobart 9:49:16 - LMT 1895 Sep -- 10:00 - EST 1916 Oct 1 2:00 -- 10:00 1:00 EST 1917 Feb -- 10:00 Aus EST 1967 -- 10:00 AT EST -+ 10:00 - AEST 1916 Oct 1 2:00 -+ 10:00 1:00 AEDT 1917 Feb -+ 10:00 Aus AE%sT 1967 -+ 10:00 AT AE%sT - Zone Australia/Currie 9:35:28 - LMT 1895 Sep -- 10:00 - EST 1916 Oct 1 2:00 -- 10:00 1:00 EST 1917 Feb -- 10:00 Aus EST 1971 Jul -- 10:00 AT EST -+ 10:00 - AEST 1916 Oct 1 2:00 -+ 10:00 1:00 AEDT 1917 Feb -+ 10:00 Aus AE%sT 1971 Jul -+ 10:00 AT AE%sT - - # Victoria - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 - --Rule AV 1972 only - Feb lastSun 2:00s 0 - --Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 - --Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 - --Rule AV 1986 1987 - Oct Sun>=15 2:00s 1:00 - --Rule AV 1988 1999 - Oct lastSun 2:00s 1:00 - --Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 - --Rule AV 1995 2005 - Mar lastSun 2:00s 0 - --Rule AV 2000 only - Aug lastSun 2:00s 1:00 - --Rule AV 2001 2007 - Oct lastSun 2:00s 1:00 - --Rule AV 2006 only - Apr Sun>=1 2:00s 0 - --Rule AV 2007 only - Mar lastSun 2:00s 0 - --Rule AV 2008 max - Apr Sun>=1 2:00s 0 - --Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 - -+Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 D -+Rule AV 1972 only - Feb lastSun 2:00s 0 S -+Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 S -+Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 S -+Rule AV 1986 1987 - Oct Sun>=15 2:00s 1:00 D -+Rule AV 1988 1999 - Oct lastSun 2:00s 1:00 D -+Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 S -+Rule AV 1995 2005 - Mar lastSun 2:00s 0 S -+Rule AV 2000 only - Aug lastSun 2:00s 1:00 D -+Rule AV 2001 2007 - Oct lastSun 2:00s 1:00 D -+Rule AV 2006 only - Apr Sun>=1 2:00s 0 S -+Rule AV 2007 only - Mar lastSun 2:00s 0 S -+Rule AV 2008 max - Apr Sun>=1 2:00s 0 S -+Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Melbourne 9:39:52 - LMT 1895 Feb -- 10:00 Aus EST 1971 -- 10:00 AV EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AV AE%sT - - # New South Wales - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 - --Rule AN 1972 only - Feb 27 2:00s 0 - --Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 - --Rule AN 1982 only - Apr Sun>=1 2:00s 0 - --Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 - --Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 - --Rule AN 1986 only - Oct 19 2:00s 1:00 - --Rule AN 1987 1999 - Oct lastSun 2:00s 1:00 - --Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 - --Rule AN 1996 2005 - Mar lastSun 2:00s 0 - --Rule AN 2000 only - Aug lastSun 2:00s 1:00 - --Rule AN 2001 2007 - Oct lastSun 2:00s 1:00 - --Rule AN 2006 only - Apr Sun>=1 2:00s 0 - --Rule AN 2007 only - Mar lastSun 2:00s 0 - --Rule AN 2008 max - Apr Sun>=1 2:00s 0 - --Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 - -+Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 D -+Rule AN 1972 only - Feb 27 2:00s 0 S -+Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 S -+Rule AN 1982 only - Apr Sun>=1 2:00s 0 S -+Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 S -+Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 S -+Rule AN 1986 only - Oct 19 2:00s 1:00 D -+Rule AN 1987 1999 - Oct lastSun 2:00s 1:00 D -+Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 S -+Rule AN 1996 2005 - Mar lastSun 2:00s 0 S -+Rule AN 2000 only - Aug lastSun 2:00s 1:00 D -+Rule AN 2001 2007 - Oct lastSun 2:00s 1:00 D -+Rule AN 2006 only - Apr Sun>=1 2:00s 0 S -+Rule AN 2007 only - Mar lastSun 2:00s 0 S -+Rule AN 2008 max - Apr Sun>=1 2:00s 0 S -+Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Sydney 10:04:52 - LMT 1895 Feb -- 10:00 Aus EST 1971 -- 10:00 AN EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AN AE%sT - Zone Australia/Broken_Hill 9:25:48 - LMT 1895 Feb -- 10:00 - EST 1896 Aug 23 -- 9:00 - CST 1899 May -- 9:30 Aus CST 1971 -- 9:30 AN CST 2000 -- 9:30 AS CST -+ 10:00 - AEST 1896 Aug 23 -+ 9:00 - ACST 1899 May -+ 9:30 Aus AC%sT 1971 -+ 9:30 AN AC%sT 2000 -+ 9:30 AS AC%sT - - # Lord Howe Island - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule LH 1981 1984 - Oct lastSun 2:00 1:00 - --Rule LH 1982 1985 - Mar Sun>=1 2:00 0 - --Rule LH 1985 only - Oct lastSun 2:00 0:30 - --Rule LH 1986 1989 - Mar Sun>=15 2:00 0 - --Rule LH 1986 only - Oct 19 2:00 0:30 - --Rule LH 1987 1999 - Oct lastSun 2:00 0:30 - --Rule LH 1990 1995 - Mar Sun>=1 2:00 0 - --Rule LH 1996 2005 - Mar lastSun 2:00 0 - --Rule LH 2000 only - Aug lastSun 2:00 0:30 - --Rule LH 2001 2007 - Oct lastSun 2:00 0:30 - --Rule LH 2006 only - Apr Sun>=1 2:00 0 - --Rule LH 2007 only - Mar lastSun 2:00 0 - --Rule LH 2008 max - Apr Sun>=1 2:00 0 - --Rule LH 2008 max - Oct Sun>=1 2:00 0:30 - -+Rule LH 1981 1984 - Oct lastSun 2:00 1:00 D -+Rule LH 1982 1985 - Mar Sun>=1 2:00 0 S -+Rule LH 1985 only - Oct lastSun 2:00 0:30 D -+Rule LH 1986 1989 - Mar Sun>=15 2:00 0 S -+Rule LH 1986 only - Oct 19 2:00 0:30 D -+Rule LH 1987 1999 - Oct lastSun 2:00 0:30 D -+Rule LH 1990 1995 - Mar Sun>=1 2:00 0 S -+Rule LH 1996 2005 - Mar lastSun 2:00 0 S -+Rule LH 2000 only - Aug lastSun 2:00 0:30 D -+Rule LH 2001 2007 - Oct lastSun 2:00 0:30 D -+Rule LH 2006 only - Apr Sun>=1 2:00 0 S -+Rule LH 2007 only - Mar lastSun 2:00 0 S -+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 - EST 1981 Mar -- 10:30 LH LHST -+ 10:00 - AEST 1981 Mar -+ 10:30 LH LH%sT - - # Australian miscellany - # -@@ -244,8 +243,8 @@ - # Permanent occupation (scientific station) 1911-1915 and since 25 March 1948; - # sealing and penguin oil station operated Nov 1899 to Apr 1919. See the - # Tasmania Parks & Wildlife Service history of sealing at Macquarie Island --# <http://www.parks.tas.gov.au/index.aspx?base=1828> --# <http://www.parks.tas.gov.au/index.aspx?base=1831>. -+# http://www.parks.tas.gov.au/index.aspx?base=1828 -+# http://www.parks.tas.gov.au/index.aspx?base=1831 - # Guess that it was like Australia/Hobart while inhabited before 2010. - # - # From Steffen Thorsen (2010-03-10): -@@ -256,16 +255,16 @@ - # - # From Arthur David Olson (2013-05-23): - # The 1919 transition is overspecified below so pre-2013 zics --# will produce a binary file with an EST-type as the first 32-bit type; -+# will produce a binary file with an [A]EST-type as the first 32-bit type; - # this is required for correct handling of times before 1916 by - # pre-2013 versions of localtime. - Zone Antarctica/Macquarie 0 - zzz 1899 Nov -- 10:00 - EST 1916 Oct 1 2:00 -- 10:00 1:00 EST 1917 Feb -- 10:00 Aus EST 1919 Apr 1 0:00s -+ 10:00 - AEST 1916 Oct 1 2:00 -+ 10:00 1:00 AEDT 1917 Feb -+ 10:00 Aus AE%sT 1919 Apr 1 0:00s - 0 - zzz 1948 Mar 25 -- 10:00 Aus EST 1967 -- 10:00 AT EST 2010 Apr 4 3:00 -+ 10:00 Aus AE%sT 1967 -+ 10:00 AT AE%sT 2010 Apr 4 3:00 - 11:00 - MIST # Macquarie I Standard Time - - # Christmas -@@ -273,24 +272,14 @@ - Zone Indian/Christmas 7:02:52 - LMT 1895 Feb - 7:00 - CXT # Christmas Island Time - --# Cook Is --# From Shanks & Pottenger: --# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Cook 1978 only - Nov 12 0:00 0:30 HS --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 -- --# Cocos -+# 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 - -+ - # Fiji - - # Milne gives 11:55:44 for Suva. -@@ -300,20 +289,13 @@ - # from November 29th 2009 to April 25th 2010. - # - # "Daylight savings to commence this month" --# <a href="http://www.radiofiji.com.fj/fullstory.php?id=23719"> - # http://www.radiofiji.com.fj/fullstory.php?id=23719 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_fiji01.html"> - # http://www.worldtimezone.com/dst_news/dst_news_fiji01.html --# </a> - - # From Steffen Thorsen (2009-11-10): - # The Fiji Government has posted some more details about the approved - # amendments: --# <a href="http://www.fiji.gov.fj/publish/page_16198.shtml"> - # http://www.fiji.gov.fj/publish/page_16198.shtml --# </a> - - # From Steffen Thorsen (2010-03-03): - # The Cabinet in Fiji has decided to end DST about a month early, on -@@ -322,35 +304,24 @@ - # 2011 (last Sunday a good guess?). - # - # Official source: --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166"> - # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166 --# </a> - # - # A bit more background info here: --# <a href="http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html"> - # http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html --# </a> - - # From Alexander Krivenyshev (2010-10-24): - # According to Radio Fiji and Fiji Times online, Fiji will end DST 3 - # weeks earlier than expected - on March 6, 2011, not March 27, 2011... - # Here is confirmation from Government of the Republic of the Fiji Islands, - # Ministry of Information (fiji.gov.fj) web site: --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=2608:daylight-savings&catid=71:press-releases&Itemid=155"> - # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=2608:daylight-savings&catid=71:press-releases&Itemid=155 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_fiji04.html"> - # http://www.worldtimezone.com/dst_news/dst_news_fiji04.html --# </a> - - # From Steffen Thorsen (2011-10-03): - # Now the dates have been confirmed, and at least our start date - # assumption was correct (end date was one week wrong). - # --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=4966:daylight-saving-starts-in-fiji&catid=71:press-releases&Itemid=155"> --# www.fiji.gov.fj/index.php?option=com_content&view=article&id=4966:daylight-saving-starts-in-fiji&catid=71:press-releases&Itemid=155 --# </a> -+# http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=4966:daylight-saving-starts-in-fiji&catid=71:press-releases&Itemid=155 - # which says - # Members of the public are reminded to change their time to one hour in - # advance at 2am to 3am on October 23, 2011 and one hour back at 3am to -@@ -360,9 +331,7 @@ - # Another change to the Fiji DST end date. In the TZ database the end date for - # Fiji DST 2012, is currently Feb 26. This has been changed to Jan 22. - # --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=5017:amendments-to-daylight-savings&catid=71:press-releases&Itemid=155"> - # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=5017:amendments-to-daylight-savings&catid=71:press-releases&Itemid=155 --# </a> - # states: - # - # The end of daylight saving scheduled initially for the 26th of February 2012 -@@ -385,31 +354,38 @@ - # Fiji will end DST on 2014-01-19 02:00: - # http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVINGS-TO-END-THIS-MONTH-%281%29.aspx - --# From Paul Eggert (2014-01-10): --# For now, guess that Fiji springs forward the Sunday before the fourth --# Monday in October, and springs back the penultimate Sunday in January. --# This is ad hoc, but matches recent practice. -+# From Ken Rylander (2014-10-20): -+# DST will start Nov. 2 this year. -+# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-SUNDAY,-NOVEMBER-2ND.aspx -+ -+# From Paul Eggert (2014-10-20): -+# For now, guess DST from 02:00 the first Sunday in November to -+# 03:00 the first Sunday on or after January 18. Although ad hoc, it -+# matches this year's plan and seems more likely to match future -+# practice than guessing no DST. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S - Rule Fiji 1999 2000 - Feb lastSun 3:00 0 - - Rule Fiji 2009 only - Nov 29 2:00 1:00 S - Rule Fiji 2010 only - Mar lastSun 3:00 0 - --Rule Fiji 2010 max - Oct Sun>=21 2:00 1:00 S -+Rule Fiji 2010 2013 - Oct Sun>=21 2:00 1:00 S - Rule Fiji 2011 only - Mar Sun>=1 3:00 0 - - Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 - --Rule Fiji 2014 max - Jan Sun>=18 2:00 0 - -+Rule Fiji 2014 only - Jan Sun>=18 2:00 0 - -+Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S -+Rule Fiji 2015 max - Jan Sun>=18 3:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva -+Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva - 12:00 Fiji FJ%sT # Fiji Time - - # French Polynesia - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea -+Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea - -9:00 - GAMT # Gambier Time - Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct - -9:30 - MART # Marquesas Time --Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete -+Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete - -10:00 - TAHT # Tahiti Time - # Clipperton (near North America) is administered from French Polynesia; - # it is uninhabited. -@@ -417,14 +393,14 @@ - # Guam - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31 -- 9:39:00 - LMT 1901 # Agana -- 10:00 - GST 2000 Dec 23 # Guam -+ 9:39:00 - LMT 1901 # Agana -+ 10:00 - GST 2000 Dec 23 # Guam - 10:00 - ChST # Chamorro Standard Time - - # Kiribati - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki -- 12:00 - GILT # Gilbert Is Time -+Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki -+ 12:00 - GILT # Gilbert Is Time - Zone Pacific/Enderbury -11:24:20 - LMT 1901 - -12:00 - PHOT 1979 Oct # Phoenix Is Time - -11:00 - PHOT 1995 -@@ -438,7 +414,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31 - 9:43:00 - LMT 1901 -- 9:00 - MPT 1969 Oct # N Mariana Is Time -+ 9:00 - MPT 1969 Oct # N Mariana Is Time - 10:00 - MPT 2000 Dec 23 - 10:00 - ChST # Chamorro Standard Time - -@@ -449,24 +425,24 @@ - 12:00 - MHT - Zone Pacific/Kwajalein 11:09:20 - LMT 1901 - 11:00 - MHT 1969 Oct -- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time -+ -12:00 - KWAT 1993 Aug 20 # Kwajalein Time - 12:00 - MHT - - # Micronesia - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Chuuk 10:07:08 - LMT 1901 -- 10:00 - CHUT # Chuuk Time --Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia -- 11:00 - PONT # Pohnpei Time -+ 10:00 - CHUT # Chuuk Time -+Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia -+ 11:00 - PONT # Pohnpei Time - Zone Pacific/Kosrae 10:51:56 - LMT 1901 -- 11:00 - KOST 1969 Oct # Kosrae Time -+ 11:00 - KOST 1969 Oct # Kosrae Time - 12:00 - KOST 1999 - 11:00 - KOST - - # 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 -+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 -@@ -479,7 +455,7 @@ - # Shanks & Pottenger say the following was at 2:00; go with IATA. - 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 -+Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa - 11:00 NC NC%sT - - -@@ -496,7 +472,8 @@ - Rule NZ 1934 1940 - Sep lastSun 2:00 0:30 S - Rule NZ 1946 only - Jan 1 0:00 0 S - # Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no --# convenient notation for this so we must duplicate the Rule lines. -+# convenient single notation for the date and time of this transition -+# so we must duplicate the Rule lines. - Rule NZ 1974 only - Nov Sun>=1 2:00s 1:00 D - Rule Chatham 1974 only - Nov Sun>=1 2:45s 1:00 D - Rule NZ 1975 only - Feb lastSun 2:00s 0 S -@@ -519,13 +496,14 @@ - 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 1957 Jan 1 -+Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2 -+ 12:15 - CHAST 1946 Jan 1 - 12:45 Chatham CHA%sT - - Link Pacific/Auckland Antarctica/McMurdo - - # Auckland Is --# uninhabited; Maori and Moriori, colonial settlers, pastoralists, sealers, -+# uninhabited; Māori and Moriori, colonial settlers, pastoralists, sealers, - # and scientific personnel have wintered - - # Campbell I -@@ -534,48 +512,82 @@ - # previously whalers, sealers, pastoralists, and scientific personnel wintered - # was probably like Pacific/Auckland - -+# Cook Is -+# From Shanks & Pottenger: -+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -+Rule Cook 1978 only - Nov 12 0:00 0:30 HS -+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 -+ - ############################################################################### - - - # 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 -+Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi -+ -11:20 - NUT 1951 # Niue Time -+ -11:30 - NUT 1978 Oct 1 - -11:00 - NUT - - # 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 # Norfolk Time -+Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston -+ 11:12 - NMT 1951 # Norfolk Mean Time -+ 11:30 - NFT # Norfolk Time - - # Palau (Belau) - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror -+Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror - 9:00 - PWT # Palau Time - - # 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 -+ 9:48:32 - PMMT 1895 # Port Moresby Mean Time -+ 10:00 - PGT # Papua New Guinea Time -+# -+# From Paul Eggert (2014-10-13): -+# Base the Bougainville entry on the Arawa-Kieta region, which appears to have -+# the most people even though it was devastated in the Bougainville Civil War. -+# -+# Although Shanks gives 1942-03-15 / 1943-11-01 for JST, these dates -+# are apparently rough guesswork from the starts of military campaigns. -+# The World War II entries below are instead based on Arawa-Kieta. -+# The Japanese occupied Kieta in July 1942, -+# according to the Pacific War Online Encyclopedia -+# http://pwencycl.kgbudge.com/B/o/Bougainville.htm -+# and seem to have controlled it until their 1945-08-21 surrender. -+# -+# The Autonomous Region of Bougainville plans to switch from UTC+10 to UTC+11 -+# on 2014-12-28 at 02:00. They call UTC+11 "Bougainville Standard Time"; -+# abbreviate this as BST. 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 - - # Pitcairn - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown -- -8:30 - PNT 1998 Apr 27 00:00 -+Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown -+ -8:30 - PNT 1998 Apr 27 0:00 - -8:00 - PST # Pitcairn Standard Time - - # American Samoa - Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5 - -11:22:48 - LMT 1911 -- -11:30 - SAMT 1950 # Samoa Time -- -11:00 - NST 1967 Apr # N=Nome -- -11:00 - BST 1983 Nov 30 # B=Bering -- -11:00 - SST # S=Samoa -+ -11:00 - NST 1967 Apr # N=Nome -+ -11:00 - BST 1983 Nov 30 # B=Bering -+ -11:00 - SST # S=Samoa - --# Samoa -+# Samoa (formerly and also known as Western Samoa) - - # From Steffen Thorsen (2009-10-16): - # We have been in contact with the government of Samoa again, and received -@@ -586,141 +598,80 @@ - # Sunday of April 2011." - # - # Background info: --# <a href="http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html"> - # http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html --# </a> - # - # Samoa's Daylight Saving Time Act 2009 is available here, but does not - # contain any dates: --# <a href="http://www.parliament.gov.ws/documents/acts/Daylight%20Saving%20Act%20%202009%20%28English%29%20-%20Final%207-7-091.pdf"> - # http://www.parliament.gov.ws/documents/acts/Daylight%20Saving%20Act%20%202009%20%28English%29%20-%20Final%207-7-091.pdf --# </a> - - # From Laupue Raymond Hughes (2010-10-07): - # Please see --# <a href="http://www.mcil.gov.ws"> - # http://www.mcil.gov.ws --# </a>, - # the Ministry of Commerce, Industry and Labour (sideframe) "Last Sunday - # September 2010 (26/09/10) - adjust clocks forward from 12:00 midnight - # to 01:00am and First Sunday April 2011 (03/04/11) - adjust clocks - # backwards from 1:00am to 12:00am" - - # From Laupue Raymond Hughes (2011-03-07): --# I believe this will be posted shortly on the website --# <a href="http://www.mcil.gov.ws"> --# www.mcil.gov.ws --# </a> -+# [http://www.mcil.gov.ws/ftcd/daylight_saving_2011.pdf] - # --# PUBLIC NOTICE ON DAYLIGHT SAVING TIME --# --# Pursuant to the Daylight Saving Act 2009 and Cabinets decision, --# businesses and the general public are hereby advised that daylight --# saving time is on the first Saturday of April 2011 (02/04/11). --# --# The public is therefore advised that when the standard time strikes --# the hour of four oclock (4.00am or 0400 Hours) on the 2nd April 2011, --# then all instruments used to measure standard time are to be --# adjusted/changed to three oclock (3:00am or 0300Hrs). --# --# Margaret Fruean ACTING CHIEF EXECUTIVE OFFICER MINISTRY OF COMMERCE, --# INDUSTRY AND LABOUR 28th February 2011 -+# ... when the standard time strikes the hour of four o'clock (4.00am -+# or 0400 Hours) on the 2nd April 2011, then all instruments used to -+# measure standard time are to be adjusted/changed to three o'clock -+# (3:00am or 0300Hrs). - --# From David Zuelke (2011-05-09): -+# From David Zülke (2011-05-09): - # Subject: Samoa to move timezone from east to west of international date line - # --# <a href="http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963"> - # http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963 --# </a> - --# From Mark Sim-Smith (2011-08-17): --# I have been in contact with Leilani Tuala Warren from the Samoa Law --# Reform Commission, and she has sent me a copy of the Bill that she --# confirmed has been passed...Most of the sections are about maps rather --# than the time zone change, but I'll paste the relevant bits below. But --# the essence is that at midnight 29 Dec (UTC-11 I suppose), Samoa --# changes from UTC-11 to UTC+13: --# --# International Date Line Bill 2011 --# --# AN ACT to provide for the change to standard time in Samoa and to make --# consequential amendments to the position of the International Date --# Line, and for related purposes. --# --# BE IT ENACTED by the Legislative Assembly of Samoa in Parliament --# assembled as follows: --# --# 1. Short title and commencement-(1) This Act may be cited as the --# International Date Line Act 2011. (2) Except for section 5(3) this Act --# commences at 12 o'clock midnight, on Thursday 29th December 2011. (3) --# Section 5(3) commences on the date of assent by the Head of State. --# --# [snip] --# --# 3. Interpretation - [snip] "Samoa standard time" in this Act and any --# other statute of Samoa which refers to 'Samoa standard time' means the --# time 13 hours in advance of Co-ordinated Universal Time. --# --# 4. Samoa standard time - (1) Upon the commencement of this Act, Samoa --# standard time shall be set at 13 hours in advance of Co-ordinated --# Universal Time for the whole of Samoa. (2) All references to Samoa's --# time zone and to Samoa standard time in Samoa in all legislation and --# instruments after the commencement of this Act shall be references to --# Samoa standard time as provided for in this Act. (3) Nothing in this --# Act affects the provisions of the Daylight Saving Act 2009, except that --# it defines Samoa standard time.... -+# From Paul Eggert (2014-06-27): -+# The International Date Line Act 2011 -+# http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf -+# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on -+# Thursday 29th December 2011". The International Date Line was adjusted -+# accordingly. - - # From Laupue Raymond Hughes (2011-09-02): --# <a href="http://www.mcil.gov.ws/mcil_publications.html"> - # http://www.mcil.gov.ws/mcil_publications.html --# </a> - # - # here is the official website publication for Samoa DST and dateline change - # - # DST --# Year End Time Start Time --# 2011 - - - - - - 24 September 3:00am to 4:00am --# 2012 01 April 4:00am to 3:00am - - - - - - -+# Year End Time Start Time -+# 2011 - - - - - - 24 September 3:00am to 4:00am -+# 2012 01 April 4:00am to 3:00am - - - - - - - # - # Dateline Change skip Friday 30th Dec 2011 - # Thursday 29th December 2011 23:59:59 Hours - # Saturday 31st December 2011 00:00:00 Hours - # --# Clarification by Tim Parenti (2012-01-03): --# Although Samoa has used Daylight Saving Time in the 2010-2011 and 2011-2012 --# seasons, there is not yet any indication that this trend will continue on --# a regular basis. For now, we have explicitly listed the transitions below. --# --# From Nicky (2012-09-10): -+# From Nicholas Pereira (2012-09-10): - # Daylight Saving Time commences on Sunday 30th September 2012 and --# ends on Sunday 7th of April 2013. --# --# Please find link below for more information. -+# ends on Sunday 7th of April 2013.... - # http://www.mcil.gov.ws/mcil_publications.html - # --# That publication also includes dates for Summer of 2013/4 as well --# which give the impression of a pattern in selecting dates for the --# future, so for now, we will guess this will continue. -+# From Paul Eggert (2014-07-08): -+# That web page currently lists transitions for 2012/3 and 2013/4. -+# Assume the pattern instituted in 2012 will continue indefinitely. - --# Western Samoa - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -+Rule WS 2010 only - Sep lastSun 0:00 1 D -+Rule WS 2011 only - Apr Sat>=1 4:00 0 S -+Rule WS 2011 only - Sep lastSat 3:00 1 D -+Rule WS 2012 max - Apr Sun>=1 4:00 0 S - Rule WS 2012 max - Sep lastSun 3:00 1 D --Rule WS 2012 max - Apr Sun>=1 4:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5 - -11:26:56 - LMT 1911 -- -11:30 - SAMT 1950 # Samoa Time -- -11:00 - WST 2010 Sep 26 -- -11:00 1:00 WSDT 2011 Apr 2 4:00 -- -11:00 - WST 2011 Sep 24 3:00 -- -11:00 1:00 WSDT 2011 Dec 30 -- 13:00 1:00 WSDT 2012 Apr Sun>=1 4:00 -+ -11:30 - WSST 1950 -+ -11:00 WS S%sT 2011 Dec 29 24:00 # S=Samoa - 13:00 WS WS%sT - - # 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 -+Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara - 11:00 - SBT # Solomon Is Time - - # Tokelau Is -@@ -744,7 +695,7 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Fakaofo -11:24:56 - LMT 1901 -- -11:00 - TKT 2011 Dec 30 # Tokelau Time -+ -11:00 - TKT 2011 Dec 30 # Tokelau Time - 13:00 - TKT - - # Tonga -@@ -804,8 +755,8 @@ - # time from Operation Newsreel (Hardtack I/Teak shot, 1958-08-01) to the last - # Operation Fishbowl shot (Tightrope, 1962-11-04).... [See] Herman Hoerlin, - # "The United States High-Altitude Test Experience: A Review Emphasizing the --# Impact on the Environment", Los Alamos LA-6405, Oct 1976 --# <http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf>. -+# Impact on the Environment", Los Alamos LA-6405, Oct 1976. -+# http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf - # 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". -@@ -820,7 +771,7 @@ - # From Mark Brader (2005-01-23): - # [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies, - # published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3] --# reproduced a Pan American Airways timeables from 1936, for their weekly -+# reproduced a Pan American Airways timetable from 1936, for their weekly - # "Orient Express" flights between San Francisco and Manila, and connecting - # flights to Chicago and the US East Coast. As it uses some time zone - # designations that I've never seen before:.... -@@ -830,9 +781,9 @@ - Zone Pacific/Midway -11:49:28 - LMT 1901 - -11:00 - NST 1956 Jun 3 - -11:00 1:00 NDT 1956 Sep 2 -- -11:00 - NST 1967 Apr # N=Nome -- -11:00 - BST 1983 Nov 30 # B=Bering -- -11:00 - SST # S=Samoa -+ -11:00 - NST 1967 Apr # N=Nome -+ -11:00 - BST 1983 Nov 30 # B=Bering -+ -11:00 - SST # S=Samoa - - # Palmyra - # uninhabited since World War II; was probably like Pacific/Kiritimati -@@ -852,7 +803,7 @@ - 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 -+Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila - 11:00 Vanuatu VU%sT # Vanuatu Time - - # Wallis and Futuna -@@ -864,188 +815,213 @@ - - # NOTES - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2013-02-21): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Another source occasionally used is Edward W. Whitman, World Time Differences, - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which - # I found in the UCLA library. - # - # For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 - # - # 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; -+# 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 --# LMT Local Mean Time --# 8:00 WST WST Western Australia --# 8:45 CWST CWST Central Western Australia* --# 9:00 JST Japan --# 9:30 CST CST Central Australia --# 10:00 EST EST Eastern Australia --# 10:00 ChST Chamorro --# 10:30 LHST LHST Lord Howe* --# 11:30 NZMT NZST New Zealand through 1945 --# 12:00 NZST NZDT New Zealand 1946-present --# 12:45 CHAST CHADT Chatham* --# -11:00 SST Samoa --# -10:00 HST Hawaii --# - 8:00 PST Pitcairn* -+# 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 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 Galapagos Is. -+# See the 'northamerica' file for Hawaii. -+# See the 'southamerica' file for Easter I and the Galápagos Is. - - ############################################################################### - - # Australia - -+# From Paul Eggert (2014-06-30): -+# Daylight saving time has long been controversial in Australia, pitting -+# region against region, rural against urban, and local against global. -+# For example, in her review of Graeme Davison's _The Unforgiving -+# Minute: how Australians learned to tell the time_ (1993), Perth native -+# Phillipa J Martyr wrote, "The section entitled 'Saving Daylight' was -+# very informative, but was (as can, sadly, only be expected from a -+# Melbourne-based study) replete with the usual chuckleheaded -+# Queenslanders and straw-chewing yokels from the West prattling fables -+# about fading curtains and crazed farm animals." -+# Electronic Journal of Australian and New Zealand History (1997-03-03) -+# http://www.jcu.edu.au/aff/history/reviews/davison.htm -+ - # From Paul Eggert (2005-12-08): --# <a href="http://www.bom.gov.au/climate/averages/tables/dst_times.shtml"> - # Implementation Dates of Daylight Saving Time within Australia --# </a> summarizes daylight saving issues in Australia. -+# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml -+# summarizes daylight saving issues in Australia. - - # From Arthur David Olson (2005-12-12): --# <a href="http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving"> - # Lawlink NSW:Daylight Saving in New South Wales --# </a> covers New South Wales in particular. -+# http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving -+# covers New South Wales in particular. - - # From John Mackin (1991-03-06): --# We in Australia have _never_ referred to DST as `daylight' time. --# It is called `summer' time. Now by a happy coincidence, `summer' --# and `standard' happen to start with the same letter; hence, the -+# We in Australia have _never_ referred to DST as 'daylight' time. -+# It is called 'summer' time. Now by a happy coincidence, 'summer' -+# and 'standard' happen to start with the same letter; hence, the - # abbreviation does _not_ change... - # The legislation does not actually define abbreviations, at least - # in this State, but the abbreviation is just commonly taken to be the - # initials of the phrase, and the legislation here uniformly uses --# the phrase `summer time' and does not use the phrase `daylight -+# the phrase 'summer time' and does not use the phrase 'daylight - # time'. - # Announcers on the Commonwealth radio network, the ABC (for Australian --# Broadcasting Commission), use the phrases `Eastern Standard Time' --# or `Eastern Summer Time'. (Note, though, that as I say in the -+# Broadcasting Commission), use the phrases 'Eastern Standard Time' -+# or 'Eastern Summer Time'. (Note, though, that as I say in the - # current australasia file, there is really no such thing.) Announcers - # on its overseas service, Radio Australia, use the same phrases --# prefixed by the word `Australian' when referring to local times; -+# prefixed by the word 'Australian' when referring to local times; - # time announcements on that service, naturally enough, are made in UTC. - --# From Arthur David Olson (1992-03-08): --# Given the above, what's chosen for year-round use is: --# CST for any place operating at a GMTOFF of 9:30 --# WST for any place operating at a GMTOFF of 8:00 --# EST for any place operating at a GMTOFF of 10:00 -- --# From Chuck Soper (2006-06-01): --# I recently found this Australian government web page on time zones: --# <http://www.australia.gov.au/about-australia-13time> --# And this government web page lists time zone names and abbreviations: --# <http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml> -- --# From Paul Eggert (2001-04-05), summarizing a long discussion about "EST" --# versus "AEST" etc.: -+# From Paul Eggert (2014-06-30): - # --# I see the following points of dispute: -+# Inspired by Mackin's remarks quoted above, earlier versions of this -+# file used "EST" for both Eastern Standard Time and Eastern Summer -+# Time in Australia, and similarly for "CST", "CWST", and "WST". -+# However, these abbreviations were confusing and were not common -+# practice among Australians, and there were justifiable complaints -+# about them, so I attempted to survey current Australian usage. -+# For the tz database, the full English phrase is not that important; -+# what matters is the abbreviation. It's difficult to survey the web -+# directly for abbreviation usage, as there are so many false hits for -+# strings like "EST" and "EDT", so I looked for pages that defined an -+# abbreviation for eastern or central DST in Australia, and got the -+# following numbers of unique hits for the listed Google queries: - # --# * How important are unique time zone abbreviations? -+# 10 "Eastern Daylight Time AEST" site:au [some are false hits] -+# 10 "Eastern Summer Time AEST" site:au -+# 10 "Summer Time AEDT" site:au -+# 13 "EDST Eastern Daylight Saving Time" site:au -+# 18 "Summer Time ESST" site:au -+# 28 "Eastern Daylight Saving Time EDST" site:au -+# 39 "EDT Eastern Daylight Time" site:au [some are false hits] -+# 53 "Eastern Daylight Time EDT" site:au [some are false hits] -+# 54 "AEDT Australian Eastern Daylight Time" site:au -+# 182 "Eastern Daylight Time AEDT" site:au - # --# Here I tend to agree with the point (most recently made by Chris --# Newman) that unique abbreviations should not be essential for proper --# operation of software. We have other instances of ambiguity --# (e.g. "IST" denoting both "Israel Standard Time" and "Indian --# Standard Time"), and they are not likely to go away any time soon. --# In the old days, some software mistakenly relied on unique --# abbreviations, but this is becoming less true with time, and I don't --# think it's that important to cater to such software these days. -+# 17 "Central Daylight Time CDT" site:au [some are false hits] -+# 46 "Central Daylight Time ACDT" site:au - # --# On the other hand, there is another motivation for unambiguous --# abbreviations: it cuts down on human confusion. This is --# particularly true for Australia, where "EST" can mean one thing for --# time T and a different thing for time T plus 1 second. -+# I tried several other variants (e.g., "Eastern Summer Time EST") but -+# they all returned fewer than 10 unique hits. I also looked for pages -+# mentioning both "western standard time" and an abbreviation, since -+# there is no WST in the US to generate false hits, and found: - # --# * Does the relevant legislation indicate which abbreviations should be used? -+# 156 "western standard time" AWST site:au -+# 226 "western standard time" WST site:au - # --# Here I tend to think that things are a mess, just as they are in --# many other countries. We Americans are currently disagreeing about --# which abbreviation to use for the newly legislated Chamorro Standard --# Time, for example. -+# I then surveyed the top ten newspapers in Australia by circulation as -+# listed in Wikipedia, using Google queries like "AEDT site:heraldsun.com.au" -+# and obtaining estimated counts from the initial page of search results. -+# All ten papers greatly preferred "AEDT" to "EDT". The papers -+# surveyed were the Herald Sun, The Daily Telegraph, The Courier-Mail, -+# The Sydney Morning Herald, The West Australian, The Age, The Advertiser, -+# The Australian, The Financial Review, and The Herald (Newcastle). - # --# Personally, I would prefer to use common practice; I would like to --# refer to legislation only for examples of common practice, or as a --# tiebreaker. -+# I also searched for historical usage, to see whether abbreviations -+# like "AEDT" are new. A Trove search <http://trove.nla.gov.au/> -+# found only one newspaper (The Canberra Times) with a house style -+# dating back to the 1970s, I expect because other newspapers weren't -+# fully indexed. The Canberra Times strongly preferred abbreviations -+# like "AEDT". The first occurrence of "AEDT" was a World Weather -+# column (1971-11-17, page 24), and of "ACDT" was a Scoreboard column -+# (1993-01-24, p 16). The style was the typical usage but was not -+# strictly enforced; for example, "Welcome to the twilight zones ..." -+# (1994-10-29, p 1) uses the abbreviations AEST/AEDT, CST/CDT, and -+# WST, and goes on to say, "The confusion and frustration some feel -+# about the lack of uniformity among Australia's six states and two -+# territories has prompted one group to form its very own political -+# party -- the Sydney-based Daylight Saving Extension Party." - # --# * Do Australians more often use "Eastern Daylight Time" or "Eastern --# Summer Time"? Do they typically prefix the time zone names with --# the word "Australian"? -+# I also surveyed federal government sources. They did not agree: - # --# My own impression is that both "Daylight Time" and "Summer Time" are --# common and are widely understood, but that "Summer Time" is more --# popular; and that the leading "A" is also common but is omitted more --# often than not. I just used AltaVista advanced search and got the --# following count of page hits: -+# The Australian Government (2014-03-26) -+# http://australia.gov.au/about-australia/our-country/time -+# (This document was produced by the Department of Finance.) -+# AEST ACST AWST AEDT ACDT - # --# 1,103 "Eastern Summer Time" AND domain:au --# 971 "Australian Eastern Summer Time" AND domain:au --# 613 "Eastern Daylight Time" AND domain:au --# 127 "Australian Eastern Daylight Time" AND domain:au -+# Bureau of Meteorology (2012-11-08) -+# http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml -+# EST CST WST EDT CDT - # --# Here "Summer" seems quite a bit more popular than "Daylight", --# particularly when we know the time zone is Australian and not US, --# say. The "Australian" prefix seems to be popular for Eastern Summer --# Time, but unpopular for Eastern Daylight Time. -+# Civil Aviation Safety Authority (undated) -+# http://services.casa.gov.au/outnback/inc/pages/episode3/episode-3_time_zones.shtml -+# EST CST WST (no abbreviations given for DST) - # --# For abbreviations, tools like AltaVista are less useful because of --# ambiguity. Many hits are not really time zones, unfortunately, and --# many hits denote US time zones and not Australian ones. But here --# are the hit counts anyway: -+# Geoscience Australia (2011-11-24) -+# http://www.ga.gov.au/geodesy/astro/sunrise.jsp -+# AEST ACST AWST AEDT ACDT - # --# 161,304 "EST" and domain:au --# 25,156 "EDT" and domain:au --# 18,263 "AEST" and domain:au --# 10,416 "AEDT" and domain:au -+# Parliamentary Library (2008-11-10) -+# http://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf -+# EST CST WST preferred for standard time; AEST AEDT ACST ACDT also used - # --# 14,538 "CST" and domain:au --# 5,728 "CDT" and domain:au --# 176 "ACST" and domain:au --# 29 "ACDT" and domain:au -+# The Transport Safety Bureau has an extensive series of accident reports, -+# and investigators seem to use whatever abbreviation they like. -+# Googling site:atsb.gov.au found the following number of unique hits: -+# 311 "ESuT", 195 "EDT", 26 "AEDT", 83 "CSuT", 46 "CDT". -+# "_SuT" tended to appear in older reports, and "A_DT" tended to -+# appear in reports of events with international implications. - # --# 7,539 "WST" and domain:au --# 68 "AWST" and domain:au --# --# This data suggest that Australians tend to omit the "A" prefix in --# practice. The situation for "ST" versus "DT" is less clear, given --# the ambiguities involved. --# --# * How do Australians feel about the abbreviations in the tz database? --# --# If you just count Australians on this list, I count 2 in favor and 3 --# against. One of the "against" votes (David Keegel) counseled delay, --# saying that both AEST/AEDT and EST/EST are widely used and --# understood in Australia. -+# From the above it appears that there is a working consensus in -+# Australia to use trailing "DT" for daylight saving time; although -+# some sources use trailing "SST" or "ST" or "SuT" they are by far in -+# the minority. The case for leading "A" is weaker, but since it -+# seems to be preferred in the overall web and is preferred in all -+# the leading newspaper websites and in many government departments, -+# it has a stronger case than omitting the leading "A". The current -+# version of the database therefore uses abbreviations like "AEST" and -+# "AEDT" for Australian time zones. - - # From Paul Eggert (1995-12-19): - # Shanks & Pottenger report 2:00 for all autumn changes in Australia and NZ. - # Mark Prior writes that his newspaper - # reports that NSW's fall 1995 change will occur at 2:00, - # but Robert Elz says it's been 3:00 in Victoria since 1970 --# and perhaps the newspaper's `2:00' is referring to standard time. -+# and perhaps the newspaper's '2:00' is referring to standard time. - # For now we'll continue to assume 2:00s for changes since 1960. - - # From Eric Ulevik (1998-01-05): -@@ -1055,17 +1031,14 @@ - # relevant entries in this database. - # - # NSW (including LHI and Broken Hill): --# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html"> - # Standard Time Act 1987 (updated 1995-04-04) --# </a> -+# http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html - # ACT --# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html"> - # Standard Time and Summer Time Act 1972 --# </a> -+# http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html - # SA --# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html"> - # Standard Time Act, 1898 --# </a> -+# http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html - - # From David Grosz (2005-06-13): - # It was announced last week that Daylight Saving would be extended by -@@ -1083,7 +1056,7 @@ - # Victoria: I wasn't able to find anything separate, but the other articles - # allude to it. - # But not Queensland --# http://www.news.com.au/story/0,10117,15564030-1248,00.html. -+# http://www.news.com.au/story/0,10117,15564030-1248,00.html - - # Northern Territory - -@@ -1130,9 +1103,9 @@ - # The 1992 ending date used in the rules is a best guess; - # it matches what was used in the past. - --# <a href="http://www.bom.gov.au/faq/faqgen.htm"> - # The Australian Bureau of Meteorology FAQ --# </a> (1999-09-27) writes that Giles Meteorological Station uses -+# http://www.bom.gov.au/faq/faqgen.htm -+# (1999-09-27) writes that Giles Meteorological Station uses - # South Australian time even though it's located in Western Australia. - - # Queensland -@@ -1173,9 +1146,9 @@ - # The chosen rules the union of the 1971/1972 change and the 1989-1992 changes. - - # From Christopher Hunt (2006-11-21), after an advance warning --# from Jesper Norgaard Welen (2006-11-01): -+# from Jesper Nørgaard Welen (2006-11-01): - # WA are trialing DST for three years. --# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf> -+# http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf - - # From Rives McDow (2002-04-09): - # The most interesting region I have found consists of three towns on the -@@ -1189,7 +1162,7 @@ - # From Paul Eggert (2002-04-09): - # This is confirmed by the section entitled - # "What's the deal with time zones???" in --# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>. -+# http://www.earthsci.unimelb.edu.au/~awatkins/null.html - # - # From Alex Livingston (2006-12-07): - # ... it was just on four years ago that I drove along the Eyre Highway, -@@ -1337,7 +1310,7 @@ - # Based on law library research by John Mackin, - # who notes: - # In Australia, time is not legislated federally, but rather by the --# individual states. Thus, while such terms as ``Eastern Standard Time'' -+# individual states. Thus, while such terms as "Eastern Standard Time" - # [I mean, of course, Australian EST, not any other kind] are in common - # use, _they have NO REAL MEANING_, as they are not defined in the - # legislation. This is very important to understand. -@@ -1345,48 +1318,42 @@ - - # From Eric Ulevik (1999-05-26): - # DST will start in NSW on the last Sunday of August, rather than the usual --# October in 2000. [See: Matthew Moore, --# <a href="http://www.smh.com.au/news/9905/26/pageone/pageone4.html"> --# Two months more daylight saving --# </a> --# Sydney Morning Herald (1999-05-26).] -+# October in 2000. See: Matthew Moore, -+# Two months more daylight saving, Sydney Morning Herald (1999-05-26). -+# http://www.smh.com.au/news/9905/26/pageone/pageone4.html - - # From Paul Eggert (1999-09-27): - # See the following official NSW source: --# <a href="http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ"> - # Daylight Saving in New South Wales. --# </a> -+# http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ - # - # Narrabri Shire (NSW) council has announced it will ignore the extension of - # daylight saving next year. See: --# <a href="http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm"> - # Narrabri Council to ignore daylight saving --# </a> (1999-07-22). For now, we'll wait to see if this really happens. -+# http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm -+# (1999-07-22). For now, we'll wait to see if this really happens. - # - # Victoria will following NSW. See: --# <a href="http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm"> --# Vic to extend daylight saving --# </a> (1999-07-28). -+# Vic to extend daylight saving (1999-07-28) -+# http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm - # - # However, South Australia rejected the DST request. See: --# <a href="http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm"> --# South Australia rejects Olympics daylight savings request --# </a> (1999-07-19). -+# South Australia rejects Olympics daylight savings request (1999-07-19) -+# http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm - # - # Queensland also will not observe DST for the Olympics. See: --# <a href="http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm"> - # Qld says no to daylight savings for Olympics --# </a> (1999-06-01), which quotes Queensland Premier Peter Beattie as saying --# ``Look you've got to remember in my family when this came up last time -+# http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm -+# (1999-06-01), which quotes Queensland Premier Peter Beattie as saying -+# "Look you've got to remember in my family when this came up last time - # I voted for it, my wife voted against it and she said to me it's all very - # well for you, you don't have to worry about getting the children out of - # bed, getting them to school, getting them to sleep at night. --# I've been through all this argument domestically...my wife rules.'' -+# I've been through all this argument domestically...my wife rules." - # - # Broken Hill will stick with South Australian time in 2000. See: --# <a href="http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm"> --# Broken Hill to be behind the times --# </a> (1999-07-21). -+# Broken Hill to be behind the times (1999-07-21) -+# http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm - - # IATA SSIM (1998-09) says that the spring 2000 change for Australian - # Capital Territory, New South Wales except Lord Howe Island and Broken -@@ -1402,7 +1369,7 @@ - # Yancowinna - - # From John Mackin (1989-01-04): --# `Broken Hill' means the County of Yancowinna. -+# 'Broken Hill' means the County of Yancowinna. - - # From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06): - # # YANCOWINNA.. [ Confirmation courtesy of Broken Hill Postmaster ] -@@ -1459,9 +1426,7 @@ - # summer (southern hemisphere). - # - # From --# <a href="http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf"> - # http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf --# </a> - # The extended daylight saving period that South Australia has been trialling - # for over the last year is now set to be ongoing. - # Daylight saving will continue to start on the first Sunday in October each -@@ -1471,9 +1436,7 @@ - # the ACT for all 52 weeks of the year... - # - # We have a wrap-up here: --# <a href="http://www.timeanddate.com/news/time/south-australia-extends-dst.html"> - # http://www.timeanddate.com/news/time/south-australia-extends-dst.html --# </a> - ############################################################################### - - # New Zealand -@@ -1482,7 +1445,7 @@ - # the 1989/90 year was a trial of an extended "daylight saving" period. - # This trial was deemed successful and the extended period adopted for - # subsequent years (with the addition of a further week at the start). --# source -- phone call to Ministry of Internal Affairs Head Office. -+# source - phone call to Ministry of Internal Affairs Head Office. - - # From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06): - # # The Country of New Zealand (Australia's east island -) Gee they hate that! -@@ -1524,6 +1487,19 @@ - # that DST will begin on 2007-09-30 2008-04-06. - # http://www.dia.govt.nz/diawebsite.nsf/wpg_URL/Services-Daylight-Saving-Daylight-saving-to-be-extended - -+# From Paul Eggert (2014-07-14): -+# Chatham Island time was formally standardized on 1957-01-01 by -+# New Zealand's Standard Time Amendment Act 1956 (1956-10-26). -+# http://www.austlii.edu.au/nz/legis/hist_act/staa19561956n100244.pdf -+# According to Google Books snippet view, a speaker in the New Zealand -+# parliamentary debates in 1956 said "Clause 78 makes provision for standard -+# time in the Chatham Islands. The time there is 45 minutes in advance of New -+# Zealand time. I understand that is the time they keep locally, anyhow." -+# For now, assume this practice goes back to the introduction of standard time -+# in New Zealand, as this would make Chatham Islands time almost exactly match -+# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did -+# not observe New Zealand's prewar DST. -+ - ############################################################################### - - -@@ -1543,7 +1519,7 @@ - - # From the BBC World Service in - # http://news.bbc.co.uk/2/hi/asia-pacific/205226.stm (1998-10-31 16:03 UTC): --# The Fijiian government says the main reasons for the time change is to -+# The Fijian government says the main reasons for the time change is to - # improve productivity and reduce road accidents.... [T]he move is also - # intended to boost Fiji's ability to attract tourists to witness the dawning - # of the new millennium. -@@ -1551,16 +1527,12 @@ - # http://www.fiji.gov.fj/press/2000_09/2000_09_13-05.shtml (2000-09-13) - # reports that Fiji has discontinued DST. - --# Johnston -- --# Johnston data is from usno1995. -- - - # Kiribati - - # From Paul Eggert (1996-01-22): - # Today's _Wall Street Journal_ (page 1) reports that Kiribati --# ``declared it the same day [throughout] the country as of Jan. 1, 1995'' -+# "declared it the same day [throughout] the country as of Jan. 1, 1995" - # as part of the competition to be first into the 21st century. - - -@@ -1575,8 +1547,8 @@ - - # N Mariana Is, Guam - --# Howse writes (p 153) ``The Spaniards, on the other hand, reached the --# Philippines and the Ladrones from America,'' and implies that the Ladrones -+# Howse writes (p 153) "The Spaniards, on the other hand, reached the -+# Philippines and the Ladrones from America," and implies that the Ladrones - # (now called the Marianas) kept American date for quite some time. - # For now, we assume the Ladrones switched at the same time as the Philippines; - # see Asia/Manila. -@@ -1590,17 +1562,16 @@ - # Micronesia - - # Alan Eugene Davis writes (1996-03-16), --# ``I am certain, having lived there for the past decade, that "Truk" --# (now properly known as Chuuk) ... is in the time zone GMT+10.'' -+# "I am certain, having lived there for the past decade, that 'Truk' -+# (now properly known as Chuuk) ... is in the time zone GMT+10." - # - # Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11 - # on 1978-10-01; ignore this for now. - - # From Paul Eggert (1999-10-29): - # The Federated States of Micronesia Visitors Board writes in --# <a href="http://www.fsmgov.org/info/clocks.html"> --# The Federated States of Micronesia - Visitor Information --# </a> (1999-01-26) -+# The Federated States of Micronesia - Visitor Information (1999-01-26) -+# http://www.fsmgov.org/info/clocks.html - # that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11. - # We don't know when Kosrae switched from UTC+12; assume January 1 for now. - -@@ -1646,27 +1617,34 @@ - # Sacramento but it was changed a couple of years ago. - - --# Samoa -+# (Western) Samoa and American Samoa - - # Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald) - # that in 1879 the King of Samoa decided to change --# ``the date in his kingdom from the Antipodean to the American system, --# ordaining -- by a masterpiece of diplomatic flattery -- that --# the Fourth of July should be celebrated twice in that year.'' -+# "the date in his kingdom from the Antipodean to the American system, -+# ordaining - by a masterpiece of diplomatic flattery - that -+# the Fourth of July should be celebrated twice in that year." - -+# Although Shanks & Pottenger says they both switched to UTC-11:30 -+# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11 -+# for American Samoa, e.g., the US National Bureau of Standards -+# circular "Standard Time Throughout the World", 1932. -+# Assume American Samoa switched to UTC-11 in 1911, not 1950, -+# and that after 1950 they agreed until (western) Samoa skipped a -+# day in 2011. Assume also that the Samoas follow the US and New -+# Zealand's "ST"/"DT" style of daylight-saving abbreviations. - - # Tonga - - # From Paul Eggert (1996-01-22): --# Today's _Wall Street Journal_ (p 1) reports that ``Tonga has been plotting --# to sneak ahead of [New Zealanders] by introducing daylight-saving time.'' -+# Today's _Wall Street Journal_ (p 1) reports that "Tonga has been plotting -+# to sneak ahead of [New Zealanders] by introducing daylight-saving time." - # Since Kiribati has moved the Date Line it's not clear what Tonga will do. - - # Don Mundell writes in the 1997-02-20 Tonga Chronicle --# <a href="http://www.tongatapu.net.to/tonga/homeland/timebegins.htm"> --# How Tonga became `The Land where Time Begins' --# </a>: -- -+# How Tonga became 'The Land where Time Begins': -+# http://www.tongatapu.net.to/tonga/homeland/timebegins.htm -+# - # Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST - # 12 hours and 20 minutes ahead of GMT. When New Zealand adjusted its - # standard time in 1940s, Tonga had the choice of subtracting from its -@@ -1674,8 +1652,8 @@ - # advancing its time to maintain the differential of 13 degrees - # (approximately 50 minutes ahead of New Zealand time). - # --# Because His Majesty King Taufa'ahau Tupou IV, then Crown Prince --# Tungi, preferred to ensure Tonga's title as the land where time -+# Because His Majesty King Tāufaʻāhau Tupou IV, then Crown Prince -+# Tungī, preferred to ensure Tonga's title as the land where time - # begins, the Legislative Assembly approved the latter change. - # - # But some of the older, more conservative members from the outer -@@ -1701,9 +1679,7 @@ - # * Tonga will introduce DST in November - # - # I was given this link by John Letts: --# <a href="http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm"> - # http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm --# </a> - # - # I have not been able to find exact dates for the transition in November - # yet. By reading this article it seems like Fiji will be 14 hours ahead -@@ -1711,9 +1687,7 @@ - # (12 + 1 hour DST). - - # From Arthur David Olson (1999-09-20): --# According to <a href="http://www.tongaonline.com/news/sept1799.html"> --# http://www.tongaonline.com/news/sept1799.html --# </a>: -+# According to <http://www.tongaonline.com/news/sept1799.html>: - # "Daylight Savings Time will take effect on Oct. 2 through April 15, 2000 - # and annually thereafter from the first Saturday in October through the - # third Saturday of April. Under the system approved by Privy Council on -@@ -1731,7 +1705,7 @@ - # instead of the original reported date April 16. Unfortunately, the article - # is no longer available on the site, and I did not make a copy of the - # text, and I have forgotten to report it here. --# (Original URL was: http://www.tongaonline.com/news/march162000.htm ) -+# (Original URL was <http://www.tongaonline.com/news/march162000.htm>) - - # From Rives McDow (2000-12-01): - # Tonga is observing DST as of 2000-11-04 and will stop on 2001-01-27. -@@ -1751,7 +1725,7 @@ - # From Vernice Anderson, Personal Secretary to Philip Jessup, - # US Ambassador At Large (oral history interview, 1971-02-02): - # --# Saturday, the 14th [of October, 1950] -- ... The time was all the -+# Saturday, the 14th [of October, 1950] - ... The time was all the - # more confusing at that point, because we had crossed the - # International Date Line, thus getting two Sundays. Furthermore, we - # discovered that Wake Island had two hours of daylight saving time -@@ -1796,7 +1770,7 @@ - # on the high seas. Whenever a ship was within the territorial waters of any - # nation it would use that nation's standard time. The captain was permitted - # to change his ship's clocks at a time of his choice following his ship's --# entry into another zone time--he often chose midnight. These zones were -+# entry into another zone time - he often chose midnight. These zones were - # adopted by all major fleets between 1920 and 1925 but not by many - # independent merchant ships until World War II. - -@@ -1804,6 +1778,6 @@ - # (2005-03-20): - # - # The American Practical Navigator (2002) --# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187> -+# http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187 - # talks only about the 180-degree meridian with respect to ships in - # international waters; it ignores the international date line. ---- ./jdk/make/data/tzdata/backward Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/backward Mon Dec 08 12:29:42 2014 -0800 -@@ -21,15 +21,15 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - - # This file provides links between current names for time zones - # and their old names. Many names changed in late 1993. - -+# Link TARGET LINK-NAME - Link Africa/Asmara Africa/Asmera --Link Africa/Bamako Africa/Timbuktu -+Link Africa/Abidjan Africa/Timbuktu - Link America/Argentina/Catamarca America/Argentina/ComodRivadavia - Link America/Adak America/Atka - Link America/Argentina/Buenos_Aires America/Buenos_Aires -@@ -50,8 +50,11 @@ - Link Pacific/Auckland Antarctica/South_Pole - Link Asia/Ashgabat Asia/Ashkhabad - Link Asia/Kolkata Asia/Calcutta --Link Asia/Chongqing Asia/Chungking -+Link Asia/Shanghai Asia/Chongqing -+Link Asia/Shanghai Asia/Chungking - Link Asia/Dhaka Asia/Dacca -+Link Asia/Shanghai Asia/Harbin -+Link Asia/Urumqi Asia/Kashgar - Link Asia/Kathmandu Asia/Katmandu - Link Asia/Macau Asia/Macao - Link Asia/Ho_Chi_Minh Asia/Saigon ---- ./jdk/make/data/tzdata/etcetera Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/etcetera Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - -@@ -37,7 +36,7 @@ - Zone Etc/UCT 0 - UCT - - # The following link uses older naming conventions, --# but it belongs here, not in the file `backward', -+# but it belongs here, not in the file 'backward', - # as functions like gmtime load the "GMT" file to handle leap seconds properly. - # We want this to work even on installations that omit the other older names. - Link Etc/GMT GMT ---- ./jdk/make/data/tzdata/europe Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/europe Mon Dec 08 12:29:42 2014 -0800 -@@ -21,24 +21,30 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2006-03-22): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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 - # Association's Standard Schedules Information Manual (IATA SSIM), - # published semiannually. Law sent in several helpful summaries --# of the IATA's data after 1990. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. -+# -+# A reliable and entertaining source about time zones is -+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997). - # - # Except where otherwise noted, Shanks & Pottenger is the source for - # entries through 1991, and IATA SSIM is the source for entries afterwards. -@@ -49,9 +55,9 @@ - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), - # which I found in the UCLA library. - # --# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf"> - # William Willett, The Waste of Daylight, 19th edition --# </a> (1914-03) -+# <http://cs.ucla.edu/~eggert/The-Waste-of-Daylight-19th.pdf> -+# [PDF] (1914-03) - # - # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 - # <http://www.jstor.org/stable/1774359>. He writes: -@@ -59,10 +65,20 @@ - # may be sent to Mr. John Milne, Royal Geographical Society, - # Savile Row, London." Nowadays please email them to tz@iana.org. - # --# Brazil's Departamento Servico da Hora (DSH), --# <a href="http://pcdsh01.on.br/HISTHV.htm"> -+# Byalokoz EL. New Counting of Time in Russia since July 1, 1919. -+# This Russian-language source was consulted by Vladimir Karpinsky; see -+# http://mm.icann.org/pipermail/tz/2014-August/021320.html -+# The full Russian citation is: -+# Бялокоз, Евгений Людвигович. Новый счет времени в течении суток -+# введенный декретом Совета народных комиссаров для всей России с 1-го -+# июля 1919 г. / Изд. 2-е Междуведомственной комиссии. - Петроград: -+# Десятая гос. тип., 1919. -+# http://resolver.gpntb.ru/purl?docushare/dsweb/Get/Resource-2011/Byalokoz__E.L.__Novyy__schet__vremeni__v__techenie__sutok__izd__2(1).pdf -+# -+# Brazil's Divisão Serviço da Hora (DSHO), - # History of Summer Time --# </a> (1998-09-21, in Portuguese) -+# <http://pcdsh01.on.br/HISTHV.htm> -+# (1998-09-21, in Portuguese) - - # - # I invented the abbreviations marked '*' in the following table; -@@ -78,13 +94,12 @@ - # 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 --# --# A reliable and entertaining source about time zones, especially in Britain, --# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997). -+# 3:00 FET Further-eastern Europe (2011-2014)* -+# 3:00 MSK MSD MSM* Moscow - - # From Peter Ilieve (1994-12-04), - # The original six [EU members]: Belgium, France, (West) Germany, Italy, -@@ -128,7 +143,7 @@ - # along the towpath within a few yards of it.' - # - # I have a one inch to one mile map of London and my estimate of the stone's --# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should -+# position is 51 degrees 28' 30" N, 0 degrees 18' 45" W. The longitude should - # be within about +-2". The Ordnance Survey grid reference is TQ172761. - # - # [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.] -@@ -160,8 +175,22 @@ - # transition date for London, namely 1847-12-01. We don't know as much - # about Dublin, so we use 1880-08-02, the legal transition time. - --# From Paul Eggert (2003-09-27): --# Summer Time was first seriously proposed by William Willett (1857-1915), -+# From Paul Eggert (2014-07-19): -+# The ancients had no need for daylight saving, as they kept time -+# informally or via hours whose length depended on the time of year. -+# Daylight saving time in its modern sense was invented by the -+# New Zealand entomologist George Vernon Hudson (1867-1946), -+# whose day job as a postal clerk led him to value -+# after-hours daylight in which to pursue his research. -+# In 1895 he presented a paper to the Wellington Philosophical Society -+# that proposed a two-hour daylight-saving shift. See: -+# Hudson GV. On seasonal time-adjustment in countries south of lat. 30 deg. -+# Transactions and Proceedings of the New Zealand Institute. 1895;28:734 -+# http://rsnz.natlib.govt.nz/volume/rsnz_28/rsnz_28_00_006110.html -+# Although some interest was expressed in New Zealand, his proposal -+# did not find its way into law and eventually it was almost forgotten. -+# -+# In England, DST was independently reinvented by William Willett (1857-1915), - # a London builder and member of the Royal Astronomical Society - # who circulated a pamphlet "The Waste of Daylight" (1907) - # that proposed advancing clocks 20 minutes on each of four Sundays in April, -@@ -174,7 +203,7 @@ - # A monument to Willett was unveiled on 1927-05-21, in an open space in - # a 45-acre wood near Chislehurst, Kent that was purchased by popular - # subscription and open to the public. On the south face of the monolith, --# designed by G. W. Miller, is the...William Willett Memorial Sundial, -+# designed by G. W. Miller, is the William Willett Memorial Sundial, - # which is permanently set to Summer Time. - - # From Winston Churchill (1934-04-28): -@@ -183,9 +212,9 @@ - # between 160 and 170 hours more daylight leisure, to a war which - # plunged Europe into darkness for four years, and shook the - # foundations of civilization throughout the world. --# -- <a href="http://www.winstonchurchill.org/fh114willett.htm"> --# "A Silent Toast to William Willett", Pictorial Weekly --# </a> -+# -- "A Silent Toast to William Willett", Pictorial Weekly; -+# republished in Finest Hour (Spring 2002) 1(114):26 -+# http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf - - # From Paul Eggert (1996-09-03): - # The OED Supplement says that the English originally said "Daylight Saving" -@@ -194,7 +223,6 @@ - # proponents (who eventually won the argument) are quoted as using "Summer". - - # From Arthur David Olson (1989-01-19): --# - # A source at the British Information Office in New York avers that it's - # known as "British" Summer Time in all parts of the United Kingdom. - -@@ -221,8 +249,8 @@ - # official designation; the reply of the 21st was that there wasn't - # but he couldn't think of anything better than the "Double British - # Summer Time" that the BBC had been using informally. --# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png --# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png -+# http://www.polyomino.org.uk/british-time/bbc-19410418.png -+# http://www.polyomino.org.uk/british-time/ho-19410421.png - - # From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21): - # [N]o official designation has as far as I know been adopted for the time -@@ -239,23 +267,14 @@ - # the history of summer time legislation in the United Kingdom. - # Since 1998 Joseph S. Myers has been updating - # and extending this list, which can be found in --# http://student.cusu.cam.ac.uk/~jsm28/british-time/ --# <a href="http://www.polyomino.org.uk/british-time/"> --# History of legal time in Britain --# </a> --# Rob Crowther (2012-01-04) reports that that URL no longer --# exists, and the article can now be found at: --# <a href="http://www.polyomino.org.uk/british-time/"> - # http://www.polyomino.org.uk/british-time/ --# </a> - - # From Joseph S. Myers (1998-01-06): - # - # The legal time in the UK outside of summer time is definitely GMT, not UTC; - # see Lord Tanlaw's speech --# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0"> --# (Lords Hansard 11 June 1997 columns 964 to 976) --# </a>. -+# http://www.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0 -+# (Lords Hansard 11 June 1997 columns 964 to 976). - - # From Paul Eggert (2006-03-22): - # -@@ -294,9 +313,17 @@ - # "Timeball on the ballast office is down. Dunsink time." - # -- James Joyce, Ulysses - -+# "Countess Markievicz ... claimed that the [1916] abolition of Dublin Mean Time -+# was among various actions undertaken by the 'English' government that -+# would 'put the whole country into the SF (Sinn Féin) camp'. She claimed -+# Irish 'public feeling (was) outraged by forcing of English time on us'." -+# -- Parsons M. Dublin lost its time zone - and 25 minutes - after 1916 Rising. -+# Irish Times 2014-10-27. -+# http://www.irishtimes.com/news/politics/dublin-lost-its-time-zone-and-25-minutes-after-1916-rising-1.1977411 -+ - # From Joseph S. Myers (2005-01-26): --# Irish laws are available online at www.irishstatutebook.ie. These include --# various relating to legal time, for example: -+# Irish laws are available online at <http://www.irishstatutebook.ie>. -+# These include various relating to legal time, for example: - # - # ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html - # -@@ -458,25 +485,27 @@ - # Use Europe/London for Jersey, Guernsey, and the Isle of Man. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s -+Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s - 0:00 GB-Eire %s 1968 Oct 27 -- 1:00 - BST 1971 Oct 31 2:00u -+ 1:00 - BST 1971 Oct 31 2:00u - 0:00 GB-Eire %s 1996 - 0:00 EU GMT/BST - Link Europe/London Europe/Jersey - Link Europe/London Europe/Guernsey - 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 1:00 IST 1916 Oct 1 2:00s -+ -0:25:21 - DMT 1916 May 21 2:00 -+ -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 -- 0:00 1:00 IST 1946 Oct 6 2:00 -- 0:00 - GMT 1947 Mar 16 2:00 -- 0:00 1:00 IST 1947 Nov 2 2:00 -- 0:00 - GMT 1948 Apr 18 2:00 -+ 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00 -+ 0:00 1:00 IST 1946 Oct 6 2:00 -+ 0:00 - GMT 1947 Mar 16 2:00 -+ 0:00 1:00 IST 1947 Nov 2 2:00 -+ 0:00 - GMT 1948 Apr 18 2:00 - 0:00 GB-Eire GMT/IST 1968 Oct 27 -- 1:00 - IST 1971 Oct 31 2:00u -+ 1:00 - IST 1971 Oct 31 2:00u - 0:00 GB-Eire GMT/IST 1996 - 0:00 EU GMT/IST - -@@ -495,10 +524,9 @@ - Rule EU 1981 max - Mar lastSun 1:00u 1:00 S - Rule EU 1996 max - Oct lastSun 1:00u 0 - - # The most recent directive covers the years starting in 2002. See: --# <a="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT"> - # Directive 2000/84/EC of the European Parliament and of the Council - # of 19 January 2001 on summer-time arrangements. --# </a> -+# http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT - - # W-Eur differs from EU only in that W-Eur uses standard time. - Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S -@@ -521,18 +549,18 @@ - Rule C-Eur 1944 1945 - Apr Mon>=1 2:00s 1:00 S - # Whitman gives 1944 Oct 7; go with Shanks & Pottenger. - Rule C-Eur 1944 only - Oct 2 2:00s 0 - --# From Jesper Norgaard Welen (2008-07-13): -+# From Jesper Nørgaard Welen (2008-07-13): - # - # I found what is probably a typo of 2:00 which should perhaps be 2:00s - # in the C-Eur rule from tz database version 2008d (this part was --# corrected in version 2008d). The circumstancial evidence is simply the -+# corrected in version 2008d). The circumstantial evidence is simply the - # tz database itself, as seen below: - # - # Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01 - # 0:00 France WE%sT 1945 Sep 16 3:00 - # - # Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15 --# 0:00 France WE%sT 1945 Sep 16 3:00 -+# 0:00 France WE%sT 1945 Sep 16 3:00 - # - # Zone Europe/Belgrade 1:22:00 - LMT 1884 - # 1:00 1:00 CEST 1945 Sep 16 2:00s -@@ -576,16 +604,16 @@ - Rule E-Eur 1996 max - Oct lastSun 0:00 0 - - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time --Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time --Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time -+Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time -+Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time -+Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time - Rule Russia 1918 only - Sep 16 1:00 1:00 MST - Rule Russia 1919 only - May 31 23:00 2:00 MDST --Rule Russia 1919 only - Jul 1 2:00 1:00 S --Rule Russia 1919 only - Aug 16 0:00 0 - --Rule Russia 1921 only - Feb 14 23:00 1:00 S --Rule Russia 1921 only - Mar 20 23:00 2:00 M # Midsummer --Rule Russia 1921 only - Sep 1 0:00 1:00 S -+Rule Russia 1919 only - Jul 1 2:00 1:00 MSD -+Rule Russia 1919 only - Aug 16 0:00 0 MSK -+Rule Russia 1921 only - Feb 14 23:00 1:00 MSD -+Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer -+Rule Russia 1921 only - Sep 1 0:00 1:00 MSD - Rule Russia 1921 only - Oct 1 0:00 0 - - # Act No.925 of the Council of Ministers of the USSR (1980-10-24): - Rule Russia 1981 1984 - Apr 1 0:00 1:00 S -@@ -600,6 +628,7 @@ - Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S - Rule Russia 1993 1995 - Sep lastSun 2:00s 0 - - Rule Russia 1996 2010 - Oct lastSun 2:00s 0 - -+# As described below, Russia's 2014 change affects Zone data, not Rule data. - - # From Alexander Krivenyshev (2011-06-14): - # According to Kremlin press service, Russian President Dmitry Medvedev -@@ -607,14 +636,10 @@ - # According to the law Russia is abolishing daylight saving time. - # - # Medvedev signed a law "On the Calculation of Time" (in russian): --# <a href="http://bmockbe.ru/events/?ID=7583"> - # http://bmockbe.ru/events/?ID=7583 --# </a> - # - # Medvedev signed a law on the calculation of the time (in russian): --# <a href="http://www.regnum.ru/news/polit/1413906.html"> - # http://www.regnum.ru/news/polit/1413906.html --# </a> - - # From Arthur David Olson (2011-06-15): - # Take "abolishing daylight saving time" to mean that time is now considered -@@ -634,10 +659,10 @@ - # From Markus Kuhn (1996-07-12): - # The official German names ... are - # --# Mitteleuropaeische Zeit (MEZ) = UTC+01:00 --# Mitteleuropaeische Sommerzeit (MESZ) = UTC+02:00 -+# Mitteleuropäische Zeit (MEZ) = UTC+01:00 -+# Mitteleuropäische Sommerzeit (MESZ) = UTC+02:00 - # --# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG), -+# as defined in the German Time Act (Gesetz über die Zeitbestimmung (ZeitG), - # 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111).... - # I wrote ... to the German Federal Physical-Technical Institution - # -@@ -692,7 +717,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Andorra 0:06:04 - LMT 1901 - 0:00 - WET 1946 Sep 30 -- 1:00 - CET 1985 Mar 31 2:00 -+ 1:00 - CET 1985 Mar 31 2:00 - 1:00 EU CE%sT - - # Austria -@@ -718,9 +743,9 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Vienna 1:05:21 - LMT 1893 Apr - 1:00 C-Eur CE%sT 1920 -- 1:00 Austria CE%sT 1940 Apr 1 2:00s -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s -- 1:00 1:00 CEST 1945 Apr 12 2:00s -+ 1:00 Austria CE%sT 1940 Apr 1 2:00s -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s -+ 1:00 1:00 CEST 1945 Apr 12 2:00s - 1:00 - CET 1946 - 1:00 Austria CE%sT 1981 - 1:00 EU CE%sT -@@ -731,38 +756,37 @@ - # GMT+3 without DST (was GMT+2 with DST). - # - # Sources (Russian language): --# 1. --# <a href="http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html"> - # http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html --# </a> --# 2. --# <a href="http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/"> - # http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/ --# </a> --# 3. --# <a href="http://news.tut.by/society/250578.html"> - # http://news.tut.by/society/250578.html --# </a> -+# -+# From Alexander Bokovoy (2014-10-09): -+# Belarussian government decided against changing to winter time.... -+# http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html -+# From Paul Eggert (2014-10-08): -+# Hence Belarus can share time zone abbreviations with Moscow again. -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Minsk 1:50:16 - LMT 1880 -- 1:50 - MMT 1924 May 2 # Minsk Mean Time -+ 1:50 - MMT 1924 May 2 # Minsk Mean Time - 2:00 - EET 1930 Jun 21 - 3:00 - MSK 1941 Jun 28 - 1:00 C-Eur CE%sT 1944 Jul 3 - 3:00 Russia MSK/MSD 1990 -- 3:00 - MSK 1991 Mar 31 2:00s -- 2:00 1:00 EEST 1991 Sep 29 2:00s -- 2:00 - EET 1992 Mar 29 0:00s -- 2:00 1:00 EEST 1992 Sep 27 0:00s -- 2:00 Russia EE%sT 2011 Mar 27 2:00s -- 3:00 - FET # Further-eastern European Time -+ 3:00 - MSK 1991 Mar 31 2:00s -+ 2:00 1:00 EEST 1991 Sep 29 2:00s -+ 2:00 - EET 1992 Mar 29 0:00s -+ 2:00 1:00 EEST 1992 Sep 27 0:00s -+ 2:00 Russia EE%sT 2011 Mar 27 2:00s -+ 3:00 - FET 2014 Oct 26 1:00s -+ 3:00 - MSK - - # Belgium - # - # From Paul Eggert (1997-07-02): - # Entries from 1918 through 1991 are taken from: - # Annuaire de L'Observatoire Royal de Belgique, --# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991 -+# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe année, 1991 - # (Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC), - # pp 8-9. - # LMT before 1892 was 0:17:30, according to the official journal of Belgium: -@@ -812,7 +836,7 @@ - Rule Belgium 1946 only - Oct 7 2:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Brussels 0:17:30 - LMT 1880 -- 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT -+ 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT - 0:00 - WET 1914 Nov 8 - 1:00 - CET 1916 May 1 0:00 - 1:00 C-Eur CE%sT 1918 Nov 11 11:00u -@@ -828,8 +852,8 @@ - # - # From Plamen Simenov via Steffen Thorsen (1999-09-09): - # A document of Government of Bulgaria (No.94/1997) says: --# EET --> EETDST is in 03:00 Local time in last Sunday of March ... --# EETDST --> EET is in 04:00 Local time in last Sunday of October -+# EET -> EETDST is in 03:00 Local time in last Sunday of March ... -+# EETDST -> EET is in 04:00 Local time in last Sunday of October - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Bulg 1979 only - Mar 31 23:00 1:00 S -@@ -842,7 +866,7 @@ - 1:56:56 - IMT 1894 Nov 30 # Istanbul MT? - 2:00 - EET 1942 Nov 2 3:00 - 1:00 C-Eur CE%sT 1945 -- 1:00 - CET 1945 Apr 2 3:00 -+ 1:00 - CET 1945 Apr 2 3:00 - 2:00 - EET 1979 Mar 31 23:00 - 2:00 Bulg EE%sT 1982 Sep 26 2:00 - 2:00 C-Eur EE%sT 1991 -@@ -866,15 +890,15 @@ - Rule Czech 1949 only - Apr 9 2:00s 1:00 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Prague 0:57:44 - LMT 1850 -- 0:57:44 - PMT 1891 Oct # Prague Mean Time -- 1:00 C-Eur CE%sT 1944 Sep 17 2:00s -+ 0:57:44 - PMT 1891 Oct # Prague Mean Time -+ 1:00 C-Eur CE%sT 1944 Sep 17 2:00s - 1:00 Czech CE%sT 1979 - 1:00 EU CE%sT - # Use Europe/Prague also for Slovakia. - - # Denmark, Faroe Islands, and Greenland - --# From Jesper Norgaard Welen (2005-04-26): -+# From Jesper Nørgaard Welen (2005-04-26): - # http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law - # [introducing standard time] was in effect from 1894-01-01.... - # The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL -@@ -884,7 +908,7 @@ - # http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL - # - # This provoked a new law from 1974 to make possible summer time changes --# in subsequenet decrees with the law -+# in subsequent decrees with the law - # http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL - # - # It seems however that no decree was set forward until 1980. I have -@@ -899,7 +923,7 @@ - # was suspended on that night): - # http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL - --# From Jesper Norgaard Welen (2005-06-11): -+# From Jesper Nørgaard Welen (2005-06-11): - # The Herning Folkeblad (1980-09-26) reported that the night between - # Saturday and Sunday the clock is set back from three to two. - -@@ -923,11 +947,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Copenhagen 0:50:20 - LMT 1890 - 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT -- 1:00 Denmark CE%sT 1942 Nov 2 2:00s -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00 -+ 1:00 Denmark CE%sT 1942 Nov 2 2:00s -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00 - 1:00 Denmark CE%sT 1980 - 1:00 EU CE%sT --Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Torshavn -+Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Tórshavn - 0:00 - WET 1981 - 0:00 EU WE%sT - # -@@ -939,11 +963,11 @@ - # From Paul Eggert (2006-03-22): - # Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01, - # and left the EU on 1985-02-01. It therefore should have been using EU --# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthab -+# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthåb - # used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU - # rules since at least 1991. Assume EU rules since 1980. - --# From Gwillin Law (2001-06-06), citing -+# From Gwillim Law (2001-06-06), citing - # <http://www.statkart.no/efs/efshefter/2001/efs5-2001.pdf> (2001-03-15), - # and with translations corrected by Steffen Thorsen: - # -@@ -978,16 +1002,16 @@ - # DPC research station at Zackenberg. - # - # Scoresbysund and two small villages nearby keep time UTC-1 and use --# the same daylight savings time period as in West Greenland (Godthab). -+# the same daylight savings time period as in West Greenland (Godthåb). - # --# The rest of Greenland, including Godthab (this area, although it -+# The rest of Greenland, including Godthåb (this area, although it - # includes central Greenland, is known as west Greenland), keeps time - # UTC-3, with daylight savings methods according to European rules. - # - # It is common procedure to use UTC 0 in the wilderness of East and - # North Greenland, because it is mainly Icelandic aircraft operators - # maintaining traffic in these areas. However, the official status of --# this area is that it sticks with Godthab time. This area might be -+# this area is that it sticks with Godthåb time. This area might be - # considered a dual time zone in some respects because of this. - - # From Rives McDow (2001-11-19): -@@ -996,8 +1020,8 @@ - - # From Paul Eggert (2006-03-22): - # From 1997 on the CIA map shows Danmarkshavn on GMT; --# the 1995 map as like Godthab. --# For lack of better info, assume they were like Godthab before 1996. -+# the 1995 map as like Godthåb. -+# For lack of better info, assume they were like Godthåb before 1996. - # startkart.no says Thule does not observe DST, but this is clearly an error, - # so go with Shanks & Pottenger for Thule transitions until this year. - # For 2007 on assume Thule will stay in sync with US DST rules. -@@ -1012,15 +1036,15 @@ - # - # 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 - WGT 1980 Apr 6 2:00 - -3:00 EU WG%sT 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 - CGT 1980 Apr 6 2:00 - -2:00 C-Eur CG%sT 1981 Mar 29 - -1:00 EU EG%sT - Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk -- -3:00 - WGT 1980 Apr 6 2:00 -+ -3:00 - WGT 1980 Apr 6 2:00 - -3:00 EU WG%sT - Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base - -4:00 Thule A%sT -@@ -1042,17 +1066,16 @@ - # summer time next spring." - - # From Peter Ilieve (1998-11-04), heavily edited: --# <a href="http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390"> - # The 1998-09-22 Estonian time law --# </a> -+# http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390 - # refers to the Eighth Directive and cites the association agreement between --# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120). -+# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22-27, 120). - # - # I also asked [my relative] whether they use any standard abbreviation - # for their standard and summer times. He says no, they use "suveaeg" - # (summer time) and "talveaeg" (winter time). - --# From <a href="http://www.baltictimes.com/">The Baltic Times</a> (1999-09-09) -+# From The Baltic Times <http://www.baltictimes.com/> (1999-09-09) - # via Steffen Thorsen: - # This year will mark the last time Estonia shifts to summer time, - # a council of the ruling coalition announced Sept. 6.... -@@ -1070,19 +1093,19 @@ - # The Estonian government has changed once again timezone politics. - # Now we are using again EU rules. - # --# From Urmet Jaanes (2002-03-28): -+# From Urmet Jänes (2002-03-28): - # The legislative reference is Government decree No. 84 on 2002-02-21. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Tallinn 1:39:00 - LMT 1880 -- 1:39:00 - TMT 1918 Feb # Tallinn Mean Time -+ 1:39:00 - TMT 1918 Feb # Tallinn Mean Time - 1:00 C-Eur CE%sT 1919 Jul - 1:39:00 - TMT 1921 May - 2:00 - EET 1940 Aug 6 - 3:00 - MSK 1941 Sep 15 - 1:00 C-Eur CE%sT 1944 Sep 22 -- 3:00 Russia MSK/MSD 1989 Mar 26 2:00s -- 2:00 1:00 EEST 1989 Sep 24 2:00s -+ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s -+ 2:00 1:00 EEST 1989 Sep 24 2:00s - 2:00 C-Eur EE%sT 1998 Sep 22 - 2:00 EU EE%sT 1999 Nov 1 - 2:00 - EET 2002 Feb 21 -@@ -1104,35 +1127,45 @@ - # This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac - # Office of University of Helsinki, ISBN 952-10-3221-9, available online (in - # Finnish) at --# --# <a href="http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf"> - # http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf --# </a> - # - # Page 105 (56 in PDF version) has a handy table of all past daylight savings - # transitions. It is easy enough to interpret without Finnish skills. - # - # This is also confirmed by Finnish Broadcasting Company's archive at: --# --# <a href="http://www.yle.fi/elavaarkisto/?s=s&g=1&ag=5&t=&a=3401"> - # http://www.yle.fi/elavaarkisto/?s=s&g=1&ag=5&t=&a=3401 --# </a> - # - # The news clip from 1981 says that "the time between 2 and 3 o'clock does not - # exist tonight." - -+# From Konstantin Hyppönen (2014-06-13): -+# [Heikki Oja's book Aikakirja 2013] -+# http://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf -+# pages 104-105, including a scan from a newspaper published on Apr 2 1942 -+# say that ... [o]n Apr 2 1942, 24 o'clock (which means Apr 3 1942, -+# 00:00), clocks were moved one hour forward. The newspaper -+# mentions "on the night from Thursday to Friday".... -+# On Oct 4 1942, clocks were moved at 1:00 one hour backwards. -+# -+# From Paul Eggert (2014-06-14): -+# Go with Oja over Shanks. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Finland 1942 only - Apr 3 0:00 1:00 S --Rule Finland 1942 only - Oct 3 0:00 0 - -+Rule Finland 1942 only - Apr 2 24:00 1:00 S -+Rule Finland 1942 only - Oct 4 1:00 0 - - Rule Finland 1981 1982 - Mar lastSun 2:00 1:00 S - Rule Finland 1981 1982 - Sep lastSun 3:00 0 - -+ -+# Milne says Helsinki (Helsingfors) time was 1:39:49.2 (official document); -+# round to nearest. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31 -- 1:39:52 - HMT 1921 May # Helsinki Mean Time -+Zone Europe/Helsinki 1:39:49 - LMT 1878 May 31 -+ 1:39:49 - HMT 1921 May # Helsinki Mean Time - 2:00 Finland EE%sT 1983 - 2:00 EU EE%sT - --# Aaland Is -+# Åland Is - Link Europe/Helsinki Europe/Mariehamn - - -@@ -1140,14 +1173,14 @@ - - # From Ciro Discepolo (2000-12-20): - # --# Henri Le Corre, Regimes Horaires pour le monde entier, Editions -+# Henri Le Corre, Régimes horaires pour le monde entier, Éditions - # Traditionnelles - Paris 2 books, 1993 - # --# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur, -+# Gabriel, Traité de l'heure dans le monde, Guy Trédaniel, - # Paris, 1991 - # --# Francoise Gauquelin, Problemes de l'heure resolus en astrologie, --# Guy tredaniel, Paris 1987 -+# Françoise Gauquelin, Problèmes de l'heure résolus en astrologie, -+# Guy Trédaniel, Paris 1987 - - - # -@@ -1188,16 +1221,16 @@ - Rule France 1940 only - Feb 25 2:00 1:00 S - # The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger - # write that they were used in Monaco and in many French locations. --# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez, --# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La --# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Descartes, -+# Le Corre writes that the upper limit of the free zone was Arnéguy, Orthez, -+# Mont-de-Marsan, Bazas, Langon, Lamothe-Montravel, Marœuil, La -+# Rochefoucauld, Champagne-Mouton, La Roche-Posay, La Haye-Descartes, - # Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin, --# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois, -+# Paray-le-Monial, Montceau-les-Mines, Chalon-sur-Saône, Arbois, - # Dole, Morez, St-Claude, and Collonges (Haute-Savoie). - Rule France 1941 only - May 5 0:00 2:00 M # Midsummer - # Shanks & Pottenger say this transition occurred at Oct 6 1:00, - # but go with Denis Excoffier (1997-12-12), --# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes -+# who quotes the Ephémérides astronomiques for 1998 from Bureau des Longitudes - # as saying 5/10/41 22hUT. - Rule France 1941 only - Oct 6 0:00 1:00 S - Rule France 1942 only - Mar 9 0:00 2:00 M -@@ -1218,7 +1251,7 @@ - # on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01 -- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT -+ 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT - # Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre. - 0:00 France WE%sT 1940 Jun 14 23:00 - # Le Corre says Paris stuck with occupied-France time after the liberation; -@@ -1235,15 +1268,13 @@ - # Bundesanstalt contains DST information back to 1916. - # [See tz-link.htm for the URL.] - --# From Joerg Schilling (2002-10-23): -+# From Jörg Schilling (2002-10-23): - # In 1945, Berlin was switched to Moscow Summer time (GMT+4) by --# <a href="http://www.dhm.de/lemo/html/biografien/BersarinNikolai/"> --# General [Nikolai] Bersarin</a>. -+# http://www.dhm.de/lemo/html/biografien/BersarinNikolai/ -+# General [Nikolai] Bersarin. - - # From Paul Eggert (2003-03-08): --# <a href="http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf"> - # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf --# </a> - # says that Bersarin issued an order to use Moscow time on May 20. - # However, Moscow did not observe daylight saving in 1945, so - # this was equivalent to CEMT (GMT+3), not GMT+4. -@@ -1268,23 +1299,23 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Berlin 0:53:28 - LMT 1893 Apr -- 1:00 C-Eur CE%sT 1945 May 24 2:00 -+ 1:00 C-Eur CE%sT 1945 May 24 2:00 - 1:00 SovietZone CE%sT 1946 - 1:00 Germany CE%sT 1980 - 1:00 EU CE%sT - - # From Tobias Conradi (2011-09-12): --# Busingen <http://www.buesingen.de>, surrounded by the Swiss canton -+# Büsingen <http://www.buesingen.de>, surrounded by the Swiss canton - # Schaffhausen, did not start observing DST in 1980 as the rest of DE - # (West Germany at that time) and DD (East Germany at that time) did. - # DD merged into DE, the area is currently covered by code DE in ISO 3166-1, - # which in turn is covered by the zone Europe/Berlin. - # --# Source for the time in Busingen 1980: -+# Source for the time in Büsingen 1980: - # http://www.srf.ch/player/video?id=c012c029-03b7-4c2b-9164-aa5902cd58d3 - - # From Arthur David Olson (2012-03-03): --# Busingen and Zurich have shared clocks since 1970. -+# Büsingen and Zurich have shared clocks since 1970. - - Link Europe/Zurich Europe/Busingen - -@@ -1295,8 +1326,8 @@ - - # Gibraltar - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s -- 0:00 GB-Eire %s 1957 Apr 14 2:00 -+Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s -+ 0:00 GB-Eire %s 1957 Apr 14 2:00 - 1:00 - CET 1982 - 1:00 EU CE%sT - -@@ -1327,7 +1358,7 @@ - Rule Greece 1980 only - Sep 28 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14 -- 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT -+ 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT - 2:00 Greece EE%sT 1941 Apr 30 - 1:00 Greece CE%sT 1944 Apr 4 - 2:00 Greece EE%sT 1981 -@@ -1336,15 +1367,20 @@ - 2:00 EU EE%sT - - # Hungary -+# From Paul Eggert (2014-07-15): -+# Dates for 1916-1945 are taken from: -+# Oross A. Jelen a múlt jövője: a nyári időszámítás Magyarországon 1916-1945. -+# National Archives of Hungary (2012-10-29). -+# http://mnl.gov.hu/a_het_dokumentuma/a_nyari_idoszamitas_magyarorszagon_19161945.html -+# This source does not always give times, which are taken from Shanks -+# & Pottenger (which disagree about the dates). - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Hungary 1918 only - Apr 1 3:00 1:00 S --Rule Hungary 1918 only - Sep 29 3:00 0 - -+Rule Hungary 1918 only - Sep 16 3:00 0 - - Rule Hungary 1919 only - Apr 15 3:00 1:00 S --Rule Hungary 1919 only - Sep 15 3:00 0 - --Rule Hungary 1920 only - Apr 5 3:00 1:00 S --Rule Hungary 1920 only - Sep 30 3:00 0 - -+Rule Hungary 1919 only - Nov 24 3:00 0 - - Rule Hungary 1945 only - May 1 23:00 1:00 S --Rule Hungary 1945 only - Nov 3 0:00 0 - -+Rule Hungary 1945 only - Nov 1 0:00 0 - - Rule Hungary 1946 only - Mar 31 2:00s 1:00 S - Rule Hungary 1946 1949 - Oct Sun>=1 2:00s 0 - - Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S -@@ -1360,7 +1396,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Budapest 1:16:20 - LMT 1890 Oct - 1:00 C-Eur CE%sT 1918 -- 1:00 Hungary CE%sT 1941 Apr 6 2:00 -+ 1:00 Hungary CE%sT 1941 Apr 8 - 1:00 C-Eur CE%sT 1945 - 1:00 Hungary CE%sT 1980 Sep 28 2:00s - 1:00 EU CE%sT -@@ -1423,7 +1459,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Atlantic/Reykjavik -1:27:24 - LMT 1837 - -1:27:48 - RMT 1908 # Reykjavik Mean Time? -- -1:00 Iceland IS%sT 1968 Apr 7 1:00s -+ -1:00 Iceland IS%sT 1968 Apr 7 1:00s - 0:00 - GMT - - # Italy -@@ -1438,9 +1474,8 @@ - # From Paul Eggert (2006-03-22): - # For Italian DST we have three sources: Shanks & Pottenger, Whitman, and - # F. Pollastri --# <a href="http://toi.iriti.cnr.it/uk/ienitlt.html"> - # Day-light Saving Time in Italy (2006-02-03) --# </a> -+# http://toi.iriti.cnr.it/uk/ienitlt.html - # ('FP' below), taken from an Italian National Electrotechnical Institute - # publication. When the three sources disagree, guess who's right, as follows: - # -@@ -1500,8 +1535,8 @@ - Rule Italy 1979 only - Sep 30 0:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22 -- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean -- 1:00 Italy CE%sT 1942 Nov 2 2:00s -+ 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean -+ 1:00 Italy CE%sT 1942 Nov 2 2:00s - 1:00 C-Eur CE%sT 1944 Jul - 1:00 Italy CE%sT 1980 - 1:00 EU CE%sT -@@ -1548,18 +1583,18 @@ - - # From Andrei Ivanov (2000-03-06): - # This year Latvia will not switch to Daylight Savings Time (as specified in --# <a href="http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm"> - # The Regulations of the Cabinet of Ministers of the Rep. of Latvia of --# 29-Feb-2000 (#79)</a>, in Latvian for subscribers only). -+# 29-Feb-2000 (#79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>, -+# in Latvian for subscribers only). - --# <a href="http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html"> --# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow: --# </a> -+# From RFE/RL Newsline -+# http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html -+# (2001-01-03), noted after a heads-up by Rives McDow: - # The Latvian government on 2 January decided that the country will - # institute daylight-saving time this spring, LETA reported. - # Last February the three Baltic states decided not to turn back their - # clocks one hour in the spring.... --# Minister of Economy Aigars Kalvitis noted that Latvia had too few -+# Minister of Economy Aigars Kalvītis noted that Latvia had too few - # daylight hours and thus decided to comply with a draft European - # Commission directive that provides for instituting daylight-saving - # time in EU countries between 2002 and 2006. The Latvian government -@@ -1569,18 +1604,23 @@ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S - Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 - -+ -+# Milne 1899 says Riga was 1:36:28 (Polytechnique House time). -+# Byalokoz 1919 says Latvia was 1:36:34. -+# Go with Byalokoz. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Riga 1:36:24 - LMT 1880 -- 1:36:24 - RMT 1918 Apr 15 2:00 #Riga Mean Time -- 1:36:24 1:00 LST 1918 Sep 16 3:00 #Latvian Summer -- 1:36:24 - RMT 1919 Apr 1 2:00 -- 1:36:24 1:00 LST 1919 May 22 3:00 -- 1:36:24 - RMT 1926 May 11 -+Zone Europe/Riga 1:36:34 - LMT 1880 -+ 1:36:34 - RMT 1918 Apr 15 2:00 # Riga MT -+ 1:36:34 1:00 LST 1918 Sep 16 3:00 # Latvian ST -+ 1:36:34 - RMT 1919 Apr 1 2:00 -+ 1:36:34 1:00 LST 1919 May 22 3:00 -+ 1:36:34 - RMT 1926 May 11 - 2:00 - EET 1940 Aug 5 - 3:00 - MSK 1941 Jul - 1:00 C-Eur CE%sT 1944 Oct 13 -- 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s -- 2:00 1:00 EEST 1989 Sep lastSun 2:00s -+ 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s -+ 2:00 1:00 EEST 1989 Sep lastSun 2:00s - 2:00 Latvia EE%sT 1997 Jan 21 - 2:00 EU EE%sT 2000 Feb 29 - 2:00 - EET 2001 Jan 2 -@@ -1614,7 +1654,7 @@ - # I would like to inform that in this year Lithuanian time zone - # (Europe/Vilnius) was changed. - --# From <a href="http://www.elta.lt/">ELTA</a> No. 972 (2582) (1999-09-29), -+# From ELTA No. 972 (2582) (1999-09-29) <http://www.elta.lt/>, - # via Steffen Thorsen: - # Lithuania has shifted back to the second time zone (GMT plus two hours) - # to be valid here starting from October 31, -@@ -1623,9 +1663,9 @@ - # motion to give up shifting to summer time in spring, as it was - # already done by Estonia. - --# From the <a href="http://www.tourism.lt/informa/ff.htm"> --# Fact File, Lithuanian State Department of Tourism --# </a> (2000-03-27): Local time is GMT+2 hours ..., no daylight saving. -+# From the Fact File, Lithuanian State Department of Tourism -+# <http://www.tourism.lt/informa/ff.htm> (2000-03-27): -+# Local time is GMT+2 hours ..., no daylight saving. - - # From a user via Klaus Marten (2003-02-07): - # As a candidate for membership of the European Union, Lithuania will -@@ -1638,18 +1678,18 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Vilnius 1:41:16 - LMT 1880 -- 1:24:00 - WMT 1917 # Warsaw Mean Time -+ 1:24:00 - WMT 1917 # Warsaw Mean Time - 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time - 1:00 - CET 1920 Jul 12 - 2:00 - EET 1920 Oct 9 - 1:00 - CET 1940 Aug 3 - 3:00 - MSK 1941 Jun 24 - 1:00 C-Eur CE%sT 1944 Aug -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -- 2:00 1:00 EEST 1991 Sep 29 2:00s -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 1:00 EEST 1991 Sep 29 2:00s - 2:00 C-Eur EE%sT 1998 -- 2:00 - EET 1998 Mar 29 1:00u -- 1:00 EU CE%sT 1999 Oct 31 1:00u -+ 2:00 - EET 1998 Mar 29 1:00u -+ 1:00 EU CE%sT 1999 Oct 31 1:00u - 2:00 - EET 2003 Jan 1 - 2:00 EU EE%sT - -@@ -1683,9 +1723,9 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun - 1:00 Lux CE%sT 1918 Nov 25 -- 0:00 Lux WE%sT 1929 Oct 6 2:00s -- 0:00 Belgium WE%sT 1940 May 14 3:00 -- 1:00 C-Eur WE%sT 1944 Sep 18 3:00 -+ 0:00 Lux WE%sT 1929 Oct 6 2:00s -+ 0:00 Belgium WE%sT 1940 May 14 3:00 -+ 1:00 C-Eur WE%sT 1944 Sep 18 3:00 - 1:00 Belgium CE%sT 1977 - 1:00 EU CE%sT - -@@ -1702,9 +1742,9 @@ - Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 - - Rule Malta 1980 only - Mar 31 2:00 1:00 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta -- 1:00 Italy CE%sT 1942 Nov 2 2:00s -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s -+Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta -+ 1:00 Italy CE%sT 1942 Nov 2 2:00s -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s - 1:00 Italy CE%sT 1973 Mar 31 - 1:00 Malta CE%sT 1981 - 1:00 EU CE%sT -@@ -1719,7 +1759,7 @@ - # In early 1992 there was large-scale interethnic violence in the area - # and it's possible that some Russophones continued to observe Moscow time. - # But [two people] separately reported via --# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau. -+# Jesper Nørgaard that as of 2001-01-24 Tiraspol was like Chisinau. - # The Tiraspol entry has therefore been removed for now. - # - # From Alexander Krivenyshev (2011-10-17): -@@ -1728,13 +1768,8 @@ - # to the Winter Time). - # - # News (in Russian): --# <a href="http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html"> - # http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html --# </a> --# --# <a href="http://www.allmoldova.com/moldova-news/1249064116.html"> - # http://www.allmoldova.com/moldova-news/1249064116.html --# </a> - # - # The substance of this change (reinstatement of the Tiraspol entry) - # is from a patch from Petr Machata (2011-10-17) -@@ -1752,9 +1787,7 @@ - # Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)- - # Tiraspol will go back to winter time on October 30, 2011. - # News from Moldova (in russian): --# <a href="http://ru.publika.md/link_317061.html"> - # http://ru.publika.md/link_317061.html --# </a> - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] -@@ -1777,8 +1810,8 @@ - # more precise 0:09:21. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15 -- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -- 0:00 France WE%sT 1945 Sep 16 3:00 -+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -+ 0:00 France WE%sT 1945 Sep 16 3:00 - 1:00 France CE%sT 1977 - 1:00 EU CE%sT - -@@ -1822,8 +1855,8 @@ - # was not until 1866 when they were all required by law to observe - # Amsterdam mean time. - --# The data before 1945 are taken from --# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>. -+# The data entries before 1945 are taken from -+# http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time -@@ -1854,8 +1887,8 @@ - # 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 -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00 -+ 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00 - 1:00 Neth CE%sT 1977 - 1:00 EU CE%sT - -@@ -1885,14 +1918,14 @@ - # time they were declared as parts of Norway. Svalbard was declared - # as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan - # Mayen by law of 1930-02-27 no 2, section 2. (From --# http://www.lovdata.no/all/nl-19250717-011.html and --# http://www.lovdata.no/all/nl-19300227-002.html). The law/regulation -+# <http://www.lovdata.no/all/nl-19250717-011.html> and -+# <http://www.lovdata.no/all/nl-19300227-002.html>). The law/regulation - # for normal/standard time in Norway is from 1894-06-29 no 1 (came - # into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a - # part of this law since 1925/1930. (From --# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been -+# <http://www.lovdata.no/all/nl-18940629-001.html>) I have not been - # able to find if Jan Mayen used a different time zone (e.g. -0100) --# before 1930. Jan Mayen has only been "inhabitated" since 1921 by -+# before 1930. Jan Mayen has only been "inhabited" since 1921 by - # Norwegian meteorologists and maybe used the same time as Norway ever - # since 1921. Svalbard (Arctic/Longyearbyen) has been inhabited since - # before 1895, and therefore probably changed the local time somewhere -@@ -1907,7 +1940,7 @@ - # <http://home.no.net/janmayen/history.htm> says that the meteorologists - # burned down their station in 1940 and left the island, but returned in - # 1941 with a small Norwegian garrison and continued operations despite --# frequent air ttacks from Germans. In 1943 the Americans established a -+# frequent air attacks from Germans. In 1943 the Americans established a - # radiolocating station on the island, called "Atlantic City". Possibly - # the UT offset changed during the war, but I think it unlikely that - # Jan Mayen used German daylight-saving rules. -@@ -1918,7 +1951,7 @@ - # <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were - # expelled on 1942-05-14. However, small parties of Germans did return, - # and according to Wilhelm Dege's book "War North of 80" (1954) --# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html> -+# http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html - # the German armed forces at the Svalbard weather station code-named - # Haudegen did not surrender to the Allies until September 1945. - # -@@ -1927,6 +1960,10 @@ - Link Europe/Oslo Arctic/Longyearbyen - - # Poland -+ -+# The 1919 dates and times can be found in Tygodnik Urzędowy nr 1 (1919-03-20), -+# <http://www.wbc.poznan.pl/publication/32156> pp 1-2. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Poland 1918 1919 - Sep 16 2:00s 0 - - Rule Poland 1919 only - Apr 15 2:00s 1:00 S -@@ -1937,9 +1974,9 @@ - Rule Poland 1945 only - Apr 29 0:00 1:00 S - Rule Poland 1945 only - Nov 1 0:00 0 - - # For 1946 on the source is Kazimierz Borkowski, --# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U., --# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1> --# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference. -+# Toruń Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U., -+# http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1 -+# Thanks to Przemysław Augustyniak (2005-05-28) for this reference. - # He also gives these further references: - # Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm> - # Druk nr 2180 (2003) <http://www.senat.gov.pl/k5/dok/sejm/053/2180.pdf> -@@ -1959,10 +1996,10 @@ - Rule Poland 1962 1964 - Sep lastSun 1:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Warsaw 1:24:00 - LMT 1880 -- 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time -- 1:00 C-Eur CE%sT 1918 Sep 16 3:00 -+ 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time -+ 1:00 C-Eur CE%sT 1918 Sep 16 3:00 - 2:00 Poland EE%sT 1922 Jun -- 1:00 Poland CE%sT 1940 Jun 23 2:00 -+ 1:00 Poland CE%sT 1940 Jun 23 2:00 - 1:00 C-Eur CE%sT 1944 Oct - 1:00 Poland CE%sT 1977 - 1:00 W-Eur CE%sT 1988 -@@ -1970,6 +2007,14 @@ - - # Portugal - # -+# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne: -+# According to a Portuguese decree (1911-05-26) -+# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf -+# Lisbon was at -0:36:44.68, but switched to GMT on 1912-01-01 at 00:00. -+# Round the old offset to -0:36:45. This agrees with Willett but disagrees -+# with Shanks, who says the transition occurred on 1911-05-24 at 00:00 for -+# Europe/Lisbon, Atlantic/Azores, and Atlantic/Madeira. -+# - # From Rui Pedro Salgueiro (1992-11-12): - # Portugal has recently (September, 27) changed timezone - # (from WET to MET or CET) to harmonize with EEC. -@@ -2049,35 +2094,34 @@ - Rule Port 1980 only - Mar lastSun 0:00s 1:00 S - Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S - Rule Port 1983 only - Mar lastSun 2:00s 1:00 S -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24; --# Willett says 1912-01-01. Go with Willett. --Zone Europe/Lisbon -0:36:32 - LMT 1884 -- -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time -- 0:00 Port WE%sT 1966 Apr 3 2:00 -- 1:00 - CET 1976 Sep 26 1:00 -- 0:00 Port WE%sT 1983 Sep 25 1:00s -- 0:00 W-Eur WE%sT 1992 Sep 27 1:00s -- 1:00 EU CE%sT 1996 Mar 31 1:00u -+Zone Europe/Lisbon -0:36:45 - LMT 1884 -+ -0:36:45 - LMT 1912 Jan 1 # Lisbon Mean Time -+ 0:00 Port WE%sT 1966 Apr 3 2:00 -+ 1:00 - CET 1976 Sep 26 1:00 -+ 0:00 Port WE%sT 1983 Sep 25 1:00s -+ 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 --Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada -- -1:54:32 - HMT 1911 May 24 # 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 -- 0:00 EU WE%sT 1993 Mar 28 1:00u -+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 -+ 0:00 EU WE%sT 1993 Mar 28 1:00u - -1:00 EU AZO%sT --Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal -- -1:07:36 - FMT 1911 May 24 # Funchal Mean Time -- -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time -- 0:00 Port WE%sT 1983 Sep 25 1:00s -+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 -+ 0:00 Port WE%sT 1983 Sep 25 1:00s - 0:00 EU WE%sT - - # Romania - # - # From Paul Eggert (1999-10-07): --# <a href="http://www.nineoclock.ro/POL/1778pol.html"> --# Nine O'clock</a> (1998-10-23) reports that the switch occurred at -+# Nine O'clock <http://www.nineoclock.ro/POL/1778pol.html> -+# (1998-10-23) reports that the switch occurred at - # 04:00 local time in fall 1998. For lack of better info, - # assume that Romania and Moldova switched to EU rules in 1997, - # the same year as Bulgaria. -@@ -2094,32 +2138,28 @@ - Rule Romania 1991 1993 - Sep lastSun 0:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct -- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT -- 2:00 Romania EE%sT 1981 Mar 29 2:00s -+ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT -+ 2:00 Romania EE%sT 1981 Mar 29 2:00s - 2:00 C-Eur EE%sT 1991 - 2:00 Romania EE%sT 1994 - 2:00 E-Eur EE%sT 1997 - 2:00 EU EE%sT - -+ - # Russia - - # From Alexander Krivenyshev (2011-09-15): - # Based on last Russian Government Decree # 725 on August 31, 2011 - # (Government document --# <a href="http://www.government.ru/gov/results/16355/print/"> - # http://www.government.ru/gov/results/16355/print/ --# </a> - # in Russian) - # there are few corrections have to be made for some Russian time zones... - # All updated Russian Time Zones were placed in table and translated to English - # by WorldTimeZone.com at the link below: --# <a href="http://www.worldtimezone.com/dst_news/dst_news_russia36.htm"> - # http://www.worldtimezone.com/dst_news/dst_news_russia36.htm --# </a> - - # From Sanjeev Gupta (2011-09-27): - # Scans of [Decree #23 of January 8, 1992] are available at: --# <a href="http://government.consultant.ru/page.aspx?1223966"> - # http://government.consultant.ru/page.aspx?1223966 - # They are in Cyrillic letters (presumably Russian). - -@@ -2128,16 +2168,12 @@ - # changed in September 2011: - # - # One source is --# < a href="http://government.ru/gov/results/16355/> - # http://government.ru/gov/results/16355/ --# </a> - # which, according to translate.google.com, begins "Decree of August 31, - # 2011 No 725" and contains no other dates or "effective date" information. - # - # Another source is --# <a href="http://www.rg.ru/2011/09/06/chas-zona-dok.html"> - # http://www.rg.ru/2011/09/06/chas-zona-dok.html --# </a> - # which, according to translate.google.com, begins "Resolution of the - # Government of the Russian Federation on August 31, 2011 N 725" and also - # contains "Date first official publication: September 6, 2011 Posted on: -@@ -2145,28 +2181,45 @@ - # does not contain any "effective date" information. - # - # Another source is --# <a href="http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7"> - # http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7 --# </a> - # which, in note 8, contains "Resolution #725 of August 31, 2011... - # Effective as of after 7 days following the day of the official publication" - # but which does not contain any reference to September 6, 2011. - # - # The Wikipedia article refers to --# <a href="http://base.consultant.ru/cons/cgi/online.cgi?req=doc;base=LAW;n=118896"> - # http://base.consultant.ru/cons/cgi/online.cgi?req=doc;base=LAW;n=118896 --# </a> - # which seems to copy the text of the government.ru page. - # - # Tobias Conradi combines Wikipedia's - # "as of after 7 days following the day of the official publication" --# with www.rg.ru's "Date of first official publication: September 6, 2011" to get --# September 13, 2011 as the cutover date (unusually, a Tuesday, as Tobias Conradi notes). -+# with www.rg.ru's "Date of first official publication: September 6, 2011" to -+# get September 13, 2011 as the cutover date (unusually, a Tuesday, as Tobias -+# Conradi notes). - # - # None of the sources indicates a time of day for changing clocks. - # - # Go with 2011-09-13 0:00s. - -+# From Alexander Krivenyshev (2014-07-01): -+# According to the Russian news (ITAR-TASS News Agency) -+# http://en.itar-tass.com/russia/738562 -+# the State Duma has approved ... the draft bill on returning to -+# winter time standard and return Russia 11 time zones. The new -+# regulations will come into effect on October 26, 2014 at 02:00 ... -+# http://asozd2.duma.gov.ru/main.nsf/%28Spravka%29?OpenAgent&RN=431985-6&02 -+# Here is a link where we put together table (based on approved Bill N -+# 431985-6) with proposed 11 Russian time zones and corresponding -+# areas/cities/administrative centers in the Russian Federation (in English): -+# http://www.worldtimezone.com/dst_news/dst_news_russia65.html -+# -+# From Alexander Krivenyshev (2014-07-22): -+# Putin signed the Federal Law 431985-6 ... (in Russian) -+# http://itar-tass.com/obschestvo/1333711 -+# http://www.pravo.gov.ru:8080/page.aspx?111660 -+# http://www.kremlin.ru/acts/46279 -+# From October 26, 2014 the new Russian time zone map will looks like this: -+# http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html -+ - # From Paul Eggert (2006-03-22): - # Except for Moscow after 1919-07-01, I invented the time zone abbreviations. - # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991, -@@ -2193,9 +2246,9 @@ - # - # For Grozny, Chechnya, we have the following story from - # John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07): --# News--often false--is spread by word of mouth. A rumor that it was -+# News - often false - is spread by word of mouth. A rumor that it was - # time to move the clocks back put this whole city out of sync with --# the rest of Russia for two weeks--even soldiers stationed here began -+# the rest of Russia for two weeks - even soldiers stationed here began - # enforcing curfew at the wrong time. - # - # From Gwillim Law (2001-06-05): -@@ -2206,107 +2259,265 @@ - # since September 1997.... Although the Kuril Islands are - # administratively part of Sakhalin oblast', they appear to have - # remained on UTC+11 along with Magadan. --# -+ -+# From Tim Parenti (2014-07-06): -+# The comments detailing the coverage of each Russian zone are meant to assist -+# with maintenance only and represent our best guesses as to which regions -+# are covered by each zone. They are not meant to be taken as an authoritative -+# listing. The region codes listed come from -+# http://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498 -+# and are used for convenience only; no guarantees are made regarding their -+# future stability. ISO 3166-2:RU codes are also listed for first-level -+# divisions where available. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# --# Kaliningradskaya oblast'. -+ -+ -+# From Tim Parenti (2014-07-03): -+# Europe/Kaliningrad covers... -+# 39 RU-KGD Kaliningrad Oblast -+ - Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr - 1:00 C-Eur CE%sT 1945 - 2:00 Poland CE%sT 1946 -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -- 2:00 Russia EE%sT 2011 Mar 27 2:00s -- 3:00 - FET # Further-eastern European Time -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 Russia EE%sT 2011 Mar 27 2:00s -+ 3:00 - FET 2014 Oct 26 2:00s -+ 2:00 - EET -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Europe/Moscow covers... -+# 01 RU-AD Adygea, Republic of -+# 05 RU-DA Dagestan, Republic of -+# 06 RU-IN Ingushetia, Republic of -+# 07 RU-KB Kabardino-Balkar Republic -+# 08 RU-KL Kalmykia, Republic of -+# 09 RU-KC Karachay-Cherkess Republic -+# 10 RU-KR Karelia, Republic of -+# 11 RU-KO Komi Republic -+# 12 RU-ME Mari El Republic -+# 13 RU-MO Mordovia, Republic of -+# 15 RU-SE North Ossetia-Alania, Republic of -+# 16 RU-TA Tatarstan, Republic of -+# 20 RU-CE Chechen Republic -+# 21 RU-CU Chuvash Republic -+# 23 RU-KDA Krasnodar Krai -+# 26 RU-STA Stavropol Krai -+# 29 RU-ARK Arkhangelsk Oblast -+# 31 RU-BEL Belgorod Oblast -+# 32 RU-BRY Bryansk Oblast -+# 33 RU-VLA Vladimir Oblast -+# 35 RU-VLG Vologda Oblast -+# 36 RU-VOR Voronezh Oblast -+# 37 RU-IVA Ivanovo Oblast -+# 40 RU-KLU Kaluga Oblast -+# 44 RU-KOS Kostroma Oblast -+# 46 RU-KRS Kursk Oblast -+# 47 RU-LEN Leningrad Oblast -+# 48 RU-LIP Lipetsk Oblast -+# 50 RU-MOS Moscow Oblast -+# 51 RU-MUR Murmansk Oblast -+# 52 RU-NIZ Nizhny Novgorod Oblast -+# 53 RU-NGR Novgorod Oblast -+# 57 RU-ORL Oryol Oblast -+# 58 RU-PNZ Penza Oblast -+# 60 RU-PSK Pskov Oblast -+# 61 RU-ROS Rostov Oblast -+# 62 RU-RYA Ryazan Oblast -+# 67 RU-SMO Smolensk Oblast -+# 68 RU-TAM Tambov Oblast -+# 69 RU-TVE Tver Oblast -+# 71 RU-TUL Tula Oblast -+# 73 RU-ULY Ulyanovsk Oblast -+# 76 RU-YAR Yaroslavl Oblast -+# 77 RU-MOW Moscow -+# 78 RU-SPE Saint Petersburg -+# 83 RU-NEN Nenets Autonomous Okrug -+ -+# From Vladimir Karpinsky (2014-07-08): -+# LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow -+# Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30").... -+# LMT in Moscow since Jul 3, 1916 is 2:31:01 as a result of new standard. -+# (The info is from the book by Byalokoz ... p. 18.) -+# The time in St. Petersburg as capital of Russia was defined by -+# Pulkov observatory, near St. Petersburg. In 1916 LMT Moscow -+# was synchronized with LMT St. Petersburg (+30 minutes), (Pulkov observatory -+# coordinates: 59 deg. 46'18.70", 30 deg. 19'40.70") so 30 deg. 19'40.70" > -+# 2h01m18.7s = 2:01:19. LMT Moscow = LMT St.Petersburg + 30m 2:01:19 + 0:30 = -+# 2:31:19 ... - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Adygeya, Arkhangel'skaya oblast', --# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast', --# Vologodskaya oblast', Voronezhskaya oblast', --# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya, --# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya, --# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya, --# Respublika Kareliya, Respublika Komi, --# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast', --# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El, --# Respublika Mordoviya, Moskva, Moskovskaya oblast', --# Murmanskaya oblast', Nenetskij avtonomnyj okrug, --# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast', --# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast', --# Ryazanskaya oblast', Sankt-Peterburg, --# Respublika Severnaya Osetiya, Smolenskaya oblast', --# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan, --# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast', --# Chechenskaya Respublika, Chuvashskaya oblast', --# Yaroslavskaya oblast' --Zone Europe/Moscow 2:30:20 - LMT 1880 -- 2:30 - MMT 1916 Jul 3 # Moscow Mean Time -- 2:30:48 Russia %s 1919 Jul 1 2:00 -+# From Paul Eggert (2014-07-08): -+# Milne does not list Moscow, but suggests that its time might be listed in -+# Résumés mensuels et annuels des observations météorologiques (1895). -+# Presumably this is OCLC 85825704, a journal published with parallel text in -+# Russian and French. This source has not been located; go with Karpinsky. -+ -+Zone Europe/Moscow 2:30:17 - LMT 1880 -+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time -+ 2:31:19 Russia %s 1919 Jul 1 2:00 -+ 3:00 Russia %s 1921 Oct - 3:00 Russia MSK/MSD 1922 Oct - 2:00 - EET 1930 Jun 21 -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -- 2:00 Russia EE%sT 1992 Jan 19 2:00s -- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s -- 4:00 - MSK -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 Russia EE%sT 1992 Jan 19 2:00s -+ 3:00 Russia MSK/MSD 2011 Mar 27 2:00s -+ 4:00 - MSK 2014 Oct 26 2:00s -+ 3:00 - MSK -+ -+ -+# From Tim Parenti (2014-07-03): -+# Europe/Simferopol covers... -+# ** **** Crimea, Republic of -+# ** **** Sevastopol -+ -+Zone Europe/Simferopol 2:16:24 - LMT 1880 -+ 2:16 - SMT 1924 May 2 # Simferopol Mean T -+ 2:00 - EET 1930 Jun 21 -+ 3:00 - MSK 1941 Nov -+ 1:00 C-Eur CE%sT 1944 Apr 13 -+ 3:00 Russia MSK/MSD 1990 -+ 3:00 - MSK 1990 Jul 1 2:00 -+ 2:00 - EET 1992 -+# Central Crimea used Moscow time 1994/1997. - # --# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast', --# Volgogradskaya oblast'. Shanks & Pottenger say Kirov is still at +0400 --# but Wikipedia (2006-05-09) says +0300. Perhaps it switched after the --# others? But we have no data. -+# From Paul Eggert (2006-03-22): -+# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched -+# from Kiev to Moscow time sometime after the January 1994 elections. -+# Shanks (1999) says "date of change uncertain", but implies that it happened -+# sometime between the 1994 DST switches. Shanks & Pottenger simply say -+# 1994-09-25 03:00, but that can't be right. For now, guess it -+# changed in May. -+ 2:00 E-Eur EE%sT 1994 May -+# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev. -+ 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s -+ 3:00 1:00 MSD 1996 Oct 27 3:00s -+# IATA SSIM (1997-09) says Crimea switched to EET/EEST. -+# Assume it happened in March by not changing the clocks. -+ 3:00 Russia MSK/MSD 1997 -+ 3:00 - MSK 1997 Mar lastSun 1:00u -+# From Alexander Krivenyshev (2014-03-17): -+# time change at 2:00 (2am) on March 30, 2014 -+# http://vz.ru/news/2014/3/17/677464.html -+# From Paul Eggert (2014-03-30): -+# Simferopol and Sevastopol reportedly changed their central town clocks -+# late the previous day, but this appears to have been ceremonial -+# and the discrepancies are small enough to not worry about. -+ 2:00 EU EE%sT 2014 Mar 30 2:00 -+ 4:00 - MSK 2014 Oct 26 2:00s -+ 3:00 - MSK -+ -+ -+# From Tim Parenti (2014-07-03): -+# Europe/Volgograd covers... -+# 30 RU-AST Astrakhan Oblast -+# 34 RU-VGG Volgograd Oblast -+# 43 RU-KIR Kirov Oblast -+# 64 RU-SAR Saratov Oblast -+ -+# From Paul Eggert (2006-05-09): -+# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300. -+# Perhaps it switched after the others? But we have no data. -+ - Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3 - 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time - 3:00 - STAT 1930 Jun 21 # Stalingrad Time - 4:00 - STAT 1961 Nov 11 -- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T -- 3:00 Russia VOL%sT 1991 Mar 31 2:00s -- 4:00 - VOLT 1992 Mar 29 2:00s -- 3:00 Russia VOL%sT 2011 Mar 27 2:00s -- 4:00 - VOLT --# --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Samarskaya oblast', Udmyrtskaya respublika --Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00 -+ 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T -+ 3:00 Russia VOL%sT 1991 Mar 31 2:00s -+ 4:00 - VOLT 1992 Mar 29 2:00s -+ 3:00 Russia MSK 2011 Mar 27 2:00s -+ 4:00 - MSK 2014 Oct 26 2:00s -+ 3:00 - MSK -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Europe/Samara covers... -+# 18 RU-UD Udmurt Republic -+# 63 RU-SAM Samara Oblast -+ -+# Byalokoz 1919 says Samara was 3:20:20. -+ -+Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 2:00 - 3:00 - SAMT 1930 Jun 21 - 4:00 - SAMT 1935 Jan 27 -- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev -- 3:00 Russia KUY%sT 1991 Mar 31 2:00s -- 2:00 Russia KUY%sT 1991 Sep 29 2:00s -- 3:00 - KUYT 1991 Oct 20 3:00 -- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time -- 3:00 Russia SAM%sT 2011 Mar 27 2:00s -+ 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 Russia EE%sT 1991 Sep 29 2:00s -+ 3:00 - KUYT 1991 Oct 20 3:00 -+ 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time -+ 3:00 Russia SAM%sT 2011 Mar 27 2:00s - 4:00 - SAMT - -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Yekaterinburg covers... -+# 02 RU-BA Bashkortostan, Republic of -+# 90 RU-PER Perm Krai -+# 45 RU-KGN Kurgan Oblast -+# 56 RU-ORE Orenburg Oblast -+# 66 RU-SVE Sverdlovsk Oblast -+# 72 RU-TYU Tyumen Oblast -+# 74 RU-CHE Chelyabinsk Oblast -+# 86 RU-KHM Khanty-Mansi Autonomous Okrug - Yugra -+# 89 RU-YAN Yamalo-Nenets Autonomous Okrug - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug, --# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast', --# Sverdlovskaya oblast', Tyumenskaya oblast', --# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast', --# Yamalo-Nenetskij avtonomnyj okrug. --Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00 -+# Note: Effective 2005-12-01, (59) Perm Oblast and (81) Komi-Permyak -+# Autonomous Okrug merged to form (90, RU-PER) Perm Krai. -+ -+# Milne says Yekaterinburg was 4:02:32.9; round to nearest. -+# Byalokoz 1919 says its provincial time was based on Perm, at 3:45:05. -+# Assume it switched on 1916-07-03, the time of the new standard. -+# The 1919 and 1930 transitions are from Shanks. -+ -+Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3 -+ 3:45:05 - PMT 1919 Jul 15 4:00 - 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time -- 5:00 Russia SVE%sT 1991 Mar 31 2:00s -- 4:00 Russia SVE%sT 1992 Jan 19 2:00s -- 5:00 Russia YEK%sT 2011 Mar 27 2:00s -- 6:00 - YEKT # Yekaterinburg Time --# --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Altaj, Altajskij kraj, Omskaya oblast'. --Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14 -- 5:00 - OMST 1930 Jun 21 # Omsk TIme -- 6:00 Russia OMS%sT 1991 Mar 31 2:00s -- 5:00 Russia OMS%sT 1992 Jan 19 2:00s -- 6:00 Russia OMS%sT 2011 Mar 27 2:00s -- 7:00 - OMST --# -+ 5:00 Russia SVE%sT 1991 Mar 31 2:00s -+ 4:00 Russia SVE%sT 1992 Jan 19 2:00s -+ 5:00 Russia YEK%sT 2011 Mar 27 2:00s -+ 6:00 - YEKT 2014 Oct 26 2:00s -+ 5:00 - YEKT -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Omsk covers... -+# 04 RU-AL Altai Republic -+# 22 RU-ALT Altai Krai -+# 55 RU-OMS Omsk Oblast -+ -+# Byalokoz 1919 says Omsk was 4:53:30. -+ -+Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14 -+ 5:00 - OMST 1930 Jun 21 # Omsk Time -+ 6:00 Russia OMS%sT 1991 Mar 31 2:00s -+ 5:00 Russia OMS%sT 1992 Jan 19 2:00s -+ 6:00 Russia OMS%sT 2011 Mar 27 2:00s -+ 7:00 - OMST 2014 Oct 26 2:00s -+ 6:00 - OMST -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Novosibirsk covers... -+# 54 RU-NVS Novosibirsk Oblast -+# 70 RU-TOM Tomsk Oblast -+ - # From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's - # not clear when it switched from +7 to +6. --# Novosibirskaya oblast', Tomskaya oblast'. --Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00 -+ -+Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00 - 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time -- 7:00 Russia NOV%sT 1991 Mar 31 2:00s -- 6:00 Russia NOV%sT 1992 Jan 19 2:00s -+ 7:00 Russia NOV%sT 1991 Mar 31 2:00s -+ 6:00 Russia NOV%sT 1992 Jan 19 2:00s - 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P. -- 6:00 Russia NOV%sT 2011 Mar 27 2:00s -- 7:00 - NOVT -+ 6:00 Russia NOV%sT 2011 Mar 27 2:00s -+ 7:00 - NOVT 2014 Oct 26 2:00s -+ 6:00 - NOVT -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Novokuznetsk covers... -+# 42 RU-KEM Kemerovo Oblast - - # From Alexander Krivenyshev (2009-10-13): - # Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on -@@ -2319,14 +2530,10 @@ - # time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600) - # - # Russian Government web site (Russian language) --# <a href="http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archiv"> - # http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archive/2009/09/14/991633.htm --# </a> - # or Russian-English translation by WorldTimeZone.com with reference - # map to local region and new Russia Time Zone map after March 28, 2010 --# <a href="http://www.worldtimezone.com/dst_news/dst_news_russia03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_russia03.html --# </a> - # - # Thus, when Russia will switch to DST on the night of March 28, 2010 - # Kemerovo region (Kemerovo oblast') will not change the clock. -@@ -2334,152 +2541,319 @@ - # As a result, Kemerovo oblast' will be in the same time zone as - # Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic. - --Zone Asia/Novokuznetsk 5:48:48 - NMT 1920 Jan 6 -+# From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02): -+# The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus -+# realigning itself with KRAT. -+ -+Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1 - 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time -- 7:00 Russia KRA%sT 1991 Mar 31 2:00s -- 6:00 Russia KRA%sT 1992 Jan 19 2:00s -- 7:00 Russia KRA%sT 2010 Mar 28 2:00s -- 6:00 Russia NOV%sT 2011 Mar 27 2:00s -- 7:00 - NOVT # Novosibirsk/Novokuznetsk Time -+ 7:00 Russia KRA%sT 1991 Mar 31 2:00s -+ 6:00 Russia KRA%sT 1992 Jan 19 2:00s -+ 7:00 Russia KRA%sT 2010 Mar 28 2:00s -+ 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk -+ 7:00 - NOVT 2014 Oct 26 2:00s -+ 7:00 - KRAT # Krasnoyarsk Time - -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Krasnoyarsk covers... -+# 17 RU-TY Tuva Republic -+# 19 RU-KK Khakassia, Republic of -+# 24 RU-KYA Krasnoyarsk Krai - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Krasnoyarskij kraj, --# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug, --# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug. --Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6 -+# Note: Effective 2007-01-01, (88) Evenk Autonomous Okrug and (84) Taymyr -+# Autonomous Okrug were merged into (24, RU-KYA) Krasnoyarsk Krai. -+ -+# Byalokoz 1919 says Krasnoyarsk was 6:11:26. -+ -+Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6 - 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time -- 7:00 Russia KRA%sT 1991 Mar 31 2:00s -- 6:00 Russia KRA%sT 1992 Jan 19 2:00s -- 7:00 Russia KRA%sT 2011 Mar 27 2:00s -- 8:00 - KRAT -+ 7:00 Russia KRA%sT 1991 Mar 31 2:00s -+ 6:00 Russia KRA%sT 1992 Jan 19 2:00s -+ 7:00 Russia KRA%sT 2011 Mar 27 2:00s -+ 8:00 - KRAT 2014 Oct 26 2:00s -+ 7:00 - KRAT -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Irkutsk covers... -+# 03 RU-BU Buryatia, Republic of -+# 38 RU-IRK Irkutsk Oblast - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Buryatiya, Irkutskaya oblast', --# Ust'-Ordynskij Buryatskij avtonomnyj okrug. --Zone Asia/Irkutsk 6:57:20 - LMT 1880 -- 6:57:20 - IMT 1920 Jan 25 # Irkutsk Mean Time -+# Note: Effective 2008-01-01, (85) Ust-Orda Buryat Autonomous Okrug was -+# merged into (38, RU-IRK) Irkutsk Oblast. -+ -+# Milne 1899 says Irkutsk was 6:57:15. -+# Byalokoz 1919 says Irkutsk was 6:57:05. -+# Go with Byalokoz. -+ -+Zone Asia/Irkutsk 6:57:05 - LMT 1880 -+ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time - 7:00 - IRKT 1930 Jun 21 # Irkutsk Time -- 8:00 Russia IRK%sT 1991 Mar 31 2:00s -- 7:00 Russia IRK%sT 1992 Jan 19 2:00s -- 8:00 Russia IRK%sT 2011 Mar 27 2:00s -- 9:00 - IRKT -+ 8:00 Russia IRK%sT 1991 Mar 31 2:00s -+ 7:00 Russia IRK%sT 1992 Jan 19 2:00s -+ 8:00 Russia IRK%sT 2011 Mar 27 2:00s -+ 9:00 - IRKT 2014 Oct 26 2:00s -+ 8:00 - IRKT -+ -+ -+# From Tim Parenti (2014-07-06): -+# Asia/Chita covers... -+# 92 RU-ZAB Zabaykalsky Krai - # --# From Oscar van Vlijmen (2003-10-18): [This region consists of] --# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast', --# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'. -+# Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat -+# Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai. - --# From Oscar van Vlijmen (2009-11-29): --# ...some regions of [Russia] were merged with others since 2005... --# Some names were changed, no big deal, except for one instance: a new name. --# YAK/YAKST: UTC+9 Zabajkal'skij kraj. -+Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15 -+ 8:00 - YAKT 1930 Jun 21 # Yakutsk Time -+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s -+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s -+ 9:00 Russia YAK%sT 2011 Mar 27 2:00s -+ 10:00 - YAKT 2014 Oct 26 2:00s -+ 8:00 - IRKT - --# From Oscar van Vlijmen (2009-11-29): --# The Sakha districts are: Aldanskij, Amginskij, Anabarskij, --# Verkhnevilyujskij, Vilyujskij, Gornyj, --# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij, --# Namskij, Nyurbinskij, Olenyokskij, Olyokminskij, --# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij, --# Churapchinskij, Eveno-Bytantajskij Natsional'nij. - --Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15 -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29): -+# Asia/Yakutsk covers... -+# 28 RU-AMU Amur Oblast -+# -+# ...and parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-02 **** Aldansky District -+# 14-04 **** Amginsky District -+# 14-05 **** Anabarsky District -+# 14-06 **** Bulunsky District -+# 14-07 **** Verkhnevilyuysky District -+# 14-10 **** Vilyuysky District -+# 14-11 **** Gorny District -+# 14-12 **** Zhigansky District -+# 14-13 **** Kobyaysky District -+# 14-14 **** Lensky District -+# 14-15 **** Megino-Kangalassky District -+# 14-16 **** Mirninsky District -+# 14-18 **** Namsky District -+# 14-19 **** Neryungrinsky District -+# 14-21 **** Nyurbinsky District -+# 14-23 **** Olenyoksky District -+# 14-24 **** Olyokminsky District -+# 14-26 **** Suntarsky District -+# 14-27 **** Tattinsky District -+# 14-29 **** Ust-Aldansky District -+# 14-32 **** Khangalassky District -+# 14-33 **** Churapchinsky District -+# 14-34 **** Eveno-Bytantaysky National District -+ -+# From Tim Parenti (2014-07-03): -+# Our commentary seems to have lost mention of (14-19) Neryungrinsky District. -+# Since the surrounding districts of Sakha are all YAKT, assume this is, too. -+# Also assume its history has been the same as the rest of Asia/Yakutsk. -+ -+# Byalokoz 1919 says Yakutsk was 8:38:58. -+ -+Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15 - 8:00 - YAKT 1930 Jun 21 # Yakutsk Time -- 9:00 Russia YAK%sT 1991 Mar 31 2:00s -- 8:00 Russia YAK%sT 1992 Jan 19 2:00s -- 9:00 Russia YAK%sT 2011 Mar 27 2:00s -- 10:00 - YAKT -+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s -+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s -+ 9:00 Russia YAK%sT 2011 Mar 27 2:00s -+ 10:00 - YAKT 2014 Oct 26 2:00s -+ 9:00 - YAKT -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29): -+# Asia/Vladivostok covers... -+# 25 RU-PRI Primorsky Krai -+# 27 RU-KHA Khabarovsk Krai -+# 79 RU-YEV Jewish Autonomous Oblast - # --# From Oscar van Vlijmen (2003-10-18): [This region consists of] --# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj, --# [parts of] Respublika Sakha (Yakutiya). -+# ...and parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-09 **** Verkhoyansky District -+# 14-31 **** Ust-Yansky District - --# From Oscar van Vlijmen (2009-11-29): --# The Sakha districts are: Bulunskij, Verkhoyanskij, ... Ust'-Yanskij. --Zone Asia/Vladivostok 8:47:44 - LMT 1922 Nov 15 -+# Milne 1899 says Vladivostok was 8:47:33.5. -+# Byalokoz 1919 says Vladivostok was 8:47:31. -+# Go with Byalokoz. -+ -+Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15 - 9:00 - VLAT 1930 Jun 21 # Vladivostok Time -- 10:00 Russia VLA%sT 1991 Mar 31 2:00s -- 9:00 Russia VLA%sST 1992 Jan 19 2:00s -- 10:00 Russia VLA%sT 2011 Mar 27 2:00s -- 11:00 - VLAT -+ 10:00 Russia VLA%sT 1991 Mar 31 2:00s -+ 9:00 Russia VLA%sT 1992 Jan 19 2:00s -+ 10:00 Russia VLA%sT 2011 Mar 27 2:00s -+ 11:00 - VLAT 2014 Oct 26 2:00s -+ 10:00 - VLAT -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Khandyga covers parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-28 **** Tomponsky District -+# 14-30 **** Ust-Maysky District - - # From Arthur David Olson (2012-05-09): - # Tomponskij and Ust'-Majskij switched from Vladivostok time to Yakutsk time - # in 2011. --# -+ - # From Paul Eggert (2012-11-25): - # Shanks and Pottenger (2003) has Khandyga on Yakutsk time. - # Make a wild guess that it switched to Vladivostok time in 2004. - # This transition is no doubt wrong, but we have no better info. --# -+ - Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15 - 8:00 - YAKT 1930 Jun 21 # Yakutsk Time -- 9:00 Russia YAK%sT 1991 Mar 31 2:00s -- 8:00 Russia YAK%sT 1992 Jan 19 2:00s -+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s -+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s - 9:00 Russia YAK%sT 2004 -- 10:00 Russia VLA%sT 2011 Mar 27 2:00s -- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725? -- 10:00 - YAKT -+ 10:00 Russia VLA%sT 2011 Mar 27 2:00s -+ 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725? -+ 10:00 - YAKT 2014 Oct 26 2:00s -+ 9:00 - YAKT - --# --# Sakhalinskaya oblast'. --# The Zone name should be Yuzhno-Sakhalinsk, but that's too long. -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Sakhalin covers... -+# 65 RU-SAK Sakhalin Oblast -+# ...with the exception of: -+# 65-11 **** Severo-Kurilsky District (North Kuril Islands) -+ -+# The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long. - Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23 -- 9:00 - CJT 1938 -+ 9:00 - JCST 1937 Oct 1 - 9:00 - JST 1945 Aug 25 -- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T. -- 10:00 Russia SAK%sT 1992 Jan 19 2:00s -- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s -- 10:00 Russia SAK%sT 2011 Mar 27 2:00s -- 11:00 - SAKT --# --# From Oscar van Vlijmen (2003-10-18): [This region consists of] --# Magadanskaya oblast', Respublika Sakha (Yakutiya). --# Probably also: Kuril Islands. -+ 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T -+ 10:00 Russia SAK%sT 1992 Jan 19 2:00s -+ 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s -+ 10:00 Russia SAK%sT 2011 Mar 27 2:00s -+ 11:00 - SAKT 2014 Oct 26 2:00s -+ 10:00 - SAKT - --# From Oscar van Vlijmen (2009-11-29): --# The Sakha districts are: Abyjskij, Allaikhovskij, Verkhhhnekolymskij, Momskij, --# Nizhnekolymskij, ... Srednekolymskij. -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29): -+# Asia/Magadan covers... -+# 49 RU-MAG Magadan Oblast -+ -+# From Tim Parenti (2014-07-06), per Alexander Krivenyshev (2014-07-02): -+# Magadan Oblast is moving from UTC+12 to UTC+10 on 2014-10-26; however, -+# several districts of Sakha Republic as well as Severo-Kurilsky District of -+# the Sakhalin Oblast (also known as the North Kuril Islands), represented -+# until now by Asia/Magadan, will instead move to UTC+11. These regions will -+# need their own zone. -+ - Zone Asia/Magadan 10:03:12 - LMT 1924 May 2 - 10:00 - MAGT 1930 Jun 21 # Magadan Time -- 11:00 Russia MAG%sT 1991 Mar 31 2:00s -- 10:00 Russia MAG%sT 1992 Jan 19 2:00s -- 11:00 Russia MAG%sT 2011 Mar 27 2:00s -- 12:00 - MAGT -+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s -+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s -+ 11:00 Russia MAG%sT 2011 Mar 27 2:00s -+ 12:00 - MAGT 2014 Oct 26 2:00s -+ 10:00 - MAGT -+ -+ -+# From Tim Parenti (2014-07-06): -+# Asia/Srednekolymsk covers parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-01 **** Abyysky District -+# 14-03 **** Allaikhovsky District -+# 14-08 **** Verkhnekolymsky District -+# 14-17 **** Momsky District -+# 14-20 **** Nizhnekolymsky District -+# 14-25 **** Srednekolymsky District -+# -+# ...and parts of (65, RU-SAK) Sakhalin Oblast: -+# 65-11 **** Severo-Kurilsky District (North Kuril Islands) -+ -+# From Tim Parenti (2014-07-02): -+# Oymyakonsky District of Sakha Republic (represented by Ust-Nera), along with -+# most of Sakhalin Oblast (represented by Sakhalin) will be moving to UTC+10 on -+# 2014-10-26 to stay aligned with VLAT/SAKT; however, Severo-Kurilsky District -+# of the Sakhalin Oblast (also known as the North Kuril Islands, represented by -+# Severo-Kurilsk) will remain on UTC+11. -+ -+# From Tim Parenti (2014-07-06): -+# Assume North Kuril Islands have history like Magadan before 2011-03-27. -+# There is a decent chance this is wrong, in which case a new zone -+# Asia/Severo-Kurilsk would become necessary. -+# -+# Srednekolymsk and Zyryanka are the most populous places amongst these -+# districts, but have very similar populations. In fact, Wikipedia currently -+# lists them both as having 3528 people, exactly 1668 males and 1860 females -+# each! (Yikes!) -+# http://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276 -+# http://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493 -+# Assume this is a mistake, albeit an amusing one. -+# -+# Looking at censuses, the populations of the two municipalities seem to have -+# fluctuated recently. Zyryanka was more populous than Srednekolymsk in the -+# 1989 and 2002 censuses, but Srednekolymsk was more populous in the most -+# recent (2010) census, 3525 to 3170. (See pages 195 and 197 of -+# http://www.gks.ru/free_doc/new_site/perepis2010/croc/Documents/Vol1/pub-01-05.pdf -+# in Russian.) In addition, Srednekolymsk appears to be a much older -+# settlement and the population of Zyryanka seems to be declining. -+# Go with Srednekolymsk. -+# -+# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT -+# as the abbreviation. Use SRET instead. -+ -+Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2 -+ 10:00 - MAGT 1930 Jun 21 # Magadan Time -+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s -+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s -+ 11:00 Russia MAG%sT 2011 Mar 27 2:00s -+ 12:00 - MAGT 2014 Oct 26 2:00s -+ 11:00 - SRET # Srednekolymsk Time -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Ust-Nera covers parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-22 **** Oymyakonsky District - - # From Arthur David Olson (2012-05-09): --# Ojmyakonskij and the Kuril Islands switched from -+# Ojmyakonskij [and the Kuril Islands] switched from - # Magadan time to Vladivostok time in 2011. -+# -+# From Tim Parenti (2014-07-06), per Alexander Krivenyshev (2014-07-02): -+# It's unlikely that any of the Kuril Islands were involved in such a switch, -+# as the South and Middle Kurils have been on UTC+11 (SAKT) with the rest of -+# Sakhalin Oblast since at least 2011-09, and the North Kurils have been on -+# UTC+12 since at least then, too. -+ - Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15 - 8:00 - YAKT 1930 Jun 21 # Yakutsk Time - 9:00 Russia YAKT 1981 Apr 1 -- 11:00 Russia MAG%sT 1991 Mar 31 2:00s -- 10:00 Russia MAG%sT 1992 Jan 19 2:00s -- 11:00 Russia MAG%sT 2011 Mar 27 2:00s -- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725? -- 11:00 - VLAT -+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s -+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s -+ 11:00 Russia MAG%sT 2011 Mar 27 2:00s -+ 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725? -+ 11:00 - VLAT 2014 Oct 26 2:00s -+ 10:00 - VLAT - --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Kamchatskaya oblast', Koryakskij avtonomnyj okrug. -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Kamchatka covers... -+# 91 RU-KAM Kamchatka Krai - # --# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long. -+# Note: Effective 2007-07-01, (41) Kamchatka Oblast and (82) Koryak -+# Autonomous Okrug merged to form (91, RU-KAM) Kamchatka Krai. -+ -+# The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps -+# Asia/Petropavlovsk-Kamchatsky, but these are too long. - Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10 - 11:00 - PETT 1930 Jun 21 # P-K Time -- 12:00 Russia PET%sT 1991 Mar 31 2:00s -- 11:00 Russia PET%sT 1992 Jan 19 2:00s -- 12:00 Russia PET%sT 2010 Mar 28 2:00s -- 11:00 Russia PET%sT 2011 Mar 27 2:00s -+ 12:00 Russia PET%sT 1991 Mar 31 2:00s -+ 11:00 Russia PET%sT 1992 Jan 19 2:00s -+ 12:00 Russia PET%sT 2010 Mar 28 2:00s -+ 11:00 Russia PET%sT 2011 Mar 27 2:00s - 12:00 - PETT --# --# Chukotskij avtonomnyj okrug -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Anadyr covers... -+# 87 RU-CHU Chukotka Autonomous Okrug -+ - Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2 - 12:00 - ANAT 1930 Jun 21 # Anadyr Time -- 13:00 Russia ANA%sT 1982 Apr 1 0:00s -- 12:00 Russia ANA%sT 1991 Mar 31 2:00s -- 11:00 Russia ANA%sT 1992 Jan 19 2:00s -- 12:00 Russia ANA%sT 2010 Mar 28 2:00s -- 11:00 Russia ANA%sT 2011 Mar 27 2:00s -+ 13:00 Russia ANA%sT 1982 Apr 1 0:00s -+ 12:00 Russia ANA%sT 1991 Mar 31 2:00s -+ 11:00 Russia ANA%sT 1992 Jan 19 2:00s -+ 12:00 Russia ANA%sT 2010 Mar 28 2:00s -+ 11:00 Russia ANA%sT 2011 Mar 27 2:00s - 12:00 - ANAT - -+ - # San Marino - # See Europe/Rome. - -@@ -2488,11 +2862,11 @@ - Zone Europe/Belgrade 1:22:00 - LMT 1884 - 1:00 - CET 1941 Apr 18 23:00 - 1:00 C-Eur CE%sT 1945 -- 1:00 - CET 1945 May 8 2:00s -+ 1:00 - CET 1945 May 8 2:00s - 1:00 1:00 CEST 1945 Sep 16 2:00s --# Metod Kozelj reports that the legal date of -+# Metod Koželj reports that the legal date of - # transition to EU rules was 1982-11-27, for all of Yugoslavia at the time. --# Shanks & Pottenger don't give as much detail, so go with Kozelj. -+# Shanks & Pottenger don't give as much detail, so go with Koželj. - 1:00 - CET 1982 Nov 27 - 1:00 EU CE%sT - Link Europe/Belgrade Europe/Ljubljana # Slovenia -@@ -2568,13 +2942,13 @@ - 0:00 1:00 WEST 1918 Oct 7 23:00 - 0:00 - WET 1924 - 0:00 Spain WE%sT 1929 -- 0:00 SpainAfrica WE%sT 1984 Mar 16 -+ 0:00 SpainAfrica WE%sT 1984 Mar 16 - 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 Time -- 0:00 - WET 1980 Apr 6 0:00s -- 0:00 1:00 WEST 1980 Sep 28 0:00s -+ -1:00 - CANT 1946 Sep 30 1:00 # Canaries T -+ 0:00 - WET 1980 Apr 6 0:00s -+ 0:00 1:00 WEST 1980 Sep 28 0:00s - 0:00 EU WE%sT - # IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u. - # Ignore this for now, as the Canaries are part of the EU. -@@ -2583,7 +2957,7 @@ - - # From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger: - # --# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879: -+# The law "Svensk författningssamling 1878, no 14" about standard time in 1879: - # From the beginning of 1879 (that is 01-01 00:00) the time for all - # places in the country is "the mean solar time for the meridian at - # three degrees, or twelve minutes of time, to the west of the -@@ -2594,7 +2968,7 @@ - # national standard time as 01:00:14 ahead of GMT.... - # - # About the beginning of CET in Sweden. The lawtext ("Svensk --# forfattningssamling 1899, no 44") states, that "from the beginning -+# författningssamling 1899, no 44") states, that "from the beginning - # of 1900... ... the same as the mean solar time for the meridian at - # the distance of one hour of time from the meridian of the English - # observatory at Greenwich, or at 12 minutes 14 seconds to the west -@@ -2602,7 +2976,7 @@ - # 1899-06-16. In short: At 1900-01-01 00:00:00 the new standard time - # in Sweden is 01:00:00 ahead of GMT. - # --# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states -+# 1916: The lawtext ("Svensk författningssamling 1916, no 124") states - # that "1916-05-15 is considered to begin one hour earlier". It is - # pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00.... - # Further the law says, that "1916-09-30 is considered to end one hour later". -@@ -2612,7 +2986,7 @@ - # not available on the site (to my knowledge they are only available - # in Swedish): <http://www.riksdagen.se/english/work/sfst.asp> (type - # "sommartid" without the quotes in the field "Fritext" and then click --# the Sok-button). -+# the Sök-button). - # - # (2001-05-13): - # -@@ -2627,9 +3001,9 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1 -- 1:00:14 - SET 1900 Jan 1 # Swedish Time -+ 1:00:14 - SET 1900 Jan 1 # Swedish Time - 1:00 - CET 1916 May 14 23:00 -- 1:00 1:00 CEST 1916 Oct 1 01:00 -+ 1:00 1:00 CEST 1916 Oct 1 1:00 - 1:00 - CET 1980 - 1:00 EU CE%sT - -@@ -2637,7 +3011,7 @@ - # From Howse: - # By the end of the 18th century clocks and watches became commonplace - # and their performance improved enormously. Communities began to keep --# mean time in preference to apparent time -- Geneva from 1780 .... -+# mean time in preference to apparent time - Geneva from 1780 .... - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - # From Whitman (who writes "Midnight?"): - # Rule Swiss 1940 only - Nov 2 0:00 1:00 S -@@ -2653,7 +3027,7 @@ - # to be wrong. This is now verified. - # - # I have found copies of the original ruling by the Swiss Federal --# government, in 'Eidgen[o]ssische Gesetzessammlung 1941 and 1942' (Swiss -+# government, in 'Eidgenössische Gesetzessammlung 1941 and 1942' (Swiss - # federal law collection)... - # - # DST began on Monday 5 May 1941, 1:00 am by shifting the clocks to 2:00 am -@@ -2672,7 +3046,7 @@ - # night as an absolute novelty, because this was the first time that such - # a thing had happened in Switzerland. - # --# I have also checked 1916, because one book source (Gabriel, Traite de -+# I have also checked 1916, because one book source (Gabriel, Traité de - # l'heure dans le monde) claims that Switzerland had DST in 1916. This is - # false, no official document could be found. Probably Gabriel got misled - # by references to Germany, which introduced DST in 1916 for the first time. -@@ -2686,19 +3060,19 @@ - # One further detail for Switzerland, which is probably out of scope for - # most users of tzdata: The [Europe/Zurich zone] ... - # describes all of Switzerland correctly, with the exception of --# the Cantone Geneve (Geneva, Genf). Between 1848 and 1894 Geneve did not -+# the Canton de Genève (Geneva, Genf). Between 1848 and 1894 Geneva did not - # follow Bern Mean Time but kept its own local mean time. - # To represent this, an extra zone would be needed. - # - # From Alois Treindl (2013-09-11): - # The Federal regulations say - # http://www.admin.ch/opc/de/classified-compilation/20071096/index.html --# ... the meridian for Bern mean time ... is 7 degrees 26'22.50". -+# ... the meridian for Bern mean time ... is 7 degrees 26' 22.50". - # Expressed in time, it is 0h29m45.5s. - - # From Pierre-Yves Berger (2013-09-11): --# the "Circulaire du conseil federal" (December 11 1893) --# <http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353> ... -+# the "Circulaire du conseil fédéral" (December 11 1893) -+# http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353 - # clearly states that the [1894-06-01] change should be done at midnight - # but if no one is present after 11 at night, could be postponed until one - # hour before the beginning of service. -@@ -2709,14 +3083,14 @@ - # We can find no reliable source for Shanks's assertion that all of Switzerland - # except Geneva switched to Bern Mean Time at 00:00 on 1848-09-12. This book: - # --# Jakob Messerli. Gleichmassig, punktlich, schnell: Zeiteinteilung und -+# Jakob Messerli. Gleichmässig, pünktlich, schnell. Zeiteinteilung und - # Zeitgebrauch in der Schweiz im 19. Jahrhundert. Chronos, Zurich 1995, - # ISBN 3-905311-68-2, OCLC 717570797. - # - # suggests that the transition was more gradual, and that the Swiss did not - # agree about civil time during the transition. The timekeeping it gives the - # most detail for is postal and telegraph time: here, federal legislation (the --# "Bundesgesetz uber die Erstellung von elektrischen Telegraphen") passed on -+# "Bundesgesetz über die Erstellung von elektrischen Telegraphen") passed on - # 1851-11-23, and an official implementation notice was published 1853-07-16 - # (Bundesblatt 1853, Bd. II, S. 859). On p 72 Messerli writes that in - # practice since July 1853 Bernese time was used in "all postal and telegraph -@@ -2730,7 +3104,7 @@ - Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See above comment. -- 0:29:46 - BMT 1894 Jun # Bern Mean Time -+ 0:29:46 - BMT 1894 Jun # Bern Mean Time - 1:00 Swiss CE%sT 1981 - 1:00 EU CE%sT - -@@ -2738,7 +3112,7 @@ - - # From Amar Devegowda (2007-01-03): - # The time zone rules for Istanbul, Turkey have not been changed for years now. --# ... The latest rules are available at - -+# ... The latest rules are available at: - # http://www.timeanddate.com/worldclock/timezone.html?n=107 - # From Steffen Thorsen (2007-01-03): - # I have been able to find press records back to 1996 which all say that -@@ -2763,8 +3137,7 @@ - # (on a non-government server though) describing dates between 2002 and 2006: - # http://www.alomaliye.com/bkk_2002_3769.htm - --# From Gökdeniz Karadağ (2011-03-10): --# -+# From Gökdeniz Karadağ (2011-03-10): - # According to the articles linked below, Turkey will change into summer - # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27. - # This change is due to a nationwide exam on 27th. -@@ -2777,9 +3150,16 @@ - # Turkish Local election.... - # http://www.sabah.com.tr/Ekonomi/2014/02/12/yaz-saatinde-onemli-degisiklik - # ... so Turkey will move clocks forward one hour on March 31 at 3:00 a.m. --# From Paul Eggert (2014-02-17): --# Here is an English-language source: --# http://www.worldbulletin.net/turkey/129016/turkey-switches-to-daylight-saving-time-march-31 -+# From Randal L. Schwartz (2014-04-15): -+# Having landed on a flight from the states to Istanbul (via AMS) on March 31, -+# I can tell you that NOBODY (even the airlines) respected this timezone DST -+# change delay. Maybe the word just didn't get out in time. -+# From Paul Eggert (2014-06-15): -+# The press reported massive confusion, as election officials obeyed the rule -+# change but cell phones (and airline baggage systems) did not. See: -+# Kostidis M. Eventful elections in Turkey. Balkan News Agency -+# http://www.balkaneu.com/eventful-elections-turkey/ 2014-03-30. -+# I guess the best we can do is document the official time. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Turkey 1916 only - May 1 0:00 1:00 S -@@ -2846,10 +3226,10 @@ - 2:00 Turkey EE%sT 1978 Oct 15 - 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time - 2:00 Turkey EE%sT 2007 -- 2:00 EU EE%sT 2011 Mar 27 1:00u -- 2:00 - EET 2011 Mar 28 1:00u -- 2:00 EU EE%sT 2014 Mar 30 1:00u -- 2:00 - EET 2014 Mar 31 1:00u -+ 2:00 EU EE%sT 2011 Mar 27 1:00u -+ 2:00 - EET 2011 Mar 28 1:00u -+ 2:00 EU EE%sT 2014 Mar 30 1:00u -+ 2:00 - EET 2014 Mar 31 1:00u - 2:00 EU EE%sT - Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents. - -@@ -2870,7 +3250,7 @@ - # Bill number 8330 of MP from the Party of Regions Oleg Nadoshi got - # approval from 266 deputies. - # --# Ukraine abolishes transter back to the winter time (in Russian) -+# Ukraine abolishes transfer back to the winter time (in Russian) - # http://news.mail.ru/politics/6861560/ - # - # The Ukrainians will no longer change the clock (in Russian) -@@ -2931,12 +3311,12 @@ - 2:00 - EET 1930 Jun 21 - 3:00 - MSK 1941 Sep 20 - 1:00 C-Eur CE%sT 1943 Nov 6 -- 3:00 Russia MSK/MSD 1990 Jul 1 2:00 -- 2:00 1:00 EEST 1991 Sep 29 3:00 -+ 3:00 Russia MSK/MSD 1990 Jul 1 2:00 -+ 2:00 1:00 EEST 1991 Sep 29 3:00 - 2:00 E-Eur EE%sT 1995 - 2:00 EU EE%sT - # Ruthenia used CET 1990/1991. --# "Uzhhorod" is the transliteration of the Ukrainian name, but -+# "Uzhhorod" is the transliteration of the Rusyn/Ukrainian pronunciation, but - # "Uzhgorod" is more common in English. - Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct - 1:00 - CET 1940 -@@ -2944,8 +3324,8 @@ - 1:00 1:00 CEST 1944 Oct 26 - 1:00 - CET 1945 Jun 29 - 3:00 Russia MSK/MSD 1990 -- 3:00 - MSK 1990 Jul 1 2:00 -- 1:00 - CET 1991 Mar 31 3:00 -+ 3:00 - MSK 1990 Jul 1 2:00 -+ 1:00 - CET 1991 Mar 31 3:00 - 2:00 - EET 1992 - 2:00 E-Eur EE%sT 1995 - 2:00 EU EE%sT -@@ -2959,42 +3339,9 @@ - 2:00 - EET 1930 Jun 21 - 3:00 - MSK 1941 Aug 25 - 1:00 C-Eur CE%sT 1943 Oct 25 -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00 -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00 - 2:00 E-Eur EE%sT 1995 - 2:00 EU EE%sT --# Central Crimea used Moscow time 1994/1997. --Zone Europe/Simferopol 2:16:24 - LMT 1880 -- 2:16 - SMT 1924 May 2 # Simferopol Mean T -- 2:00 - EET 1930 Jun 21 -- 3:00 - MSK 1941 Nov -- 1:00 C-Eur CE%sT 1944 Apr 13 -- 3:00 Russia MSK/MSD 1990 -- 3:00 - MSK 1990 Jul 1 2:00 -- 2:00 - EET 1992 --# From Paul Eggert (2006-03-22): --# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched --# from Kiev to Moscow time sometime after the January 1994 elections. --# Shanks (1999) says "date of change uncertain", but implies that it happened --# sometime between the 1994 DST switches. Shanks & Pottenger simply say --# 1994-09-25 03:00, but that can't be right. For now, guess it --# changed in May. -- 2:00 E-Eur EE%sT 1994 May --# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev. -- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s -- 3:00 1:00 MSD 1996 Oct 27 3:00s --# IATA SSIM (1997-09) says Crimea switched to EET/EEST. --# Assume it happened in March by not changing the clocks. -- 3:00 Russia MSK/MSD 1997 -- 3:00 - MSK 1997 Mar lastSun 1:00u --# From Alexander Krivenyshev (2014-03-17): --# time change at 2:00 (2am) on March 30, 2014 --# http://vz.ru/news/2014/3/17/677464.html --# From Paul Eggert (2014-03-30): --# Simferopol and Sevastopol reportedly changed their central town clocks --# late the previous day, but this appears to have been ceremonial --# and the discrepancies are small enough to not worry about. -- 2:00 EU EE%sT 2014 Mar 30 2:00 -- 4:00 - MSK - - # Vatican City - # See Europe/Rome. -@@ -3018,7 +3365,7 @@ - # ... - # - # ...the European time rules are...standardized since 1981, when --# most European coun[tr]ies started DST. Before that year, only -+# most European countries started DST. Before that year, only - # a few countries (UK, France, Italy) had DST, each according - # to own national rules. In 1981, however, DST started on - # 'Apr firstSun', and not on 'Mar lastSun' as in the following -@@ -3026,7 +3373,7 @@ - # But also since 1981 there are some more national exceptions - # than listed in 'europe': Switzerland, for example, joined DST - # one year later, Denmark ended DST on 'Oct 1' instead of 'Sep --# lastSun' in 1981---I don't know how they handle now. -+# lastSun' in 1981 - I don't know how they handle now. - # - # Finally, DST ist always from 'Apr 1' to 'Oct 1' in the - # Soviet Union (as far as I know). ---- ./jdk/make/data/tzdata/factory Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/factory Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - ---- ./jdk/make/data/tzdata/iso3166.tab Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/iso3166.tab Mon Dec 08 12:29:42 2014 -0800 -@@ -26,21 +26,21 @@ - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - # --# From Paul Eggert (2013-05-27): -+# From Paul Eggert (2014-07-18): -+# This file contains a table of two-letter country codes. Columns are -+# separated by a single tab. Lines beginning with '#' are comments. -+# Although all text currently uses ASCII encoding, this is planned to -+# change to UTF-8 soon. The columns of the table are as follows: - # --# This file contains a table with the following columns: - # 1. ISO 3166-1 alpha-2 country code, current as of --# ISO 3166-1 Newsletter VI-15 (2013-05-10). See: Updates on ISO 3166 -+# ISO 3166-1 Newsletter VI-16 (2013-07-11). See: Updates on ISO 3166 - # http://www.iso.org/iso/home/standards/country_codes/updates_on_iso_3166.htm - # 2. The usual English name for the coded region, - # chosen so that alphabetic sorting of subsets produces helpful lists. - # This is not the same as the English name in the ISO 3166 tables. - # --# Columns are separated by a single tab. - # The table is sorted by country code. - # --# Lines beginning with `#' are comments. --# - # This table is intended as an aid for users, to help them select time - # zone data appropriate for their practical needs. It is not intended - # to take or endorse any position on legal or territorial claims. ---- ./jdk/make/data/tzdata/leapseconds Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/leapseconds Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,7 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# Allowance for leapseconds added to each timezone file. -+# Allowance for leap seconds added to each time zone file. - - # This file is in the public domain. - -@@ -31,10 +31,10 @@ - # you should be able to pick up leap-seconds.list from a secondary NIST server. - # For more about leap-seconds.list, please see - # The NTP Timescale and Leap Seconds --# <http://www.eecis.udel.edu/~mills/leap.html>. -+# http://www.eecis.udel.edu/~mills/leap.html - --# The International Earth Rotation Service periodically uses leap seconds --# to keep UTC to within 0.9 s of UT1 -+# The International Earth Rotation and Reference Systems Service -+# periodically uses leap seconds to keep UTC to within 0.9 s of UT1 - # (which measures the true angular orientation of the earth in space); see - # Terry J Quinn, The BIPM and the accurate measure of time, - # Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>. ---- ./jdk/make/data/tzdata/northamerica Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/northamerica Mon Dec 08 12:29:42 2014 -0800 -@@ -21,15 +21,15 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - - # also includes Central America and the Caribbean - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - - # From Paul Eggert (1999-03-22): - # A reliable and entertaining source about time zones is -@@ -78,13 +78,13 @@ - # to push people into bed earlier, and get them up earlier, to make - # them healthy, wealthy and wise in spite of themselves. - # --# -- Robertson Davies, The diary of Samuel Marchbanks, -+# -- Robertson Davies, The diary of Samuel Marchbanks, - # Clarke, Irwin (1947), XIX, Sunday - # - # For more about the first ten years of DST in the United States, see --# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html"> --# Ten years of daylight saving from the Pittsburgh standpoint --# (Carnegie Library of Pittsburgh, 1927)</a>. -+# Robert Garland, Ten years of daylight saving from the Pittsburgh standpoint -+# (Carnegie Library of Pittsburgh, 1927). -+# http://www.clpgh.org/exhibit/dst.html - # - # Shanks says that DST was called "War Time" in the US in 1918 and 1919. - # However, DST was imposed by the Standard Time Act of 1918, which -@@ -103,11 +103,11 @@ - # From Arthur David Olson (2000-09-25): - # Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama. - # In the introduction, Oboler spoke of "Eastern Peace Time." --# An AltaVista search turned up --# <a href="http://rowayton.org/rhs/hstaug45.html">: -+# An AltaVista search turned up: -+# http://rowayton.org/rhs/hstaug45.html - # "When the time is announced over the radio now, it is 'Eastern Peace - # Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful." --# </a> (August 1945) by way of confirmation. -+# (August 1945) by way of confirmation. - - # From Joseph Gallant citing - # George H. Douglas, _The Early Days of Radio Broadcasting_ (1987): -@@ -205,7 +205,7 @@ - # USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST) - # USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT) - # USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W --# USA - " - 9 H BEHIND UTC APR 3 - OCT 30 -+# USA " 9 H BEHIND UTC APR 3 - OCT 30 - # USA HAWAII 10 H BEHIND UTC - # USA BERING 11 H BEHIND UTC SAMOA, MIDWAY - -@@ -258,19 +258,19 @@ - # The following was signed into law on 2005-08-08. - # - # H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS. --# (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15 -+# (a) Amendment.--Section 3(a) of the Uniform Time Act of 1966 (15 - # U.S.C. 260a(a)) is amended-- --# (1) by striking 'first Sunday of April' and inserting 'second --# Sunday of March'; and --# (2) by striking 'last Sunday of October' and inserting 'first -+# (1) by striking "first Sunday of April" and inserting "second -+# Sunday of March"; and -+# (2) by striking "last Sunday of October" and inserting "first - # Sunday of November'. --# (b) Effective Date- Subsection (a) shall take effect 1 year after the -+# (b) Effective Date.--Subsection (a) shall take effect 1 year after the - # date of enactment of this Act or March 1, 2007, whichever is later. --# (c) Report to Congress- Not later than 9 months after the effective -+# (c) Report to Congress.--Not later than 9 months after the effective - # date stated in subsection (b), the Secretary shall report to Congress - # on the impact of this section on energy consumption in the United - # States. --# (d) Right to Revert- Congress retains the right to revert the -+# (d) Right to Revert.--Congress retains the right to revert the - # Daylight Saving Time back to the 2005 time schedules once the - # Department study is complete. - -@@ -292,7 +292,7 @@ - - # From Paul Eggert (2005-08-26): - # According to today's Huntsville Times --# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1> -+# http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1 - # a few towns on Alabama's "eastern border with Georgia, such as Phenix City - # in Russell County, Lanett in Chambers County and some towns in Lee County, - # set their watches and clocks on Eastern time." It quotes H.H. "Bubba" -@@ -300,6 +300,12 @@ - # time zone, but we do go by the Eastern time zone because so many people work - # in Columbus." - -+# From Paul Eggert (2014-09-06): -+# Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208 -+# says that New York City Hall time was 3 minutes 58.4 seconds fast of -+# Eastern time (i.e., -4:56:01.6) just before the 1883 switch. Round to the -+# nearest second. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER - Rule NYC 1920 only - Mar lastSun 2:00 1:00 D - Rule NYC 1920 only - Oct lastSun 2:00 0 S -@@ -347,15 +353,15 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24 - -6:00 US C%sT 1920 -- -6:00 Chicago C%sT 1936 Mar 1 2:00 -- -5:00 - EST 1936 Nov 15 2:00 -+ -6:00 Chicago C%sT 1936 Mar 1 2:00 -+ -5:00 - EST 1936 Nov 15 2:00 - -6:00 Chicago C%sT 1942 - -6:00 US C%sT 1946 - -6:00 Chicago C%sT 1967 - -6:00 US C%sT - # Oliver County, ND switched from mountain to central time on 1992-10-25. - Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48 -- -7:00 US M%sT 1992 Oct 25 02:00 -+ -7:00 US M%sT 1992 Oct 25 2:00 - -6:00 US C%sT - # Morton County, ND, switched from mountain to central time on - # 2003-10-26, except for the area around Mandan which was already central time. -@@ -364,29 +370,26 @@ - # Jones, Mellette, and Todd Counties in South Dakota; - # but in practice these other counties were already observing central time. - # See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>. --Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21 -- -7:00 US M%sT 2003 Oct 26 02:00 -+Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21 -+ -7:00 US M%sT 2003 Oct 26 2:00 - -6:00 US C%sT - - # From Josh Findley (2011-01-21): - # ...it appears that Mercer County, North Dakota, changed from the - # mountain time zone to the central time zone at the last transition from - # daylight-saving to standard time (on Nov. 7, 2010): --# <a href="http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm"> - # http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm --# </a> --# <a href="http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html"> - # http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html --# </a> - - # From Andy Lipscomb (2011-01-24): - # ...according to the Census Bureau, the largest city is Beulah (although - # it's commonly referred to as Beulah-Hazen, with Hazen being the next - # largest city in Mercer County). Google Maps places Beulah's city hall --# at 4715'51" north, 10146'40" west, which yields an offset of 6h47'07". -+# at 47 degrees 15' 51" N, 101 degrees 46' 40" W, which yields an offset -+# of 6h47'07". - --Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53 -- -7:00 US M%sT 2010 Nov 7 2:00 -+Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53 -+ -7:00 US M%sT 2010 Nov 7 2:00 - -6:00 US C%sT - - # US mountain time, represented by Denver -@@ -448,15 +451,18 @@ - # was destroyed in 1805 by a Yakutat-kon war party.) However, there - # were nearby inhabitants in some cases and for our purposes perhaps - # it's best to simply use the official transition. -+ -+# From Paul Eggert (2014-07-18): -+# One opinion of the early-1980s turmoil in Alaska over time zones and -+# daylight saving time appeared as graffiti on a Juneau airport wall: -+# "Welcome to Juneau. Please turn your watch back to the 19th century." -+# See: Turner W. Alaska's four time zones now two. NY Times 1983-11-01. -+# http://www.nytimes.com/1983/11/01/us/alaska-s-four-time-zones-now-two.html - # -- --# From Steve Ferguson (2011-01-31): --# The author lives in Alaska and many of the references listed are only --# available to Alaskan residents. --# --# <a href="http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98"> --# http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98 --# </a> -+# Steve Ferguson (2011-01-31) referred to the following source: -+# Norris F. Keeping time in Alaska: national directives, local response. -+# Alaska History 2001;16(1-2). -+# http://alaskahistoricalsociety.org/discover-alaska/glimpses-of-the-past/keeping-time-in-alaska/ - - # From Arthur David Olson (2011-02-01): - # Here's database-relevant material from the 2001 "Alaska History" article: -@@ -482,12 +488,10 @@ - # From Arthur David Olson (2011-02-09): - # I just spoke by phone with a staff member at the Metlakatla Indian - # Community office (using contact information available at --# <a href="http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla"> - # http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla --# </a>). - # It's shortly after 1:00 here on the east coast of the United States; - # the staffer said it was shortly after 10:00 there. When I asked whether --# that meant they were on Pacific time, they said no--they were on their -+# that meant they were on Pacific time, they said no - they were on their - # own time. I asked about daylight saving; they said it wasn't used. I - # did not inquire about practices in the past. - -@@ -501,9 +505,9 @@ - -8:00 - PST 1942 - -8:00 US P%sT 1946 - -8:00 - PST 1969 -- -8:00 US P%sT 1980 Apr 27 2:00 -- -9:00 US Y%sT 1980 Oct 26 2:00 -- -8:00 US P%sT 1983 Oct 30 2:00 -+ -8:00 US P%sT 1980 Apr 27 2:00 -+ -9:00 US Y%sT 1980 Oct 26 2:00 -+ -8:00 US P%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Sitka 14:58:47 - LMT 1867 Oct 18 -@@ -511,7 +515,7 @@ - -8:00 - PST 1942 - -8:00 US P%sT 1946 - -8:00 - PST 1969 -- -8:00 US P%sT 1983 Oct 30 2:00 -+ -8:00 US P%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 18 -@@ -519,8 +523,8 @@ - -8:00 - PST 1942 - -8:00 US P%sT 1946 - -8:00 - PST 1969 -- -8:00 US P%sT 1983 Oct 30 2:00 -- -8:00 - MeST -+ -8:00 US P%sT 1983 Oct 30 2:00 -+ -8:00 - PST - Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18 - -9:18:55 - LMT 1900 Aug 20 12:00 - -9:00 - YST 1942 -@@ -535,7 +539,7 @@ - -10:00 US CAT/CAPT 1946 # Peace - -10:00 - CAT 1967 Apr - -10:00 - AHST 1969 -- -10:00 US AH%sT 1983 Oct 30 2:00 -+ -10:00 US AH%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Nome 12:58:21 - LMT 1867 Oct 18 -@@ -544,7 +548,7 @@ - -11:00 US N%sT 1946 - -11:00 - NST 1967 Apr - -11:00 - BST 1969 -- -11:00 US B%sT 1983 Oct 30 2:00 -+ -11:00 US B%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Adak 12:13:21 - LMT 1867 Oct 18 -@@ -553,7 +557,7 @@ - -11:00 US N%sT 1946 - -11:00 - NST 1967 Apr - -11:00 - BST 1969 -- -11:00 US B%sT 1983 Oct 30 2:00 -+ -11:00 US B%sT 1983 Oct 30 2:00 - -10:00 US AH%sT 1983 Nov 30 - -10:00 US HA%sT - # The following switches don't quite make our 1970 cutoff. -@@ -571,7 +575,7 @@ - # Minutes of the Unalaska City Council Meeting, January 10, 1967: - # "Except for St. Paul and Akutan, Unalaska is the only important - # location not on Alaska Standard Time. The following resolution was --# made by William Robinson and seconded by Henry Swanson: Be it -+# made by William Robinson and seconded by Henry Swanson: Be it - # resolved that the City of Unalaska hereby goes to Alaska Standard - # Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday, - # January 14, Alaska Standard Time.) This resolution was passed with -@@ -583,9 +587,7 @@ - # "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225 - # of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09, - # the article is available at --# <a href="http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf"> - # http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf --# </a> - # and indicates that standard time was adopted effective noon, January - # 13, 1896 (page 218), that in "1933, the Legislature decreed daylight - # saving for the period between the last Sunday of each April and the -@@ -606,7 +608,7 @@ - # year, the standard time of this Territory shall be advanced one - # hour...This Act shall take effect upon its approval. Approved this 26th - # day of April, A. D. 1933. LAWRENCE M JUDD, Governor of the Territory of --# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is -+# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is - # hereby repealed...This Act shall take effect upon its approval, upon - # which date the standard time of this Territory shall be restored to - # that existing immediately prior to the taking effect of said Act 90. -@@ -616,14 +618,14 @@ - # Note that 1933-05-21 was a Sunday. - # We're left to guess the time of day when Act 163 was approved; guess noon. - --Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 #Schmitt&Cox -- -10:30 - HST 1933 Apr 30 2:00 #Laws 1933 -- -10:30 1:00 HDT 1933 May 21 12:00 #Laws 1933+12 -- -10:30 - HST 1942 Feb 09 2:00 #Schmitt&Cox+2 -- -10:30 1:00 HDT 1945 Sep 30 2:00 #Schmitt&Cox+2 -- -10:30 - HST 1947 Jun 8 2:00 #Schmitt&Cox+2 -+# Zone NAME GMTOFF RULES FORMAT [UNTIL] -+Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 -+ -10:30 - HST 1933 Apr 30 2:00 -+ -10:30 1:00 HDT 1933 May 21 12:00 -+ -10:30 - HST 1942 Feb 9 2: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. -@@ -633,9 +635,9 @@ - # From Paul Eggert (2002-10-20): - # - # The information in the rest of this paragraph is derived from the --# <a href="http://www.dlapr.lib.az.us/links/daylight.htm"> --# Daylight Saving Time web page (2002-01-23)</a> maintained by the --# Arizona State Library, Archives and Public Records. -+# Daylight Saving Time web page -+# <http://www.dlapr.lib.az.us/links/daylight.htm> (2002-01-23) -+# maintained by the Arizona State Library, Archives and Public Records. - # Between 1944-01-01 and 1944-04-01 the State of Arizona used standard - # time, but by federal law railroads, airlines, bus lines, military - # personnel, and some engaged in interstate commerce continued to -@@ -649,10 +651,11 @@ - # Shanks says the 1944 experiment came to an end on 1944-03-17. - # Go with the Arizona State Library instead. - -+# Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42 -- -7:00 US M%sT 1944 Jan 1 00:01 -- -7:00 - MST 1944 Apr 1 00:01 -- -7:00 US M%sT 1944 Oct 1 00:01 -+ -7:00 US M%sT 1944 Jan 1 0:01 -+ -7:00 - MST 1944 Apr 1 0:01 -+ -7:00 US M%sT 1944 Oct 1 0:01 - -7:00 - MST 1967 - -7:00 US M%sT 1968 Mar 21 - -7:00 - MST -@@ -676,24 +679,22 @@ - # - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11 -- -8:00 US P%sT 1923 May 13 2:00 -+ -8:00 US P%sT 1923 May 13 2:00 - -7:00 US M%sT 1974 -- -7:00 - MST 1974 Feb 3 2:00 -+ -7:00 - MST 1974 Feb 3 2:00 - -7:00 US M%sT - - # Indiana - # - # For a map of Indiana's time zone regions, see: --# <a href="http://www.mccsc.edu/time.html"> --# What time is it in Indiana? --# </a> (2006-03-01) -+# http://en.wikipedia.org/wiki/Time_in_Indiana - # - # From Paul Eggert (2007-08-17): - # Since 1970, most of Indiana has been like America/Indiana/Indianapolis, - # with the following exceptions: - # - # - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer, --# Vandenburgh, and Warrick counties have been like America/Chicago. -+# Vanderburgh, and Warrick counties have been like America/Chicago. - # - # - Dearborn and Ohio counties have been like America/New_York. - # -@@ -712,22 +713,16 @@ - # that they would be ambiguous if we left them at the 'America' level. - # So we reluctantly put them all in a subdirectory 'America/Indiana'. - --# From Paul Eggert (2005-08-16): --# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006. -- --# From Nathan Stratton Treadway (2006-03-30): --# http://www.dot.gov/affairs/dot0406.htm [3705 B] --# From Deborah Goldsmith (2006-01-18): --# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB] --# From Paul Eggert (2006-01-20): --# It says "DOT is relocating the time zone boundary in Indiana to move Starke, -+# From Paul Eggert (2014-06-26): -+# https://www.federalregister.gov/articles/2006/01/20/06-563/standard-time-zone-boundary-in-the-state-of-indiana -+# says "DOT is relocating the time zone boundary in Indiana to move Starke, - # Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the - # Eastern Time Zone to the Central Time Zone.... The effective date of --# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the -+# this rule is 2 a.m. EST Sunday, April 2, 2006, which is the - # changeover date from standard time to Daylight Saving Time." --# Strictly speaking, this means the affected counties will change their --# clocks twice that night, but this obviously is in error. The intent --# is that 01:59:59 EST be followed by 02:00:00 CDT. -+# Strictly speaking, this meant the affected counties changed their -+# clocks twice that night, but this obviously was in error. The intent -+# was that 01:59:59 EST be followed by 02:00:00 CDT. - - # From Gwillim Law (2007-02-10): - # The Associated Press has been reporting that Pulaski County, Indiana is -@@ -739,13 +734,13 @@ - Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S - Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22 -+Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22 - -6:00 US C%sT 1920 - -6:00 Indianapolis C%sT 1942 - -6:00 US C%sT 1946 -- -6:00 Indianapolis C%sT 1955 Apr 24 2:00 -- -5:00 - EST 1957 Sep 29 2:00 -- -6:00 - CST 1958 Apr 27 2:00 -+ -6:00 Indianapolis C%sT 1955 Apr 24 2:00 -+ -5:00 - EST 1957 Sep 29 2:00 -+ -6:00 - CST 1958 Apr 27 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 - -5:00 - EST 2006 -@@ -761,10 +756,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37 - -6:00 US C%sT 1951 -- -6:00 Marengo C%sT 1961 Apr 30 2:00 -+ -6:00 Marengo C%sT 1961 Apr 30 2:00 - -5:00 - EST 1969 -- -5:00 US E%sT 1974 Jan 6 2:00 -- -6:00 1:00 CDT 1974 Oct 27 2:00 -+ -5:00 US E%sT 1974 Jan 6 2:00 -+ -6:00 1:00 CDT 1974 Oct 27 2:00 - -5:00 US E%sT 1976 - -5:00 - EST 2006 - -5:00 US E%sT -@@ -785,11 +780,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53 - -6:00 US C%sT 1946 -- -6:00 Vincennes C%sT 1964 Apr 26 2:00 -+ -6:00 Vincennes C%sT 1964 Apr 26 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 -- -5:00 - EST 2006 Apr 2 2:00 -- -6:00 US C%sT 2007 Nov 4 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 US C%sT 2007 Nov 4 2:00 - -5:00 US E%sT - # - # Perry County, Indiana, switched from eastern to central time in April 2006. -@@ -806,10 +801,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57 - -6:00 US C%sT 1946 -- -6:00 Perry C%sT 1964 Apr 26 2:00 -+ -6:00 Perry C%sT 1964 Apr 26 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 -- -5:00 - EST 2006 Apr 2 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 - -6:00 US C%sT - # - # Pike County, Indiana moved from central to eastern time in 1977, -@@ -822,11 +817,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53 - -6:00 US C%sT 1955 -- -6:00 Pike C%sT 1965 Apr 25 2:00 -- -5:00 - EST 1966 Oct 30 2:00 -- -6:00 US C%sT 1977 Oct 30 2:00 -- -5:00 - EST 2006 Apr 2 2:00 -- -6:00 US C%sT 2007 Nov 4 2:00 -+ -6:00 Pike C%sT 1965 Apr 25 2:00 -+ -5:00 - EST 1966 Oct 30 2:00 -+ -6:00 US C%sT 1977 Oct 30 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 US C%sT 2007 Nov 4 2:00 - -5:00 US E%sT - # - # Starke County, Indiana moved from central to eastern time in 1991, -@@ -844,10 +839,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30 - -6:00 US C%sT 1947 -- -6:00 Starke C%sT 1962 Apr 29 2:00 -- -5:00 - EST 1963 Oct 27 2:00 -- -6:00 US C%sT 1991 Oct 27 2:00 -- -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 Starke C%sT 1962 Apr 29 2:00 -+ -5:00 - EST 1963 Oct 27 2:00 -+ -6:00 US C%sT 1991 Oct 27 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 - -6:00 US C%sT - # - # Pulaski County, Indiana, switched from eastern to central time in -@@ -860,17 +855,17 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35 - -6:00 US C%sT 1946 -- -6:00 Pulaski C%sT 1961 Apr 30 2:00 -+ -6:00 Pulaski C%sT 1961 Apr 30 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 -- -5:00 - EST 2006 Apr 2 2:00 -- -6:00 US C%sT 2007 Mar 11 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 US C%sT 2007 Mar 11 2:00 - -5:00 US E%sT - # - # Switzerland County, Indiana, did not observe DST from 1973 through 2005. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44 -- -6:00 US C%sT 1954 Apr 25 2:00 -+ -6:00 US C%sT 1954 Apr 25 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1973 - -5:00 - EST 2006 -@@ -891,18 +886,17 @@ - -6:00 US C%sT 1921 - -6:00 Louisville C%sT 1942 - -6:00 US C%sT 1946 -- -6:00 Louisville C%sT 1961 Jul 23 2:00 -+ -6:00 Louisville C%sT 1961 Jul 23 2:00 - -5:00 - EST 1968 -- -5:00 US E%sT 1974 Jan 6 2:00 -- -6:00 1:00 CDT 1974 Oct 27 2:00 -+ -5:00 US E%sT 1974 Jan 6 2:00 -+ -6:00 1:00 CDT 1974 Oct 27 2:00 - -5:00 US E%sT - # - # Wayne County, Kentucky - # --# From --# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml"> --# Lake Cumberland LIFE --# </a> (1999-01-29) via WKYM-101.7: -+# From Lake Cumberland LIFE -+# http://www.lake-cumberland.com/life/archive/news990129time.shtml -+# (1999-01-29) via WKYM-101.7: - # Clinton County has joined Wayne County in asking the DoT to change from - # the Central to the Eastern time zone.... The Wayne County government made - # the same request in December. And while Russell County officials have not -@@ -919,9 +913,8 @@ - # - # From Paul Eggert (2001-07-16): - # The final rule was published in the --# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22"> --# Federal Register 65, 160 (2000-08-17), page 50154-50158. --# </a> -+# Federal Register 65, 160 (2000-08-17), pp 50154-50158. -+# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22 - # - Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36 - -6:00 US C%sT 1946 -@@ -946,9 +939,8 @@ - # See America/North_Dakota/Center for the Oliver County, ND change. - # West Wendover, NV officially switched from Pacific to mountain time on - # 1999-10-31. See the --# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15"> --# Federal Register 64, 203 (1999-10-21), page 56705-56707. --# </a> -+# Federal Register 64, 203 (1999-10-21), pp 56705-56707. -+# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15 - # However, the Federal Register says that West Wendover already operated - # on mountain time, and the rule merely made this official; - # hence a separate tz entry is not needed. -@@ -986,12 +978,12 @@ - Rule Detroit 1967 only - Oct lastSun 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Detroit -5:32:11 - LMT 1905 -- -6:00 - CST 1915 May 15 2:00 -+ -6:00 - CST 1915 May 15 2:00 - -5:00 - EST 1942 - -5:00 US E%sT 1946 - -5:00 Detroit E%sT 1973 - -5:00 US E%sT 1975 -- -5:00 - EST 1975 Apr 27 2:00 -+ -5:00 - EST 1975 Apr 27 2:00 - -5:00 US E%sT - # - # Dickinson, Gogebic, Iron, and Menominee Counties, Michigan, -@@ -1004,8 +996,8 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00 - -6:00 US C%sT 1946 -- -6:00 Menominee C%sT 1969 Apr 27 2:00 -- -5:00 - EST 1973 Apr 29 2:00 -+ -6:00 Menominee C%sT 1969 Apr 27 2:00 -+ -5:00 - EST 1973 Apr 29 2:00 - -6:00 US C%sT - - # Navassa -@@ -1022,19 +1014,19 @@ - ################################################################################ - - --# From Paul Eggert (2006-03-22): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Other sources occasionally used include: - # -@@ -1042,9 +1034,9 @@ - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), - # which I found in the UCLA library. - # --# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf"> - # William Willett, The Waste of Daylight, 19th edition --# </a> (1914-03) -+# <http://cs.ucla.edu/~eggert/The-Waste-of-Daylight-19th.pdf> -+# [PDF] (1914-03) - # - # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 - # <http://www.jstor.org/stable/1774359>. -@@ -1053,11 +1045,11 @@ - - # Canada - --# From Alain LaBont<e'> (1994-11-14): -+# From Alain LaBonté (1994-11-14): - # I post here the time zone abbreviations standardized in Canada - # for both English and French in the CAN/CSA-Z234.4-89 standard.... - # --# UTC Standard time Daylight savings time -+# UTC Standard time Daylight saving time - # offset French English French English - # -2:30 - - HAT NDT - # -3 - - HAA ADT -@@ -1070,7 +1062,7 @@ - # -9 HNY YST - - - # - # HN: Heure Normale ST: Standard Time --# HA: Heure Avanc<e'>e DT: Daylight saving Time -+# HA: Heure Avancée DT: Daylight saving Time - # - # A: de l'Atlantique Atlantic - # C: du Centre Central -@@ -1085,7 +1077,7 @@ - # From Paul Eggert (1994-11-22): - # Alas, this sort of thing must be handled by localization software. - --# Unless otherwise specified, the data for Canada are all from Shanks -+# Unless otherwise specified, the data entries for Canada are all from Shanks - # & Pottenger. - - # From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31, -@@ -1132,17 +1124,16 @@ - # An amendment to the Interpretation Act was registered on February 19/2007.... - # http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf - --# From Paul Eggert (2006-04-25): -+# From Paul Eggert (2014-10-18): - # H. David Matthews and Mary Vincent's map --# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp"> - # "It's about TIME", _Canadian Geographic_ (September-October 1998) --# </a> contains detailed boundaries for regions observing nonstandard -+# http://www.canadiangeographic.ca/Magazine/SO98/alacarte.asp -+# contains detailed boundaries for regions observing nonstandard - # time and daylight saving time arrangements in Canada circa 1998. - # --# INMS, the Institute for National Measurement Standards in Ottawa, has <a --# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php"> --# information about standard and daylight saving time zones in Canada. --# </a> (updated periodically). -+# National Research Council Canada maintains info about time zones and DST. -+# http://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html -+# http://www.nrc-cnrc.gc.ca/eng/services/time/faq/index.html#Q5 - # Its unofficial information is often taken from Matthews and Vincent. - - # From Paul Eggert (2006-06-27): -@@ -1151,9 +1142,7 @@ - - # From Chris Walton (2011-12-01) - # In the first of Tammy Hardwick's articles --# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260"> - # http://www.ilovecreston.com/?p=articles&t=spec&ar=260 --# </a> - # she quotes the Friday November 1/1918 edition of the Creston Review. - # The quote includes these two statements: - # 'Sunday the CPR went back to the old system of time...' -@@ -1221,9 +1210,7 @@ - # Time to Standard Time and from Standard Time to Daylight Savings Time - # now occurs at 2:00AM. - # ... --# <a href="http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm"> - # http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm --# </a> - # ... - # MICHAEL PELLEY | Manager of Enterprise Architecture - Solution Delivery - # Office of the Chief Information Officer -@@ -1259,7 +1246,7 @@ - -3:30 - NST 1936 - -3:30 StJohns N%sT 1942 May 11 - -3:30 Canada N%sT 1946 -- -3:30 StJohns N%sT 1966 Mar 15 2:00 -+ -3:30 StJohns N%sT 1966 Mar 15 2:00 - -4:00 StJohns A%sT 2011 Nov - -4:00 Canada A%sT - -@@ -1320,7 +1307,7 @@ - Zone America/Halifax -4:14:24 - LMT 1902 Jun 15 - -4:00 Halifax A%sT 1918 - -4:00 Canada A%sT 1919 -- -4:00 Halifax A%sT 1942 Feb 9 2:00s -+ -4:00 Halifax A%sT 1942 Feb 9 2:00s - -4:00 Canada A%sT 1946 - -4:00 Halifax A%sT 1974 - -4:00 Canada A%sT -@@ -1379,7 +1366,7 @@ - # meridian is supposed to observe AST, but residents as far east as - # Natashquan use EST/EDT, and residents east of Natashquan use AST. - # The Quebec department of justice writes in --# "The situation in Minganie and Basse-Cote-Nord" -+# "The situation in Minganie and Basse-Côte-Nord" - # http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm - # that the coastal strip from just east of Natashquan to Blanc-Sablon - # observes Atlantic standard time all year round. -@@ -1387,7 +1374,6 @@ - # says this common practice was codified into law as of 2007. - # For lack of better info, guess this practice began around 1970, contra to - # Shanks & Pottenger who have this region observing AST/ADT. --# for post-1970 data America/Puerto_Rico. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Mont 1917 only - Mar 25 2:00 1:00 D -@@ -1401,18 +1387,10 @@ - Rule Mont 1924 only - May 17 2:00 1:00 D - Rule Mont 1924 1926 - Sep lastSun 2:30 0 S - Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D --# The 1927-to-1937 rules can be expressed more simply as --# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D --# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S --# The rules below avoid use of 24:00 --# (which pre-1998 versions of zic cannot handle). --Rule Mont 1927 only - May 1 0:00 1:00 D --Rule Mont 1927 1932 - Sep lastSun 0:00 0 S --Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D --Rule Mont 1932 only - May 1 0:00 1:00 D --Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D --Rule Mont 1933 only - Oct 1 0:00 0 S --Rule Mont 1934 1939 - Sep lastSun 0:00 0 S -+Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D -+Rule Mont 1927 1937 - Sep lastSat 24:00 0 S -+Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D -+Rule Mont 1938 1939 - Sep lastSun 0:00 0 S - Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D - Rule Mont 1945 1948 - Sep lastSun 2:00 0 S - Rule Mont 1949 1950 - Oct lastSun 2:00 0 S -@@ -1426,7 +1404,7 @@ - Zone America/Montreal -4:54:16 - LMT 1884 - -5:00 Mont E%sT 1918 - -5:00 Canada E%sT 1919 -- -5:00 Mont E%sT 1942 Feb 9 2:00s -+ -5:00 Mont E%sT 1942 Feb 9 2:00s - -5:00 Canada E%sT 1946 - -5:00 Mont E%sT 1974 - -5:00 Canada E%sT -@@ -1448,7 +1426,7 @@ - # have already done so. In Orillia DST was to run until Saturday, - # 1912-08-31 (no time mentioned), but it was met with considerable - # hostility from certain segments of the public, and was revoked after --# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but -+# only two weeks - I copied it as Saturday, 1912-07-07, 22:00, but - # presumably that should be -07-06. (1912-06-19, -07-12; also letters - # earlier in June). - # -@@ -1458,10 +1436,8 @@ - # Mark Brader writes that an article in the 1997-10-14 Toronto Star - # says that Atikokan, Ontario currently does not observe DST, - # but will vote on 11-10 whether to use EST/EDT. --# He also writes that the --# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html"> --# Ontario Time Act (1990, Chapter T.9) --# </a> -+# He also writes that the Ontario Time Act (1990, Chapter T.9) -+# http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html - # says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT. - # Officially Atikokan is therefore on CST/CDT, and most likely this report - # concerns a non-official time observed as a matter of local practice. -@@ -1540,9 +1516,7 @@ - # The Journal of The Royal Astronomical Society of Canada, - # volume 26, number 2 (February 1932) and, as of 2010-07-17, - # was available at --# <a href="http://adsabs.harvard.edu/full/1932JRASC..26...49S"> - # http://adsabs.harvard.edu/full/1932JRASC..26...49S --# </a> - # - # It includes the text below (starting on page 57): - # -@@ -1553,26 +1527,26 @@ - # ing in 1930. The information for the province of Quebec is definite, - # for the other provinces only approximate: - # --# Province Daylight saving time used -+# Province Daylight saving time used - # Prince Edward Island Not used. - # Nova Scotia In Halifax only. - # New Brunswick In St. John only. - # Quebec In the following places: --# Montreal Lachine --# Quebec Mont-Royal --# Levis Iberville --# St. Lambert Cap de la Madeleine --# Verdun Loretteville --# Westmount Richmond --# Outremont St. Jerome --# Longueuil Greenfield Park --# Arvida Waterloo --# Chambly-Canton Beaulieu --# Melbourne La Tuque --# St. Theophile Buckingham -+# Montreal Lachine -+# Quebec Mont-Royal -+# Lévis Iberville -+# St. Lambert Cap de la Madelèine -+# Verdun Loretteville -+# Westmount Richmond -+# Outremont St. Jérôme -+# Longueuil Greenfield Park -+# Arvida Waterloo -+# Chambly-Canton Beaulieu -+# Melbourne La Tuque -+# St. Théophile Buckingham - # Ontario Used generally in the cities and towns along --# the southerly part of the province. Not --# used in the northwesterlhy part. -+# the southerly part of the province. Not -+# used in the northwesterly part. - # Manitoba Not used. - # Saskatchewan In Regina only. - # Alberta Not used. -@@ -1641,7 +1615,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Toronto -5:17:32 - LMT 1895 - -5:00 Canada E%sT 1919 -- -5:00 Toronto E%sT 1942 Feb 9 2:00s -+ -5:00 Toronto E%sT 1942 Feb 9 2:00s - -5:00 Canada E%sT 1946 - -5:00 Toronto E%sT 1974 - -5:00 Canada E%sT -@@ -1654,16 +1628,16 @@ - -5:00 Canada E%sT - Zone America/Nipigon -5:53:04 - LMT 1895 - -5:00 Canada E%sT 1940 Sep 29 -- -5:00 1:00 EDT 1942 Feb 9 2:00s -+ -5:00 1:00 EDT 1942 Feb 9 2:00s - -5:00 Canada E%sT - Zone America/Rainy_River -6:18:16 - LMT 1895 - -6:00 Canada C%sT 1940 Sep 29 -- -6:00 1:00 CDT 1942 Feb 9 2:00s -+ -6:00 1:00 CDT 1942 Feb 9 2:00s - -6:00 Canada C%sT - Zone America/Atikokan -6:06:28 - LMT 1895 - -6:00 Canada C%sT 1940 Sep 29 -- -6:00 1:00 CDT 1942 Feb 9 2:00s -- -6:00 Canada C%sT 1945 Sep 30 2:00 -+ -6:00 1:00 CDT 1942 Feb 9 2:00s -+ -6:00 Canada C%sT 1945 Sep 30 2:00 - -5:00 - EST - - -@@ -1676,7 +1650,7 @@ - # the first Sunday of April of each year and two o'clock Central - # Standard Time in the morning of the last Sunday of October next - # following, one hour in advance of Central Standard Time."... --# I believe that the English legislation [of the old time act] had = -+# I believe that the English legislation [of the old time act] had - # been assented to (March 22, 1967).... - # Also, as far as I can tell, there was no order-in-council varying - # the time of Daylight Saving Time for 2005 and so the provisions of -@@ -1799,12 +1773,12 @@ - Rule Swift 1960 1961 - Sep lastSun 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Regina -6:58:36 - LMT 1905 Sep -- -7:00 Regina M%sT 1960 Apr lastSun 2:00 -+ -7:00 Regina M%sT 1960 Apr lastSun 2:00 - -6:00 - CST - Zone America/Swift_Current -7:11:20 - LMT 1905 Sep -- -7:00 Canada M%sT 1946 Apr lastSun 2:00 -+ -7:00 Canada M%sT 1946 Apr lastSun 2:00 - -7:00 Regina M%sT 1950 -- -7:00 Swift M%sT 1972 Apr lastSun 2:00 -+ -7:00 Swift M%sT 1972 Apr lastSun 2:00 - -6:00 - CST - - -@@ -1854,9 +1828,7 @@ - # Earlier this year I stumbled across a detailed article about the time - # keeping history of Creston; it was written by Tammy Hardwick who is the - # manager of the Creston & District Museum. The article was written in May 2009. --# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260"> - # http://www.ilovecreston.com/?p=articles&t=spec&ar=260 --# </a> - # According to the article, Creston has not changed its clocks since June 1918. - # i.e. Creston has been stuck on UTC-7 for 93 years. - # Dawson Creek, on the other hand, changed its clocks as recently as April 1972. -@@ -1864,18 +1836,16 @@ - # Unfortunately the exact date for the time change in June 1918 remains - # unknown and will be difficult to ascertain. I e-mailed Tammy a few months - # ago to ask if Sunday June 2 was a reasonable guess. She said it was just --# as plausible as any other date (in June). She also said that after writing the --# article she had discovered another time change in 1916; this is the subject --# of another article which she wrote in October 2010. --# <a href="http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56"> -+# as plausible as any other date (in June). She also said that after writing -+# the article she had discovered another time change in 1916; this is the -+# subject of another article which she wrote in October 2010. - # http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56 --# </a> - - # Here is a summary of the three clock change events in Creston's history: - # 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7) - # Exact date unknown - # 2. Oct 1916: switch to Pacific Standard Time (GMT-8) --# Exact date in October unknown; Sunday October 1 is a reasonable guess. -+# Exact date in October unknown; Sunday October 1 is a reasonable guess. - # 3. June 1918: switch to Pacific Daylight Time (GMT-7) - # Exact date in June unknown; Sunday June 2 is a reasonable guess. - # note#1: -@@ -1888,9 +1858,7 @@ - # There is no guarantee that Creston will remain on Mountain Standard Time - # (UTC-7) forever. - # The subject was debated at least once this year by the town Council. --# <a href="http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html"> - # http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html --# </a> - - # During a period WWII, summer time (Daylight saying) was mandatory in Canada. - # In Creston, that was handled by shifting the area to PST (-8:00) then applying -@@ -1917,7 +1885,7 @@ - -8:00 Canada P%sT - Zone America/Dawson_Creek -8:00:56 - LMT 1884 - -8:00 Canada P%sT 1947 -- -8:00 Vanc P%sT 1972 Aug 30 2:00 -+ -8:00 Vanc P%sT 1972 Aug 30 2:00 - -7:00 - MST - Zone America/Creston -7:46:04 - LMT 1884 - -7:00 - MST 1916 Oct 1 -@@ -1944,18 +1912,17 @@ - - # From Rives McDow (1999-09-04): - # Nunavut ... moved ... to incorporate the whole territory into one time zone. --# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html"> - # Nunavut moves to single time zone Oct. 31 --# </a> -+# http://www.nunatsiaq.com/nunavut/nvt90903_13.html - # - # From Antoine Leca (1999-09-06): - # We then need to create a new timezone for the Kitikmeot region of Nunavut - # to differentiate it from the Yellowknife region. - - # From Paul Eggert (1999-09-20): --# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html"> - # Basic Facts: The New Territory --# </a> (1999) reports that Pangnirtung operates on eastern time, -+# http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html -+# (1999) reports that Pangnirtung operates on eastern time, - # and that Coral Harbour does not observe DST. We don't know when - # Pangnirtung switched to eastern time; we'll guess 1995. - -@@ -1983,8 +1950,8 @@ - # the current state of affairs. - - # From Michaela Rodrigue, writing in the --# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html"> --# Nunatsiaq News (1999-11-19)</a>: -+# Nunatsiaq News (1999-11-19): -+# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html - # Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones, - # central - or Nunavut time - for government offices, and eastern time - # for municipal offices and schools.... Igloolik [was similar but then] -@@ -2002,10 +1969,8 @@ - # Central Time and Southampton Island [in the Central zone] is not - # required to use daylight savings. - --# From --# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html"> --# Nunavut now has two time zones --# </a> (2000-11-10): -+# From <http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html> -+# Nunavut now has two time zones (2000-11-10): - # The Nunavut government would allow its employees in Kugluktuk and - # Cambridge Bay to operate on central time year-round, putting them - # one hour behind the rest of Nunavut for six months during the winter. -@@ -2033,10 +1998,7 @@ - # [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).] - - # From Gwillim Law (2005-05-21): --# According to maps at --# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg --# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg --# (both dated 2003), and -+# According to ... - # http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp - # (from a 1998 Canadian Geographic article), the de facto and de jure time - # for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year -@@ -2045,9 +2007,11 @@ - # predates the creation of Nunavut, it probably goes back many years.... - # The Inuktitut name of Coral Harbour is Sallit, but it's rarely used. - # --# From Paul Eggert (2005-07-26): -+# From Paul Eggert (2014-10-17): - # For lack of better information, assume that Southampton Island observed --# daylight saving only during wartime. -+# daylight saving only during wartime. Gwillim Law's email also -+# mentioned maps now maintained by National Research Council Canada; -+# see above for an up-to-date link. - - # From Chris Walton (2007-03-01): - # ... the community of Resolute (located on Cornwallis Island in -@@ -2096,9 +2060,7 @@ - # used to be the mayor of Resolute Bay and he apparently owns half the - # businesses including "South Camp Inn." This website has some info on - # Aziz: --# <a href="http://www.uphere.ca/node/493"> - # http://www.uphere.ca/node/493 --# </a> - # - # I sent Aziz an e-mail asking when Resolute Bay had stopped using - # Eastern Standard Time. -@@ -2136,47 +2098,47 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # aka Panniqtuuq - Zone America/Pangnirtung 0 - zzz 1921 # trading post est. -- -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00 -- -5:00 Canada E%sT 1999 Oct 31 2:00 -- -6:00 Canada C%sT 2000 Oct 29 2:00 -+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00 -+ -5:00 Canada E%sT 1999 Oct 31 2:00 -+ -6:00 Canada C%sT 2000 Oct 29 2:00 - -5:00 Canada E%sT - # formerly Frobisher Bay - Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est. -- -5:00 NT_YK E%sT 1999 Oct 31 2:00 -- -6:00 Canada C%sT 2000 Oct 29 2:00 -+ -5:00 NT_YK E%sT 1999 Oct 31 2:00 -+ -6:00 Canada C%sT 2000 Oct 29 2:00 - -5:00 Canada E%sT - # aka Qausuittuq - Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded -- -6:00 NT_YK C%sT 2000 Oct 29 2:00 -- -5:00 - EST 2001 Apr 1 3:00 -- -6:00 Canada C%sT 2006 Oct 29 2:00 -- -5:00 - EST 2007 Mar 11 3:00 -+ -6:00 NT_YK C%sT 2000 Oct 29 2:00 -+ -5:00 - EST 2001 Apr 1 3:00 -+ -6:00 Canada C%sT 2006 Oct 29 2:00 -+ -5:00 - EST 2007 Mar 11 3:00 - -6:00 Canada C%sT - # aka Kangiqiniq - Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded -- -6:00 NT_YK C%sT 2000 Oct 29 2:00 -- -5:00 - EST 2001 Apr 1 3:00 -+ -6:00 NT_YK C%sT 2000 Oct 29 2:00 -+ -5:00 - EST 2001 Apr 1 3:00 - -6:00 Canada C%sT - # aka Iqaluktuuttiaq - Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.? -- -7:00 NT_YK M%sT 1999 Oct 31 2:00 -- -6:00 Canada C%sT 2000 Oct 29 2:00 -- -5:00 - EST 2000 Nov 5 0:00 -- -6:00 - CST 2001 Apr 1 3:00 -+ -7:00 NT_YK M%sT 1999 Oct 31 2:00 -+ -6:00 Canada C%sT 2000 Oct 29 2:00 -+ -5:00 - EST 2000 Nov 5 0:00 -+ -6:00 - CST 2001 Apr 1 3:00 - -7:00 Canada M%sT - Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded? - -7:00 NT_YK M%sT 1980 - -7:00 Canada M%sT - Zone America/Inuvik 0 - zzz 1953 # Inuvik founded -- -8:00 NT_YK P%sT 1979 Apr lastSun 2:00 -+ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00 - -7:00 NT_YK M%sT 1980 - -7:00 Canada M%sT - Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20 -- -9:00 NT_YK Y%sT 1966 Jul 1 2:00 -+ -9:00 NT_YK Y%sT 1966 Jul 1 2:00 - -8:00 NT_YK P%sT 1980 - -8:00 Canada P%sT - Zone America/Dawson -9:17:40 - LMT 1900 Aug 20 -- -9:00 NT_YK Y%sT 1973 Oct 28 0:00 -+ -9:00 NT_YK Y%sT 1973 Oct 28 0:00 - -8:00 NT_YK P%sT 1980 - -8:00 Canada P%sT - -@@ -2188,9 +2150,8 @@ - # From Paul Eggert (2001-03-05): - # The Investigation and Analysis Service of the - # Mexican Library of Congress (MLoC) has published a --# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/"> - # history of Mexican local time (in Spanish) --# </a>. -+# http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/ - # - # Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC. - # (In all cases we go with the MLoC.) -@@ -2235,9 +2196,8 @@ - # -------------- End Forwarded Message -------------- - # From Paul Eggert (1996-06-12): - # For an English translation of the decree, see --# <a href="http://mexico-travel.com/extra/timezone_eng.html"> - # "Diario Oficial: Time Zone Changeover" (1996-01-04). --# </a> -+# http://mexico-travel.com/extra/timezone_eng.html - - # From Rives McDow (1998-10-08): - # The State of Quintana Roo has reverted back to central STD and DST times -@@ -2249,7 +2209,7 @@ - # savings time so as to stay on the same time zone as the southern part of - # Arizona year round. - --# From Jesper Norgaard, translating -+# From Jesper Nørgaard, translating - # <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17): - # In Oaxaca, the 55.000 teachers from the Section 22 of the National - # Syndicate of Education Workers, refuse to apply daylight saving each -@@ -2262,7 +2222,7 @@ - # January 17, 2000 - The Energy Secretary, Ernesto Martens, announced - # that Summer Time will be reduced from seven to five months, starting - # this year.... --# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001> -+# http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001 - # [translated], says "summer time will ... take effect on the first Sunday - # in May, and end on the last Sunday of September. - -@@ -2270,23 +2230,22 @@ - # The 2001-01-24 traditional Washington Post contained the page one - # story "Timely Issue Divides Mexicans."... - # http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html --# ... Mexico City Mayor Lopez Obrador "...is threatening to keep -+# ... Mexico City Mayor López Obrador "...is threatening to keep - # Mexico City and its 20 million residents on a different time than --# the rest of the country..." In particular, Lopez Obrador would abolish -+# the rest of the country..." In particular, López Obrador would abolish - # observation of Daylight Saving Time. - --# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre"> - # Official statute published by the Energy Department --# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules, --# and Sonora with no DST. This was reported by Jesper Norgaard (2001-02-03). -+# http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre -+# (2001-02-01) shows Baja and Chihauhua as still using US DST rules, -+# and Sonora with no DST. This was reported by Jesper Nørgaard (2001-02-03). - - # From Paul Eggert (2001-03-03): - # --# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html"> -+# http://www.latimes.com/news/nation/20010303/t000018766.html - # James F. Smith writes in today's LA Times --# </a> - # * Sonora will continue to observe standard time. --# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that -+# * Last week Mexico City's mayor Andrés Manuel López Obrador decreed that - # the Federal District will not adopt DST. - # * 4 of 16 district leaders announced they'll ignore the decree. - # * The decree does not affect federal-controlled facilities including -@@ -2294,7 +2253,7 @@ - # - # For now we'll assume that the Federal District will bow to federal rules. - --# From Jesper Norgaard (2001-04-01): -+# From Jesper Nørgaard (2001-04-01): - # I found some references to the Mexican application of daylight - # saving, which modifies what I had already sent you, stating earlier - # that a number of northern Mexican states would go on daylight -@@ -2303,7 +2262,7 @@ - # saving all year) will follow the original decree of president - # Vicente Fox, starting daylight saving May 6, 2001 and ending - # September 30, 2001. --# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp> -+# References: "Diario de Monterrey" <http://www.diariodemonterrey.com/index.asp> - # Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31) - - # From Reuters (2001-09-04): -@@ -2315,7 +2274,7 @@ - # standard time. "This is so residents of the Federal District are not - # subject to unexpected time changes," a statement from the court said. - --# From Jesper Norgaard Welen (2002-03-12): -+# From Jesper Nørgaard Welen (2002-03-12): - # ... consulting my local grocery store(!) and my coworkers, they all insisted - # that a new decision had been made to reinstate US style DST in Mexico.... - # http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20) -@@ -2329,48 +2288,36 @@ - # > the United States. - # Now this has passed both the Congress and the Senate, so starting from - # 2010, some border regions will be the same: --# <a href="http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/"> - # http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/ --# </a> --# <a href="http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939"> - # http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939 --# </a> - # (Spanish) - # - # Could not find the new law text, but the proposed law text changes are here: --# <a href="http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf"> - # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf --# </a> - # (Gaceta Parlamentaria) - # - # There is also a list of the votes here: --# <a href="http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html"> - # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html --# </a> - # - # Our page: --# <a href="http://www.timeanddate.com/news/time/north-mexico-dst-change.html"> - # http://www.timeanddate.com/news/time/north-mexico-dst-change.html --# </a> - - # From Arthur David Olson (2010-01-20): - # The page --# <a href="http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010"> - # http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010 --# </a> - # includes this text: - # En los municipios fronterizos de Tijuana y Mexicali en Baja California; --# Juárez y Ojinaga en Chihuahua; Acuña y Piedras Negras en Coahuila; --# Anáhuac en Nuevo León; y Nuevo Laredo, Reynosa y Matamoros en --# Tamaulipas, la aplicación de este horario estacional surtirá efecto --# desde las dos horas del segundo domingo de marzo y concluirá a las dos -+# Juárez y Ojinaga en Chihuahua; Acuña y Piedras Negras en Coahuila; -+# Anáhuac en Nuevo León; y Nuevo Laredo, Reynosa y Matamoros en -+# Tamaulipas, la aplicación de este horario estacional surtirá efecto -+# desde las dos horas del segundo domingo de marzo y concluirá a las dos - # horas del primer domingo de noviembre. - # En los municipios fronterizos que se encuentren ubicados en la franja --# fronteriza norte en el territorio comprendido entre la línea --# internacional y la línea paralela ubicada a una distancia de veinte --# kilómetros, así como la Ciudad de Ensenada, Baja California, hacia el --# interior del país, la aplicación de este horario estacional surtirá --# efecto desde las dos horas del segundo domingo de marzo y concluirá a -+# fronteriza norte en el territorio comprendido entre la línea -+# internacional y la línea paralela ubicada a una distancia de veinte -+# kilómetros, así como la Ciudad de Ensenada, Baja California, hacia el -+# interior del país, la aplicación de este horario estacional surtirá -+# efecto desde las dos horas del segundo domingo de marzo y concluirá a - # las dos horas del primer domingo de noviembre. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -2389,39 +2336,39 @@ - Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D - Rule Mexico 2002 max - Oct lastSun 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# Quintana Roo -+# Quintana Roo; represented by Cancún - Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56 - -6:00 - CST 1981 Dec 23 - -5:00 Mexico E%sT 1998 Aug 2 2:00 - -6:00 Mexico C%sT --# Campeche, Yucatan -+# Campeche, Yucatán; represented by Mérida - Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32 - -6:00 - CST 1981 Dec 23 - -5:00 - EST 1982 Dec 2 - -6:00 Mexico C%sT --# Coahuila, Durango, Nuevo Leon, Tamaulipas (near US border) -+# Coahuila, Durango, Nuevo León, Tamaulipas (near US border) - Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00 - -6:00 - CST 1988 - -6:00 US C%sT 1989 - -6:00 Mexico C%sT 2010 - -6:00 US C%sT --# Coahuila, Durango, Nuevo Leon, Tamaulipas (away from US border) -+# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border) - Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44 - -6:00 - CST 1988 - -6:00 US C%sT 1989 - -6:00 Mexico C%sT - # Central Mexico --Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24 -+Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 - -7:00 - MST 1931 May 1 23:00 - -6:00 - CST 1931 Oct - -7:00 - MST 1932 Apr 1 -- -6:00 Mexico C%sT 2001 Sep 30 02:00 -+ -6:00 Mexico C%sT 2001 Sep 30 2:00 - -6:00 - CST 2002 Feb 20 - -6:00 Mexico C%sT - # Chihuahua (near US border) --Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20 -+Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 - -7:00 - MST 1931 May 1 23:00 -@@ -2429,7 +2376,7 @@ - -7:00 - MST 1932 Apr 1 - -6:00 - CST 1996 - -6:00 Mexico C%sT 1998 -- -6:00 - CST 1998 Apr Sun>=1 3:00 -+ -6:00 - CST 1998 Apr Sun>=1 3:00 - -7:00 Mexico M%sT 2010 - -7:00 US M%sT - # Chihuahua (away from US border) -@@ -2441,7 +2388,7 @@ - -7:00 - MST 1932 Apr 1 - -6:00 - CST 1996 - -6:00 Mexico C%sT 1998 -- -6:00 - CST 1998 Apr Sun>=1 3:00 -+ -6:00 - CST 1998 Apr Sun>=1 3:00 - -7:00 Mexico M%sT - # Sonora - Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08 -@@ -2457,42 +2404,33 @@ - -7:00 - MST - - # From Alexander Krivenyshev (2010-04-21): --# According to news, Bahía de Banderas (Mexican state of Nayarit) -+# According to news, Bahía de Banderas (Mexican state of Nayarit) - # changed time zone UTC-7 to new time zone UTC-6 on April 4, 2010 (to - # share the same time zone as nearby city Puerto Vallarta, Jalisco). - # - # (Spanish) --# Bahía de Banderas homologa su horario al del centro del --# país, a partir de este domingo --# <a href="http://www.nayarit.gob.mx/notes.asp?id=20748"> -+# Bahía de Banderas homologa su horario al del centro del -+# país, a partir de este domingo - # http://www.nayarit.gob.mx/notes.asp?id=20748 --# </a> - # --# Bahía de Banderas homologa su horario con el del Centro del --# País --# <a href="http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50"> --# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50" --# </a> -+# Bahía de Banderas homologa su horario con el del Centro del -+# País -+# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50 - # - # (English) --# Puerto Vallarta and Bahía de Banderas: One Time Zone --# <a href="http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml"> -+# Puerto Vallarta and Bahía de Banderas: One Time Zone - # http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml --# </a> --# --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_mexico08.html"> - # http://www.worldtimezone.com/dst_news/dst_news_mexico08.html --# </a> - # - # "Mexico's Senate approved the amendments to the Mexican Schedule System that --# will allow Bahía de Banderas and Puerto Vallarta to share the same time -+# will allow Bahía de Banderas and Puerto Vallarta to share the same time - # zone ..." - # Baja California Sur, Nayarit, Sinaloa - - # From Arthur David Olson (2010-05-01): - # Use "Bahia_Banderas" to keep the name to fourteen characters. - -+# Mazatlán - Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 -@@ -2504,6 +2442,7 @@ - -8:00 - PST 1970 - -7:00 Mexico M%sT - -+# Bahía de Banderas - Zone America/Bahia_Banderas -7:01:00 - LMT 1921 Dec 31 23:59:00 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 -@@ -2513,7 +2452,7 @@ - -6:00 - CST 1942 Apr 24 - -7:00 - MST 1949 Jan 14 - -8:00 - PST 1970 -- -7:00 Mexico M%sT 2010 Apr 4 2:00 -+ -7:00 Mexico M%sT 2010 Apr 4 2:00 - -6:00 Mexico C%sT - - # Baja California (near US border) -@@ -2560,7 +2499,7 @@ - # America/Tijuana only in that it did not observe DST from 1976 - # through 1995. This was as per Shanks (1999). But Shanks & Pottenger say - # Ensenada did not observe DST from 1948 through 1975. Guy Harris reports --# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and -+# that the 1987 OAG says "Only Ensenada, Mexicali, San Felipe and - # Tijuana observe DST," which agrees with Shanks & Pottenger but implies that - # DST-observance was a town-by-town matter back then. This concerns - # data after 1970 so most likely there should be at least one Zone -@@ -2573,7 +2512,7 @@ - ############################################################################### - - # Anguilla --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Antigua and Barbuda - # Zone NAME GMTOFF RULES FORMAT [UNTIL] -@@ -2609,8 +2548,8 @@ - Rule Barb 1979 only - Sep 30 2:00 0 S - Rule Barb 1980 only - Sep 25 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown -- -3:58:29 - BMT 1932 # Bridgetown Mean Time -+Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown -+ -3:58:29 - BMT 1932 # Bridgetown Mean Time - -4:00 Barb A%sT - - # Belize -@@ -2640,20 +2579,20 @@ - # http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton -- -4:00 - AST 1974 Apr 28 2:00 -+Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton -+ -4:00 - AST 1974 Apr 28 2:00 - -4:00 Canada A%sT 1976 - -4:00 US A%sT - - # Cayman Is - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown -- -5:07:11 - KMT 1912 Feb # Kingston Mean Time -+Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown -+ -5:07:11 - KMT 1912 Feb # Kingston Mean Time - -5:00 - EST - - # Costa Rica - --# Milne gives -5:36:13.3 as San Jose mean time; round to nearest. -+# Milne gives -5:36:13.3 as San José mean time; round to nearest. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule CR 1979 1980 - Feb lastSun 0:00 1:00 D -@@ -2663,10 +2602,10 @@ - # go with Shanks & Pottenger. - Rule CR 1991 only - Jul 1 0:00 0 S - Rule CR 1992 only - Mar 15 0:00 0 S --# There are too many San Joses elsewhere, so we'll use 'Costa Rica'. -+# There are too many San Josés elsewhere, so we'll use 'Costa Rica'. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose -- -5:36:13 - SJMT 1921 Jan 15 # San Jose Mean Time -+Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José -+ -5:36:13 - SJMT 1921 Jan 15 # San José Mean Time - -6:00 CR C%sT - # Coco - # no information; probably like America/Costa_Rica -@@ -2685,8 +2624,8 @@ - # During the game, play-by-play announcer Jim Hunter noted that - # "We'll be losing two hours of sleep...Cuba switched to Daylight Saving - # Time today." (The "two hour" remark referred to losing one hour of --# sleep on 1999-03-28--when the announcers were in Cuba as it switched --# to DST--and one more hour on 1999-04-04--when the announcers will have -+# sleep on 1999-03-28 - when the announcers were in Cuba as it switched -+# to DST - and one more hour on 1999-04-04 - when the announcers will have - # returned to Baltimore, which switches on that date.) - - # From Steffen Thorsen (2013-11-11): -@@ -2708,16 +2647,16 @@ - # adjustment in Cuba. We will stay in daylight saving time: - # http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html - --# From Jesper Norgaard Welen (2006-10-21): -+# From Jesper Nørgaard Welen (2006-10-21): - # An article in GRANMA INTERNACIONAL claims that Cuba will end - # the 3 years of permanent DST next weekend, see - # http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html - # "On Saturday night, October 28 going into Sunday, October 29, at 01:00, --# watches should be set back one hour -- going back to 00:00 hours -- returning -+# watches should be set back one hour - going back to 00:00 hours - returning - # to the normal schedule.... - - # From Paul Eggert (2007-03-02): --# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday, -+# <http://www.granma.cubaweb.cu/english/news/art89.html>, dated yesterday, - # says Cuban clocks will advance at midnight on March 10. - # For lack of better information, assume Cuba will use US rules, - # except that it switches at midnight standard time as usual. -@@ -2731,10 +2670,10 @@ - # http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES - # http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm - # --# From Alex Kryvenishev (2007-10-25): -+# From Alex Krivenyshev (2007-10-25): - # Here is also article from Granma (Cuba): - # --# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre -+# Regirá el Horario Normal desde el próximo domingo 28 de octubre - # http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html - # - # http://www.worldtimezone.com/dst_news/dst_news_cuba03.html -@@ -2742,23 +2681,18 @@ - # From Arthur David Olson (2008-03-09): - # I'm in Maryland which is now observing United States Eastern Daylight - # Time. At 9:44 local time I used RealPlayer to listen to --# <a href="http://media.enet.cu/radioreloj"> - # http://media.enet.cu/radioreloj --# </a>, a Cuban information station, and heard -+# a Cuban information station, and heard - # the time announced as "ocho cuarenta y cuatro" ("eight forty-four"), - # indicating that Cuba is still on standard time. - - # From Steffen Thorsen (2008-03-12): - # It seems that Cuba will start DST on Sunday, 2007-03-16... - # It was announced yesterday, according to this source (in Spanish): --# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm"> - # http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm --# </a> - # - # Some more background information is posted here: --# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html"> - # http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html --# </a> - # - # The article also says that Cuba has been observing DST since 1963, - # while Shanks (and tzdata) has 1965 as the first date (except in the -@@ -2768,18 +2702,14 @@ - # change some historic records as well. - # - # One example: --# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm"> - # http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm --# </a> - --# From Jesper Norgaard Welen (2008-03-13): -+# From Jesper Nørgaard Welen (2008-03-13): - # The Cuban time change has just been confirmed on the most authoritative - # web site, the Granma. Please check out --# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html"> - # http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html --# </a> - # --# Basically as expected after Steffen Thorsens information, the change -+# Basically as expected after Steffen Thorsen's information, the change - # will take place midnight between Saturday and Sunday. - - # From Arthur David Olson (2008-03-12): -@@ -2790,18 +2720,14 @@ - # midnight between Saturday, March 07, 2009 and Sunday, March 08, 2009- - # not on midnight March 14 / March 15 as previously thought. - # --# <a href="http://www.worldtimezone.com/dst_news/dst_news_cuba05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_cuba05.html - # (in Spanish) --# </a> - - # From Arthur David Olson (2009-03-09) - # I listened over the Internet to --# <a href="http://media.enet.cu/readioreloj"> - # http://media.enet.cu/readioreloj --# </a> - # this morning; when it was 10:05 a. m. here in Bethesda, Maryland the --# the time was announced as "diez cinco"--the same time as here, indicating -+# the time was announced as "diez cinco" - the same time as here, indicating - # that has indeed switched to DST. Assume second Sunday from 2009 forward. - - # From Steffen Thorsen (2011-03-08): -@@ -2810,42 +2736,30 @@ - # changed at all). - # - # Source: --# <a href="http://granma.co.cu/2011/03/08/nacional/artic01.html"> - # http://granma.co.cu/2011/03/08/nacional/artic01.html --# </a> - # - # Our info: --# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html"> - # http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html --# </a> - # - # From Steffen Thorsen (2011-10-30) - # Cuba will end DST two weeks later this year. Instead of going back - # tonight, it has been delayed to 2011-11-13 at 01:00. - # - # One source (Spanish) --# <a href="http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html"> - # http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html --# </a> - # - # Our page: --# <a href="http://www.timeanddate.com/news/time/cuba-time-changes-2011.html"> - # http://www.timeanddate.com/news/time/cuba-time-changes-2011.html --# </a> - # - # From Steffen Thorsen (2012-03-01) - # According to Radio Reloj, Cuba will start DST on Midnight between March - # 31 and April 1. - # - # Radio Reloj has the following info (Spanish): --# <a href="http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril"> - # http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril --# </a> - # - # Our info on it: --# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html"> - # http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html --# </a> - - # From Steffen Thorsen (2012-11-03): - # Radio Reloj and many other sources report that Cuba is changing back -@@ -2901,7 +2815,7 @@ - -5:00 Cuba C%sT - - # Dominica --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Dominican Republic - -@@ -2934,8 +2848,8 @@ - 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 -- -4:00 - AST 2000 Oct 29 02:00 -- -5:00 US E%sT 2000 Dec 3 01:00 -+ -4:00 - AST 2000 Oct 29 2:00 -+ -5:00 US E%sT 2000 Dec 3 1:00 - -4:00 - AST - - # El Salvador -@@ -2946,20 +2860,20 @@ - # There are too many San Salvadors elsewhere, so use America/El_Salvador - # instead of America/San_Salvador. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador -+Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador - -6:00 Salv C%sT - - # Grenada - # Guadeloupe --# St Barthelemy -+# St Barthélemy - # St Martin (French part) --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Guatemala - # - # From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen: - # Diario Co Latino, at --# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079, -+# <http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079>, - # says in an article dated 2006-04-19 that the Guatemalan government had - # decided on that date to advance official time by 60 minutes, to lessen the - # impact of the elevated cost of oil.... Daylight saving time will last from -@@ -2967,7 +2881,7 @@ - # From Paul Eggert (2006-06-22): - # The Ministry of Energy and Mines, press release CP-15/2006 - # (2006-04-19), says DST ends at 24:00. See --# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>. -+# http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Guat 1973 only - Nov 25 0:00 1:00 D -@@ -2984,11 +2898,10 @@ - - # Haiti - # From Gwillim Law (2005-04-15): --# Risto O. Nykanen wrote me that Haiti is now on DST. --# I searched for confirmation, and I found a --# <a href="http://www.haitianconsulate.org/time.doc"> press release -+# Risto O. Nykänen wrote me that Haiti is now on DST. -+# I searched for confirmation, and I found a press release - # on the Web page of the Haitian Consulate in Chicago (2005-03-31), --# </a>. Translated from French, it says: -+# <http://www.haitianconsulate.org/time.doc>. Translated from French, it says: - # - # "The Prime Minister's Communication Office notifies the public in general - # and the press in particular that, following a decision of the Interior -@@ -3065,14 +2978,14 @@ - # <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president - # of Honduras, refused to back down on this. - --# From Jesper Norgaard Welen (2006-08-08): -+# From Jesper Nørgaard Welen (2006-08-08): - # It seems that Honduras has returned from DST to standard time this Monday at - # 00:00 hours (prolonging Sunday to 25 hours duration). - # http://www.worldtimezone.com/dst_news/dst_news_honduras04.html - - # From Paul Eggert (2006-08-08): --# Also see Diario El Heraldo, The country returns to standard time (2006-08-08) --# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>. -+# Also see Diario El Heraldo, The country returns to standard time (2006-08-08). -+# http://www.elheraldo.hn/nota.php?nid=54941&sec=12 - # It mentions executive decree 18-2006. - - # From Steffen Thorsen (2006-08-17): -@@ -3099,23 +3012,34 @@ - # Shanks & Pottenger give -5:07:12, but Milne records -5:07:10.41 from an - # unspecified official document, and says "This time is used throughout the - # island". Go with Milne. Round to the nearest second as required by zic. -+# -+# Shanks & Pottenger give April 28 for the 1974 spring-forward transition, but -+# Lance Neita writes that Prime Minister Michael Manley decreed it January 5. -+# Assume Neita meant Jan 6 02:00, the same as the US. Neita also writes that -+# Manley's supporters associated this act with Manley's nickname "Joshua" -+# (recall that in the Bible the sun stood still at Joshua's request), -+# and with the Rod of Correction which Manley said he had received from -+# Haile Selassie, Emperor of Ethiopia. See: -+# Neita L. The politician in all of us. Jamaica Observer 2014-09-20 -+# http://www.jamaicaobserver.com/columns/The-politician-in-all-of-us_17573647 -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston -+Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston - -5:07:11 - KMT 1912 Feb # Kingston Mean Time -- -5:00 - EST 1974 Apr 28 2:00 -+ -5:00 - EST 1974 - -5:00 US E%sT 1984 - -5:00 - EST - - # Martinique - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France -- -4:04:20 - FFMT 1911 May # Fort-de-France MT -+Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France -+ -4:04:20 - FFMT 1911 May # Fort-de-France MT - -4:00 - AST 1980 Apr 6 - -4:00 1:00 ADT 1980 Sep 28 - -4:00 - AST - - # Montserrat --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Nicaragua - # -@@ -3138,27 +3062,27 @@ - # From Gwillim Law (2005-04-21): - # The Associated Press story on the time change, which can be found at - # http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html --# and elsewhere, says (fifth paragraph, translated from Spanish): "The last -+# and elsewhere, says (fifth paragraph, translated from Spanish): "The last - # time that a change of clocks was applied to save energy was in the year 2000 --# during the Arnoldo Aleman administration."... -+# during the Arnoldo Alemán administration."... - # The northamerica file says that Nicaragua has been on UTC-6 continuously - # since December 1998. I wasn't able to find any details of Nicaraguan time - # changes in 2000. Perhaps a note could be added to the northamerica file, to - # the effect that we have indirect evidence that DST was observed in 2000. - # --# From Jesper Norgaard Welen (2005-11-02): -+# From Jesper Nørgaard Welen (2005-11-02): - # Nicaragua left DST the 2005-10-02 at 00:00 (local time). - # http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm - # (2005-09-26) - # --# From Jesper Norgaard Welen (2006-05-05): -+# From Jesper Nørgaard Welen (2006-05-05): - # http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410 - # (my informal translation) --# By order of the president of the republic, Enrique Bolanos, Nicaragua -+# By order of the president of the republic, Enrique Bolaños, Nicaragua - # advanced by sixty minutes their official time, yesterday at 2 in the --# morning, and will stay that way until 30.th. of september. -+# morning, and will stay that way until 30th of September. - # --# From Jesper Norgaard Welen (2006-09-30): -+# From Jesper Nørgaard Welen (2006-09-30): - # http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf - # My informal translation runs: - # The natural sun time is restored in all the national territory, in that the -@@ -3176,7 +3100,7 @@ - -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time? - -6:00 - CST 1973 May - -5:00 - EST 1975 Feb 16 -- -6:00 Nic C%sT 1992 Jan 1 4:00 -+ -6:00 Nic C%sT 1992 Jan 1 4:00 - -5:00 - EST 1992 Sep 24 - -6:00 - CST 1993 - -5:00 - EST 1997 -@@ -3185,36 +3109,36 @@ - # Panama - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Panama -5:18:08 - LMT 1890 -- -5:19:36 - CMT 1908 Apr 22 # Colon Mean Time -+ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time - -5:00 - EST - - # Puerto Rico - # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan -+Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan - -4:00 - AST 1942 May 3 - -4:00 US A%sT 1946 - -4:00 - AST - - # St Kitts-Nevis - # St Lucia --# See 'southamerica'. -+# See America/Port_of_Spain. - - # St Pierre and Miquelon - # There are too many St Pierres elsewhere, so we'll use 'Miquelon'. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre -+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 - - # St Vincent and the Grenadines --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Turks and Caicos - # - # From Chris Dunn in --# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007> -+# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007 - # (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the - # daylight saving dates for time changes have been adjusted to match - # the recent U.S. change of dates. -@@ -3227,21 +3151,27 @@ - # Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time" - # indicating that the normal ET rules are followed. - # --# From Paul Eggert (2006-05-01): --# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998) --# says they switch at midnight. Go with Shanks & Pottenger. -+# From Paul Eggert (2014-08-19): -+# The 2014-08-13 Cabinet meeting decided to stay on UTC-4 year-round. See: -+# http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm -+# Model this as a switch from EST/EDT to AST ... -+# From Chris Walton (2014-11-04): -+# ... the TCI government appears to have delayed the switch to -+# "permanent daylight saving time" by one year.... -+# http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm - # --# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D --Rule TC 1979 2006 - Oct lastSun 2:00 0 S --Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D --Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D --Rule TC 2007 max - Nov Sun>=1 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Grand_Turk -4:44:32 - LMT 1890 -- -5:07:11 - KMT 1912 Feb # Kingston Mean Time -- -5:00 TC E%sT -+ -5:07:11 - KMT 1912 Feb # Kingston Mean Time -+ -5:00 - EST 1979 -+ -5:00 US E%sT 2015 Nov Sun>=1 2:00 -+ -4:00 - AST - - # British Virgin Is - # Virgin Is --# See 'southamerica'. -+# See America/Port_of_Spain. -+ -+ -+# Local Variables: -+# coding: utf-8 -+# End: ---- ./jdk/make/data/tzdata/pacificnew Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/pacificnew Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - ---- ./jdk/make/data/tzdata/southamerica Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/southamerica Mon Dec 08 12:29:42 2014 -0800 -@@ -21,31 +21,31 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2006-03-22): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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). --# --# For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# 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 - # Association's Standard Schedules Information Manual (IATA SSIM), - # published semiannually. Law sent in several helpful summaries --# of the IATA's data after 1990. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # --# Except where otherwise noted, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# For data circa 1899, a common source is: -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 - # - # Earlier editions of these tables used the North American style (e.g. ARST and - # ARDT for Argentine Standard and Daylight Time), but the following quote -@@ -53,24 +53,24 @@ - # I suggest the use of _Summer time_ instead of the more cumbersome - # _daylight-saving time_. _Summer time_ seems to be in general use - # in Europe and South America. --# -- E O Cutler, _New York Times_ (1937-02-14), quoted in -+# -- E O Cutler, _New York Times_ (1937-02-14), quoted in - # H L Mencken, _The American Language: Supplement I_ (1960), p 466 - # - # Earlier editions of these tables also used the North American style - # for time zones in Brazil, but this was incorrect, as Brazilians say --# "summer time". Reinaldo Goulart, a Sao Paulo businessman active in -+# "summer time". Reinaldo Goulart, a São Paulo businessman active in - # the railroad sector, writes (1999-07-06): - # The subject of time zones is currently a matter of discussion/debate in --# Brazil. Let's say that "the Brasilia time" is considered the --# "official time" because Brasilia is the capital city. --# The other three time zones are called "Brasilia time "minus one" or -+# Brazil. Let's say that "the Brasília time" is considered the -+# "official time" because Brasília is the capital city. -+# The other three time zones are called "Brasília time "minus one" or - # "plus one" or "plus two". As far as I know there is no such - # name/designation as "Eastern Time" or "Central Time". - # So I invented the following (English-language) abbreviations for now. - # Corrections are welcome! - # std dst - # -2:00 FNT FNST Fernando de Noronha --# -3:00 BRT BRST Brasilia -+# -3:00 BRT BRST Brasília - # -4:00 AMT AMST Amazon - # -5:00 ACT ACST Acre - -@@ -84,7 +84,7 @@ - # Argentina: first Sunday in October to first Sunday in April since 1976. - # Double Summer time from 1969 to 1974. Switches at midnight. - --# From U. S. Naval Observatory (1988-01-199): -+# From U. S. Naval Observatory (1988-01-19): - # ARGENTINA 3 H BEHIND UTC - - # From Hernan G. Otero (1995-06-26): -@@ -118,7 +118,7 @@ - # From Hernan G. Otero (1995-06-26): - # These corrections were contributed by InterSoft Argentina S.A., - # obtaining the data from the: --# Talleres de Hidrografia Naval Argentina -+# Talleres de Hidrografía Naval Argentina - # (Argentine Naval Hydrography Institute) - Rule Arg 1989 1993 - Mar Sun>=1 0:00 0 - - Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S -@@ -140,13 +140,13 @@ - Rule Arg 2000 only - Mar 3 0:00 0 - - # - # From Peter Gradelski via Steffen Thorsen (2000-03-01): --# We just checked with our Sao Paulo office and they say the government of -+# We just checked with our São Paulo office and they say the government of - # Argentina decided not to become one of the countries that go on or off DST. - # So Buenos Aires should be -3 hours from GMT at all times. - # --# From Fabian L. Arce Jofre (2000-04-04): -+# From Fabián L. Arce Jofré (2000-04-04): - # The law that claimed DST for Argentina was derogated by President Fernando --# de la Rua on March 2, 2000, because it would make people spend more energy -+# de la Rúa on March 2, 2000, because it would make people spend more energy - # in the winter time, rather than less. The change took effect on March 3. - # - # From Mariano Absatz (2001-06-06): -@@ -179,15 +179,13 @@ - # that Argentina will use DST next year as well, from October to - # March, although exact rules are not given. - # --# From Jesper Norgaard Welen (2007-12-26) -+# From Jesper Nørgaard Welen (2007-12-26) - # The last hurdle of Argentina DST is over, the proposal was approved in --# the lower chamber too (Deputados) with a vote 192 for and 2 against. -+# the lower chamber too (Diputados) with a vote 192 for and 2 against. - # By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to - # the original scanned proposal, where the dates and the zero hours are - # clear and unambiguous...This is the article about final approval: --# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996"> - # http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996 --# </a> - # - # From Paul Eggert (2007-12-22): - # For dates after mid-2008, the following rules are my guesses and -@@ -197,13 +195,8 @@ - # As per message from Carlos Alberto Fonseca Arauz (Nicaragua), - # Argentina will start DST on Sunday October 19, 2008. - # --# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_argentina03.html --# </a> --# OR --# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)"> - # http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish) --# </a> - - # From Rodrigo Severo (2008-10-06): - # Here is some info available at a Gentoo bug related to TZ on Argentina's DST: -@@ -212,48 +205,39 @@ - # Hi, there is a problem with timezone-data-2008e and maybe with - # timezone-data-2008f - # Argentinian law [Number] 25.155 is no longer valid. --# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm"> - # http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm --# </a> - # The new one is law [Number] 26.350 --# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm"> - # http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm --# </a> - # So there is no summer time in Argentina for now. - - # From Mariano Absatz (2008-10-20): --# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina --# From 2008-10-19 until 2009-03-15 --# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01"> -+# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST -+# in Argentina from 2008-10-19 until 2009-03-15. - # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01 --# </a> - # --# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer 2008/2009: --# Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La Pampa, Neuquen, Rio Negro, Chubut, Santa Cruz --# and Tierra del Fuego --# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01"> -+ -+# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer -+# 2008/2009: Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La -+# Pampa, Neuquén, Rio Negro, Chubut, Santa Cruz and Tierra del Fuego - # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01 --# </a> - # --# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying --# it will not apply DST either (even when it was not included in Decree 1705/2008) --# <a href="http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc"> -+# Press release 235 dated Saturday October 18th, from the Government of the -+# Province of Jujuy saying it will not apply DST either (even when it was not -+# included in Decree 1705/2008). - # http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc --# </a> - - # From fullinet (2009-10-18): - # As announced in --# <a hef="http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356"> - # http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356 --# </a> --# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change") -+# (an official .gob.ar) under title: "Sin Cambio de Hora" -+# (English: "No hour change"). - # --# "Por el momento, el Gobierno Nacional resolvio no modificar la hora --# oficial, decision que estaba en estudio para su implementacion el --# domingo 18 de octubre. Desde el Ministerio de Planificacion se anuncio --# que la Argentina hoy, en estas condiciones meteorologicas, no necesita --# la modificacion del huso horario, ya que 2009 nos encuentra con --# crecimiento en la produccion y distribucion energetica." -+# "Por el momento, el Gobierno Nacional resolvió no modificar la hora -+# oficial, decisión que estaba en estudio para su implementación el -+# domingo 18 de octubre. Desde el Ministerio de Planificación se anunció -+# que la Argentina hoy, en estas condiciones meteorológicas, no necesita -+# la modificación del huso horario, ya que 2009 nos encuentra con -+# crecimiento en la producción y distribución energética." - - Rule Arg 2007 only - Dec 30 0:00 1:00 S - Rule Arg 2008 2009 - Mar Sun>=15 0:00 0 - -@@ -267,10 +251,10 @@ - # It's Law No. 7,210. This change is due to a public power emergency, so for - # now we'll assume it's for this year only. - # --# From Paul Eggert (2006-03-22): --# <a href="http://www.spicasc.net/horvera.html"> --# Hora de verano para la Republica Argentina (2003-06-08) --# </a> says that standard time in Argentina from 1894-10-31 -+# From Paul Eggert (2014-08-09): -+# Hora de verano para la República Argentina -+# http://buenasiembra.com.ar/esoterismo/astrologia/hora-de-verano-de-la-republica-argentina-27.html -+# says that standard time in Argentina from 1894-10-31 - # to 1920-05-01 was -4:16:48.25. Go with this more-precise value - # over Shanks & Pottenger. - # -@@ -285,10 +269,10 @@ - # time in October 17th. - # - # Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz, --# Tierra del Fuego, Tucuman. -+# Tierra del Fuego, Tucumán. - # - # From Mariano Absatz (2004-06-14): --# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00 -+# ... this weekend, the Province of Tucumán decided it'd go back to UTC-03:00 - # yesterday midnight (that is, at 24:00 Saturday 12th), since the people's - # annoyance with the change is much higher than the power savings obtained.... - # -@@ -323,49 +307,38 @@ - # Here are articles that Argentina Province San Luis is planning to end DST - # as earlier as upcoming Monday January 21, 2008 or February 2008: - # --# Provincia argentina retrasa reloj y marca diferencia con resto del pais -+# Provincia argentina retrasa reloj y marca diferencia con resto del país - # (Argentine Province delayed clock and mark difference with the rest of the - # country) --# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel"> - # http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel --# </a> - # - # Es inminente que en San Luis atrasen una hora los relojes - # (It is imminent in San Luis clocks one hour delay) --# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414"> --# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414 --# </a> --# --# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html"> -+# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html - # http://www.worldtimezone.net/dst_news/dst_news_argentina02.html --# </a> - --# From Jesper Norgaard Welen (2008-01-18): -+# From Jesper Nørgaard Welen (2008-01-18): - # The page of the San Luis provincial government --# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812"> - # http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812 --# </a> - # confirms what Alex Krivenyshev has earlier sent to the tz - # emailing list about that San Luis plans to return to standard - # time much earlier than the rest of the country. It also - # confirms that upon request the provinces San Juan and Mendoza - # refused to follow San Luis in this change. - # --# The change is supposed to take place Monday the 21.st at 0:00 -+# The change is supposed to take place Monday the 21st at 0:00 - # hours. As far as I understand it if this goes ahead, we need - # a new timezone for San Luis (although there are also documented - # independent changes in the southamerica file of San Luis in - # 1990 and 1991 which has not been confirmed). - --# From Jesper Norgaard Welen (2008-01-25): -+# From Jesper Nørgaard Welen (2008-01-25): - # Unfortunately the below page has become defunct, about the San Luis - # time change. Perhaps because it now is part of a group of pages "Most - # important pages of 2008." - # - # You can use --# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834"> - # http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834 --# </a> - # instead it seems. Or use "Buscador" from the main page of the San Luis - # government, and fill in "huso" and click OK, and you will get 3 pages - # from which the first one is identical to the above. -@@ -385,9 +358,9 @@ - # back in 2004, when these provinces changed to UTC-4 for a few days, I - # mailed them personally and never got an answer). - --# From Paul Eggert (2008-06-30): --# Unless otherwise specified, data are from Shanks & Pottenger through 1992, --# from the IATA otherwise. As noted below, Shanks & Pottenger say that -+# From Paul Eggert (2014-08-12): -+# Unless otherwise specified, data entries are from Shanks & Pottenger through -+# 1992, from the IATA otherwise. As noted below, Shanks & Pottenger say that - # America/Cordoba split into 6 subregions during 1991/1992, one of which - # was America/San_Luis, but we haven't verified this yet so for now we'll - # keep America/Cordoba a single region rather than splitting it into the -@@ -399,14 +372,9 @@ - # to utc-04:00 until the second Saturday in October... - # - # The press release is at --# <a href="http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102"> - # http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102 --# </a> --# (I couldn't find the decree, but --# <a href="http://www.sanluis.gov.ar"> --# www.sanluis.gov.ar --# <a/> --# is the official page for the Province Government). -+# (I couldn't find the decree, but www.sanluis.gov.ar -+# is the official page for the Province Government.) - # - # There's also a note in only one of the major national papers ... - # http://www.lanacion.com.ar/nota.asp?nota_id=1107912 -@@ -423,9 +391,7 @@ - # ...the Province of San Luis is a case in itself. - # - # The Law at --# <a href="http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276>" - # http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276 --# </a> - # is ambiguous because establishes a calendar from the 2nd Sunday in - # October at 0:00 thru the 2nd Saturday in March at 24:00 and the - # complement of that starting on the 2nd Sunday of March at 0:00 and -@@ -454,19 +420,15 @@ - # ... - - # From Alexander Krivenyshev (2010-04-09): --# According to news reports from El Diario de la Republica Province San -+# According to news reports from El Diario de la República Province San - # Luis, Argentina (standard time UTC-04) will keep Daylight Saving Time --# after April 11, 2010--will continue to have same time as rest of -+# after April 11, 2010 - will continue to have same time as rest of - # Argentina (UTC-3) (no DST). - # --# Confirmaron la prórroga del huso horario de verano (Spanish) --# <a href="http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9"> -+# Confirmaron la prórroga del huso horario de verano (Spanish) - # http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9 --# </a> - # or (some English translation): --# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina08.html"> - # http://www.worldtimezone.com/dst_news/dst_news_argentina08.html --# </a> - - # From Mariano Absatz (2010-04-12): - # yes...I can confirm this...and given that San Luis keeps calling -@@ -478,7 +440,7 @@ - # Perhaps San Luis operates on the legal fiction that it is at UTC-4 - # with perpetual summer time, but ordinary usage typically seems to - # just say it's at UTC-3; see, for example, --# <http://es.wikipedia.org/wiki/Hora_oficial_argentina>. -+# http://es.wikipedia.org/wiki/Hora_oficial_argentina - # We've documented similar situations as being plain changes to - # standard time, so let's do that here too. This does not change UTC - # offsets, only tm_isdst and the time zone abbreviations. One minor -@@ -486,20 +448,20 @@ - # setting for time stamps past 2038. - - # From Paul Eggert (2013-02-21): --# Milne says Cordoba time was -4:16:48.2. Round to the nearest second. -+# Milne says Córdoba time was -4:16:48.2. Round to the nearest second. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # - # Buenos Aires (BA), Capital Federal (CF), --Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31 -- -4:16:48 - CMT 1920 May # Cordoba Mean Time -+Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31 -+ -4:16:48 - CMT 1920 May # Córdoba Mean Time - -4:00 - ART 1930 Dec - -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT 1999 Oct 3 - -4:00 Arg AR%sT 2000 Mar 3 - -3:00 Arg AR%sT - # --# Cordoba (CB), Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN), -+# Córdoba (CB), Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), - # Chaco (CC), Formosa (FM), Santiago del Estero (SE) - # - # Shanks & Pottenger also make the following claims, which we haven't verified: -@@ -519,7 +481,7 @@ - -4:00 Arg AR%sT 2000 Mar 3 - -3:00 Arg AR%sT - # --# Salta (SA), La Pampa (LP), Neuquen (NQ), Rio Negro (RN) -+# Salta (SA), La Pampa (LP), Neuquén (NQ), Rio Negro (RN) - Zone America/Argentina/Salta -4:21:40 - LMT 1894 Oct 31 - -4:16:48 - CMT 1920 May - -4:00 - ART 1930 Dec -@@ -531,7 +493,7 @@ - -3:00 Arg AR%sT 2008 Oct 18 - -3:00 - ART - # --# Tucuman (TM) -+# Tucumán (TM) - Zone America/Argentina/Tucuman -4:20:52 - LMT 1894 Oct 31 - -4:16:48 - CMT 1920 May - -4:00 - ART 1930 Dec -@@ -642,8 +604,8 @@ - -3:00 - ART - # - # Santa Cruz (SC) --Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31 -- -4:16:48 - CMT 1920 May # Cordoba Mean Time -+Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31 -+ -4:16:48 - CMT 1920 May # Córdoba Mean Time - -4:00 - ART 1930 Dec - -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT 1999 Oct 3 -@@ -653,9 +615,9 @@ - -3:00 Arg AR%sT 2008 Oct 18 - -3:00 - ART - # --# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF) --Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31 -- -4:16:48 - CMT 1920 May # Cordoba Mean Time -+# Tierra del Fuego, Antártida e Islas del Atlántico Sur (TF) -+Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31 -+ -4:16:48 - CMT 1920 May # Córdoba Mean Time - -4:00 - ART 1930 Dec - -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT 1999 Oct 3 -@@ -686,13 +648,13 @@ - - # From IATA SSIM (1996-02): - # _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS), --# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ), --# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO), -+# Santa Catarina (SC), Paraná (PR), São Paulo (SP), Rio de Janeiro (RJ), -+# Espírito Santo (ES), Minas Gerais (MG), Bahia (BA), Goiás (GO), - # Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL]. - # [The last three states are new to this issue of the IATA SSIM.] - - # From Gwillim Law (1996-10-07): --# Geography, history (Tocantins was part of Goias until 1989), and other -+# Geography, history (Tocantins was part of Goiás until 1989), and other - # sources of time zone information lead me to believe that AL, SE, and TO were - # always in BR1, and so the only change was whether or not they observed DST.... - # The earliest issue of the SSIM I have is 2/91. Each issue from then until -@@ -706,16 +668,14 @@ - # However, some conclusions can be drawn from another IATA manual: the Airline - # Coding Directory, which lists close to 400 airports in Brazil. For each - # airport it gives a time zone which is coded to the SSIM. From that --# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE), --# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do --# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST. -+# information, I'm led to conclude that the states of Amapá (AP), Ceará (CE), -+# Maranhão (MA), Paraíba (PR), Pernambuco (PE), Piauí (PI), and Rio Grande do -+# Norte (RN), and the eastern part of Pará (PA) are all in BR1 without DST. - - # From Marcos Tadeu (1998-09-27): --# <a href="http://pcdsh01.on.br/verao1.html"> --# Brazilian official page --# </a> -+# Brazilian official page <http://pcdsh01.on.br/verao1.html> - --# From Jesper Norgaard (2000-11-03): -+# From Jesper Nørgaard (2000-11-03): - # [For an official list of which regions in Brazil use which time zones, see:] - # http://pcdsh01.on.br/Fusbr.htm - # http://pcdsh01.on.br/Fusbrhv.htm -@@ -748,13 +708,13 @@ - - # From Paul Schulze (2008-06-24): - # ...by law number 11.662 of April 24, 2008 (published in the "Diario --# Oficial da Uniao"...) in Brazil there are changes in the timezones, -+# Oficial da União"...) in Brazil there are changes in the timezones, - # effective today (00:00am at June 24, 2008) as follows: - # --# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the -+# a) The timezone UTC+5 is extinguished, with all the Acre state and the - # part of the Amazonas state that had this timezone now being put to the - # timezone UTC+4 --# b) The whole Para state now is put at timezone UTC+3, instead of just -+# b) The whole Pará state now is put at timezone UTC+3, instead of just - # part of it, as was before. - # - # This change follows a proposal of senator Tiao Viana of Acre state, that -@@ -767,13 +727,11 @@ - - # From Rodrigo Severo (2008-06-24): - # Just correcting the URL: --# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008"> - # https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008 --# </a> - # - # As a result of the above Decree I believe the America/Rio_Branco - # timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall --# be created to represent the...west side of the Para State. I -+# be created to represent the...west side of the Pará State. I - # suggest this new timezone be called Santarem as the most - # important/populated city in the affected area. - # -@@ -782,19 +740,16 @@ - - # From Alex Krivenyshev (2008-06-24): - # This is a quick reference page for New and Old Brazil Time Zones map. --# <a href="http://www.worldtimezone.com/brazil-time-new-old.php"> - # http://www.worldtimezone.com/brazil-time-new-old.php --# </a> - # --# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05 --# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western --# part of Par state is moving to one timezone UTC- 03 (from UTC -04). -+# - 4 time zones replaced by 3 time zones - eliminating time zone UTC-05 -+# (state Acre and the part of the Amazonas will be UTC/GMT-04) - western -+# part of Par state is moving to one timezone UTC-03 (from UTC-04). - - # From Paul Eggert (2002-10-10): - # The official decrees referenced below are mostly taken from --# <a href="http://pcdsh01.on.br/DecHV.html"> --# Decretos sobre o Horario de Verao no Brasil --# </a>. -+# Decretos sobre o Horário de Verão no Brasil. -+# http://pcdsh01.on.br/DecHV.html - - # From Steffen Thorsen (2008-08-29): - # As announced by the government and many newspapers in Brazil late -@@ -806,25 +761,17 @@ - # It has not yet been posted to http://pcdsh01.on.br/DecHV.html - # - # An official page about it: --# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722"> - # http://www.mme.gov.br/site/news/detail.do?newsId=16722 --# </a> - # Note that this link does not always work directly, but must be accessed - # by going to --# <a href="http://www.mme.gov.br/first"> - # http://www.mme.gov.br/first --# </a> - # - # One example link that works directly: --# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54"> - # http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54 - # (Portuguese) --# </a> - # - # We have a written a short article about it as well: --# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html"> - # http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html --# </a> - # - # From Alexander Krivenyshev (2011-10-04): - # State Bahia will return to Daylight savings time this year after 8 years off. -@@ -832,17 +779,12 @@ - # television station in Salvador. - - # In Portuguese: --# <a href="http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html"> - # http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html --# </a> and --# <a href="http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html"> - # http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html --# </a> - - # From Guilherme Bernardes Rodrigues (2011-10-07): - # There is news in the media, however there is still no decree about it. --# I just send a e-mail to Zulmira Brandao at --# <a href="http://pcdsh01.on.br/">http://pcdsh01.on.br/</a> the -+# I just send a e-mail to Zulmira Brandao at http://pcdsh01.on.br/ the - # official agency about time in Brazil, and she confirmed that the old rule is - # still in force. - -@@ -854,9 +796,7 @@ - # - # DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011 - # Link : --# <a href="http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6"> - # http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6 --# </a> - - # From Kelley Cook (2012-10-16): - # The governor of state of Bahia in Brazil announced on Thursday that -@@ -884,42 +824,42 @@ - # For now, assume western Amazonas will change as well. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01) --# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10) -+# Decree 20,466 <http://pcdsh01.on.br/HV20466.htm> (1931-10-01) -+# Decree 21,896 <http://pcdsh01.on.br/HV21896.htm> (1932-01-10) - Rule Brazil 1931 only - Oct 3 11:00 1:00 S - Rule Brazil 1932 1933 - Apr 1 0:00 0 - - Rule Brazil 1932 only - Oct 3 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10) -+# Decree 23,195 <http://pcdsh01.on.br/HV23195.htm> (1933-10-10) - # revoked DST. --# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24) --# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13) -+# Decree 27,496 <http://pcdsh01.on.br/HV27496.htm> (1949-11-24) -+# Decree 27,998 <http://pcdsh01.on.br/HV27998.htm> (1950-04-13) - Rule Brazil 1949 1952 - Dec 1 0:00 1:00 S - Rule Brazil 1950 only - Apr 16 1:00 0 - - Rule Brazil 1951 1952 - Apr 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24) -+# Decree 32,308 <http://pcdsh01.on.br/HV32308.htm> (1953-02-24) - Rule Brazil 1953 only - Mar 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30) -+# Decree 34,724 <http://pcdsh01.on.br/HV34724.htm> (1953-11-30) - # revoked DST. --# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18) -+# Decree 52,700 <http://pcdsh01.on.br/HV52700.htm> (1963-10-18) - # established DST from 1963-10-23 00:00 to 1964-02-29 00:00 - # in SP, RJ, GB, MG, ES, due to the prolongation of the drought. --# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03) -+# Decree 53,071 <http://pcdsh01.on.br/HV53071.htm> (1963-12-03) - # extended the above decree to all of the national territory on 12-09. - Rule Brazil 1963 only - Dec 9 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25) -+# Decree 53,604 <http://pcdsh01.on.br/HV53604.htm> (1964-02-25) - # extended summer time by one day to 1964-03-01 00:00 (start of school). - Rule Brazil 1964 only - Mar 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27) -+# Decree 55,639 <http://pcdsh01.on.br/HV55639.htm> (1965-01-27) - Rule Brazil 1965 only - Jan 31 0:00 1:00 S - Rule Brazil 1965 only - Mar 31 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22) -+# Decree 57,303 <http://pcdsh01.on.br/HV57303.htm> (1965-11-22) - Rule Brazil 1965 only - Dec 1 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18) -+# Decree 57,843 <http://pcdsh01.on.br/HV57843.htm> (1966-02-18) - Rule Brazil 1966 1968 - Mar 1 0:00 0 - - Rule Brazil 1966 1967 - Nov 1 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15) -+# Decree 63,429 <http://pcdsh01.on.br/HV63429.htm> (1968-10-15) - # revoked DST. --# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27) -+# Decree 91,698 <http://pcdsh01.on.br/HV91698.htm> (1985-09-27) - Rule Brazil 1985 only - Nov 2 0:00 1:00 S - # Decree 92,310 (1986-01-21) - # Decree 92,463 (1986-03-13) -@@ -927,42 +867,42 @@ - # Decree 93,316 (1986-10-01) - Rule Brazil 1986 only - Oct 25 0:00 1:00 S - Rule Brazil 1987 only - Feb 14 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22) -+# Decree 94,922 <http://pcdsh01.on.br/HV94922.htm> (1987-09-22) - Rule Brazil 1987 only - Oct 25 0:00 1:00 S - Rule Brazil 1988 only - Feb 7 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12) -+# Decree 96,676 <http://pcdsh01.on.br/HV96676.htm> (1988-09-12) - # except for the states of AC, AM, PA, RR, RO, and AP (then a territory) - Rule Brazil 1988 only - Oct 16 0:00 1:00 S - Rule Brazil 1989 only - Jan 29 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21) -+# Decree 98,077 <http://pcdsh01.on.br/HV98077.htm> (1989-08-21) - # with the same exceptions - Rule Brazil 1989 only - Oct 15 0:00 1:00 S - Rule Brazil 1990 only - Feb 11 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17) -+# Decree 99,530 <http://pcdsh01.on.br/HV99530.htm> (1990-09-17) - # adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF. - # Decree 99,629 (1990-10-19) adds BA, MT. - Rule Brazil 1990 only - Oct 21 0:00 1:00 S - Rule Brazil 1991 only - Feb 17 0:00 0 - --# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25) -+# Unnumbered decree <http://pcdsh01.on.br/HV1991.htm> (1991-09-25) - # adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF. - Rule Brazil 1991 only - Oct 20 0:00 1:00 S - Rule Brazil 1992 only - Feb 9 0:00 0 - --# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16) -+# Unnumbered decree <http://pcdsh01.on.br/HV1992.htm> (1992-10-16) - # adopted by same states. - Rule Brazil 1992 only - Oct 25 0:00 1:00 S - Rule Brazil 1993 only - Jan 31 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28) -+# Decree 942 <http://pcdsh01.on.br/HV942.htm> (1993-09-28) - # adopted by same states, plus AM. --# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22; -+# Decree 1,252 <http://pcdsh01.on.br/HV1252.htm> (1994-09-22; - # web page corrected 2004-01-07) adopted by same states, minus AM. --# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14) -+# Decree 1,636 <http://pcdsh01.on.br/HV1636.htm> (1995-09-14) - # adopted by same states, plus MT and TO. --# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13) -+# Decree 1,674 <http://pcdsh01.on.br/HV1674.htm> (1995-10-13) - # adds AL, SE. - Rule Brazil 1993 1995 - Oct Sun>=11 0:00 1:00 S - Rule Brazil 1994 1995 - Feb Sun>=15 0:00 0 - - Rule Brazil 1996 only - Feb 11 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04) -+# Decree 2,000 <http://pcdsh01.on.br/HV2000.htm> (1996-09-04) - # adopted by same states, minus AL, SE. - Rule Brazil 1996 only - Oct 6 0:00 1:00 S - Rule Brazil 1997 only - Feb 16 0:00 0 - -@@ -975,53 +915,51 @@ - # - # Decree 2,317 (1997-09-04), adopted by same states. - Rule Brazil 1997 only - Oct 6 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a> -+# Decree 2,495 <http://pcdsh01.on.br/figuras/HV2495.JPG> - # (1998-02-10) - Rule Brazil 1998 only - Mar 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11) -+# Decree 2,780 <http://pcdsh01.on.br/figuras/Hv98.jpg> (1998-09-11) - # adopted by the same states as before. - Rule Brazil 1998 only - Oct 11 0:00 1:00 S - Rule Brazil 1999 only - Feb 21 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a> -+# Decree 3,150 <http://pcdsh01.on.br/figuras/HV3150.gif> - # (1999-08-23) adopted by same states. --# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30) -+# Decree 3,188 <http://pcdsh01.on.br/DecHV99.gif> (1999-09-30) - # adds SE, AL, PB, PE, RN, CE, PI, MA and RR. - Rule Brazil 1999 only - Oct 3 0:00 1:00 S - Rule Brazil 2000 only - Feb 27 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06) -+# Decree 3,592 <http://pcdsh01.on.br/DEC3592.htm> (2000-09-06) - # adopted by the same states as before. --# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13) -+# Decree 3,630 <http://pcdsh01.on.br/Dec3630.jpg> (2000-10-13) - # repeals DST in PE and RR, effective 2000-10-15 00:00. --# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17) -+# Decree 3,632 <http://pcdsh01.on.br/Dec3632.jpg> (2000-10-17) - # repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00. --# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a> -+# Decree 3,916 <http://pcdsh01.on.br/figuras/HV3916.gif> - # (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE. - Rule Brazil 2000 2001 - Oct Sun>=8 0:00 1:00 S - Rule Brazil 2001 2006 - Feb Sun>=15 0:00 0 - - # Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE. --# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a> -+# 4,399 <http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm> - Rule Brazil 2002 only - Nov 3 0:00 1:00 S - # Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO. --# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a> -+# 4,844 <http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm> - Rule Brazil 2003 only - Oct 19 0:00 1:00 S - # Decree 5,223 (2004-10-01) reestablishes DST in MT. --# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a> -+# 5,223 <http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm> - Rule Brazil 2004 only - Nov 2 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19), -+# Decree 5,539 <http://pcdsh01.on.br/DecHV5539.gif> (2005-09-19), - # adopted by the same states as before. - Rule Brazil 2005 only - Oct 16 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03), -+# Decree 5,920 <http://pcdsh01.on.br/DecHV5920.gif> (2006-10-03), - # adopted by the same states as before. - Rule Brazil 2006 only - Nov 5 0:00 1:00 S - Rule Brazil 2007 only - Feb 25 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26), -+# Decree 6,212 <http://pcdsh01.on.br/DecHV6212.gif> (2007-09-26), - # adopted by the same states as before. - Rule Brazil 2007 only - Oct Sun>=8 0:00 1:00 S - # From Frederico A. C. Neves (2008-09-10): - # According to this decree --# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm"> - # http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm --# </a> - # [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the - # 3rd Feb Sunday. There is an exception on the return date when this is - # the Carnival Sunday then the return date will be the next Sunday... -@@ -1056,29 +994,29 @@ - -2:00 Brazil FN%sT 2002 Oct 1 - -2:00 - FNT - # Other Atlantic islands have no permanent settlement. --# These include Trindade and Martin Vaz (administratively part of ES), --# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE). -+# These include Trindade and Martim Vaz (administratively part of ES), -+# Rocas Atoll (RN), and the St Peter and St Paul Archipelago (PE). - # Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01; - # it also included the Penedos. - # --# Amapa (AP), east Para (PA) --# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu. --# The division between east and west Para is the river Xingu. -+# Amapá (AP), east Pará (PA) -+# East Pará includes Belém, Marabá, Serra Norte, and São Félix do Xingu. -+# The division between east and west Pará is the river Xingu. - # In the north a very small part from the river Javary (now Jari I guess, --# the border with Amapa) to the Amazon, then to the Xingu. -+# the border with Amapá) to the Amazon, then to the Xingu. - Zone America/Belem -3:13:56 - LMT 1914 - -3:00 Brazil BR%sT 1988 Sep 12 - -3:00 - BRT - # --# west Para (PA) --# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem. -+# west Pará (PA) -+# West Pará includes Altamira, Óbidos, Prainha, Oriximiná, and Santarém. - Zone America/Santarem -3:38:48 - LMT 1914 - -4:00 Brazil AM%sT 1988 Sep 12 -- -4:00 - AMT 2008 Jun 24 00:00 -+ -4:00 - AMT 2008 Jun 24 0:00 - -3:00 - BRT - # --# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN), --# Paraiba (PB) -+# Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN), -+# Paraíba (PB) - Zone America/Fortaleza -2:34:00 - LMT 1914 - -3:00 Brazil BR%sT 1990 Sep 17 - -3:00 - BRT 1999 Sep 30 -@@ -1125,11 +1063,11 @@ - -3:00 Brazil BR%sT 2012 Oct 21 - -3:00 - BRT - # --# Goias (GO), Distrito Federal (DF), Minas Gerais (MG), --# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR), -+# Goiás (GO), Distrito Federal (DF), Minas Gerais (MG), -+# Espírito Santo (ES), Rio de Janeiro (RJ), São Paulo (SP), Paraná (PR), - # Santa Catarina (SC), Rio Grande do Sul (RS) - Zone America/Sao_Paulo -3:06:28 - LMT 1914 -- -3:00 Brazil BR%sT 1963 Oct 23 00:00 -+ -3:00 Brazil BR%sT 1963 Oct 23 0:00 - -3:00 1:00 BRST 1964 - -3:00 Brazil BR%sT - # -@@ -1143,7 +1081,7 @@ - -4:00 - AMT 2004 Oct 1 - -4:00 Brazil AM%sT - # --# Rondonia (RO) -+# Rondônia (RO) - Zone America/Porto_Velho -4:15:36 - LMT 1914 - -4:00 Brazil AM%sT 1988 Sep 12 - -4:00 - AMT -@@ -1155,7 +1093,7 @@ - -4:00 Brazil AM%sT 2000 Oct 15 - -4:00 - AMT - # --# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto -+# east Amazonas (AM): Boca do Acre, Jutaí, Manaus, Floriano Peixoto - # The great circle line from Tabatinga to Porto Acre divides - # east from west Amazonas. - Zone America/Manaus -4:00:04 - LMT 1914 -@@ -1165,19 +1103,19 @@ - -4:00 - AMT - # - # west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant, --# Eirunepe, Envira, Ipixuna -+# Eirunepé, Envira, Ipixuna - Zone America/Eirunepe -4:39:28 - LMT 1914 - -5:00 Brazil AC%sT 1988 Sep 12 - -5:00 - ACT 1993 Sep 28 - -5:00 Brazil AC%sT 1994 Sep 22 -- -5:00 - ACT 2008 Jun 24 00:00 -+ -5:00 - ACT 2008 Jun 24 0:00 - -4:00 - AMT 2013 Nov 10 - -5:00 - ACT - # - # Acre (AC) - Zone America/Rio_Branco -4:31:12 - LMT 1914 - -5:00 Brazil AC%sT 1988 Sep 12 -- -5:00 - ACT 2008 Jun 24 00:00 -+ -5:00 - ACT 2008 Jun 24 0:00 - -4:00 - AMT 2013 Nov 10 - -5:00 - ACT - -@@ -1198,66 +1136,54 @@ - # From Oscar van Vlijmen (2006-10-08): - # http://www.horaoficial.cl/cambio.htm - --# From Jesper Norgaard Welen (2006-10-08): -+# From Jesper Nørgaard Welen (2006-10-08): - # I think that there are some obvious mistakes in the suggested link - # from Oscar van Vlijmen,... for instance entry 66 says that GMT-4 - # ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15 - # (they should have been 1990-09-15 and 1990-09-16 respectively), but - # anyhow it clears up some doubts too. - --# From Paul Eggert (2006-12-27): --# The following data for Chile and America/Santiago are from -+# From Paul Eggert (2014-08-12): -+# The following data entries for Chile and America/Santiago are from - # <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by --# Jesper Norgaard Welen. The data for Pacific/Easter are from Shanks -+# Jesper Nørgaard Welen. The data entries for Pacific/Easter are from Shanks - # & Pottenger, except with DST transitions after 1932 cloned from --# America/Santiago. The pre-1980 Pacific/Easter data are dubious, -+# America/Santiago. The pre-1980 Pacific/Easter data entries are dubious, - # but we have no other source. - --# From German Poo-Caaman~o (2008-03-03): -+# From Germán Poo-Caamaño (2008-03-03): - # Due to drought, Chile extends Daylight Time in three weeks. This - # is one-time change (Saturday 3/29 at 24:00 for America/Santiago - # and Saturday 3/29 at 22:00 for Pacific/Easter) - # The Supreme Decree is located at --# <a href="http://www.shoa.cl/servicios/supremo316.pdf"> - # http://www.shoa.cl/servicios/supremo316.pdf --# </a> - # and the instructions for 2008 are located in: --# <a href="http://www.horaoficial.cl/cambio.htm"> - # http://www.horaoficial.cl/cambio.htm --# </a>. - --# From Jose Miguel Garrido (2008-03-05): -+# From José Miguel Garrido (2008-03-05): - # ... - # You could see the announces of the change on --# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm"> - # http://www.shoa.cl/noticias/2008/04hora/hora.htm --# </a>. - - # From Angel Chiang (2010-03-04): - # Subject: DST in Chile exceptionally extended to 3 April due to earthquake --# <a href="http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098"> - # http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098 --# </a> - # (in Spanish, last paragraph). - # - # This is breaking news. There should be more information available later. - --# From Arthur Daivd Olson (2010-03-06): -+# From Arthur David Olson (2010-03-06): - # Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch. - --# From Glenn Eychaner (2011-03-02): [geychaner@mac.com] -+# From Glenn Eychaner (2011-03-02): - # It appears that the Chilean government has decided to postpone the - # change from summer time to winter time again, by three weeks to April - # 2nd: --# <a href="http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651"> - # http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651 --# </a> - # - # This is not yet reflected in the official "cambio de hora" site, but - # probably will be soon: --# <a href="http://www.horaoficial.cl/cambio.htm"> - # http://www.horaoficial.cl/cambio.htm --# </a> - - # From Arthur David Olson (2011-03-02): - # The emol.com article mentions a water shortage as the cause of the -@@ -1265,9 +1191,7 @@ - - # From Glenn Eychaner (2011-03-28): - # The article: --# <a href="http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}"> - # http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E} --# </a> - # - # In English: - # Chile's clocks will go back an hour this year on the 7th of May instead -@@ -1298,7 +1222,7 @@ - # start date is 2013-09-08 00:00.... - # http://www.gob.cl/informa/2013/02/15/gobierno-anuncia-fechas-de-cambio-de-hora-para-el-ano-2013.htm - --# From Jose Miguel Garrido (2014-02-19): -+# From José Miguel Garrido (2014-02-19): - # Today appeared in the Diario Oficial a decree amending the time change - # dates to 2014. - # DST End: last Saturday of April 2014 (Sun 27 Apr 2014 03:00 UTC) -@@ -1352,7 +1276,7 @@ - # (1996-09) says 1998-03-08. Ignore these. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Santiago -4:42:46 - LMT 1890 -- -4:42:46 - SMT 1910 # Santiago Mean Time -+ -4:42:46 - SMT 1910 # Santiago Mean Time - -5:00 - CLT 1916 Jul 1 # Chile Time - -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time - -4:00 - CLT 1919 Jul 1 # Chile Time -@@ -1361,16 +1285,16 @@ - -4:00 Chile CL%sT - Zone Pacific/Easter -7:17:44 - LMT 1890 - -7:17:28 - EMT 1932 Sep # Easter Mean Time -- -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time -+ -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter Time - -6:00 Chile EAS%sT - # --# Sala y Gomez Island is like Pacific/Easter. --# Other Chilean locations, including Juan Fernandez Is, San Ambrosio, --# San Felix, and Antarctic bases, are like America/Santiago. -+# Salas y Gómez Island is uninhabited. -+# Other Chilean locations, including Juan Fernández Is, Desventuradas Is, -+# and Antarctic bases, are like America/Santiago. - - # Colombia - --# Milne gives 4:56:16.4 for Bogota time in 1899; round to nearest. He writes, -+# Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest. He writes, - # "A variation of fifteen minutes in the public clocks of Bogota is not rare." - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1378,37 +1302,37 @@ - Rule CO 1993 only - Apr 4 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Bogota -4:56:16 - LMT 1884 Mar 13 -- -4:56:16 - BMT 1914 Nov 23 # Bogota Mean Time -+ -4:56:16 - BMT 1914 Nov 23 # Bogotá Mean Time - -5:00 CO CO%sT # Colombia Time - # Malpelo, Providencia, San Andres - # no information; probably like America/Bogota - --# Curacao -+# Curaçao - --# Milne gives 4:35:46.9 for Curacao mean time; round to nearest. -+# Milne gives 4:35:46.9 for Curaçao mean time; round to nearest. - # - # From Paul Eggert (2006-03-22): - # Shanks & Pottenger say that The Bottom and Philipsburg have been at - # -4:00 since standard time was introduced on 1912-03-02; and that - # Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from - # 1912-02-02 to 1965-01-01. The former is dubious, since S&P also say --# Saba Island has been like Curacao. -+# Saba Island has been like Curaçao. - # This all predates our 1970 cutoff, though. - # --# By July 2007 Curacao and St Maarten are planned to become -+# By July 2007 Curaçao and St Maarten are planned to become - # associated states within the Netherlands, much like Aruba; - # Bonaire, Saba and St Eustatius would become directly part of the - # Netherlands as Kingdom Islands. This won't affect their time zones - # though, as far as we know. - # - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad -+Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad - -4:30 - ANT 1965 # Netherlands Antilles Time - -4:00 - AST - - # From Arthur David Olson (2011-06-15): - # use links for places with new iso3166 codes. --# The name "Lower Prince's Quarter" is both longer than fourteen charaters -+# The name "Lower Prince's Quarter" is both longer than fourteen characters - # and contains an apostrophe; use "Lower_Princes" below. - - Link America/Curacao America/Lower_Princes # Sint Maarten -@@ -1416,7 +1340,7 @@ - - # Ecuador - # --# Milne says the Sentral and South American Telegraph Company used -5:24:15. -+# Milne says the Central and South American Telegraph Company used -5:24:15. - # - # From Paul Eggert (2007-03-04): - # Apparently Ecuador had a failed experiment with DST in 1992. -@@ -1427,10 +1351,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Guayaquil -5:19:20 - LMT 1890 - -5:14:00 - QMT 1931 # Quito Mean Time -- -5:00 - ECT # Ecuador Time -+ -5:00 - ECT # Ecuador Time - Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno - -5:00 - ECT 1986 -- -6:00 - GALT # Galapagos Time -+ -6:00 - GALT # Galápagos Time - - # Falklands - -@@ -1439,7 +1363,7 @@ - # the IATA gives 1996-09-08. Go with Shanks & Pottenger. - - # From Falkland Islands Government Office, London (2001-01-22) --# via Jesper Norgaard: -+# via Jesper Nørgaard: - # ... the clocks revert back to Local Mean Time at 2 am on Sunday 15 - # April 2001 and advance one hour to summer time at 2 am on Sunday 2 - # September. It is anticipated that the clocks will revert back at 2 -@@ -1488,9 +1412,7 @@ - # daylight saving time. - # - # One source: --# <a href="http://www.falklandnews.com/public/story.cfm?get=5914&source=3"> - # http://www.falklandnews.com/public/story.cfm?get=5914&source=3 --# </a> - # - # We have gotten this confirmed by a clerk of the legislative assembly: - # Normally the clocks revert to Local Mean Time (UTC/GMT -4 hours) on the -@@ -1531,10 +1453,10 @@ - Rule Falk 2001 2010 - Sep Sun>=1 2:00 1:00 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Atlantic/Stanley -3:51:24 - LMT 1890 -- -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time -- -4:00 Falk FK%sT 1983 May # Falkland Is Time -+ -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time -+ -4:00 Falk FK%sT 1983 May # Falkland Is Time - -3:00 Falk FK%sT 1985 Sep 15 -- -4:00 Falk FK%sT 2010 Sep 5 02:00 -+ -4:00 Falk FK%sT 2010 Sep 5 2:00 - -3:00 - FKST - - # French Guiana -@@ -1545,7 +1467,7 @@ - - # Guyana - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown -+Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown - -3:45 - GBGT 1966 May 26 # Br Guiana Time - -3:45 - GYT 1975 Jul 31 # Guyana Time - -3:00 - GYT 1991 -@@ -1555,8 +1477,8 @@ - # Paraguay - # - # From Paul Eggert (2006-03-22): --# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00, --# and autumn transitions are from 00:00 -> 23:00. Go with pre-1999 -+# Shanks & Pottenger say that spring transitions are 01:00 -> 02:00, -+# and autumn transitions are 00:00 -> 23:00. Go with pre-1999 - # editions of Shanks, and with the IATA, who say transitions occur at 00:00. - # - # From Waldemar Villamayor-Venialbo (2013-09-20): -@@ -1582,9 +1504,8 @@ - # (10-01). - # - # Translated by Gwillim Law (2001-02-27) from --# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm"> --# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01) --# </a>: -+# Noticias, a daily paper in Asunción, Paraguay (2000-10-01): -+# http://www.diarionoticias.com.py/011000/nacional/naciona1.htm - # Starting at 0:00 today, the clock will be set forward 60 minutes, in - # fulfillment of Decree No. 7,273 of the Executive Power.... The time change - # system has been operating for several years. Formerly there was a separate -@@ -1605,21 +1526,18 @@ - Rule Para 2002 2004 - Apr Sun>=1 0:00 0 - - Rule Para 2002 2003 - Sep Sun>=1 0:00 1:00 S - # --# From Jesper Norgaard Welen (2005-01-02): -+# From Jesper Nørgaard Welen (2005-01-02): - # There are several sources that claim that Paraguay made - # a timezone rule change in autumn 2004. - # From Steffen Thorsen (2005-01-05): - # Decree 1,867 (2004-03-05) --# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13) --# <http://www.presidencia.gov.py/decretos/D1867.pdf> -+# From Carlos Raúl Perasso via Jesper Nørgaard Welen (2006-10-13) -+# http://www.presidencia.gov.py/decretos/D1867.pdf - Rule Para 2004 2009 - Oct Sun>=15 0:00 1:00 S - Rule Para 2005 2009 - Mar Sun>=8 0:00 0 - --# From Carlos Raul Perasso (2010-02-18): --# By decree number 3958 issued yesterday ( --# <a href="http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf"> -+# From Carlos Raúl Perasso (2010-02-18): -+# By decree number 3958 issued yesterday - # http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf --# </a> --# ) - # Paraguay changes its DST schedule, postponing the March rule to April and - # modifying the October date. The decree reads: - # ... -@@ -1635,25 +1553,25 @@ - # Paraguay will end DST on 2013-03-24 00:00.... - # http://www.ande.gov.py/interna.php?id=1075 - # --# From Carlos Raul Perasso (2013-03-15): -+# From Carlos Raúl Perasso (2013-03-15): - # The change in Paraguay is now final. Decree number 10780 - # http://www.presidencia.gov.py/uploads/pdf/presidencia-3b86ff4b691c79d4f5927ca964922ec74772ce857c02ca054a52a37b49afc7fb.pdf --# From Carlos Raul Perasso (2014-02-28): -+# From Carlos Raúl Perasso (2014-02-28): - # Decree 1264 can be found at: - # http://www.presidencia.gov.py/archivos/documentos/DECRETO1264_ey9r8zai.pdf - Rule Para 2013 max - Mar Sun>=22 0:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Asuncion -3:50:40 - LMT 1890 -- -3:50:40 - AMT 1931 Oct 10 # Asuncion Mean Time -- -4:00 - PYT 1972 Oct # Paraguay Time -+ -3:50:40 - AMT 1931 Oct 10 # Asunción Mean Time -+ -4:00 - PYT 1972 Oct # Paraguay Time - -3:00 - PYT 1974 Apr - -4:00 Para PY%sT - - # Peru - # --# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net"> --# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a> -+# From Evelyn C. Leeper via Mark Brader (2003-10-26) -+# <news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net>: - # When we were in Peru in 1985-1986, they apparently switched over - # sometime between December 29 and January 3 while we were on the Amazon. - # -@@ -1679,7 +1597,7 @@ - - # South Georgia - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken -+Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken - -2:00 - GST # South Georgia Time - - # South Sandwich Is -@@ -1689,9 +1607,9 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Paramaribo -3:40:40 - LMT 1911 - -3:40:52 - PMT 1935 # Paramaribo Mean Time -- -3:40:36 - PMT 1945 Oct # The capital moved? -+ -3:40:36 - PMT 1945 Oct # The capital moved? - -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time -- -3:30 - SRT 1984 Oct # Suriname Time -+ -3:30 - SRT 1984 Oct # Suriname Time - -3:00 - SRT - - # Trinidad and Tobago -@@ -1706,7 +1624,7 @@ - Link America/Port_of_Spain America/Guadeloupe - Link America/Port_of_Spain America/Marigot # St Martin (French part) - Link America/Port_of_Spain America/Montserrat --Link America/Port_of_Spain America/St_Barthelemy -+Link America/Port_of_Spain America/St_Barthelemy # St Barthélemy - Link America/Port_of_Spain America/St_Kitts # St Kitts & Nevis - Link America/Port_of_Spain America/St_Lucia - Link America/Port_of_Spain America/St_Thomas # Virgin Islands (US) -@@ -1765,7 +1683,7 @@ - Rule Uruguay 1992 only - Oct 18 0:00 1:00 S - Rule Uruguay 1993 only - Feb 28 0:00 0 - - # From Eduardo Cota (2004-09-20): --# The uruguayan government has decreed a change in the local time.... -+# The Uruguayan government has decreed a change in the local time.... - # http://www.presidencia.gub.uy/decretos/2004091502.htm - Rule Uruguay 2004 only - Sep 19 0:00 1:00 S - # From Steffen Thorsen (2005-03-11): -@@ -1779,14 +1697,14 @@ - # 02:00 local time, official time in Uruguay will be at GMT -2. - Rule Uruguay 2005 only - Oct 9 2:00 1:00 S - Rule Uruguay 2006 only - Mar 12 2:00 0 - --# From Jesper Norgaard Welen (2006-09-06): -+# From Jesper Nørgaard Welen (2006-09-06): - # http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF - Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S - Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28 -- -3:44:44 - MMT 1920 May 1 # Montevideo MT -- -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time -+ -3:44:44 - MMT 1920 May 1 # Montevideo MT -+ -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time - -3:00 Uruguay UY%sT - - # Venezuela -@@ -1794,14 +1712,14 @@ - # From John Stainforth (2007-11-28): - # ... the change for Venezuela originally expected for 2007-12-31 has - # been brought forward to 2007-12-09. The official announcement was --# published today in the "Gaceta Oficial de la Republica Bolivariana --# de Venezuela, numero 38.819" (official document for all laws or -+# published today in the "Gaceta Oficial de la República Bolivariana -+# de Venezuela, número 38.819" (official document for all laws or - # resolution publication) - # http://www.globovision.com/news.php?nid=72208 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Caracas -4:27:44 - LMT 1890 - -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time? -- -4:30 - VET 1965 # Venezuela Time -- -4:00 - VET 2007 Dec 9 03:00 -+ -4:30 - VET 1965 # Venezuela Time -+ -4:00 - VET 2007 Dec 9 3:00 - -4:30 - VET ---- ./jdk/make/data/tzdata/systemv Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/systemv Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - ---- ./jdk/make/data/tzdata/zone.tab Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/make/data/tzdata/zone.tab Mon Dec 08 12:29:42 2014 -0800 -@@ -21,39 +21,27 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# TZ zone descriptions -+# tz zone descriptions (deprecated version) - # - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - # --# From Paul Eggert (2013-08-14): -+# From Paul Eggert (2014-07-31): -+# This file is intended as a backward-compatibility aid for older programs. -+# New programs should use zone1970.tab. This file is like zone1970.tab (see -+# zone1970.tab's comments), but with the following additional restrictions: - # --# This file contains a table where each row stands for an area that is --# the intersection of a region identified by a country code and of a --# zone where civil clocks have agreed since 1970. The columns of the --# table are as follows: -+# 1. This file contains only ASCII characters. -+# 2. The first data column contains exactly one country code. - # --# 1. ISO 3166 2-character country code. See the file 'iso3166.tab'. --# 2. Latitude and longitude of the area's principal location --# in ISO 6709 sign-degrees-minutes-seconds format, --# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS, --# first latitude (+ is north), then longitude (+ is east). --# 3. Zone name used in value of TZ environment variable. --# Please see the 'Theory' file for how zone names are chosen. --# If multiple zones overlap a country, each has a row in the --# table, with column 1 being duplicated. --# 4. Comments; present if and only if the country has multiple rows. --# --# Columns are separated by a single tab. --# The table is sorted first by country, then an order within the country that --# (1) makes some geographical sense, and --# (2) puts the most populous areas first, where that does not contradict (1). --# --# Lines beginning with '#' are comments. -+# Because of (2), each row stands for an area that is the intersection -+# of a region identified by a country code and of a zone where civil -+# clocks have agreed since 1970; this is a narrower definition than -+# that of zone1970.tab. - # - # This table is intended as an aid for users, to help them select time --# zone data appropriate for their practical needs. It is not intended --# to take or endorse any position on legal or territorial claims. -+# zone data entries appropriate for their practical needs. It is not -+# intended to take or endorse any position on legal or territorial claims. - # - #country- - #code coordinates TZ comments -@@ -72,7 +60,7 @@ - AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills - AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula - AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok --AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie -+AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adelie Land - AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I - AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land - AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF) -@@ -151,7 +139,7 @@ - CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario - CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations - CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut --CA +744144-0944945 America/Resolute Central Standard Time - Resolute, Nunavut -+CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut - CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut - CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut - CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario -@@ -176,13 +164,10 @@ - CI +0519-00402 Africa/Abidjan - CK -2114-15946 Pacific/Rarotonga - CL -3327-07040 America/Santiago most locations --CL -2709-10926 Pacific/Easter Easter Island & Sala y Gomez -+CL -2709-10926 Pacific/Easter Easter Island - CM +0403+00942 Africa/Douala --CN +3114+12128 Asia/Shanghai east China - Beijing, Guangdong, Shanghai, etc. --CN +4545+12641 Asia/Harbin Heilongjiang (except Mohe), Jilin --CN +2934+10635 Asia/Chongqing central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc. --CN +4348+08735 Asia/Urumqi most of Tibet & Xinjiang --CN +3929+07559 Asia/Kashgar west Tibet & Xinjiang -+CN +3114+12128 Asia/Shanghai Beijing Time -+CN +4348+08735 Asia/Urumqi Xinjiang Time - CO +0436-07405 America/Bogota - CR +0956-08405 America/Costa_Rica - CU +2308-08222 America/Havana -@@ -345,7 +330,8 @@ - PF -1732-14934 Pacific/Tahiti Society Islands - PF -0900-13930 Pacific/Marquesas Marquesas Islands - PF -2308-13457 Pacific/Gambier Gambier Islands --PG -0930+14710 Pacific/Port_Moresby -+PG -0930+14710 Pacific/Port_Moresby most locations -+PG -0613+15534 Pacific/Bougainville Bougainville - PH +1435+12100 Asia/Manila - PK +2452+06703 Asia/Karachi - PL +5215+02100 Europe/Warsaw -@@ -364,24 +350,26 @@ - RO +4426+02606 Europe/Bucharest - RS +4450+02030 Europe/Belgrade - RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad --RU +5545+03735 Europe/Moscow Moscow+00 - west Russia -+RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia -+RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea - RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea --RU +5312+05009 Europe/Samara Moscow+00 - Samara, Udmurtia --RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea -+RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia - RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals - RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia - RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk --RU +5345+08707 Asia/Novokuznetsk Moscow+03 - Novokuznetsk -+RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo - RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River - RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal -+RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky - RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River - RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky - RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River - RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island - RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky --RU +5934+15048 Asia/Magadan Moscow+08 - Magadan --RU +5301+15839 Asia/Kamchatka Moscow+08 - Kamchatka --RU +6445+17729 Asia/Anadyr Moscow+08 - Bering Sea -+RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan -+RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is -+RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka -+RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea - RW -0157+03004 Africa/Kigali - SA +2438+04643 Asia/Riyadh - SB -0932+16012 Pacific/Guadalcanal -@@ -448,13 +436,13 @@ - US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon - US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo) - US +340308-1181434 America/Los_Angeles Pacific Time -+US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska - US +611305-1495401 America/Anchorage Alaska Time - US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle - US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle - US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck - US +643004-1652423 America/Nome Alaska Time - west Alaska - US +515248-1763929 America/Adak Aleutian Islands --US +550737-1313435 America/Metlakatla Metlakatla Time - Annette Island - US +211825-1575130 Pacific/Honolulu Hawaii - UY -3453-05611 America/Montevideo - UZ +3940+06648 Asia/Samarkand west Uzbekistan ---- ./jdk/src/share/classes/com/sun/java/swing/SwingUtilities3.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/com/sun/java/swing/SwingUtilities3.java Mon Dec 08 12:29:42 2014 -0800 -@@ -27,6 +27,8 @@ - - import sun.awt.EventQueueDelegate; - import sun.awt.AppContext; -+import sun.awt.SunToolkit; -+ - import java.util.Collections; - import java.util.Map; - import java.util.WeakHashMap; -@@ -117,8 +119,8 @@ - public static RepaintManager getDelegateRepaintManager(Component - component) { - RepaintManager delegate = null; -- if (Boolean.TRUE == AppContext.getAppContext().get( -- DELEGATE_REPAINT_MANAGER_KEY)) { -+ if (Boolean.TRUE == SunToolkit.targetToAppContext(component) -+ .get(DELEGATE_REPAINT_MANAGER_KEY)) { - while (delegate == null && component != null) { - while (component != null - && ! (component instanceof JComponent)) { ---- ./jdk/src/share/classes/com/sun/java/swing/plaf/windows/WindowsFileChooserUI.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/com/sun/java/swing/plaf/windows/WindowsFileChooserUI.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1067,16 +1067,9 @@ - - directories.clear(); - -- File[] baseFolders; -- if (useShellFolder) { -- baseFolders = AccessController.doPrivileged(new PrivilegedAction<File[]>() { -- public File[] run() { -- return (File[]) ShellFolder.get("fileChooserComboBoxFolders"); -- } -- }); -- } else { -- baseFolders = fsv.getRoots(); -- } -+ File[] baseFolders = (useShellFolder) -+ ? (File[]) ShellFolder.get("fileChooserComboBoxFolders") -+ : fsv.getRoots(); - directories.addAll(Arrays.asList(baseFolders)); - - // Get the canonical (full) path. This has the side ---- ./jdk/src/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2005, 2014, 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 -@@ -84,7 +84,7 @@ - " -V\u3001--version \u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u307E\u3059", - " -J{X} \u30AA\u30D7\u30B7\u30E7\u30F3X\u3092\u57FA\u790E\u3068\u306A\u308BJava VM\u306B\u6E21\u3057\u307E\u3059", - "", -- "\u6CE8\u610F:", -+ "\u6CE8:", - " -P\u3001-C\u3001-F\u3001-M\u304A\u3088\u3073-D\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u7D2F\u7A4D\u3055\u308C\u307E\u3059\u3002", - " \u5C5E\u6027\u5B9A\u7FA9\u306E\u4F8B: -C SourceFile=RUH .", - " Config.\u30D5\u30A1\u30A4\u30EB\u30FB\u30D7\u30ED\u30D1\u30C6\u30A3\u306F\u3001Pack200 API\u306B\u3088\u3063\u3066\u5B9A\u7FA9\u3055\u308C\u307E\u3059\u3002", ---- ./jdk/src/share/classes/com/sun/jndi/ldap/BerDecoder.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/com/sun/jndi/ldap/BerDecoder.java Mon Dec 08 12:29:42 2014 -0800 -@@ -95,6 +95,9 @@ - for( int i = 0; i < lengthbyte; i++) { - retval = (retval << 8) + (buf[offset++] & 0xff); - } -+ if (retval < 0) { -+ throw new DecodeException("Invalid length bytes"); -+ } - return retval; - } else { - return lengthbyte; ---- ./jdk/src/share/classes/java/awt/Component.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/awt/Component.java Mon Dec 08 12:29:42 2014 -0800 -@@ -3400,7 +3400,7 @@ - (width > 0) && (height > 0)) { - PaintEvent e = new PaintEvent(this, PaintEvent.UPDATE, - new Rectangle(x, y, width, height)); -- Toolkit.getEventQueue().postEvent(e); -+ SunToolkit.postEvent(SunToolkit.targetToAppContext(this), e); - } - } - } ---- ./jdk/src/share/classes/java/awt/EventQueue.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/awt/EventQueue.java Mon Dec 08 12:29:42 2014 -0800 -@@ -214,6 +214,11 @@ - FwDispatcher dispatcher) { - eventQueue.setFwDispatcher(dispatcher); - } -+ -+ @Override -+ public long getMostRecentEventTime(EventQueue eventQueue) { -+ return eventQueue.getMostRecentEventTimeImpl(); -+ } - }); - } - ---- ./jdk/src/share/classes/java/awt/event/InputMethodEvent.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/awt/event/InputMethodEvent.java Mon Dec 08 12:29:42 2014 -0800 -@@ -25,6 +25,10 @@ - - package java.awt.event; - -+import sun.awt.AWTAccessor; -+import sun.awt.AppContext; -+import sun.awt.SunToolkit; -+ - import java.awt.AWTEvent; - import java.awt.Component; - import java.awt.EventQueue; -@@ -217,8 +221,10 @@ - public InputMethodEvent(Component source, int id, - AttributedCharacterIterator text, int committedCharacterCount, - TextHitInfo caret, TextHitInfo visiblePosition) { -- this(source, id, EventQueue.getMostRecentEventTime(), text, -- committedCharacterCount, caret, visiblePosition); -+ this(source, id, -+ getMostRecentEventTimeForSource(source), -+ text, committedCharacterCount, -+ caret, visiblePosition); - } - - /** -@@ -258,8 +264,9 @@ - */ - public InputMethodEvent(Component source, int id, TextHitInfo caret, - TextHitInfo visiblePosition) { -- this(source, id, EventQueue.getMostRecentEventTime(), null, -- 0, caret, visiblePosition); -+ this(source, id, -+ getMostRecentEventTimeForSource(source), -+ null, 0, caret, visiblePosition); - } - - /** -@@ -410,7 +417,26 @@ - private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException { - s.defaultReadObject(); - if (when == 0) { -+ // Can't use getMostRecentEventTimeForSource because source is always null during deserialization - when = EventQueue.getMostRecentEventTime(); - } - } -+ -+ /** -+ * Get the most recent event time in the {@code EventQueue} which the {@code source} -+ * belongs to. -+ * -+ * @param source the source of the event -+ * @exception IllegalArgumentException if source is null. -+ * @return most recent event time in the {@code EventQueue} -+ */ -+ private static long getMostRecentEventTimeForSource(Object source) { -+ if (source == null) { -+ // throw the IllegalArgumentException to conform to EventObject spec -+ throw new IllegalArgumentException("null source"); -+ } -+ AppContext appContext = SunToolkit.targetToAppContext(source); -+ EventQueue eventQueue = SunToolkit.getSystemEventQueueImplPP(appContext); -+ return AWTAccessor.getEventQueueAccessor().getMostRecentEventTime(eventQueue); -+ } - } ---- ./jdk/src/share/classes/java/io/ByteArrayOutputStream.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/io/ByteArrayOutputStream.java Mon Dec 08 12:29:42 2014 -0800 -@@ -94,6 +94,14 @@ - } - - /** -+ * The maximum size of array to allocate. -+ * Some VMs reserve some header words in an array. -+ * Attempts to allocate larger arrays may result in -+ * OutOfMemoryError: Requested array size exceeds VM limit -+ */ -+ private static final int MAX_ARRAY_SIZE = Integer.MAX_VALUE - 8; -+ -+ /** - * Increases the capacity to ensure that it can hold at least the - * number of elements specified by the minimum capacity argument. - * -@@ -105,14 +113,19 @@ - int newCapacity = oldCapacity << 1; - if (newCapacity - minCapacity < 0) - newCapacity = minCapacity; -- if (newCapacity < 0) { -- if (minCapacity < 0) // overflow -- throw new OutOfMemoryError(); -- newCapacity = Integer.MAX_VALUE; -- } -+ if (newCapacity - MAX_ARRAY_SIZE > 0) -+ newCapacity = hugeCapacity(minCapacity); - buf = Arrays.copyOf(buf, newCapacity); - } - -+ private static int hugeCapacity(int minCapacity) { -+ if (minCapacity < 0) // overflow -+ throw new OutOfMemoryError(); -+ return (minCapacity > MAX_ARRAY_SIZE) ? -+ Integer.MAX_VALUE : -+ MAX_ARRAY_SIZE; -+ } -+ - /** - * Writes the specified byte to this byte array output stream. - * ---- ./jdk/src/share/classes/java/lang/ClassLoader.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/lang/ClassLoader.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1365,7 +1365,10 @@ - return null; - SecurityManager sm = System.getSecurityManager(); - if (sm != null) { -- checkClassLoaderPermission(this, Reflection.getCallerClass()); -+ // Check access to the parent class loader -+ // If the caller's class loader is same as this class loader, -+ // permission check is performed. -+ checkClassLoaderPermission(parent, Reflection.getCallerClass()); - } - return parent; - } -@@ -1508,6 +1511,11 @@ - return caller.getClassLoader0(); - } - -+ /* -+ * Checks RuntimePermission("getClassLoader") permission -+ * if caller's class loader is not null and caller's class loader -+ * is not the same as or an ancestor of the given cl argument. -+ */ - static void checkClassLoaderPermission(ClassLoader cl, Class<?> caller) { - SecurityManager sm = System.getSecurityManager(); - if (sm != null) { ---- ./jdk/src/share/classes/java/net/MulticastSocket.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/net/MulticastSocket.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1995, 2014, 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 -@@ -569,7 +569,7 @@ - public NetworkInterface getNetworkInterface() throws SocketException { - NetworkInterface ni - = (NetworkInterface)getImpl().getOption(SocketOptions.IP_MULTICAST_IF2); -- if (ni.getIndex() == 0) { -+ if ((ni.getIndex() == 0) || (ni.getIndex() == -1)) { - InetAddress[] addrs = new InetAddress[1]; - addrs[0] = InetAddress.anyLocalAddress(); - return new NetworkInterface(addrs[0].getHostName(), 0, addrs); ---- ./jdk/src/share/classes/java/util/CurrencyData.properties Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/java/util/CurrencyData.properties Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - # --# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. -+# Copyright (c) 2000, 2014, 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 -@@ -28,7 +28,7 @@ - # Version of the currency code information in this class. - # It is a serial number that accompanies with each amendment. - --dataVersion=156 -+dataVersion=159 - - # List of all valid ISO 4217 currency codes. - # To ensure compatibility, do not remove codes. -@@ -332,7 +332,7 @@ - # LIECHTENSTEIN - LI=CHF - # LITHUANIA --LT=LTL -+LT=LTL;2014-12-31-22-00-00;EUR - # LUXEMBOURG - LU=EUR - # MACAU ---- ./jdk/src/share/classes/javax/swing/JComponent.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/javax/swing/JComponent.java Mon Dec 08 12:29:42 2014 -0800 -@@ -63,6 +63,7 @@ - import static javax.swing.ClientPropertyKey.*; - import javax.accessibility.*; - -+import sun.awt.SunToolkit; - import sun.swing.SwingUtilities2; - import sun.swing.UIClientPropertyKey; - -@@ -4795,7 +4796,8 @@ - * @see RepaintManager#addDirtyRegion - */ - public void repaint(long tm, int x, int y, int width, int height) { -- RepaintManager.currentManager(this).addDirtyRegion(this, x, y, width, height); -+ RepaintManager.currentManager(SunToolkit.targetToAppContext(this)) -+ .addDirtyRegion(this, x, y, width, height); - } - - -@@ -4849,7 +4851,7 @@ - // which was causing some people grief. - return; - } -- if (SwingUtilities.isEventDispatchThread()) { -+ if (SunToolkit.isDispatchThreadForAppContext(this)) { - invalidate(); - RepaintManager.currentManager(this).addInvalidComponent(this); - } -@@ -4863,15 +4865,12 @@ - } - setFlag(REVALIDATE_RUNNABLE_SCHEDULED, true); - } -- Runnable callRevalidate = new Runnable() { -- public void run() { -- synchronized(JComponent.this) { -- setFlag(REVALIDATE_RUNNABLE_SCHEDULED, false); -- } -- revalidate(); -+ SunToolkit.executeOnEventHandlerThread(this, () -> { -+ synchronized(JComponent.this) { -+ setFlag(REVALIDATE_RUNNABLE_SCHEDULED, false); - } -- }; -- SwingUtilities.invokeLater(callRevalidate); -+ revalidate(); -+ }); - } - } - ---- ./jdk/src/share/classes/javax/swing/plaf/metal/MetalFileChooserUI.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/javax/swing/plaf/metal/MetalFileChooserUI.java Mon Dec 08 12:29:42 2014 -0800 -@@ -941,16 +941,9 @@ - - directories.clear(); - -- File[] baseFolders; -- if (useShellFolder) { -- baseFolders = AccessController.doPrivileged(new PrivilegedAction<File[]>() { -- public File[] run() { -- return (File[]) ShellFolder.get("fileChooserComboBoxFolders"); -- } -- }); -- } else { -- baseFolders = fsv.getRoots(); -- } -+ File[] baseFolders = (useShellFolder) -+ ? (File[]) ShellFolder.get("fileChooserComboBoxFolders") -+ : fsv.getRoots(); - directories.addAll(Arrays.asList(baseFolders)); - - // Get the canonical (full) path. This has the side ---- ./jdk/src/share/classes/sun/awt/AWTAccessor.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/awt/AWTAccessor.java Mon Dec 08 12:29:42 2014 -0800 -@@ -504,7 +504,12 @@ - /** - * Sets the delegate for the EventQueue used by FX/AWT single threaded mode - */ -- public void setFwDispatcher(EventQueue eventQueue, FwDispatcher dispatcher); -+ void setFwDispatcher(EventQueue eventQueue, FwDispatcher dispatcher); -+ -+ /** -+ * Gets most recent event time in the EventQueue -+ */ -+ long getMostRecentEventTime(EventQueue eventQueue); - } - - /* ---- ./jdk/src/share/classes/sun/awt/SunToolkit.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/awt/SunToolkit.java Mon Dec 08 12:29:42 2014 -0800 -@@ -386,7 +386,7 @@ - * null or the target can't be found, a null with be returned. - */ - public static AppContext targetToAppContext(Object target) { -- if (target == null || GraphicsEnvironment.isHeadless()) { -+ if (target == null) { - return null; - } - AppContext context = getAppContext(target); -@@ -460,12 +460,10 @@ - * via targetToAppContext() above. - */ - public static void insertTargetMapping(Object target, AppContext appContext) { -- if (!GraphicsEnvironment.isHeadless()) { -- if (!setAppContext(target, appContext)) { -- // Target is not a Component/MenuComponent, use the private Map -- // instead. -- appContextMap.put(target, appContext); -- } -+ if (!setAppContext(target, appContext)) { -+ // Target is not a Component/MenuComponent, use the private Map -+ // instead. -+ appContextMap.put(target, appContext); - } - } - ---- ./jdk/src/share/classes/sun/java2d/opengl/OGLSurfaceDataProxy.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/java2d/opengl/OGLSurfaceDataProxy.java Mon Dec 08 12:29:42 2014 -0800 -@@ -65,7 +65,11 @@ - int w, int h) - { - if (cachedData == null) { -- cachedData = oglgc.createManagedSurface(w, h, transparency); -+ try { -+ cachedData = oglgc.createManagedSurface(w, h, transparency); -+ } catch (OutOfMemoryError er) { -+ return null; -+ } - } - return cachedData; - } ---- ./jdk/src/share/classes/sun/launcher/resources/launcher_de.properties Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/launcher/resources/launcher_de.properties Mon Dec 08 12:29:42 2014 -0800 -@@ -34,7 +34,7 @@ - java.launcher.ergo.message2 =\ weil die Ausf\u00FChrung auf einem Server-Class-Rechner erfolgt.\n - - # Translators please note do not translate the options themselves --java.launcher.opt.footer =\ -cp <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n -classpath <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n Eine durch {0} getrennte Liste mit Verzeichnissen, JAR-Archiven\n und ZIP-Archiven zur Suche nach Klassendateien.\n -D<name>=<value>\n Legt eine Systemeigenschaft fest\n -verbose:[class|gc|jni]\n Aktiviert die Verbose-Ausgabe\n -version Druckt Produktversion und beendet das Programm\n -version:<value>\n Erfordert die angegebene Version zur Ausf\u00FChrung\n -showversion Druckt Produktversion und f\u00E4hrt fort\n -jre-restrict-search | -no-jre-restrict-search\n Bezieht private JREs des Benutzers in Versionssuche ein bzw. schlie\u00DFt sie aus\n -? -help Druckt diese Hilfemeldung\n -X Druckt Hilfe zu Nicht-Standardoptionen\n -ea[:<packagename>...|:<classname>]\n -enableassertions[:<packagename>...|:<classname>]\n Aktiviert Assertionen mit angegebener Granularit\u00E4t\n -da[:<packagename>...|:<classname>]\n -disableassertions[:<packagename>...|:<classname>]\n Deaktiviert Assertionen mit angegebener Granularit\u00E4t\n -esa | -enablesystemassertions\n Aktiviert Systemassertionen\n -dsa | -disablesystemassertions\n Deaktiviert Systemassertionen\n -agentlib:<libname>[=<options>]\n L\u00E4dt native Agent Library <libname>, z.B. -agentlib:hprof\n siehe auch -agentlib:jdwp=help und -agentlib:hprof=help\n -agentpath:<pathname>[=<options>]\n L\u00E4dt native Agent Library nach vollem Pfadnamen\n -javaagent:<jarpath>[=<options>]\n L\u00E4dt Java-Programmiersprachen-Agent, siehe java.lang.instrument\n -splash:<imagepath>\n Zeigt Startbildschirm mit angegebenem Bild\nWeitere Einzelheiten finden Sie unter http://www.oracle.com/technetwork/java/javase/documentation/index.html -+java.launcher.opt.footer =\ -cp <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n -classpath <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n Eine durch {0} getrennte Liste mit Verzeichnissen, JAR-Archiven\n und ZIP-Archiven zur Suche nach Klassendateien.\n -D<name>=<value>\n Legt eine Systemeigenschaft fest\n -verbose:[class|gc|jni]\n Aktiviert die Verbose-Ausgabe\n -version Druckt Produktversion und beendet das Programm\n -version:<value>\n Erfordert die angegebene Version zur Ausf\u00FChrung\n -showversion Druckt Produktversion und f\u00E4hrt fort\n -jre-restrict-search | -no-jre-restrict-search\n Bezieht private JREs des Benutzers in Versionssuche ein bzw. schlie\u00DFt sie aus\n -? -help Druckt diese Hilfemeldung\n -X Druckt Hilfe zu Nicht-Standardoptionen\n -ea[:<packagename>...|:<classname>]\n -enableassertions[:<packagename>...|:<classname>]\n Aktiviert Assertions mit angegebener Granularit\u00E4t\n -da[:<packagename>...|:<classname>]\n -disableassertions[:<packagename>...|:<classname>]\n Deaktiviert Assertions mit angegebener Granularit\u00E4t\n -esa | -enablesystemassertions\n Aktiviert Systemassertionen\n -dsa | -disablesystemassertions\n Deaktiviert Systemassertionen\n -agentlib:<libname>[=<options>]\n L\u00E4dt native Agent Library <libname>, z.B. -agentlib:hprof\n siehe auch -agentlib:jdwp=help und -agentlib:hprof=help\n -agentpath:<pathname>[=<options>]\n L\u00E4dt native Agent Library nach vollem Pfadnamen\n -javaagent:<jarpath>[=<options>]\n L\u00E4dt Java-Programmiersprachen-Agent, siehe java.lang.instrument\n -splash:<imagepath>\n Zeigt Startbildschirm mit angegebenem Bild\nWeitere Einzelheiten finden Sie unter http://www.oracle.com/technetwork/java/javase/documentation/index.html - - # Translators please note do not translate the options themselves - java.launcher.X.usage=\ -Xmixed Ausf\u00FChrung im gemischten Modus (Standard)\n -Xint Nur Ausf\u00FChrung im interpretierten Modus\n -Xbootclasspath:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n Legt Suchpfad f\u00FCr Bootstrap-Klassen und Ressourcen fest\n -Xbootclasspath/a:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n H\u00E4ngt an das Ende des Bootstrap Classpath an\n -Xbootclasspath/p:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n Stellt Bootstrap Classpath voran\n -Xdiag Zeigt zus\u00E4tzliche Diagnosemeldungen an\n -Xnoclassgc Deaktiviert Klassen-Garbage Collection\n -Xincgc Aktiviert inkrementelle Garbage Collection\n -Xloggc:<file> Loggt GC-Status in einer Datei mit Zeitstempeln\n -Xbatch Deaktiviert Hintergrundkompilierung\n -Xms<size> Legt anf\u00E4ngliche Java Heap-Gr\u00F6\u00DFe fest\n -Xmx<size> Legt maximale Java Heap-Gr\u00F6\u00DFe fest\n -Xss<size> Legt Java-Threadstackgr\u00F6\u00DFe fest\n -Xprof Gibt CPU-Profiling-Daten aus\n -Xfuture Aktiviert strengste Pr\u00FCfungen, antizipiert zuk\u00FCnftigen Standardwert\n -Xrs Reduziert Verwendung von BS-Signalen durch Java/VM (siehe Dokumentation)\n -Xcheck:jni F\u00FChrt zus\u00E4tzliche Pr\u00FCfungen f\u00FCr JNI-Funktionen durch\n -Xshare:off Kein Versuch, gemeinsame Klassendaten zu verwenden\n -Xshare:auto Verwendet gemeinsame Klassendaten, wenn m\u00F6glich (Standard)\n -Xshare:on Erfordert die Verwendung gemeinsamer Klassendaten, sonst verl\u00E4uft der Vorgang nicht erfolgreich.\n -XshowSettings Zeigt alle Einstellungen und f\u00E4hrt fort\n -XshowSettings:all\n Zeigt alle Einstellungen und f\u00E4hrt fort\n -XshowSettings:vm Zeigt alle VM-bezogenen Einstellungen und f\u00E4hrt fort\n -XshowSettings:properties\n Zeigt alle Eigenschaftseinstellungen und f\u00E4hrt fort\n -XshowSettings:locale\n Zeigt alle gebietsschemabezogenen Einstellungen und f\u00E4hrt fort\n\nDie -X-Optionen sind keine Standardoptionen und k\u00F6nnen ohne Vorank\u00FCndigung ge\u00E4ndert werden.\n ---- ./jdk/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java Mon Dec 08 12:29:42 2014 -0800 -@@ -336,6 +336,7 @@ - /* try auth without calling Authenticator. Used for transparent NTLM authentication */ - private boolean tryTransparentNTLMServer = true; - private boolean tryTransparentNTLMProxy = true; -+ private boolean useProxyResponseCode = false; - - /* Used by Windows specific code */ - private Object authObj; -@@ -2243,6 +2244,14 @@ - if (tryTransparentNTLMProxy) { - tryTransparentNTLMProxy = - NTLMAuthenticationProxy.supportsTransparentAuth; -+ /* If the platform supports transparent authentication -+ * then normally it's ok to do transparent auth to a proxy -+ * because we generally trust proxies (chosen by the user) -+ * But not in the case of 305 response where the server -+ * chose it. */ -+ if (tryTransparentNTLMProxy && useProxyResponseCode) { -+ tryTransparentNTLMProxy = false; -+ } - } - a = null; - if (tryTransparentNTLMProxy) { -@@ -2614,6 +2623,10 @@ - requests.set(0, method + " " + getRequestURI()+" " + - httpVersion, null); - connected = true; -+ // need to remember this in case NTLM proxy authentication gets -+ // used. We can't use transparent authentication when user -+ // doesn't know about proxy. -+ useProxyResponseCode = true; - } else { - // maintain previous headers, just change the name - // of the file we're getting ---- ./jdk/src/share/classes/sun/rmi/transport/Transport.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/rmi/transport/Transport.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1996, 2014, 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 -@@ -37,6 +37,10 @@ - import java.rmi.server.RemoteServer; - import java.rmi.server.ServerNotActiveException; - import java.security.AccessControlContext; -+import java.security.AccessController; -+import java.security.Permissions; -+import java.security.PrivilegedAction; -+import java.security.ProtectionDomain; - import sun.rmi.runtime.Log; - import sun.rmi.server.Dispatcher; - import sun.rmi.server.UnicastServerRef; -@@ -68,6 +72,15 @@ - /** ObjID for DGCImpl */ - private static final ObjID dgcID = new ObjID(ObjID.DGC_ID); - -+ /** AccessControlContext for setting context ClassLoader */ -+ private static final AccessControlContext SETCCL_ACC; -+ static { -+ Permissions perms = new Permissions(); -+ perms.add(new RuntimePermission("setContextClassLoader")); -+ ProtectionDomain[] pd = { new ProtectionDomain(null, perms) }; -+ SETCCL_ACC = new AccessControlContext(pd); -+ } -+ - /** - * Returns a <I>Channel</I> that generates connections to the - * endpoint <I>ep</I>. A Channel is an object that creates and -@@ -117,6 +130,16 @@ - protected abstract void checkAcceptPermission(AccessControlContext acc); - - /** -+ * Sets the context class loader for the current thread. -+ */ -+ private static void setContextClassLoader(ClassLoader ccl) { -+ AccessController.doPrivileged((PrivilegedAction<Void>)() -> { -+ Thread.currentThread().setContextClassLoader(ccl); -+ return null; -+ }, SETCCL_ACC); -+ } -+ -+ /** - * Service an incoming remote call. When a message arrives on the - * connection indicating the beginning of a remote call, the - * threads are required to call the <I>serviceCall</I> method of -@@ -164,11 +187,10 @@ - target.getAccessControlContext(); - ClassLoader ccl = target.getContextClassLoader(); - -- Thread t = Thread.currentThread(); -- ClassLoader savedCcl = t.getContextClassLoader(); -+ ClassLoader savedCcl = Thread.currentThread().getContextClassLoader(); - - try { -- t.setContextClassLoader(ccl); -+ setContextClassLoader(ccl); - currentTransport.set(this); - try { - java.security.AccessController.doPrivileged( -@@ -183,7 +205,7 @@ - throw (IOException) pae.getException(); - } - } finally { -- t.setContextClassLoader(savedCcl); -+ setContextClassLoader(savedCcl); - currentTransport.set(null); - } - ---- ./jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1996, 2014, 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 -@@ -49,6 +49,9 @@ - import java.rmi.server.UID; - import java.security.AccessControlContext; - import java.security.AccessController; -+import java.security.Permissions; -+import java.security.PrivilegedAction; -+import java.security.ProtectionDomain; - import java.util.ArrayList; - import java.util.LinkedList; - import java.util.List; -@@ -123,6 +126,14 @@ - private static final ThreadLocal<ConnectionHandler> - threadConnectionHandler = new ThreadLocal<>(); - -+ /** an AccessControlContext with no permissions */ -+ private static final AccessControlContext NOPERMS_ACC; -+ static { -+ Permissions perms = new Permissions(); -+ ProtectionDomain[] pd = { new ProtectionDomain(null, perms) }; -+ NOPERMS_ACC = new AccessControlContext(pd); -+ } -+ - /** endpoints for this transport */ - private final LinkedList<TCPEndpoint> epList; - /** number of objects exported on this transport */ -@@ -668,7 +679,10 @@ - t.setName("RMI TCP Connection(" + - connectionCount.incrementAndGet() + - ")-" + remoteHost); -- run0(); -+ AccessController.doPrivileged((PrivilegedAction<Void>)() -> { -+ run0(); -+ return null; -+ }, NOPERMS_ACC); - } finally { - t.setName(name); - } ---- ./jdk/src/share/classes/sun/security/jgss/GSSHeader.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/jgss/GSSHeader.java Mon Dec 08 12:29:42 2014 -0800 -@@ -270,6 +270,9 @@ - value <<= 8; - value += 0x0ff & in.read(); - } -+ if (value < 0) { -+ throw new IOException("Invalid length bytes"); -+ } - } - return value; - } ---- ./jdk/src/share/classes/sun/security/jgss/GSSNameImpl.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/jgss/GSSNameImpl.java Mon Dec 08 12:29:42 2014 -0800 -@@ -257,6 +257,10 @@ - ((0xFF & bytes[pos++]) << 16) | - ((0xFF & bytes[pos++]) << 8) | - (0xFF & bytes[pos++])); -+ if (mechPortionLen < 0 || pos > bytes.length - mechPortionLen) { -+ throw new GSSExceptionImpl(GSSException.BAD_NAME, -+ "Exported name mech name is corrupted!"); -+ } - byte[] mechPortion = new byte[mechPortionLen]; - System.arraycopy(bytes, pos, mechPortion, 0, mechPortionLen); - ---- ./jdk/src/share/classes/sun/security/jgss/wrapper/GSSNameElement.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/jgss/wrapper/GSSNameElement.java Mon Dec 08 12:29:42 2014 -0800 -@@ -233,6 +233,9 @@ - ((0xFF & nameVal[pos++]) << 16) | - ((0xFF & nameVal[pos++]) << 8) | - (0xFF & nameVal[pos++])); -+ if (mechPortionLen < 0) { -+ throw new GSSException(GSSException.BAD_NAME); -+ } - byte[] mechPortion = new byte[mechPortionLen]; - System.arraycopy(nameVal, pos, mechPortion, 0, mechPortionLen); - return mechPortion; ---- ./jdk/src/share/classes/sun/security/krb5/internal/ccache/CCacheInputStream.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/krb5/internal/ccache/CCacheInputStream.java Mon Dec 08 12:29:42 2014 -0800 -@@ -122,7 +122,7 @@ - } else { - type = read(4); - } -- length = read(4); -+ length = readLength4(); - String[] result = new String[length + 1]; - /* - * DCE includes the principal's realm in the count; the new format -@@ -131,7 +131,7 @@ - if (version == KRB5_FCC_FVNO_1) - length--; - for (int i = 0; i <= length; i++) { -- namelength = read(4); -+ namelength = readLength4(); - if (namelength > MAXNAMELENGTH) { - throw new IOException("Invalid name length in principal name."); - } -@@ -183,7 +183,7 @@ - keyType = read(2); - if (version == KRB5_FCC_FVNO_3) - read(2); /* keytype recorded twice in fvno 3 */ -- keyLen = read(4); -+ keyLen = readLength4(); - byte[] bytes = new byte[keyLen]; - for (int i = 0; i < keyLen; i++) { - bytes[i] = (byte)read(); -@@ -209,12 +209,12 @@ - - HostAddress[] readAddr() throws IOException, KrbApErrException { - int numAddrs, addrType, addrLength; -- numAddrs = read(4); -+ numAddrs = readLength4(); - if (numAddrs > 0) { - HostAddress[] addrs = new HostAddress[numAddrs]; - for (int i = 0; i < numAddrs; i++) { - addrType = read(2); -- addrLength = read(4); -+ addrLength = readLength4(); - if (!(addrLength == 4 || addrLength == 16)) { - if (DEBUG) { - System.out.println("Incorrect address format."); -@@ -233,13 +233,13 @@ - - AuthorizationDataEntry[] readAuth() throws IOException { - int num, adtype, adlength; -- num = read(4); -+ num = readLength4(); - if (num > 0) { - AuthorizationDataEntry[] auData = new AuthorizationDataEntry[num]; - byte[] data = null; - for (int i = 0; i < num; i++) { - adtype = read(2); -- adlength = read(4); -+ adlength = readLength4(); - data = new byte[adlength]; - for (int j = 0; j < adlength; j++) { - data[j] = (byte)read(); -@@ -253,7 +253,7 @@ - - byte[] readData() throws IOException { - int length; -- length = read(4); -+ length = readLength4(); - if (length == 0) { - return null; - } else { ---- ./jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java Mon Dec 08 12:29:42 2014 -0800 -@@ -151,43 +151,43 @@ - synchronized void init(PrincipalName principal, String name) - throws IOException, KrbException { - primaryPrincipal = principal; -- CCacheOutputStream cos = -- new CCacheOutputStream(new FileOutputStream(name)); -- version = KRB5_FCC_FVNO_3; -- cos.writeHeader(primaryPrincipal, version); -- cos.close(); -+ try (FileOutputStream fos = new FileOutputStream(name); -+ CCacheOutputStream cos = new CCacheOutputStream(fos)) { -+ version = KRB5_FCC_FVNO_3; -+ cos.writeHeader(primaryPrincipal, version); -+ } - load(name); - } - - synchronized void load(String name) throws IOException, KrbException { - PrincipalName p; -- CCacheInputStream cis = -- new CCacheInputStream(new FileInputStream(name)); -- version = cis.readVersion(); -- if (version == KRB5_FCC_FVNO_4) { -- tag = cis.readTag(); -- } else { -- tag = null; -- if (version == KRB5_FCC_FVNO_1 || version == KRB5_FCC_FVNO_2) { -- cis.setNativeByteOrder(); -+ try (FileInputStream fis = new FileInputStream(name); -+ CCacheInputStream cis = new CCacheInputStream(fis)) { -+ version = cis.readVersion(); -+ if (version == KRB5_FCC_FVNO_4) { -+ tag = cis.readTag(); -+ } else { -+ tag = null; -+ if (version == KRB5_FCC_FVNO_1 || version == KRB5_FCC_FVNO_2) { -+ cis.setNativeByteOrder(); -+ } -+ } -+ p = cis.readPrincipal(version); -+ -+ if (primaryPrincipal != null) { -+ if (!(primaryPrincipal.match(p))) { -+ throw new IOException("Primary principals don't match."); -+ } -+ } else -+ primaryPrincipal = p; -+ credentialsList = new Vector<Credentials>(); -+ while (cis.available() > 0) { -+ Credentials cred = cis.readCred(version); -+ if (cred != null) { -+ credentialsList.addElement(cred); -+ } - } - } -- p = cis.readPrincipal(version); -- -- if (primaryPrincipal != null) { -- if (!(primaryPrincipal.match(p))) { -- throw new IOException("Primary principals don't match."); -- } -- } else -- primaryPrincipal = p; -- credentialsList = new Vector<Credentials> (); -- while (cis.available() > 0) { -- Credentials cred = cis.readCred(version); -- if (cred != null) { -- credentialsList.addElement(cred); -- } -- } -- cis.close(); - } - - -@@ -246,16 +246,16 @@ - * Saves the credentials cache file to the disk. - */ - public synchronized void save() throws IOException, Asn1Exception { -- CCacheOutputStream cos -- = new CCacheOutputStream(new FileOutputStream(cacheName)); -- cos.writeHeader(primaryPrincipal, version); -- Credentials[] tmp = null; -- if ((tmp = getCredsList()) != null) { -- for (int i = 0; i < tmp.length; i++) { -- cos.addCreds(tmp[i]); -+ try (FileOutputStream fos = new FileOutputStream(cacheName); -+ CCacheOutputStream cos = new CCacheOutputStream(fos)) { -+ cos.writeHeader(primaryPrincipal, version); -+ Credentials[] tmp = null; -+ if ((tmp = getCredsList()) != null) { -+ for (int i = 0; i < tmp.length; i++) { -+ cos.addCreds(tmp[i]); -+ } - } - } -- cos.close(); - } - - boolean match(String[] s1, String[] s2) { ---- ./jdk/src/share/classes/sun/security/krb5/internal/util/KrbDataInputStream.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/krb5/internal/util/KrbDataInputStream.java Mon Dec 08 12:29:42 2014 -0800 -@@ -56,15 +56,33 @@ - public KrbDataInputStream(InputStream is){ - super(is); - } -+ -+ /** -+ * Reads a length value which is represented in 4 bytes from -+ * this input stream. The value must be positive. -+ * @return the length value represented by this byte array. -+ * @throws IOException if there are not enough bytes or it represents -+ * a negative value -+ */ -+ final public int readLength4() throws IOException { -+ int len = read(4); -+ if (len < 0) { -+ throw new IOException("Invalid encoding"); -+ } -+ return len; -+ } -+ - /** - * Reads up to the specific number of bytes from this input stream. - * @param num the number of bytes to be read. - * @return the int value of this byte array. -- * @exception IOException. -+ * @throws IOException if there are not enough bytes - */ -- public int read(int num) throws IOException{ -+ public int read(int num) throws IOException { - byte[] bytes = new byte[num]; -- read(bytes, 0, num); -+ if (read(bytes, 0, num) != num) { -+ throw new IOException("Premature end of stream reached"); -+ } - int result = 0; - for (int i = 0; i < num; i++) { - if (bigEndian) { ---- ./jdk/src/share/classes/sun/security/ssl/ClientHandshaker.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/ClientHandshaker.java Mon Dec 08 12:29:42 2014 -0800 -@@ -345,6 +345,13 @@ - break; - - case HandshakeMessage.ht_finished: -+ // A ChangeCipherSpec record must have been received prior to -+ // reception of the Finished message (RFC 5246, 7.4.9). -+ if (!receivedChangeCipherSpec()) { -+ fatalSE(Alerts.alert_handshake_failure, -+ "Received Finished message before ChangeCipherSpec"); -+ } -+ - this.serverFinished( - new Finished(protocolVersion, input, cipherSuite)); - break; ---- ./jdk/src/share/classes/sun/security/ssl/Handshaker.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/Handshaker.java Mon Dec 08 12:29:42 2014 -0800 -@@ -66,27 +66,27 @@ - ProtocolVersion protocolVersion; - - // the currently active protocol version during a renegotiation -- ProtocolVersion activeProtocolVersion; -+ ProtocolVersion activeProtocolVersion; - - // security parameters for secure renegotiation. -- boolean secureRenegotiation; -- byte[] clientVerifyData; -- byte[] serverVerifyData; -+ boolean secureRenegotiation; -+ byte[] clientVerifyData; -+ byte[] serverVerifyData; - - // Is it an initial negotiation or a renegotiation? -- boolean isInitialHandshake; -+ boolean isInitialHandshake; - - // List of enabled protocols -- private ProtocolList enabledProtocols; -+ private ProtocolList enabledProtocols; - - // List of enabled CipherSuites -- private CipherSuiteList enabledCipherSuites; -+ private CipherSuiteList enabledCipherSuites; - - // The endpoint identification protocol -- String identificationProtocol; -+ String identificationProtocol; - - // The cryptographic algorithm constraints -- private AlgorithmConstraints algorithmConstraints = null; -+ private AlgorithmConstraints algorithmConstraints = null; - - // Local supported signature and algorithms - Collection<SignatureAndHashAlgorithm> localSupportedSignAlgs; -@@ -95,15 +95,13 @@ - Collection<SignatureAndHashAlgorithm> peerSupportedSignAlgs; - - /* -- -- /* - * List of active protocols - * - * Active protocols is a subset of enabled protocols, and will - * contain only those protocols that have vaild cipher suites - * enabled. - */ -- private ProtocolList activeProtocols; -+ private ProtocolList activeProtocols; - - /* - * List of active cipher suites -@@ -111,39 +109,41 @@ - * Active cipher suites is a subset of enabled cipher suites, and will - * contain only those cipher suites available for the active protocols. - */ -- private CipherSuiteList activeCipherSuites; -+ private CipherSuiteList activeCipherSuites; - - // The server name indication and matchers -- List<SNIServerName> serverNames = -- Collections.<SNIServerName>emptyList(); -- Collection<SNIMatcher> sniMatchers = -- Collections.<SNIMatcher>emptyList(); -+ List<SNIServerName> serverNames = Collections.<SNIServerName>emptyList(); -+ Collection<SNIMatcher> sniMatchers = Collections.<SNIMatcher>emptyList(); - -- private boolean isClient; -- private boolean needCertVerify; -+ private boolean isClient; -+ private boolean needCertVerify; - -- SSLSocketImpl conn = null; -- SSLEngineImpl engine = null; -+ SSLSocketImpl conn = null; -+ SSLEngineImpl engine = null; - -- HandshakeHash handshakeHash; -- HandshakeInStream input; -- HandshakeOutStream output; -- int state; -- SSLContextImpl sslContext; -- RandomCookie clnt_random, svr_random; -- SSLSessionImpl session; -+ HandshakeHash handshakeHash; -+ HandshakeInStream input; -+ HandshakeOutStream output; -+ int state; -+ SSLContextImpl sslContext; -+ RandomCookie clnt_random, svr_random; -+ SSLSessionImpl session; - - // current CipherSuite. Never null, initially SSL_NULL_WITH_NULL_NULL -- CipherSuite cipherSuite; -+ CipherSuite cipherSuite; - - // current key exchange. Never null, initially K_NULL -- KeyExchange keyExchange; -+ KeyExchange keyExchange; - -- /* True if this session is being resumed (fast handshake) */ -- boolean resumingSession; -+ // True if this session is being resumed (fast handshake) -+ boolean resumingSession; - -- /* True if it's OK to start a new SSL session */ -- boolean enableNewSession; -+ // True if it's OK to start a new SSL session -+ boolean enableNewSession; -+ -+ // True if session keys have been calculated and the caller may receive -+ // and process a ChangeCipherSpec message -+ private boolean sessKeysCalculated; - - // Whether local cipher suites preference should be honored during - // handshaking? -@@ -176,7 +176,7 @@ - // here instead of using this lock. Consider changing. - private Object thrownLock = new Object(); - -- /* Class and subclass dynamic debugging support */ -+ // Class and subclass dynamic debugging support - static final Debug debug = Debug.getInstance("ssl"); - - // By default, disable the unsafe legacy session renegotiation -@@ -253,6 +253,7 @@ - this.serverVerifyData = serverVerifyData; - enableNewSession = true; - invalidated = false; -+ sessKeysCalculated = false; - - setCipherSuite(CipherSuite.C_NULL); - setEnabledProtocols(enabledProtocols); -@@ -359,6 +360,14 @@ - } - } - -+ final boolean receivedChangeCipherSpec() { -+ if (conn != null) { -+ return conn.receivedChangeCipherSpec(); -+ } else { -+ return engine.receivedChangeCipherSpec(); -+ } -+ } -+ - String getEndpointIdentificationAlgorithmSE() { - SSLParameters paras; - if (conn != null) { -@@ -491,7 +500,9 @@ - - if (activeProtocols.collection().isEmpty() || - activeProtocols.max.v == ProtocolVersion.NONE.v) { -- throw new SSLHandshakeException("No appropriate protocol"); -+ throw new SSLHandshakeException( -+ "No appropriate protocol (protocol is disabled or " + -+ "cipher suites are inappropriate)"); - } - - if (activeCipherSuites == null) { -@@ -669,6 +680,16 @@ - if (activeProtocols == null) { - ArrayList<ProtocolVersion> protocols = new ArrayList<>(4); - for (ProtocolVersion protocol : enabledProtocols.collection()) { -+ if (!algorithmConstraints.permits( -+ EnumSet.of(CryptoPrimitive.KEY_AGREEMENT), -+ protocol.name, null)) { -+ if (debug != null && Debug.isOn("verbose")) { -+ System.out.println( -+ "Ignoring disabled protocol: " + protocol); -+ } -+ -+ continue; -+ } - boolean found = false; - for (CipherSuite suite : enabledCipherSuites.collection()) { - if (suite.isAvailable() && suite.obsoleted > protocol.v && -@@ -1212,6 +1233,10 @@ - throw new ProviderException(e); - } - -+ // Mark a flag that allows outside entities (like SSLSocket/SSLEngine) -+ // determine if a ChangeCipherSpec message could be processed. -+ sessKeysCalculated = true; -+ - // - // Dump the connection keys as they're generated. - // -@@ -1266,6 +1291,15 @@ - } - } - -+ /** -+ * Return whether or not the Handshaker has derived session keys for -+ * this handshake. This is used for determining readiness to process -+ * an incoming ChangeCipherSpec message. -+ */ -+ boolean sessionKeysCalculated() { -+ return sessKeysCalculated; -+ } -+ - private static void printHex(HexDumpEncoder dump, byte[] bytes) { - if (bytes == null) { - System.out.println("(key bytes not available)"); ---- ./jdk/src/share/classes/sun/security/ssl/ProtocolVersion.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/ProtocolVersion.java Mon Dec 08 12:29:42 2014 -0800 -@@ -25,6 +25,9 @@ - - package sun.security.ssl; - -+import java.util.*; -+import java.security.CryptoPrimitive; -+ - /** - * Type safe enum for an SSL/TLS protocol version. Instances are obtained - * using the static factory methods or by referencing the static members -@@ -86,6 +89,11 @@ - // Default version for hello messages (SSLv2Hello) - final static ProtocolVersion DEFAULT_HELLO = FIPS ? TLS10 : SSL30; - -+ // Available protocols -+ // -+ // Including all supported protocols except the disabled ones. -+ final static Set<ProtocolVersion> availableProtocols; -+ - // version in 16 bit MSB format as it appears in records and - // messages, i.e. 0x0301 for TLS 1.0 - public final int v; -@@ -96,6 +104,24 @@ - // name used in JSSE (e.g. TLSv1 for TLS 1.0) - final String name; - -+ // Initialize the available protocols. -+ static { -+ Set<ProtocolVersion> protocols = new HashSet<>(5); -+ -+ ProtocolVersion[] pvs = new ProtocolVersion[] { -+ SSL20Hello, SSL30, TLS10, TLS11, TLS12}; -+ for (ProtocolVersion p : pvs) { -+ if (SSLAlgorithmConstraints.DEFAULT_SSL_ONLY.permits( -+ EnumSet.of(CryptoPrimitive.KEY_AGREEMENT), -+ p.name, null)) { -+ protocols.add(p); -+ } -+ } -+ -+ availableProtocols = -+ Collections.<ProtocolVersion>unmodifiableSet(protocols); -+ } -+ - // private - private ProtocolVersion(int v, String name) { - this.v = v; ---- ./jdk/src/share/classes/sun/security/ssl/SSLAlgorithmConstraints.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/SSLAlgorithmConstraints.java Mon Dec 08 12:29:42 2014 -0800 -@@ -55,6 +55,14 @@ - - private boolean enabledX509DisabledAlgConstraints = true; - -+ // the default algorithm constraints -+ final static AlgorithmConstraints DEFAULT = -+ new SSLAlgorithmConstraints(null); -+ -+ // the default SSL only algorithm constraints -+ final static AlgorithmConstraints DEFAULT_SSL_ONLY = -+ new SSLAlgorithmConstraints((SSLSocket)null, false); -+ - SSLAlgorithmConstraints(AlgorithmConstraints algorithmConstraints) { - userAlgConstraints = algorithmConstraints; - } ---- ./jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java Mon Dec 08 12:29:42 2014 -0800 -@@ -52,10 +52,6 @@ - private X509TrustManager trustManager; - private SecureRandom secureRandom; - -- // The default algrithm constraints -- private AlgorithmConstraints defaultAlgorithmConstraints = -- new SSLAlgorithmConstraints(null); -- - // supported and default protocols - private ProtocolList defaultServerProtocolList; - private ProtocolList defaultClientProtocolList; -@@ -350,7 +346,7 @@ - if (suite.isAvailable() && - suite.obsoleted > protocols.min.v && - suite.supported <= protocols.max.v) { -- if (defaultAlgorithmConstraints.permits( -+ if (SSLAlgorithmConstraints.DEFAULT.permits( - EnumSet.of(CryptoPrimitive.KEY_AGREEMENT), - suite.name, null)) { - suites.add(suite); -@@ -431,11 +427,16 @@ - */ - private abstract static class AbstractSSLContext extends SSLContextImpl { - // parameters -- private final static SSLParameters defaultServerSSLParams; -- private final static SSLParameters supportedSSLParams; -+ private static final SSLParameters defaultServerSSLParams; -+ private static final SSLParameters supportedSSLParams; - - static { -+ // supported SSL parameters - supportedSSLParams = new SSLParameters(); -+ -+ // candidates for available protocols -+ ProtocolVersion[] candidates; -+ - if (SunJSSE.isFIPS()) { - supportedSSLParams.setProtocols(new String[] { - ProtocolVersion.TLS10.name, -@@ -443,7 +444,11 @@ - ProtocolVersion.TLS12.name - }); - -- defaultServerSSLParams = supportedSSLParams; -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS12 -+ }; - } else { - supportedSSLParams.setProtocols(new String[] { - ProtocolVersion.SSL20Hello.name, -@@ -453,8 +458,18 @@ - ProtocolVersion.TLS12.name - }); - -- defaultServerSSLParams = supportedSSLParams; -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.SSL20Hello, -+ ProtocolVersion.SSL30, -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS12 -+ }; - } -+ -+ defaultServerSSLParams = new SSLParameters(); -+ defaultServerSSLParams.setProtocols( -+ getAvailableProtocols(candidates).toArray(new String[0])); - } - - @Override -@@ -466,6 +481,22 @@ - SSLParameters getSupportedSSLParams() { - return supportedSSLParams; - } -+ -+ static List<String> getAvailableProtocols( -+ ProtocolVersion[] protocolCandidates) { -+ -+ List<String> availableProtocols = Collections.<String>emptyList(); -+ if (protocolCandidates != null && protocolCandidates.length != 0) { -+ availableProtocols = new ArrayList<>(protocolCandidates.length); -+ for (ProtocolVersion p : protocolCandidates) { -+ if (ProtocolVersion.availableProtocols.contains(p)) { -+ availableProtocols.add(p.name); -+ } -+ } -+ } -+ -+ return availableProtocols; -+ } - } - - /* -@@ -474,21 +505,25 @@ - * @see SSLContext - */ - public static final class TLS10Context extends AbstractSSLContext { -- private final static SSLParameters defaultClientSSLParams; -+ private static final SSLParameters defaultClientSSLParams; - - static { -+ // candidates for available protocols -+ ProtocolVersion[] candidates; -+ if (SunJSSE.isFIPS()) { -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.TLS10 -+ }; -+ } else { -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.SSL30, -+ ProtocolVersion.TLS10 -+ }; -+ } -+ - defaultClientSSLParams = new SSLParameters(); -- if (SunJSSE.isFIPS()) { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.TLS10.name -- }); -- -- } else { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.SSL30.name, -- ProtocolVersion.TLS10.name -- }); -- } -+ defaultClientSSLParams.setProtocols( -+ getAvailableProtocols(candidates).toArray(new String[0])); - } - - @Override -@@ -503,23 +538,27 @@ - * @see SSLContext - */ - public static final class TLS11Context extends AbstractSSLContext { -- private final static SSLParameters defaultClientSSLParams; -+ private static final SSLParameters defaultClientSSLParams; - - static { -+ // candidates for available protocols -+ ProtocolVersion[] candidates; -+ if (SunJSSE.isFIPS()) { -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11 -+ }; -+ } else { -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.SSL30, -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11 -+ }; -+ } -+ - defaultClientSSLParams = new SSLParameters(); -- if (SunJSSE.isFIPS()) { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.TLS10.name, -- ProtocolVersion.TLS11.name -- }); -- -- } else { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.SSL30.name, -- ProtocolVersion.TLS10.name, -- ProtocolVersion.TLS11.name -- }); -- } -+ defaultClientSSLParams.setProtocols( -+ getAvailableProtocols(candidates).toArray(new String[0])); - } - - @Override -@@ -534,25 +573,29 @@ - * @see SSLContext - */ - public static final class TLS12Context extends AbstractSSLContext { -- private final static SSLParameters defaultClientSSLParams; -+ private static final SSLParameters defaultClientSSLParams; - - static { -+ // candidates for available protocols -+ ProtocolVersion[] candidates; -+ if (SunJSSE.isFIPS()) { -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS12 -+ }; -+ } else { -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.SSL30, -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS12 -+ }; -+ } -+ - defaultClientSSLParams = new SSLParameters(); -- if (SunJSSE.isFIPS()) { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.TLS10.name, -- ProtocolVersion.TLS11.name, -- ProtocolVersion.TLS12.name -- }); -- -- } else { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.SSL30.name, -- ProtocolVersion.TLS10.name, -- ProtocolVersion.TLS11.name, -- ProtocolVersion.TLS12.name -- }); -- } -+ defaultClientSSLParams.setProtocols( -+ getAvailableProtocols(candidates).toArray(new String[0])); - } - - @Override -@@ -567,8 +610,8 @@ - * @see SSLContext - */ - private static class CustomizedSSLContext extends AbstractSSLContext { -- private final static String PROPERTY_NAME = "jdk.tls.client.protocols"; -- private final static SSLParameters defaultClientSSLParams; -+ private static final String PROPERTY_NAME = "jdk.tls.client.protocols"; -+ private static final SSLParameters defaultClientSSLParams; - private static IllegalArgumentException reservedException = null; - - // Don't want a java.lang.LinkageError for illegal system property. -@@ -578,60 +621,74 @@ - // the provider service. Instead, let's handle the initialization - // exception in constructor. - static { -+ // candidates for available protocols -+ ProtocolVersion[] candidates; -+ - String property = AccessController.doPrivileged( - new GetPropertyAction(PROPERTY_NAME)); -- defaultClientSSLParams = new SSLParameters(); - if (property == null || property.length() == 0) { - // the default enabled client TLS protocols - if (SunJSSE.isFIPS()) { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.TLS10.name, -- ProtocolVersion.TLS11.name, -- ProtocolVersion.TLS12.name -- }); -- -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS12 -+ }; - } else { -- defaultClientSSLParams.setProtocols(new String[] { -- ProtocolVersion.SSL30.name, -- ProtocolVersion.TLS10.name, -- ProtocolVersion.TLS11.name, -- ProtocolVersion.TLS12.name -- }); -+ candidates = new ProtocolVersion[] { -+ ProtocolVersion.SSL30, -+ ProtocolVersion.TLS10, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS12 -+ }; - } - } else { - // remove double quote marks from beginning/end of the property -- if (property.charAt(0) == '"' && -+ if (property.length() > 1 && property.charAt(0) == '"' && - property.charAt(property.length() - 1) == '"') { - property = property.substring(1, property.length() - 1); - } - -- String[] protocols = property.split(","); -+ String[] protocols = null; -+ if (property != null && property.length() != 0) { -+ protocols = property.split(","); -+ } else { -+ reservedException = new IllegalArgumentException( -+ "No protocol specified in " + -+ PROPERTY_NAME + " system property"); -+ protocols = new String[0]; -+ } -+ -+ candidates = new ProtocolVersion[protocols.length]; - for (int i = 0; i < protocols.length; i++) { - protocols[i] = protocols[i].trim(); - // Is it a supported protocol name? - try { -- ProtocolVersion.valueOf(protocols[i]); -+ candidates[i] = ProtocolVersion.valueOf(protocols[i]); - } catch (IllegalArgumentException iae) { - reservedException = new IllegalArgumentException( -- PROPERTY_NAME + ": " + protocols[i] + -- " is not a standard SSL protocol name", iae); -+ PROPERTY_NAME + ": " + protocols[i] + -+ " is not a standard SSL/TLS protocol name", iae); -+ break; - } - } - - if ((reservedException == null) && SunJSSE.isFIPS()) { -- for (String protocol : protocols) { -- if (ProtocolVersion.SSL20Hello.name.equals(protocol) || -- ProtocolVersion.SSL30.name.equals(protocol)) { -+ for (ProtocolVersion protocolVersion : candidates) { -+ if (ProtocolVersion.SSL20Hello.v == protocolVersion.v || -+ ProtocolVersion.SSL30.v == protocolVersion.v) { - reservedException = new IllegalArgumentException( -- PROPERTY_NAME + ": " + protocol + -+ PROPERTY_NAME + ": " + protocolVersion + - " is not FIPS compliant"); - } - } - } -+ } - -- if (reservedException == null) { -- defaultClientSSLParams.setProtocols(protocols); -- } -+ defaultClientSSLParams = new SSLParameters(); -+ if (reservedException == null) { -+ defaultClientSSLParams.setProtocols( -+ getAvailableProtocols(candidates).toArray(new String[0])); - } - } - ---- ./jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2003, 2014, 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 -@@ -212,6 +212,11 @@ - static final byte clauth_required = 2; - - /* -+ * Flag indicating that the engine has received a ChangeCipherSpec message. -+ */ -+ private boolean receivedCCS; -+ -+ /* - * Flag indicating if the next record we receive MUST be a Finished - * message. Temporarily set during the handshake to ensure that - * a change cipher spec message is followed by a finished message. -@@ -372,6 +377,7 @@ - */ - roleIsServer = true; - connectionState = cs_START; -+ receivedCCS = false; - - // default server name indication - serverNames = -@@ -1021,6 +1027,7 @@ - - if (handshaker.invalidated) { - handshaker = null; -+ receivedCCS = false; - // if state is cs_RENEGOTIATE, revert it to cs_DATA - if (connectionState == cs_RENEGOTIATE) { - connectionState = cs_DATA; -@@ -1039,6 +1046,7 @@ - } - handshaker = null; - connectionState = cs_DATA; -+ receivedCCS = false; - - // No handshakeListeners here. That's a - // SSLSocket thing. -@@ -1078,13 +1086,25 @@ - case Record.ct_change_cipher_spec: - if ((connectionState != cs_HANDSHAKE - && connectionState != cs_RENEGOTIATE) -- || inputRecord.available() != 1 -+ || !handshaker.sessionKeysCalculated() -+ || receivedCCS) { -+ // For the CCS message arriving in the wrong state -+ fatal(Alerts.alert_unexpected_message, -+ "illegal change cipher spec msg, conn state = " -+ + connectionState + ", handshake state = " -+ + handshaker.state); -+ } else if (inputRecord.available() != 1 - || inputRecord.read() != 1) { -+ // For structural/content issues with the CCS - fatal(Alerts.alert_unexpected_message, -- "illegal change cipher spec msg, state = " -- + connectionState); -+ "Malformed change cipher spec msg"); - } - -+ // Once we've received CCS, update the flag. -+ // If the remote endpoint sends it again in this handshake -+ // we won't process it. -+ receivedCCS = true; -+ - // - // The first message after a change_cipher_spec - // record MUST be a "Finished" handshake record, -@@ -2120,6 +2140,14 @@ - } - } - -+ /* -+ * Returns a boolean indicating whether the ChangeCipherSpec message -+ * has been received for this handshake. -+ */ -+ boolean receivedChangeCipherSpec() { -+ return receivedCCS; -+ } -+ - /** - * Returns a printable representation of this end of the connection. - */ ---- ./jdk/src/share/classes/sun/security/ssl/SSLSocketImpl.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/SSLSocketImpl.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1996, 2014, 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 -@@ -172,6 +172,12 @@ - private volatile int connectionState; - - /* -+ * Flag indicating that the engine's handshaker has done the necessary -+ * steps so the engine may process a ChangeCipherSpec message. -+ */ -+ private boolean receivedCCS; -+ -+ /* - * Flag indicating if the next record we receive MUST be a Finished - * message. Temporarily set during the handshake to ensure that - * a change cipher spec message is followed by a finished message. -@@ -587,6 +593,7 @@ - */ - roleIsServer = isServer; - connectionState = cs_START; -+ receivedCCS = false; - - /* - * default read and write side cipher and MAC support -@@ -1045,6 +1052,7 @@ - - if (handshaker.invalidated) { - handshaker = null; -+ receivedCCS = false; - // if state is cs_RENEGOTIATE, revert it to cs_DATA - if (connectionState == cs_RENEGOTIATE) { - connectionState = cs_DATA; -@@ -1060,6 +1068,7 @@ - handshakeSession = null; - handshaker = null; - connectionState = cs_DATA; -+ receivedCCS = false; - - // - // Tell folk about handshake completion, but do -@@ -1107,13 +1116,24 @@ - case Record.ct_change_cipher_spec: - if ((connectionState != cs_HANDSHAKE - && connectionState != cs_RENEGOTIATE) -- || r.available() != 1 -- || r.read() != 1) { -+ || !handshaker.sessionKeysCalculated() -+ || receivedCCS) { -+ // For the CCS message arriving in the wrong state - fatal(Alerts.alert_unexpected_message, -- "illegal change cipher spec msg, state = " -- + connectionState); -+ "illegal change cipher spec msg, conn state = " -+ + connectionState + ", handshake state = " -+ + handshaker.state); -+ } else if (r.available() != 1 || r.read() != 1) { -+ // For structural/content issues with the CCS -+ fatal(Alerts.alert_unexpected_message, -+ "Malformed change cipher spec msg"); - } - -+ // Once we've received CCS, update the flag. -+ // If the remote endpoint sends it again in this handshake -+ // we won't process it. -+ receivedCCS = true; -+ - // - // The first message after a change_cipher_spec - // record MUST be a "Finished" handshake record, -@@ -2550,6 +2570,14 @@ - } - } - -+ /* -+ * Returns a boolean indicating whether the ChangeCipherSpec message -+ * has been received for this handshake. -+ */ -+ boolean receivedChangeCipherSpec() { -+ return receivedCCS; -+ } -+ - // - // We allocate a separate thread to deliver handshake completion - // events. This ensures that the notifications don't block the ---- ./jdk/src/share/classes/sun/security/ssl/ServerHandshaker.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/ssl/ServerHandshaker.java Mon Dec 08 12:29:42 2014 -0800 -@@ -287,6 +287,13 @@ - break; - - case HandshakeMessage.ht_finished: -+ // A ChangeCipherSpec record must have been received prior to -+ // reception of the Finished message (RFC 5246, 7.4.9). -+ if (!receivedChangeCipherSpec()) { -+ fatalSE(Alerts.alert_handshake_failure, -+ "Received Finished message before ChangeCipherSpec"); -+ } -+ - this.clientFinished( - new Finished(protocolVersion, input, cipherSuite)); - break; ---- ./jdk/src/share/classes/sun/security/tools/keytool/Resources_ja.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/tools/keytool/Resources_ja.java Mon Dec 08 12:29:42 2014 -0800 -@@ -248,7 +248,7 @@ - "\u65E2\u5B58\u306E\u30A8\u30F3\u30C8\u30EA\u306E\u5225\u540D{0}\u304C\u5B58\u5728\u3057\u3066\u3044\u307E\u3059\u3002\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\u3002[\u3044\u3044\u3048]: "}, - {"Too.many.failures.try.later", "\u969C\u5BB3\u304C\u591A\u3059\u304E\u307E\u3059 - \u5F8C\u3067\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044"}, - {"Certification.request.stored.in.file.filename.", -- "\u8A3C\u660E\u66F8\u30EA\u30AF\u30A8\u30B9\u30C8\u304C\u30D5\u30A1\u30A4\u30EB<{0}>\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F"}, -+ "\u8A8D\u8A3C\u30EA\u30AF\u30A8\u30B9\u30C8\u304C\u30D5\u30A1\u30A4\u30EB<{0}>\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F"}, - {"Submit.this.to.your.CA", "\u3053\u308C\u3092CA\u306B\u63D0\u51FA\u3057\u3066\u304F\u3060\u3055\u3044"}, - {"if.alias.not.specified.destalias.and.srckeypass.must.not.be.specified", - "\u5225\u540D\u3092\u6307\u5B9A\u3057\u306A\u3044\u5834\u5408\u3001\u51FA\u529B\u5148\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u5225\u540D\u304A\u3088\u3073\u30BD\u30FC\u30B9\u30FB\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093"}, ---- ./jdk/src/share/classes/sun/security/util/DerIndefLenConverter.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/util/DerIndefLenConverter.java Mon Dec 08 12:29:42 2014 -0800 -@@ -156,12 +156,18 @@ - } - if (isLongForm(lenByte)) { - lenByte &= LEN_MASK; -- if (lenByte > 4) -+ if (lenByte > 4) { - throw new IOException("Too much data"); -- if ((dataSize - dataPos) < (lenByte + 1)) -+ } -+ if ((dataSize - dataPos) < (lenByte + 1)) { - throw new IOException("Too little data"); -- for (int i = 0; i < lenByte; i++) -+ } -+ for (int i = 0; i < lenByte; i++) { - curLen = (curLen << 8) + (data[dataPos++] & 0xff); -+ } -+ if (curLen < 0) { -+ throw new IOException("Invalid length bytes"); -+ } - } else { - curLen = (lenByte & LEN_MASK); - } -@@ -188,10 +194,15 @@ - } - if (isLongForm(lenByte)) { - lenByte &= LEN_MASK; -- for (int i = 0; i < lenByte; i++) -+ for (int i = 0; i < lenByte; i++) { - curLen = (curLen << 8) + (data[dataPos++] & 0xff); -- } else -+ } -+ if (curLen < 0) { -+ throw new IOException("Invalid length bytes"); -+ } -+ } else { - curLen = (lenByte & LEN_MASK); -+ } - writeLength(curLen); - writeValue(curLen); - } ---- ./jdk/src/share/classes/sun/security/util/DerInputStream.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/security/util/DerInputStream.java Mon Dec 08 12:29:42 2014 -0800 -@@ -566,6 +566,10 @@ - value <<= 8; - value += 0x0ff & in.read(); - } -+ if (value < 0) { -+ throw new IOException("DerInputStream.getLength(): " -+ + "Invalid length bytes"); -+ } - } - return value; - } ---- ./jdk/src/share/classes/sun/swing/FilePane.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/swing/FilePane.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1979,20 +1979,24 @@ - return false; - } - -- if (f instanceof ShellFolder) { -- return f.canWrite(); -- } else { -- if (usesShellFolder(getFileChooser())) { -- try { -- return ShellFolder.getShellFolder(f).canWrite(); -- } catch (FileNotFoundException ex) { -- // File doesn't exist -- return false; -+ try { -+ if (f instanceof ShellFolder) { -+ return f.canWrite(); -+ } else { -+ if (usesShellFolder(getFileChooser())) { -+ try { -+ return ShellFolder.getShellFolder(f).canWrite(); -+ } catch (FileNotFoundException ex) { -+ // File doesn't exist -+ return false; -+ } -+ } else { -+ // Ordinary file -+ return f.canWrite(); - } -- } else { -- // Ordinary file -- return f.canWrite(); - } -+ } catch (SecurityException e) { -+ return false; - } - } - ---- ./jdk/src/share/classes/sun/swing/WindowsPlacesBar.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/swing/WindowsPlacesBar.java Mon Dec 08 12:29:42 2014 -0800 -@@ -81,11 +81,7 @@ - setBackground(bgColor); - FileSystemView fsv = fc.getFileSystemView(); - -- files = AccessController.doPrivileged(new PrivilegedAction<File[]>() { -- public File[] run() { -- return (File[]) ShellFolder.get("fileChooserShortcutPanelFolders"); -- } -- }); -+ files = (File[]) ShellFolder.get("fileChooserShortcutPanelFolders"); - - buttons = new JToggleButton[files.length]; - buttonGroup = new ButtonGroup(); ---- ./jdk/src/share/classes/sun/swing/plaf/synth/SynthFileChooserUIImpl.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/swing/plaf/synth/SynthFileChooserUIImpl.java Mon Dec 08 12:29:42 2014 -0800 -@@ -769,16 +769,9 @@ - fireIntervalRemoved(this, 0, oldSize); - } - -- File[] baseFolders; -- if (useShellFolder) { -- baseFolders = AccessController.doPrivileged(new PrivilegedAction<File[]>() { -- public File[] run() { -- return (File[]) ShellFolder.get("fileChooserComboBoxFolders"); -- } -- }); -- } else { -- baseFolders = fsv.getRoots(); -- } -+ File[] baseFolders = (useShellFolder) -+ ? (File[]) ShellFolder.get("fileChooserComboBoxFolders") -+ : fsv.getRoots(); - directories.addAll(Arrays.asList(baseFolders)); - - // Get the canonical (full) path. This has the side ---- ./jdk/src/share/classes/sun/util/calendar/ZoneInfoFile.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/calendar/ZoneInfoFile.java Mon Dec 08 12:29:42 2014 -0800 -@@ -615,7 +615,9 @@ - // startTime=86400000 <= 24 hours - // This: startDayOfWeek=6 - // startTime=0 -- // Below is the workaround, it probably slows down everyone a little -+ // Similar workaround needs to be applied to Africa/Cairo and -+ // its endDayOfWeek and endTime -+ // Below is the workarounds, it probably slows down everyone a little - if (params[2] == 6 && params[3] == 0 && - (zoneId.equals("Asia/Amman") || - zoneId.equals("Asia/Gaza") || -@@ -623,6 +625,13 @@ - params[2] = 5; - params[3] = 86400000; - } -+ //endDayOfWeek and endTime workaround -+ if (params[7] == 6 && params[8] == 0 && -+ (zoneId.equals("Africa/Cairo"))) { -+ params[7] = 5; -+ params[8] = 86400000; -+ } -+ - } else if (nTrans > 0) { // only do this if there is something in table already - if (lastyear < LASTYEAR) { - // ZoneInfo has an ending entry for 2037 ---- ./jdk/src/share/classes/sun/util/resources/TimeZoneNames.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/TimeZoneNames.java Mon Dec 08 12:29:42 2014 -0800 -@@ -47,9 +47,9 @@ - String ACT[] = new String[] {"Acre Time", "ACT", - "Acre Summer Time", "ACST", - "Acre Time", "ACT"}; -- String ADELAIDE[] = new String[] {"Central Standard Time (South Australia)", "CST", -- "Central Summer Time (South Australia)", "CST", -- "Central Time (South Australia)", "CT"}; -+ String ADELAIDE[] = new String[] {"Australian Central Standard Time (South Australia)", "ACST", -+ "Australian Central Daylight Time (South Australia)", "ACDT", -+ "Australian Central Time (South Australia)", "ACT"}; - String AGT[] = new String[] {"Argentine Time", "ART", - "Argentine Summer Time", "ARST", - "Argentine Time", "ART"}; -@@ -71,12 +71,12 @@ - String BDT[] = new String[] {"Bangladesh Time", "BDT", - "Bangladesh Summer Time", "BDST", - "Bangladesh Time", "BDT"}; -- String BRISBANE[] = new String[] {"Eastern Standard Time (Queensland)", "EST", -- "Eastern Summer Time (Queensland)", "EST", -- "Eastern Time (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Central Standard Time (South Australia/New South Wales)", "CST", -- "Central Summer Time (South Australia/New South Wales)", "CST", -- "Central Time (South Australia/New South Wales)", "CT"}; -+ String BRISBANE[] = new String[] {"Australian Eastern Standard Time (Queensland)", "AEST", -+ "Australian Eastern Daylight Time (Queensland)", "AEDT", -+ "Australian Eastern Time (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Australian Central Standard Time (South Australia/New South Wales)", "ACST", -+ "Australian Central Daylight Time (South Australia/New South Wales)", "ACDT", -+ "Australian Central Time (South Australia/New South Wales)", "ACT"}; - String BRT[] = new String[] {"Brasilia Time", "BRT", - "Brasilia Summer Time", "BRST", - "Brasilia Time", "BRT"}; -@@ -110,9 +110,9 @@ - String CUBA[] = new String[] {"Cuba Standard Time", "CST", - "Cuba Daylight Time", "CDT", - "Cuba Time", "CT"}; -- String DARWIN[] = new String[] {"Central Standard Time (Northern Territory)", "CST", -- "Central Summer Time (Northern Territory)", "CST", -- "Central Time (Northern Territory)", "CT"}; -+ String DARWIN[] = new String[] {"Australian Central Standard Time (Northern Territory)", "ACST", -+ "Australian Central Daylight Time (Northern Territory)", "ACDT", -+ "Australian Central Time (Northern Territory)", "ACT"}; - String DUBLIN[] = new String[] {"Greenwich Mean Time", "GMT", - "Irish Summer Time", "IST", - "Irish Time", "IT"}; -@@ -131,9 +131,9 @@ - String EST[] = new String[] {"Eastern Standard Time", "EST", - "Eastern Daylight Time", "EDT", - "Eastern Time", "ET"}; -- String EST_NSW[] = new String[] {"Eastern Standard Time (New South Wales)", "EST", -- "Eastern Summer Time (New South Wales)", "EST", -- "Eastern Time (New South Wales)", "ET"}; -+ String EST_NSW[] = new String[] {"Australian Eastern Standard Time (New South Wales)", "AEST", -+ "Australian Eastern Daylight Time (New South Wales)", "AEDT", -+ "Australian Eastern Time (New South Wales)", "AET"}; - String FET[] = new String[] {"Further-eastern European Time", "FET", - "Further-eastern European Summer Time", "FEST", - "Further-eastern European Time", "FET"}; -@@ -167,6 +167,9 @@ - String IRT[] = new String[] {"Iran Standard Time", "IRST", - "Iran Daylight Time", "IRDT", - "Iran Time", "IRT"}; -+ String IRKT[] = new String[] {"Irkutsk Time", "IRKT", -+ "Irkutsk Summer Time", "IRKST", -+ "Irkutsk Time", "IRKT"}; - String ISRAEL[] = new String[] {"Israel Standard Time", "IST", - "Israel Daylight Time", "IDT", - "Israel Time", "IT"}; -@@ -176,11 +179,14 @@ - String JST[] = new String[] {"Japan Standard Time", "JST", - "Japan Daylight Time", "JDT", - "Japan Time", "JT"}; -+ String KRAT[] = new String[] {"Krasnoyarsk Time", "KRAT", -+ "Krasnoyarsk Summer Time", "KRAST", -+ "Krasnoyarsk Time", "KRAT"}; - String KST[] = new String[] {"Korea Standard Time", "KST", - "Korea Daylight Time", "KDT", - "Korea Time", "KT"}; - String LORD_HOWE[] = new String[] {"Lord Howe Standard Time", "LHST", -- "Lord Howe Summer Time", "LHST", -+ "Lord Howe Daylight Time", "LHDT", - "Lord Howe Time", "LHT"}; - String MHT[] = new String[] {"Marshall Islands Time", "MHT", - "Marshall Islands Summer Time", "MHST", -@@ -230,21 +236,15 @@ - String SGT[] = new String[] {"Singapore Time", "SGT", - "Singapore Summer Time", "SGST", - "Singapore Time", "SGT"}; -- String SLST[] = new String[] {"Greenwich Mean Time", "GMT", -- "Sierra Leone Summer Time", "SLST", -- "Sierra Leone Time", "SLT"}; -- String TASMANIA[] = new String[] {"Eastern Standard Time (Tasmania)", "EST", -- "Eastern Summer Time (Tasmania)", "EST", -- "Eastern Time (Tasmania)", "ET"}; -+ String TASMANIA[] = new String[] {"Australian Eastern Standard Time (Tasmania)", "AEST", -+ "Australian Eastern Daylight Time (Tasmania)", "AEDT", -+ "Australian Eastern Time (Tasmania)", "AET"}; - String TMT[] = new String[] {"Turkmenistan Time", "TMT", - "Turkmenistan Summer Time", "TMST", - "Turkmenistan Time", "TMT"}; - String ULAT[]= new String[] {"Ulaanbaatar Time", "ULAT", - "Ulaanbaatar Summer Time", "ULAST", - "Ulaanbaatar Time", "ULAT"}; -- String WART[] = new String[] {"Western Argentine Time", "WART", -- "Western Argentine Summer Time", "WARST", -- "Western Argentine Time", "WART"}; - String WAT[] = new String[] {"Western African Time", "WAT", - "Western African Summer Time", "WAST", - "Western African Time", "WAT"}; -@@ -254,27 +254,30 @@ - String WIT[] = new String[] {"West Indonesia Time", "WIB", - "West Indonesia Summer Time", "WIST", - "West Indonesia Time", "WIB"}; -- String WST_AUS[] = new String[] {"Western Standard Time (Australia)", "WST", -- "Western Summer Time (Australia)", "WST", -- "Western Time (Australia)", "WT"}; -+ String WST_AUS[] = new String[] {"Australian Western Standard Time", "AWST", -+ "Australian Western Daylight Time", "AWDT", -+ "Australian Western Time", "AWT"}; - String SAMOA[] = new String[] {"Samoa Standard Time", "SST", - "Samoa Daylight Time", "SDT", - "Samoa Time", "ST"}; -- String WST_SAMOA[] = new String[] {"West Samoa Time", "WST", -+ String WST_SAMOA[] = new String[] {"West Samoa Standard Time", "WSST", - "West Samoa Daylight Time", "WSDT", - "West Samoa Time", "WST"}; - String ChST[] = new String[] {"Chamorro Standard Time", "ChST", - "Chamorro Daylight Time", "ChDT", - "Chamorro Time", "ChT"}; -- String VICTORIA[] = new String[] {"Eastern Standard Time (Victoria)", "EST", -- "Eastern Summer Time (Victoria)", "EST", -- "Eastern Time (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"Australian Eastern Standard Time (Victoria)", "AEST", -+ "Australian Eastern Daylight Time (Victoria)", "AEDT", -+ "Australian Eastern Time (Victoria)", "AET"}; - String UTC[] = new String[] {"Coordinated Universal Time", "UTC", - "Coordinated Universal Time", "UTC", - "Coordinated Universal Time", "UTC"}; - String UZT[] = new String[] {"Uzbekistan Time", "UZT", - "Uzbekistan Summer Time", "UZST", - "Uzbekistan Time", "UZT"}; -+ String XJT[] = new String[] {"Xinjiang Standard Time", "XJT", -+ "Xinjiang Daylight Time", "XJDT", -+ "Xinjiang Time", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +339,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +440,7 @@ - "Western Greenland Summer Time", "WGST", - "Western Greenland Time", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +487,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Metlakatla Standard Time", "MeST", -- "Metlakatla Daylight Time", "MeDT", -- "Metlakatla Time", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Pierre & Miquelon Standard Time", "PMST", - "Pierre & Miquelon Daylight Time", "PMDT", -@@ -555,8 +556,8 @@ - {"Antarctica/DumontDUrville", new String[] {"Dumont-d'Urville Time", "DDUT", - "Dumont-d'Urville Summer Time", "DDUST", - "Dumont-d'Urville Time", "DDUT"}}, -- {"Antarctica/Macquarie", new String[] {"Macquarie Island Time", "MIST", -- "Macquarie Island Summer Time", "MIST", -+ {"Antarctica/Macquarie", new String[] {"Macquarie Island Standard Time", "MIST", -+ "Macquarie Island Daylight Time", "MIDT", - "Macquarie Island Time", "MIST"}}, - {"Antarctica/Mawson", new String[] {"Mawson Time", "MAWT", - "Mawson Summer Time", "MAWST", -@@ -607,6 +608,7 @@ - "Brunei Summer Time", "BNST", - "Brunei Time", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Choibalsan Time", "CHOT", - "Choibalsan Summer Time", "CHOST", - "Choibalsan Time", "CHOT"}}, -@@ -631,9 +633,7 @@ - {"Asia/Hovd", new String[] {"Hovd Time", "HOVT", - "Hovd Summer Time", "HOVST", - "Hovd Time", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Irkutsk Time", "IRKT", -- "Irkutsk Summer Time", "IRKST", -- "Irkutsk Time", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"East Indonesia Time", "WIT", -@@ -646,7 +646,7 @@ - "Petropavlovsk-Kamchatski Summer Time", "PETST", - "Petropavlovsk-Kamchatski Time", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"Khandyga Time", "YAKT", -@@ -654,9 +654,7 @@ - "Khandyga Time", "YAKT"}}, - - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"Krasnoyarsk Time", "KRAT", -- "Krasnoyarsk Summer Time", "KRAST", -- "Krasnoyarsk Time", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -671,7 +669,7 @@ - "Philippines Time", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Oral Time", "ORAT", - "Oral Summer Time", "ORAST", -@@ -697,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -709,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Ust-Nera Time", "VLAT", - "Ust-Nera Summer Time", "VLAST", - "Ust-Nera Time", "VLAT"}}, -@@ -751,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Central Western Standard Time (Australia)", "CWST", -- "Central Western Summer Time (Australia)", "CWST", -- "Central Western Time (Australia)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Australian Central Western Standard Time", "ACWST", -+ "Australian Central Western Daylight Time", "ACWDT", -+ "Australian Central Western Time", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -819,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -828,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -854,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Volgograd Time", "VOLT", -- "Volgograd Summer Time", "VOLST", -- "Volgograd Time", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -918,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/de/TimeZoneNames_de.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/de/TimeZoneNames_de.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Acre Normalzeit", "ACT", - "Acre Sommerzeit", "ACST", - "Acre Normalzeit", "ACT"}; -- String ADELAIDE[] = new String[] {"Zentrale Normalzeit (S\u00FCdaustralien)", "CST", -- "Zentrale Sommerzeit (S\u00FCdaustralien)", "CST", -- "Zentrale Zeitzone (S\u00FCdaustralien)", "CT"}; -+ String ADELAIDE[] = new String[] {"Zentrale Normalzeit (S\u00FCdaustralien)", "ACST", -+ "Zentrale Sommerzeit (S\u00FCdaustralien)", "ACDT", -+ "Zentrale Zeitzone (S\u00FCdaustralien)", "ACT"}; - String AGT[] = new String[] {"Argentinische Zeit", "ART", - "Argentinische Sommerzeit", "ARST", - "Argentinische Zeit", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"Bangladesch Zeit", "BDT", - "Bangladesch Sommerzeit", "BDST", - "Bangladesch Zeit", "BDT"}; -- String BRISBANE[] = new String[] {"\u00D6stliche Normalzeit (Queensland)", "EST", -- "\u00D6stliche Sommerzeit (Queensland)", "EST", -- "\u00D6stliche Zeitzone (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Zentrale Normalzeit (S\u00FCdaustralien/New South Wales)", "CST", -- "Zentrale Sommerzeit (S\u00FCdaustralien/New South Wales)", "CST", -- "Zentrale Zeitzone (S\u00FCdaustralien/New South Wales)", "CT"}; -+ String BRISBANE[] = new String[] {"\u00D6stliche Normalzeit (Queensland)", "AEST", -+ "\u00D6stliche Sommerzeit (Queensland)", "AEDT", -+ "\u00D6stliche Zeitzone (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Zentrale Normalzeit (S\u00FCdaustralien/New South Wales)", "ACST", -+ "Zentrale Sommerzeit (S\u00FCdaustralien/New South Wales)", "ACDT", -+ "Zentrale Zeitzone (S\u00FCdaustralien/New South Wales)", "ACT"}; - String BRT[] = new String[] {"Brasilianische Zeit", "BRT", - "Brasilianische Sommerzeit", "BRST", - "Brasilianische Zeit", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"Kubanische Normalzeit", "CST", - "Kubanische Sommerzeit", "CDT", - "Kubanische Normalzeit", "CT"}; -- String DARWIN[] = new String[] {"Zentrale Normalzeit (Northern Territory)", "CST", -- "Zentrale Sommerzeit (Northern Territory)", "CST", -- "Zentrale Zeitzone (Northern Territory)", "CT"}; -+ String DARWIN[] = new String[] {"Zentrale Normalzeit (Northern Territory)", "ACST", -+ "Zentrale Sommerzeit (Northern Territory)", "ACDT", -+ "Zentrale Zeitzone (Northern Territory)", "ACT"}; - String DUBLIN[] = new String[] {"Greenwich Zeit", "GMT", - "Irische Sommerzeit", "IST", - "Irische Zeit", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"\u00d6stliche Normalzeit", "EST", - "\u00d6stliche Sommerzeit", "EDT", - "\u00D6stliche Zeitzone", "ET"}; -- String EST_NSW[] = new String[] {"\u00D6stliche Normalzeit (New South Wales)", "EST", -- "\u00D6stliche Sommerzeit (New South Wales)", "EST", -- "\u00D6stliche Zeitzone (New South Wales)", "ET"}; -+ String EST_NSW[] = new String[] {"\u00D6stliche Normalzeit (New South Wales)", "AEST", -+ "\u00D6stliche Sommerzeit (New South Wales)", "AEDT", -+ "\u00D6stliche Zeitzone (New South Wales)", "AET"}; - String FET[] = new String[] {"Kaliningrader Zeit", "FET", - "Kaliningrader Sommerzeit", "FEST", - "Kaliningrader Zeit", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"Indochina Zeit", "ICT", - "Indochina Sommerzeit", "ICST", - "Indochina Zeit", "ICT"}; -+ String IRKT[] = new String[] {"Irkutsk Zeit", "IRKT", -+ "Irkutsk Sommerzeit", "IRKST", -+ "Irkutsk Zeit", "IRKT"}; - String IRT[] = new String[] {"Iranische Normalzeit", "IRST", - "Iranische Sommerzeit", "IRDT", - "Iranische Zeit", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"Japanische Normalzeit", "JST", - "Japanische Sommerzeit", "JDT", - "Zeitzone f\u00FCr Japan", "JT"}; -+ String KRAT[] = new String[] {"Krasnojarsker Zeit", "KRAT", -+ "Krasnojarsker Sommerzeit", "KRAST", -+ "Krasnojarsker Zeit", "KRAT"}; - String KST[] = new String[] {"Koreanische Normalzeit", "KST", - "Koreanische Sommerzeit", "KDT", - "Zeitzone f\u00FCr Korea", "KT"}; - String LORD_HOWE[] = new String[] {"Lord Howe Normalzeit", "LHST", -- "Lord Howe Sommerzeit", "LHST", -+ "Lord Howe Sommerzeit", "LHDT", - "Lord-Howe Normalzeit", "LHT"}; - String MHT[] = new String[] {"Marshallinseln Zeit", "MHT", - "Marshallinseln Sommerzeit", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"Singapur Zeit", "SGT", - "Singapur Sommerzeit", "SGST", - "Singapur Zeit", "SGT"}; -- String SLST[] = new String[] {"Greenwich Normalzeit", "GMT", -- "Sierra Leone Sommerzeit", "SLST", -- "Sierra Leone Zeit", "SLT"}; -- String TASMANIA[] = new String[] {"\u00D6stliche Normalzeit (Tasmanien)", "EST", -- "\u00D6stliche Sommerzeit (Tasmanien)", "EST", -- "\u00D6stliche Zeitzone (Tasmanien)", "ET"}; -+ String TASMANIA[] = new String[] {"\u00D6stliche Normalzeit (Tasmanien)", "AEST", -+ "\u00D6stliche Sommerzeit (Tasmanien)", "AEDT", -+ "\u00D6stliche Zeitzone (Tasmanien)", "AET"}; - String TMT[] = new String[] {"Turkmenische Zeit", "TMT", - "Turkmenische Sommerzeit", "TMST", - "Turkmenische Zeit", "TMT"}; - String ULAT[]= new String[] {"Ulaanbaatar Zeit", "ULAT", - "Ulaanbaatar Sommerzeit", "ULAST", - "Ulaanbaatar Zeit", "ULAT"}; -- String WART[] = new String[] {"Westargentinische Zeit", "WART", -- "Westargentinische Sommerzeit", "WARST"}; - String WAT[] = new String[] {"Westafrikanische Zeit", "WAT", - "Westafrikanische Sommerzeit", "WAST", - "Westafrikanische Zeit", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"Westindonesische Zeit", "WIB", - "Westindonesische Sommerzeit", "WIST", - "Westindonesische Zeit", "WIB"}; -- String WST_AUS[] = new String[] {"Westliche Normalzeit (Australien)", "WST", -- "Westliche Sommerzeit (Australien)", "WST", -- "Westliche Zeitzone (Australien)", "WT"}; -+ String WST_AUS[] = new String[] {"Westliche Normalzeit (Australien)", "AWST", -+ "Westliche Sommerzeit (Australien)", "AWDT", -+ "Westliche Zeitzone (Australien)", "AWT"}; - String SAMOA[] = new String[] {"Samoa Normalzeit", "SST", - "Samoa Sommerzeit", "SDT", - "Zeitzone f\u00FCr Samoa", "ST"}; -- String WST_SAMOA[] = new String[] {"West Samoa Zeit", "WST", -+ String WST_SAMOA[] = new String[] {"West Samoa Zeit", "WSST", - "West Samoa Sommerzeit", "WSDT", - "West Samoa Zeit", "WST"}; - String ChST[] = new String[] {"Chamorro Normalzeit", "ChST", - "Chamorro Sommerzeit", "ChDT", - "Zeitzone f\u00FCr die Marianen", "ChT"}; -- String VICTORIA[] = new String[] {"\u00D6stliche Normalzeit (Victoria)", "EST", -- "\u00D6stliche Sommerzeit (Victoria)", "EST", -- "\u00D6stliche Zeitzone (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"\u00D6stliche Normalzeit (Victoria)", "AEST", -+ "\u00D6stliche Sommerzeit (Victoria)", "AEDT", -+ "\u00D6stliche Zeitzone (Victoria)", "AET"}; - String UTC[] = new String[] {"Koordinierte Universalzeit", "UTC", - "Koordinierte Universalzeit", "UTC", - "Koordinierte Universalzeit", "UTC"}; - String UZT[] = new String[] {"Usbekistan Zeit", "UZT", - "Usbekistan Sommerzeit", "UZST", - "Usbekistan Zeit", "UZT"}; -+ String XJT[] = new String[] {"Chinesische Normalzeit", "XJT", -+ "Chinesische Sommerzeit", "XJDT", -+ "Zeitzone f\u00FCr China", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "Westgr\u00f6nl\u00e4ndische Sommerzeit", "WGST", - "Westgr\u00F6nl\u00E4ndische Zeit", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Metlakatla Normalzeit", "MeST", -- "Metlakatla Sommerzeit", "MeDT", -- "Metlakatla Normalzeit", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Pierre & Miquelon Normalzeit", "PMST", - "Pierre & Miquelon Sommerzeit", "PMDT", -@@ -607,6 +609,7 @@ - "Brunei Sommerzeit", "BNST", - "Brunei Zeit", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Choibalsan Zeit", "CHOT", - "Choibalsan Sommerzeit", "CHOST", - "Choibalsan Zeit", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Hovd Zeit", "HOVT", - "Hovd Sommerzeit", "HOVST", - "Hovd Zeit", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Irkutsk Zeit", "IRKT", -- "Irkutsk Sommerzeit", "IRKST", -- "Irkutsk Zeit", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"Ostindonesische Zeit", "WIT", -@@ -646,16 +647,14 @@ - "Petropawlowsk-Kamtschatkische Sommerzeit", "PETST", - "Petropawlowsk-Kamtschatkische Zeit", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"Chandyga Zeit", "YAKT", - "Chandyga Sommerzeit", "YAKST", - "Chandyga Zeit", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"Krasnojarsker Zeit", "KRAT", -- "Krasnojarsker Sommerzeit", "KRAST", -- "Krasnojarsker Zeit", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "Philippinische Zeit", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Oral Zeit", "ORAT", - "Oral Sommerzeit", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Ust-Nera Zeit", "VLAT", - "Ust-Nera Sommerzeit", "VLAST", - "Ust-Nera Zeit", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Zentral-Westliche Normalzeit (Australien)", "CWST", -- "Zentral-Westliche Sommerzeit (Australien)", "CWST", -- "Zentral-Westliche Normalzeit (Australien)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Zentral-Westliche Normalzeit (Australien)", "ACWST", -+ "Zentral-Westliche Sommerzeit (Australien)", "ACWDT", -+ "Zentral-Westliche Normalzeit (Australien)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Wolgograder Zeit", "VOLT", -- "Wolgograder Sommerzeit", "VOLST", -- "Wolgograder Zeit", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/es/TimeZoneNames_es.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/es/TimeZoneNames_es.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Hora de Acre", "ACT", - "Hora de verano de Acre", "ACST", - "Hora de Acre", "ACT"}; -- String ADELAIDE[] = new String[] {"Hora est\u00E1ndar Central (Sur de Australia)", "CST", -- "Hora de verano Central (Sur de Australia)", "CST", -- "Hora Central (Australia del Sur)", "CT"}; -+ String ADELAIDE[] = new String[] {"Hora est\u00E1ndar Central (Sur de Australia)", "ACST", -+ "Hora de verano Central (Sur de Australia)", "ACDT", -+ "Hora Central (Australia del Sur)", "ACT"}; - String AGT[] = new String[] {"Hora de Argentina", "ART", - "Hora de verano de Argentina", "ARST", - "Hora de Argentina", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"Hora de Bangladesh", "BDT", - "Hora de verano de Bangladesh", "BDST", - "Hora de Bangladesh", "BDT"}; -- String BRISBANE[] = new String[] {"Hora est\u00E1ndar del Este (Queensland)", "EST", -- "Hora est\u00E1ndar de verano del Este (Queensland)", "EST", -- "Hora Oriental (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Hora est\u00E1ndar Central (Sur de Australia/Nueva Gales del Sur)", "CST", -- "Hora de verano Central (Sur de Australia/Nueva Gales del Sur)", "CST", -- "Hora Central (Australia del Sur/Nueva Gales del Sur)", "CT"}; -+ String BRISBANE[] = new String[] {"Hora est\u00E1ndar del Este (Queensland)", "AEST", -+ "Hora est\u00E1ndar de verano del Este (Queensland)", "AEDT", -+ "Hora Oriental (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Hora est\u00E1ndar Central (Sur de Australia/Nueva Gales del Sur)", "ACST", -+ "Hora de verano Central (Sur de Australia/Nueva Gales del Sur)", "ACDT", -+ "Hora Central (Australia del Sur/Nueva Gales del Sur)", "ACT"}; - String BRT[] = new String[] {"Hora de Brasil", "BRT", - "Hora de verano de Brasil", "BRST", - "Hora de Brasil", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"Hora est\u00e1ndar de Cuba", "CST", - "Hora de verano de Cuba", "CDT", - "Hora de Cuba", "CT"}; -- String DARWIN[] = new String[] {"Hora est\u00E1ndar Central (territorio del Norte)", "CST", -- "Hora de verano Central (territorio del Norte)", "CST", -- "Hora Central (Territorio Septentrional)", "CT"}; -+ String DARWIN[] = new String[] {"Hora est\u00E1ndar Central (territorio del Norte)", "ACST", -+ "Hora de verano Central (territorio del Norte)", "ACDT", -+ "Hora Central (Territorio Septentrional)", "ACT"}; - String DUBLIN[] = new String[] {"Hora del Meridiano de Greenwich", "GMT", - "Hora de verano de Irlanda", "IST", - "Hora de Irlanda", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"Hora est\u00e1ndar Oriental", "EST", - "Hora de verano Oriental", "EDT", - "Hora Oriental", "ET"}; -- String EST_NSW[] = new String[] {"Hora est\u00E1ndar Oriental (Nueva Gales del Sur)", "EST", -- "Hora de verano Oriental (Nueva Gales del Sur)", "EST", -- "Hora Oriental (Nueva Gales del Sur)", "ET"}; -+ String EST_NSW[] = new String[] {"Hora est\u00E1ndar Oriental (Nueva Gales del Sur)", "AEST", -+ "Hora de verano Oriental (Nueva Gales del Sur)", "AEDT", -+ "Hora Oriental (Nueva Gales del Sur)", "AET"}; - String FET[] = new String[] {"Hora de Europa m\u00E1s Oriental", "FET", - "Hora de verano de Europa m\u00E1s Oriental", "FEST", - "Hora de Europa m\u00E1s Oriental", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"Hora de Indochina", "ICT", - "Hora de verano de Indochina", "ICST", - "Hora de Indochina", "ICT"}; -+ String IRKT[] = new String[] {"Hora de Irkutsk", "IRKT", -+ "Hora de verano de Irkutsk", "IRKST", -+ "Hora de Irkutsk", "IRKT"}; - String IRT[] = new String[] {"Hora est\u00e1ndar de Ir\u00e1n", "IRST", - "Hora de verano de Ir\u00e1n", "IRDT", - "Hora de Ir\u00E1n", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"Hora est\u00e1ndar de Jap\u00f3n", "JST", - "Hora de verano de Jap\u00f3n", "JDT", - "Hora de Jap\u00F3n", "JT"}; -+ String KRAT[] = new String[] {"Hora de Krasnoyarsk", "KRAT", -+ "Hora de verano de Krasnoyarsk", "KRAST", -+ "Hora de Krasnoyarsk", "KRAT"}; - String KST[] = new String[] {"Hora est\u00e1ndar de Corea", "KST", - "Hora de verano de Corea", "KDT", - "Hora de Corea", "KT"}; - String LORD_HOWE[] = new String[] {"Hora est\u00e1ndar de Lord Howe", "LHST", -- "Hora de verano de Lord Howe", "LHST", -+ "Hora de verano de Lord Howe", "LHDT", - "Hora de Lord Howe", "LHT"}; - String MHT[] = new String[] {"Hora de las Islas Marshall", "MHT", - "Hora de verano de las Islas Marshall", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"Hora de Singapur", "SGT", - "Hora de verano de Singapur", "SGST", - "Hora de Singapur", "SGT"}; -- String SLST[] = new String[] {"Hora del Meridiano de Greenwich", "GMT", -- "Hora de verano de Sierra Leona", "SLST", -- "Horario de Sierra Leona", "SLT"}; -- String TASMANIA[] = new String[] {"Hora est\u00E1ndar del Este (Tasmania)", "EST", -- "Hora de verano del Este (Tasmania)", "EST", -- "Hora Oriental (Tasmania)", "ET"}; -+ String TASMANIA[] = new String[] {"Hora est\u00E1ndar del Este (Tasmania)", "AEST", -+ "Hora de verano del Este (Tasmania)", "AEDT", -+ "Hora Oriental (Tasmania)", "AET"}; - String TMT[] = new String[] {"Hora de Turkmenist\u00e1n", "TMT", - "Hora de verano de Turkmenist\u00e1n", "TMST", - "Hora de Turkmenist\u00E1n", "TMT"}; - String ULAT[]= new String[] {"Hora de Ulan Bator", "ULAT", - "Hora de verano de Ulan Bator", "ULAST", - "Hora de Ulan Bator", "ULAT"}; -- String WART[] = new String[] {"Hora de Argentina Occidental", "WART", -- "Hora de verano de Argentina Occidental", "WARST"}; - String WAT[] = new String[] {"Hora de \u00c1frica Occidental", "WAT", - "Hora de verano de \u00c1frica Occidental", "WAST", - "Hora de \u00C1frica Occidental", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"Hora de Indonesia Occidental", "WIB", - "Indonesia Hora de verano de Indonesia Occidental", "WIST", - "Hora de Indonesia Occidental", "WIB"}; -- String WST_AUS[] = new String[] {"Hora est\u00E1ndar Occidental (Australia)", "WST", -- "Hora de verano Occidental (Australia)", "WST", -- "Hora Occidental (Australia)", "WT"}; -+ String WST_AUS[] = new String[] {"Hora est\u00E1ndar Occidental (Australia)", "AWST", -+ "Hora de verano Occidental (Australia)", "AWDT", -+ "Hora Occidental (Australia)", "AWT"}; - String SAMOA[] = new String[] {"Hora est\u00e1ndar de Samoa", "SST", - "Hora de verano de Samoa", "SDT", - "Hora de Samoa", "ST"}; -- String WST_SAMOA[] = new String[] {"Hora de Samoa Occidental", "WST", -+ String WST_SAMOA[] = new String[] {"Hora de Samoa Occidental", "WSST", - "Hora de verano de Samoa Occidental", "WSDT", - "Hora de Samoa Occidental", "WST"}; - String ChST[] = new String[] {"Hora est\u00e1ndar de Chamorro", "ChST", - "Hora de verano de Chamorro", "ChDT", - "Hora de Chamorro", "ChT"}; -- String VICTORIA[] = new String[] {"Hora est\u00E1ndar del Este (Victoria)", "EST", -- "Hora de verano del Este (Victoria)", "EST", -- "Hora Oriental (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"Hora est\u00E1ndar del Este (Victoria)", "AEST", -+ "Hora de verano del Este (Victoria)", "AEDT", -+ "Hora Oriental (Victoria)", "AET"}; - String UTC[] = new String[] {"Hora Universal Coordinada", "UTC", - "Hora Universal Coordinada", "UTC", - "Hora Universal Coordinada", "UTC"}; - String UZT[] = new String[] {"Hora de Uzbekist\u00e1n", "UZT", - "Hora de verano de Uzbekist\u00e1n", "UZST", - "Hora de Uzbekist\u00E1n", "UZT"}; -+ String XJT[] = new String[] {"Hora est\u00e1ndar de China", "XJT", -+ "Hora de verano de China", "XJDT", -+ "Hora de China", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "Hora de verano de Groenlandia Occidental", "WGST", - "Hora de Groenlandia Occidental", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Hora de Metlakatla", "MeST", -- "Hora de verano de Metlakatla", "MeDT", -- "Metlakatla Time", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Hora est\u00e1ndar de Pierre & Miquelon", "PMST", - "Hora de verano de Pierre & Miquelon", "PMDT", -@@ -607,6 +609,7 @@ - "Hora de verano de Brunei", "BNST", - "Hora de Brunei", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Hora de Choibalsan", "CHOT", - "Hora de verano de Choibalsan", "CHOST", - "Hora de Choibalsan", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Hora de Hovd", "HOVT", - "Hora de verano de Hovd", "HOVST", - "Hora de Hovd", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Hora de Irkutsk", "IRKT", -- "Hora de verano de Irkutsk", "IRKST", -- "Hora de Irkutsk", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"Hora de Indonesia Oriental", "WIT", -@@ -646,16 +647,14 @@ - "Hora de verano de Petropavlovsk-Kamchatski", "PETST", - "Hora de Petropavlovsk-Kamchatski", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"Hora de Khandyga", "YAKT", - "Hora de verano de Khandyga", "YAKST", - "Hora de Khandyga", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"Hora de Krasnoyarsk", "KRAT", -- "Hora de verano de Krasnoyarsk", "KRAST", -- "Hora de Krasnoyarsk", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "Hora de Filipinas", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Hora de Uralsk", "ORAT", - "Hora de verano de Uralsk", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Hora de Ust-Nera", "VLAT", - "Hora de verano de Ust-Nera", "VLAST", - "Hora de Ust-Nera", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Hora est\u00E1ndar de Australia Central y Occidental", "CWST", -- "Hora est\u00E1ndar de verano de Australia Central y Occidental", "CWST", -- "Hora de Australia Central y Occidental", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Hora est\u00E1ndar de Australia Central y Occidental", "ACWST", -+ "Hora est\u00E1ndar de verano de Australia Central y Occidental", "ACWDT", -+ "Hora de Australia Central y Occidental", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Hora de Volgogrado", "VOLT", -- "Hora de verano de Volgogrado", "VOLST", -- "Hora de Volgogrado", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/fr/TimeZoneNames_fr.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/fr/TimeZoneNames_fr.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Heure de l'Acre", "ACT", - "Heure d'\u00e9t\u00e9 de l'Acre", "ACST", - "Heure de l'Acre", "ACT"}; -- String ADELAIDE[] = new String[] {"Heure standard d'Australie centrale (Australie du sud)", "CST", -- "Heure d'\u00E9t\u00E9 d'Australie centrale (Australie du sud)", "CST", -- "Centre (Australie-M\u00E9ridionale)", "CT"}; -+ String ADELAIDE[] = new String[] {"Heure standard d'Australie centrale (Australie du sud)", "ACST", -+ "Heure d'\u00E9t\u00E9 d'Australie centrale (Australie du sud)", "ACDT", -+ "Centre (Australie-M\u00E9ridionale)", "ACT"}; - String AGT[] = new String[] {"Heure D'Argentine", "ART", - "Heure d'\u00e9t\u00e9 D'Argentine", "ARST", - "Heure d'Argentine", "ART"} ; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"Heure du Bangladesh", "BDT", - "Heure d'\u00e9t\u00e9 du Bangladesh", "BDST", - "Heure du Bangladesh", "BDT"} ; -- String BRISBANE[] = new String[] {"Heure standard d'Australie orientale (Queensland)", "EST", -- "Heure d'\u00E9t\u00E9 d'Australie orientale (Queensland)", "EST", -- "C\u00F4te Est (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Heure standard d'Australie centrale (Australie du sud/Nouvelle-Galles du sud)", "CST", -- "Heure d'\u00E9t\u00E9 d'Australie centrale (Australie du sud/Nouvelle-Galles du sud)", "CST", -- "Centre (Australie-M\u00E9ridionale/Nouvelle-Galles du Sud)", "CT"}; -+ String BRISBANE[] = new String[] {"Heure standard d'Australie orientale (Queensland)", "AEST", -+ "Heure d'\u00E9t\u00E9 d'Australie orientale (Queensland)", "AEDT", -+ "C\u00F4te Est (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Heure standard d'Australie centrale (Australie du sud/Nouvelle-Galles du sud)", "ACST", -+ "Heure d'\u00E9t\u00E9 d'Australie centrale (Australie du sud/Nouvelle-Galles du sud)", "ACDT", -+ "Centre (Australie-M\u00E9ridionale/Nouvelle-Galles du Sud)", "ACT"}; - String BRT[] = new String[] {"Heure du Br\u00e9sil", "BRT", - "Heure d'\u00e9t\u00e9 du Br\u00e9sil", "BRST", - "Heure du Br\u00E9sil", "BRT"} ; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"Heure standard de Cuba", "CST", - "Heure d'\u00e9t\u00e9 de Cuba", "CDT", - "Heure de Cuba", "CT"}; -- String DARWIN[] = new String[] {"Heure standard d'Australie centrale (Territoire du Nord)", "CST", -- "Heure d'\u00E9t\u00E9 d'Australie centrale (Territoire du Nord)", "CST", -- "Centre (Territoire du Nord)", "CT"}; -+ String DARWIN[] = new String[] {"Heure standard d'Australie centrale (Territoire du Nord)", "ACST", -+ "Heure d'\u00E9t\u00E9 d'Australie centrale (Territoire du Nord)", "ACDT", -+ "Centre (Territoire du Nord)", "ACT"}; - String DUBLIN[] = new String[] {"Heure du m\u00e9ridien de Greenwich", "GMT", - "Heure d'\u00e9t\u00e9 irlandaise", "IST", - "Heure irlandaise", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"Heure normale de l'Est", "EST", - "Heure avanc\u00e9e de l'Est", "EDT", - "C\u00F4te Est", "ET"} ; -- String EST_NSW[] = new String[] {"Heure normale de l'Est (Nouvelle-Galles du Sud)", "EST", -- "Heure d'\u00E9t\u00E9 de l'Est (Nouvelle-Galles du Sud)", "EST", -- "C\u00F4te Est (Nouvelle-Galles du Sud)", "ET"} ; -+ String EST_NSW[] = new String[] {"Heure normale de l'Est (Nouvelle-Galles du Sud)", "AEST", -+ "Heure d'\u00E9t\u00E9 de l'Est (Nouvelle-Galles du Sud)", "AEDT", -+ "C\u00F4te Est (Nouvelle-Galles du Sud)", "AET"} ; - String FET[] = new String[] {"Heure d'Europe de l'Est UTC+3", "FET", - "Heure d'\u00E9t\u00E9 d'Europe de l'Est UTC+3", "FEST", - "Heure d'Europe de l'Est UTC+3", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"Heure d'Indochine", "ICT", - "Heure d'\u00e9t\u00e9 d'Indochine", "ICST", - "Heure d'Indochine", "ICT"} ; -+ String IRKT[] = new String[] {"Heure d'Irkutsk", "IRKT", -+ "Heure d'\u00e9t\u00e9 d'Irkutsk", "IRKST", -+ "Heure d'Irkutsk", "IRKT"}; - String IRT[] = new String[] {"Heure normale d'Iran", "IRST", - "Heure avanc\u00e9e d'Iran", "IRDT", - "Heure d'Iran", "IRT"} ; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"Heure normale du Japon", "JST", - "Heure avanc\u00e9e du Japon", "JDT", - "Japon", "JT"} ; -+ String KRAT[] = new String[] {"Heure de Krasno\u00efarsk", "KRAT", -+ "Heure d'\u00e9t\u00e9 de Krasno\u00efarsk", "KRAST", -+ "Heure de Krasno\u00EFarsk", "KRAT"}; - String KST[] = new String[] {"Heure normale de Cor\u00e9e", "KST", - "Heure avanc\u00e9e de Cor\u00e9e", "KDT", - "Cor\u00E9e", "KT"} ; - String LORD_HOWE[] = new String[] {"Heure standard de Lord Howe", "LHST", -- "Heure d'\u00e9t\u00e9 de Lord Howe", "LHST", -+ "Heure d'\u00e9t\u00e9 de Lord Howe", "LHDT", - "Heure de Lord Howe", "LHT"}; - String MHT[] = new String[] {"Heure des Iles Marshall", "MHT", - "Heure d'\u00e9t\u00e9 des Iles Marshall", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"Heure de Singapour", "SGT", - "Heure d'\u00e9t\u00e9 de Singapour", "SGST", - "Heure de Singapour", "SGT"}; -- String SLST[] = new String[] {"Heure du m\u00e9ridien de Greenwich", "GMT", -- "Heure d'\u00e9t\u00e9 de Sierra Leone", "SLST", -- "Heure de Sierra Leone", "SLT"}; -- String TASMANIA[] = new String[] {"Heure standard d'Australie orientale (Tasmanie)", "EST", -- "Heure d'\u00E9t\u00E9 d'Australie orientale (Tasmanie)", "EST", -- "C\u00F4te Est (Tasmanie)", "ET"}; -+ String TASMANIA[] = new String[] {"Heure standard d'Australie orientale (Tasmanie)", "AEST", -+ "Heure d'\u00E9t\u00E9 d'Australie orientale (Tasmanie)", "AEDT", -+ "C\u00F4te Est (Tasmanie)", "AET"}; - String TMT[] = new String[] {"Heure du Turkm\u00e9nistan", "TMT", - "Heure d'\u00e9t\u00e9 du Turkm\u00e9nistan", "TMST", - "Heure du Turkm\u00E9nistan", "TMT"} ; - String ULAT[]= new String[] {"Heure de l'Ulaanbaatar", "ULAT", - "Heure d'\u00e9t\u00e9 de l'Ulaanbaatar", "ULAST", - "Heure de l'Ulaanbaatar", "ULAT"} ; -- String WART[] = new String[] {"Heure D'Argentine de l'Ouest", "WART", -- "Heure d'\u00e9t\u00e9 D'Argentine de l'Ouest", "WARST"} ; - String WAT[] = new String[] {"Heure d'Afrique de l'Ouest", "WAT", - "Heure d'\u00e9t\u00e9 d'Afrique de l'Ouest", "WAST", - "Heure d'Afrique de l'Ouest", "WAT"} ; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"Heure de l'Indon\u00e9sie occidentale", "WIB", - "Heure d'\u00e9t\u00e9 de l'Indon\u00e9sie occidentale", "WIST", - "Heure de l'Indon\u00E9sie occidentale", "WIB"}; -- String WST_AUS[] = new String[] {"Heure normale de l'Ouest (Australie)", "WST", -- "Heure d'\u00E9t\u00E9 de l'Ouest (Australie)", "WST", -- "Ouest (Australie)", "WT"} ; -+ String WST_AUS[] = new String[] {"Heure normale de l'Ouest (Australie)", "AWST", -+ "Heure d'\u00E9t\u00E9 de l'Ouest (Australie)", "AWDT", -+ "Ouest (Australie)", "AWT"} ; - String SAMOA[] = new String[] {"Heure standard de Samoa", "SST", - "Heure avanc\u00e9e de Samoa", "SDT", - "Samoa", "ST"}; -- String WST_SAMOA[] = new String[] {"Heure des Samoas occidentales", "WST", -+ String WST_SAMOA[] = new String[] {"Heure des Samoas occidentales", "WSST", - "Heure d'\u00e9t\u00e9 des Samoas occidentales", "WSDT", - "Heure des Samoas occidentales", "WST"} ; - String ChST[] = new String[] {"Heure normale des \u00eeles Mariannes", "ChST", - "Heure d'\u00e9t\u00e9 des \u00eeles Mariannes", "ChDT", - "Chamorro", "ChT"}; -- String VICTORIA[] = new String[] {"Heure standard d'Australie orientale (Victoria)", "EST", -- "Heure d'\u00E9t\u00E9 d'Australie orientale (Victoria)", "EST", -- "C\u00F4te Est (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"Heure standard d'Australie orientale (Victoria)", "AEST", -+ "Heure d'\u00E9t\u00E9 d'Australie orientale (Victoria)", "AEDT", -+ "C\u00F4te Est (Victoria)", "AET"}; - String UTC[] = new String[] {"Temps universel coordonn\u00e9", "UTC", - "Temps universel coordonn\u00e9", "UTC", - "Temps universel coordonn\u00E9", "UTC"}; - String UZT[] = new String[] {"Heure de l'Ouzb\u00e9kistan", "UZT", - "Heure d'\u00e9t\u00e9 de l'Ouzb\u00e9kistan", "UZST", - "Heure de l'Ouzb\u00E9kistan", "UZT"}; -+ String XJT[] = new String[] {"Heure normale de Chine", "XJT", -+ "Heure avanc\u00e9e de Chine", "XJDT", -+ "Chine", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "Heure d'\u00e9t\u00e9 du Groenland de l'Ouest", "WGST", - "Heure du Groenland de l'Ouest", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Heure normale de Metlakatla", "MeST", -- "Heure avanc\u00E9e de Metlakatla", "MeDT", -- "Heure de Metlakatla", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Heure normale de Saint-Pierre et Miquelon", "PMST", - "Heure avanc\u00e9e de Saint-Pierre et Miquelon", "PMDT", -@@ -607,6 +609,7 @@ - "Heure d'\u00e9t\u00e9 du Brunei", "BNST", - "Heure du Brunei", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Heure de Choibalsan", "CHOT", - "Heure d'\u00e9t\u00e9 de Choibalsan", "CHOST", - "Heure de Choibalsan", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Heure de Hovd", "HOVT", - "Heure d'\u00e9t\u00e9 de Hovd", "HOVST", - "Heure de Hovd", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Heure d'Irkutsk", "IRKT", -- "Heure d'\u00e9t\u00e9 d'Irkutsk", "IRKST", -- "Heure d'Irkutsk", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"Heure d'Indon\u00e9sie orientale", "WIT", -@@ -646,16 +647,14 @@ - "Heure d'\u00e9t\u00e9 de Petropavlovsk-Kamchatski", "PETST", - "Heure de Petropavlovsk-Kamchatski", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"Heure de Khandyga", "YAKT", - "Heure d'\u00E9t\u00E9 de Khandyga", "YAKST", - "Heure de Khandyga", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"Heure de Krasno\u00efarsk", "KRAT", -- "Heure d'\u00e9t\u00e9 de Krasno\u00efarsk", "KRAST", -- "Heure de Krasno\u00EFarsk", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "Heure des Philippines", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Heure d'Oral", "ORAT", - "Heure d'\u00e9t\u00e9 d'Oral", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Heure d'Ust-Nera", "VLAT", - "Heure d'\u00E9t\u00E9 d'Ust-Nera", "VLAST", - "Heure d'Ust-Nera", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Heure standard de l'Australie occidentale (centre)", "CWST", -- "Heure d'\u00E9t\u00E9 de l'Australie occidentale (centre)", "CWST", -- "Heure de l'Australie occidentale (centre)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Heure standard de l'Australie occidentale (centre)", "ACWST", -+ "Heure d'\u00E9t\u00E9 de l'Australie occidentale (centre)", "ACWDT", -+ "Heure de l'Australie occidentale (centre)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Heure de Volgograd", "VOLT", -- "Heure d'\u00e9t\u00e9 de Volgograd", "VOLST", -- "Heure de Volgograd", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/it/TimeZoneNames_it.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/it/TimeZoneNames_it.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Ora di Acre", "ACT", - "Ora estiva di Acre", "ACST", - "Ora di Acre", "ACT"}; -- String ADELAIDE[] = new String[] {"Ora standard centrale (Australia del Sud)", "CST", -- "Ora estiva centrale (Australia del Sud)", "CST", -- "Ora fuso centrale (Australia del Sud)", "CT"}; -+ String ADELAIDE[] = new String[] {"Ora standard centrale (Australia del Sud)", "ACST", -+ "Ora estiva centrale (Australia del Sud)", "ACDT", -+ "Ora fuso centrale (Australia del Sud)", "ACT"}; - String AGT[] = new String[] {"Ora dell'Argentina", "ART", - "Ora estiva dell'Argentina", "ARST", - "Ora dell'Argentina", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"Ora del Bangladesh", "BDT", - "Ora estiva del Bangladesh", "BDST", - "Ora del Bangladesh", "BDT"}; -- String BRISBANE[] = new String[] {"Ora standard orientale (Queensland)", "EST", -- "Ora estiva orientale (Queensland)", "EST", -- "Ora fuso orientale (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Ora standard centrale (Australia del Sud/Nuovo Galles del Sud)", "CST", -- "Ora estiva centrale (Australia del Sud/Nuovo Galles del Sud)", "CST", -- "Ora fuso centrale (Australia del Sud/Nuovo Galles del Sud)", "CT"}; -+ String BRISBANE[] = new String[] {"Ora standard orientale (Queensland)", "AEST", -+ "Ora estiva orientale (Queensland)", "AEDT", -+ "Ora fuso orientale (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Ora standard centrale (Australia del Sud/Nuovo Galles del Sud)", "ACST", -+ "Ora estiva centrale (Australia del Sud/Nuovo Galles del Sud)", "ACDT", -+ "Ora fuso centrale (Australia del Sud/Nuovo Galles del Sud)", "ACT"}; - String BRT[] = new String[] {"Ora del Brasile", "BRT", - "Ora estiva del Brasile", "BRST", - "Ora di Brasilia", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"Ora solare Cuba", "CST", - "Ora legale Cuba", "CDT", - "Ora di Cuba", "CT"}; -- String DARWIN[] = new String[] {"Ora standard centrale (Territori del Nord)", "CST", -- "Ora estiva centrale (Territori del Nord)", "CST", -- "Ora fuso centrale (Territori del Nord)", "CT"}; -+ String DARWIN[] = new String[] {"Ora standard centrale (Territori del Nord)", "ACST", -+ "Ora estiva centrale (Territori del Nord)", "ACDT", -+ "Ora fuso centrale (Territori del Nord)", "ACT"}; - String DUBLIN[] = new String[] {"Ora media di Greenwich", "GMT", - "Ora estiva irlandese", "IST", - "Ora irlandese", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"Ora solare USA orientale", "EST", - "Ora legale USA orientale", "EDT", - "Fuso orientale", "ET"}; -- String EST_NSW[] = new String[] {"Ora standard dell'Australia orientale (Nuovo Galles del Sud)", "EST", -- "Ora estiva dell'Australia orientale (Nuovo Galles del Sud)", "EST", -- "Ora fuso orientale (Nuovo Galles del Sud)", "ET"}; -+ String EST_NSW[] = new String[] {"Ora standard dell'Australia orientale (Nuovo Galles del Sud)", "AEST", -+ "Ora estiva dell'Australia orientale (Nuovo Galles del Sud)", "AEDT", -+ "Ora fuso orientale (Nuovo Galles del Sud)", "AET"}; - String FET[] = new String[] {"Ora dei paesi europei pi\u00F9 orientali", "FET", - "Ora estiva dei paesi europei pi\u00F9 orientali", "FEST", - "Ora dei paesi europei pi\u00F9 orientali", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"Ora dell'Indocina", "ICT", - "Ora estiva dell'Indocina", "ICST", - "Ora dell'Indocina", "ICT"}; -+ String IRKT[] = new String[] {"Ora di Irkutsk", "IRKT", -+ "Ora estiva di Irkutsk", "IRKST", -+ "Ora di Irkutsk", "IRKT"}; - String IRT[] = new String[] {"Ora solare Iran", "IRST", - "Ora legale Iran", "IRDT", - "Ora Iran", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"Ora solare del Giappone", "JST", - "Ora legale del Giappone", "JDT", - "Ora Giappone", "JT"}; -+ String KRAT[] = new String[] {"Ora di Krasnojarsk", "KRAT", -+ "Ora estiva di Krasnojarsk", "KRAST", -+ "Ora di Krasnojarsk", "KRAT"}; - String KST[] = new String[] {"Ora solare della Corea", "KST", - "Ora legale della Corea", "KDT", - "Ora Corea", "KT"}; - String LORD_HOWE[] = new String[] {"Ora standard di Lord Howe", "LHST", -- "Ora estiva di Lord Howe", "LHST", -+ "Ora estiva di Lord Howe", "LHDT", - "Ora di Lord Howe", "LHT"}; - String MHT[] = new String[] {"Ora delle Isole Marshall", "MHT", - "Ora estiva delle Isole Marshall", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"Ora di Singapore", "SGT", - "Ora estiva di Singapore", "SGST", - "Ora di Singapore", "SGT"}; -- String SLST[] = new String[] {"Ora media di Greenwich", "GMT", -- "Ora legale della Sierra Leone", "SLST", -- "Ora della Sierra Leone", "SLT"}; -- String TASMANIA[] = new String[] {"Ora standard orientale (Tasmania)", "EST", -- "Ora estiva orientale (Tasmania)", "EST", -- "Ora fuso orientale (Tasmania)", "ET"}; -+ String TASMANIA[] = new String[] {"Ora standard orientale (Tasmania)", "AEST", -+ "Ora estiva orientale (Tasmania)", "AEDT", -+ "Ora fuso orientale (Tasmania)", "AET"}; - String TMT[] = new String[] {"Ora del Turkmenistan", "TMT", - "Ora estiva del Turkmenistan", "TMST", - "Ora del Turkmenistan", "TMT"}; - String ULAT[]= new String[] {"Ora di Ulaanbaatar", "ULAT", - "Ora estiva di Ulaanbaatar", "ULAST", - "Ora di Ulaanbaatar", "ULAT"}; -- String WART[] = new String[] {"Ora dell'Argentina occidentale", "WART", -- "Ora estiva dell'Argentina occidentale", "WARST"}; - String WAT[] = new String[] {"Ora dell'Africa occidentale", "WAT", - "Ora estiva dell'Africa occidentale", "WAST", - "Ora dell'Africa occidentale", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"Ora dell'Indonesia occidentale", "WIB", - "Ora estiva dell'Indonesia occidentale", "WIST", - "Ora dell'Indonesia occidentale", "WIB"}; -- String WST_AUS[] = new String[] {"Ora standard dell'Australia occidentale", "WST", -- "Ora estiva dell'Australia occidentale", "WST", -- "Ora Australia occidentale", "WT"}; -+ String WST_AUS[] = new String[] {"Ora standard dell'Australia occidentale", "AWST", -+ "Ora estiva dell'Australia occidentale", "AWDT", -+ "Ora Australia occidentale", "AWT"}; - String SAMOA[] = new String[] {"Ora standard di Samoa", "SST", - "Ora legale di Samoa", "SDT", - "Ora Samoa", "ST"}; -- String WST_SAMOA[] = new String[] {"Ora di Samoa", "WST", -+ String WST_SAMOA[] = new String[] {"Ora di Samoa", "WSST", - "Ora estiva di Samoa", "WSDT", - "Ora di Samoa occidentale", "WST"}; - String ChST[] = new String[] {"Ora standard di Chamorro", "ChST", - "Ora legale di Chamorro", "ChDT", - "Ora Chamorro", "ChT"}; -- String VICTORIA[] = new String[] {"Ora standard orientale (Victoria)", "EST", -- "Ora estiva orientale (Victoria)", "EST", -- "Ora fuso orientale (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"Ora standard orientale (Victoria)", "AEST", -+ "Ora estiva orientale (Victoria)", "AEDT", -+ "Ora fuso orientale (Victoria)", "AET"}; - String UTC[] = new String[] {"Tempo universale coordinato", "UTC", - "Tempo universale coordinato", "UTC", - "Tempo universale coordinato", "UTC"}; - String UZT[] = new String[] {"Ora dell'Uzbekistan", "UZT", - "Ora estiva dell'Uzbekistan", "UZST", - "Ora dell'Uzbekistan", "UZT"}; -+ String XJT[] = new String[] {"Ora solare della Cina", "XJT", -+ "Ora legale della Cina", "XJDT", -+ "Ora Cina", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "Ora estiva della Groenlandia occidentale", "WGST", - "Ora della Groenlandia occidentale", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Ora standard di Metlakatla", "MeST", -- "Ora legale di Metlakatla", "MeDT", -- "Ora di Metlakatla", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Ora solare di Saint-Pierre e Miquelon", "PMST", - "Ora legale di Saint-Pierre e Miquelon", "PMDT", -@@ -607,6 +609,7 @@ - "Ora estiva del Brunei", "BNST", - "Ora del Brunei", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Ora di Choibalsan", "CHOT", - "Ora estiva di Choibalsan", "CHOST", - "Ora di Choibalsan", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Ora di Hovd", "HOVT", - "Ora estiva di Hovd", "HOVST", - "Ora di Hovd", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Ora di Irkutsk", "IRKT", -- "Ora estiva di Irkutsk", "IRKST", -- "Ora di Irkutsk", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"Ora dell'Indonesia orientale", "WIT", -@@ -646,16 +647,14 @@ - "Ora estiva di Petropavlovsk-Kamchatski", "PETST", - "Ora di Petropavlovsk-Kamchatski", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Kolkata", IST}, - {"Asia/Khandyga", new String[] {"Ora di Khandyga", "YAKT", - "Ora estiva di Khandyga", "YAKST", - "Ora di Khandyga", "YAKT"}}, -- {"Asia/Krasnoyarsk", new String[] {"Ora di Krasnojarsk", "KRAT", -- "Ora estiva di Krasnojarsk", "KRAST", -- "Ora di Krasnojarsk", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "Ora delle Filippine", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Ora di Oral", "ORAT", - "Ora estiva di Oral", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Ora di Ust-Nera", "VLAT", - "Ora estiva di Ust-Nera", "VLAST", - "Ora di Ust-Nera", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Ora standard Australia centro-occidentale", "CWST", -- "Ora estiva Australia centro-occidentale", "CWST", -- "Ora Australia centro-occidentale", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Ora standard Australia centro-occidentale", "ACWST", -+ "Ora estiva Australia centro-occidentale", "ACWDT", -+ "Ora Australia centro-occidentale", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Ora di Volgograd", "VOLT", -- "Ora estiva di Volgograd", "VOLST", -- "Ora di Volgograd", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/ja/TimeZoneNames_ja.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/ja/TimeZoneNames_ja.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"\u30a2\u30af\u30ec\u6642\u9593", "ACT", - "\u30a2\u30af\u30ec\u590f\u6642\u9593", "ACST", - "\u30a2\u30af\u30ec\u6642\u9593", "ACT"}; -- String ADELAIDE[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "CST", -- "\u4E2D\u90E8\u590F\u6642\u9593(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "CST", -- "\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "CT"}; -+ String ADELAIDE[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "ACST", -+ "\u4E2D\u90E8\u590F\u6642\u9593(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "ACDT", -+ "\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "ACT"}; - String AGT[] = new String[] {"\u30a2\u30eb\u30bc\u30f3\u30c1\u30f3\u6642\u9593", "ART", - "\u30a2\u30eb\u30bc\u30f3\u30c1\u30f3\u590f\u6642\u9593", "ARST", - "\u30A2\u30EB\u30BC\u30F3\u30C1\u30F3\u6642\u9593", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"\u30d0\u30f3\u30b0\u30e9\u30c7\u30b7\u30e5\u6642\u9593", "BDT", - "\u30d0\u30f3\u30b0\u30e9\u30c7\u30b7\u30e5\u590f\u6642\u9593", "BDST", - "\u30D0\u30F3\u30B0\u30E9\u30C7\u30B7\u30E5\u6642\u9593", "BDT"}; -- String BRISBANE[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30AF\u30A4\u30FC\u30F3\u30BA\u30E9\u30F3\u30C9)", "EST", -- "\u6771\u90E8\u590F\u6642\u9593(\u30AF\u30A4\u30FC\u30F3\u30BA\u30E9\u30F3\u30C9)", "EST", -- "\u6771\u90E8\u6A19\u6E96\u6642(\u30AF\u30A4\u30FC\u30F3\u30BA\u30E9\u30F3\u30C9)", "ET"}; -- String BROKEN_HILL[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2/\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "CST", -- "\u4E2D\u90E8\u590F\u6642\u9593(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2/\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "CST", -- "\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2/\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "CT"}; -+ String BRISBANE[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30AF\u30A4\u30FC\u30F3\u30BA\u30E9\u30F3\u30C9)", "AEST", -+ "\u6771\u90E8\u590F\u6642\u9593(\u30AF\u30A4\u30FC\u30F3\u30BA\u30E9\u30F3\u30C9)", "AEDT", -+ "\u6771\u90E8\u6A19\u6E96\u6642(\u30AF\u30A4\u30FC\u30F3\u30BA\u30E9\u30F3\u30C9)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2/\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "ACST", -+ "\u4E2D\u90E8\u590F\u6642\u9593(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2/\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "ACDT", -+ "\u4E2D\u90E8\u6A19\u6E96\u6642(\u5357\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2/\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "ACT"}; - String BRT[] = new String[] {"\u30d6\u30e9\u30b8\u30eb\u6642\u9593", "BRT", - "\u30d6\u30e9\u30b8\u30eb\u590f\u6642\u9593", "BRST", - "\u30D6\u30E9\u30B8\u30EA\u30A2\u6642\u9593", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"\u30ad\u30e5\u30fc\u30d0\u6a19\u6e96\u6642", "CST", - "\u30ad\u30e5\u30fc\u30d0\u590f\u6642\u9593", "CDT", - "\u30AD\u30E5\u30FC\u30D0\u6642\u9593", "CT"}; -- String DARWIN[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642(\u30CE\u30FC\u30B6\u30F3\u30C6\u30EA\u30C8\u30EA\u30FC)", "CST", -- "\u4E2D\u90E8\u590F\u6642\u9593(\u30CE\u30FC\u30B6\u30F3\u30C6\u30EA\u30C8\u30EA\u30FC)", "CST", -- "\u4E2D\u90E8\u6A19\u6E96\u6642(\u30CE\u30FC\u30B6\u30F3\u30C6\u30EA\u30C8\u30EA\u30FC)", "CT"}; -+ String DARWIN[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642(\u30CE\u30FC\u30B6\u30F3\u30C6\u30EA\u30C8\u30EA\u30FC)", "ACST", -+ "\u4E2D\u90E8\u590F\u6642\u9593(\u30CE\u30FC\u30B6\u30F3\u30C6\u30EA\u30C8\u30EA\u30FC)", "ACDT", -+ "\u4E2D\u90E8\u6A19\u6E96\u6642(\u30CE\u30FC\u30B6\u30F3\u30C6\u30EA\u30C8\u30EA\u30FC)", "ACT"}; - String DUBLIN[] = new String[] {"\u30b0\u30ea\u30cb\u30c3\u30b8\u6a19\u6e96\u6642", "GMT", - "\u30a2\u30a4\u30eb\u30e9\u30f3\u30c9\u590f\u6642\u9593", "IST", - "\u30A2\u30A4\u30EB\u30E9\u30F3\u30C9\u6642\u9593", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"\u6771\u90e8\u6a19\u6e96\u6642", "EST", - "\u6771\u90e8\u590f\u6642\u9593", "EDT", - "\u6771\u90E8\u6A19\u6E96\u6642", "ET"}; -- String EST_NSW[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "EST", -- "\u6771\u90E8\u590F\u6642\u9593(\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "EST", -- "\u6771\u90E8\u6A19\u6E96\u6642(\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "ET"}; -+ String EST_NSW[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "AEST", -+ "\u6771\u90E8\u590F\u6642\u9593(\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "AEDT", -+ "\u6771\u90E8\u6A19\u6E96\u6642(\u30CB\u30E5\u30FC\u30B5\u30A6\u30B9\u30A6\u30A7\u30FC\u30EB\u30BA)", "AET"}; - String FET[] = new String[] {"\u6975\u6771\u30E8\u30FC\u30ED\u30C3\u30D1\u6642\u9593", "FET", - "\u6975\u6771\u30E8\u30FC\u30ED\u30C3\u30D1\u590F\u6642\u9593", "FEST", - "\u6975\u6771\u30E8\u30FC\u30ED\u30C3\u30D1\u6642\u9593", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"\u30a4\u30f3\u30c9\u30b7\u30ca\u6642\u9593", "ICT", - "\u30a4\u30f3\u30c9\u30b7\u30ca\u590f\u6642\u9593", "ICST", - "\u30A4\u30F3\u30C9\u30B7\u30CA\u6642\u9593", "ICT"}; -+ String IRKT[] = new String[] {"\u30a4\u30eb\u30af\u30fc\u30c4\u30af\u6642\u9593", "IRKT", -+ "\u30a4\u30eb\u30af\u30fc\u30c4\u30af\u590f\u6642\u9593", "IRKST", -+ "\u30A4\u30EB\u30AF\u30FC\u30C4\u30AF\u6642\u9593", "IRKT"}; - String IRT[] = new String[] {"\u30a4\u30e9\u30f3\u6a19\u6e96\u6642", "IRST", - "\u30a4\u30e9\u30f3\u590f\u6642\u9593", "IRDT", - "\u30A4\u30E9\u30F3\u6642\u9593", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"\u65e5\u672c\u6a19\u6e96\u6642", "JST", - "\u65e5\u672c\u590f\u6642\u9593", "JDT", - "\u65E5\u672C\u6642\u9593", "JT"}; -+ String KRAT[] = new String[] {"\u30af\u30e9\u30b9\u30ce\u30e4\u30eb\u30b9\u30af\u6642\u9593", "KRAT", -+ "\u30af\u30e9\u30b9\u30ce\u30e4\u30eb\u30b9\u30af\u590f\u6642\u9593", "KRAST", -+ "\u30AF\u30E9\u30B9\u30CE\u30E4\u30EB\u30B9\u30AF\u6642\u9593", "KRAT"}; - String KST[] = new String[] {"\u97d3\u56fd\u6a19\u6e96\u6642", "KST", - "\u97d3\u56fd\u590f\u6642\u9593", "KDT", - "\u97D3\u56FD\u6642\u9593", "KT"}; - String LORD_HOWE[] = new String[] {"\u30ed\u30fc\u30c9\u30cf\u30a6\u5cf6\u6a19\u6e96\u6642", "LHST", -- "\u30ed\u30fc\u30c9\u30cf\u30a6\u5cf6\u590f\u6642\u9593", "LHST", -+ "\u30ed\u30fc\u30c9\u30cf\u30a6\u5cf6\u590f\u6642\u9593", "LHDT", - "\u30ED\u30FC\u30C9\u30CF\u30A6\u6642\u9593", "LHT"}; - String MHT[] = new String[] {"\u30de\u30fc\u30b7\u30e3\u30eb\u5cf6\u6642\u9593", "MHT", - "\u30de\u30fc\u30b7\u30e3\u30eb\u5cf6\u590f\u6642\u9593", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"\u30b7\u30f3\u30ac\u30dd\u30fc\u30eb\u6642\u9593", "SGT", - "\u30b7\u30f3\u30ac\u30dd\u30fc\u30eb\u590f\u6642\u9593", "SGST", - "\u30B7\u30F3\u30AC\u30DD\u30FC\u30EB\u6642\u9593", "SGT"}; -- String SLST[] = new String[] {"\u30b0\u30ea\u30cb\u30c3\u30b8\u6a19\u6e96\u6642", "GMT", -- "\u30b7\u30a8\u30e9\u30ec\u30aa\u30cd\u590f\u6642\u9593", "SLST", -- "\u30B7\u30A8\u30E9\u30EC\u30AA\u30CD\u6642\u9593", "SLT"}; -- String TASMANIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30BF\u30B9\u30DE\u30CB\u30A2)", "EST", -- "\u6771\u90E8\u590F\u6642\u9593(\u30BF\u30B9\u30DE\u30CB\u30A2)", "EST", -- "\u6771\u90E8\u6A19\u6E96\u6642(\u30BF\u30B9\u30DE\u30CB\u30A2)", "ET"}; -+ String TASMANIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30BF\u30B9\u30DE\u30CB\u30A2)", "AEST", -+ "\u6771\u90E8\u590F\u6642\u9593(\u30BF\u30B9\u30DE\u30CB\u30A2)", "AEDT", -+ "\u6771\u90E8\u6A19\u6E96\u6642(\u30BF\u30B9\u30DE\u30CB\u30A2)", "AET"}; - String TMT[] = new String[] {"\u30c8\u30eb\u30af\u30e1\u30cb\u30b9\u30bf\u30f3\u6642\u9593", "TMT", - "\u30c8\u30eb\u30af\u30e1\u30cb\u30b9\u30bf\u30f3\u590f\u6642\u9593", "TMST", - "\u30C8\u30EB\u30AF\u30E1\u30CB\u30B9\u30BF\u30F3\u6642\u9593", "TMT"}; - String ULAT[]= new String[] {"\u30a6\u30e9\u30fc\u30f3\u30d0\u30fc\u30c8\u30eb\u6642\u9593", "ULAT", - "\u30a6\u30e9\u30fc\u30f3\u30d0\u30fc\u30c8\u30eb\u590f\u6642\u9593", "ULAST", - "\u30A6\u30E9\u30F3\u30D0\u30FC\u30C8\u30EB\u6642\u9593", "ULAT"}; -- String WART[] = new String[] {"\u897f\u30a2\u30eb\u30bc\u30f3\u30c1\u30f3\u6642\u9593", "WART", -- "\u897f\u30a2\u30eb\u30bc\u30f3\u30c1\u30f3\u590f\u6642\u9593", "WARST"}; - String WAT[] = new String[] {"\u897f\u30a2\u30d5\u30ea\u30ab\u6642\u9593", "WAT", - "\u897f\u30a2\u30d5\u30ea\u30ab\u590f\u6642\u9593", "WAST", - "\u897F\u90E8\u30A2\u30D5\u30EA\u30AB\u6642\u9593", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"\u897f\u30a4\u30f3\u30c9\u30cd\u30b7\u30a2\u6642\u9593", "WIB", - "\u897f\u30a4\u30f3\u30c9\u30cd\u30b7\u30a2\u590f\u6642\u9593", "WIST", - "\u897F\u90E8\u30A4\u30F3\u30C9\u30CD\u30B7\u30A2\u6642\u9593", "WIB"}; -- String WST_AUS[] = new String[] {"\u897F\u90E8\u6A19\u6E96\u6642(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "WST", -- "\u897F\u90E8\u590F\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "WST", -- "\u897F\u90E8\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "WT"}; -+ String WST_AUS[] = new String[] {"\u897F\u90E8\u6A19\u6E96\u6642(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "AWST", -+ "\u897F\u90E8\u590F\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "AWDT", -+ "\u897F\u90E8\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "AWT"}; - String SAMOA[] = new String[] {"\u30b5\u30e2\u30a2\u6a19\u6e96\u6642", "SST", - "\u30b5\u30e2\u30a2\u590f\u6642\u9593", "SDT", - "\u30B5\u30E2\u30A2\u6642\u9593", "ST"}; -- String WST_SAMOA[] = new String[] {"\u897f\u30b5\u30e2\u30a2\u6642\u9593", "WST", -+ String WST_SAMOA[] = new String[] {"\u897f\u30b5\u30e2\u30a2\u6642\u9593", "WSST", - "\u897f\u30b5\u30e2\u30a2\u590f\u6642\u9593", "WSDT", - "\u897F\u30B5\u30E2\u30A2\u6642\u9593", "WST"}; - String ChST[] = new String[] {"\u30b0\u30a2\u30e0\u6a19\u6e96\u6642", "ChST", - "\u30b0\u30a2\u30e0\u590f\u6642\u9593", "ChDT", - "\u30C1\u30E3\u30E2\u30ED\u6642\u9593", "ChT"}; -- String VICTORIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30D3\u30AF\u30C8\u30EA\u30A2)", "EST", -- "\u6771\u90E8\u590F\u6642\u9593(\u30D3\u30AF\u30C8\u30EA\u30A2)", "EST", -- "\u6771\u90E8\u6A19\u6E96\u6642(\u30D3\u30AF\u30C8\u30EA\u30A2)", "ET"}; -+ String VICTORIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642(\u30D3\u30AF\u30C8\u30EA\u30A2)", "AEST", -+ "\u6771\u90E8\u590F\u6642\u9593(\u30D3\u30AF\u30C8\u30EA\u30A2)", "AEDT", -+ "\u6771\u90E8\u6A19\u6E96\u6642(\u30D3\u30AF\u30C8\u30EA\u30A2)", "AET"}; - String UTC[] = new String[] {"\u5354\u5b9a\u4e16\u754c\u6642", "UTC", - "\u5354\u5b9a\u4e16\u754c\u6642", "UTC", - "\u5354\u5B9A\u4E16\u754C\u6642", "UTC"}; - String UZT[] = new String[] {"\u30a6\u30ba\u30d9\u30ad\u30b9\u30bf\u30f3\u6642\u9593", "UZT", - "\u30a6\u30ba\u30d9\u30ad\u30b9\u30bf\u30f3\u590f\u6642\u9593", "UZST", - "\u30A6\u30BA\u30D9\u30AD\u30B9\u30BF\u30F3\u6642\u9593", "UZT"}; -+ String XJT[] = new String[] {"\u4e2d\u56fd\u6a19\u6e96\u6642", "XJT", -+ "\u4e2d\u56fd\u590f\u6642\u9593", "XJDT", -+ "\u4E2D\u56FD\u6642\u9593", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "\u897f\u30b0\u30ea\u30fc\u30f3\u30e9\u30f3\u30c9\u590f\u6642\u9593", "WGST", - "\u897F\u90E8\u30B0\u30EA\u30FC\u30F3\u30E9\u30F3\u30C9\u6642\u9593", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"\u30E1\u30C8\u30E9\u30AB\u30C8\u30E9\u6A19\u6E96\u6642\u9593", "MeST", -- "\u30E1\u30C8\u30E9\u30AB\u30C8\u30E9\u590F\u6642\u9593", "MeDT", -- "\u30E1\u30C8\u30E9\u30AB\u30C8\u30E9\u6642\u9593", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"\u30b5\u30f3\u30d4\u30a8\u30fc\u30eb\u30fb\u30df\u30af\u30ed\u30f3\u8af8\u5cf6\u6a19\u6e96\u6642", "PMST", - "\u30b5\u30f3\u30d4\u30a8\u30fc\u30eb\u30fb\u30df\u30af\u30ed\u30f3\u8af8\u5cf6\u590f\u6642\u9593", "PMDT", -@@ -607,6 +609,7 @@ - "\u30d6\u30eb\u30cd\u30a4\u590f\u6642\u9593", "BNST", - "\u30D6\u30EB\u30CD\u30A4\u6642\u9593", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"\u30c1\u30e7\u30a4\u30d0\u30eb\u30b5\u30f3\u6642\u9593", "CHOT", - "\u30c1\u30e7\u30a4\u30d0\u30eb\u30b5\u30f3\u590f\u6642\u9593", "CHOST", - "\u30C1\u30E7\u30A4\u30D0\u30EB\u30B5\u30F3\u6642\u9593", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"\u30db\u30d6\u30c9\u6642\u9593", "HOVT", - "\u30db\u30d6\u30c9\u590f\u6642\u9593", "HOVST", - "\u30DB\u30D6\u30C9\u6642\u9593", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"\u30a4\u30eb\u30af\u30fc\u30c4\u30af\u6642\u9593", "IRKT", -- "\u30a4\u30eb\u30af\u30fc\u30c4\u30af\u590f\u6642\u9593", "IRKST", -- "\u30A4\u30EB\u30AF\u30FC\u30C4\u30AF\u6642\u9593", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"\u6771\u30a4\u30f3\u30c9\u30cd\u30b7\u30a2\u6642\u9593", "WIT", -@@ -646,16 +647,14 @@ - "\u30da\u30c8\u30ed\u30d1\u30d6\u30ed\u30d5\u30b9\u30af\u30ab\u30e0\u30c1\u30e3\u30c4\u30ad\u30fc\u590f\u6642\u9593", "PETST", - "\u30DA\u30C8\u30ED\u30D1\u30D6\u30ED\u30D5\u30B9\u30AF\u30FB\u30AB\u30E0\u30C1\u30E3\u30C4\u30AD\u30FC\u6642\u9593", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"\u30CF\u30F3\u30C9\u30A5\u30A4\u30AC\u6642\u9593", "YAKT", - "\u30CF\u30F3\u30C9\u30A5\u30A4\u30AC\u590F\u6642\u9593", "YAKST", - "\u30CF\u30F3\u30C9\u30A5\u30A4\u30AC\u6642\u9593", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"\u30af\u30e9\u30b9\u30ce\u30e4\u30eb\u30b9\u30af\u6642\u9593", "KRAT", -- "\u30af\u30e9\u30b9\u30ce\u30e4\u30eb\u30b9\u30af\u590f\u6642\u9593", "KRAST", -- "\u30AF\u30E9\u30B9\u30CE\u30E4\u30EB\u30B9\u30AF\u6642\u9593", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "\u30D5\u30A3\u30EA\u30D4\u30F3\u6642\u9593", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"\u30aa\u30e9\u30eb\u6642\u9593", "ORAT", - "\u30aa\u30e9\u30eb\u590f\u6642\u9593", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"\u30A6\u30B9\u30C1\u30CD\u30E9\u6642\u9593", "VLAT", - "\u30A6\u30B9\u30C1\u30CD\u30E9\u590F\u6642\u9593", "VLAST", - "\u30A6\u30B9\u30C1\u30CD\u30E9\u6642\u9593", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"\u4E2D\u897F\u90E8\u6A19\u6E96\u6642(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "CWST", -- "\u4E2D\u897F\u90E8\u590F\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "CWST", -- "\u4E2D\u897F\u90E8\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"\u4E2D\u897F\u90E8\u6A19\u6E96\u6642(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "ACWST", -+ "\u4E2D\u897F\u90E8\u590F\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "ACWDT", -+ "\u4E2D\u897F\u90E8\u6642\u9593(\u30AA\u30FC\u30B9\u30C8\u30E9\u30EA\u30A2)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"\u30dc\u30eb\u30b4\u30b0\u30e9\u30fc\u30c9\u6642\u9593", "VOLT", -- "\u30dc\u30eb\u30b4\u30b0\u30e9\u30fc\u30c9\u590f\u6642\u9593", "VOLST", -- "\u30DC\u30EB\u30B4\u30B0\u30E9\u30FC\u30C9\u6642\u9593", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/ko/TimeZoneNames_ko.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/ko/TimeZoneNames_ko.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"\uc5d0\uc774\ucee4 \uc2dc\uac04", "ACT", - "\uc5d0\uc774\ucee4 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "ACST", - "\uc5d0\uc774\ucee4 \uc2dc\uac04", "ACT"}; -- String ADELAIDE[] = new String[] {"\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "CST", -- "\uC911\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "CST", -- "\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "CT"}; -+ String ADELAIDE[] = new String[] {"\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "ACST", -+ "\uC911\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "ACDT", -+ "\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "ACT"}; - String AGT[] = new String[] {"\uc544\ub974\ud5e8\ud2f0\ub098 \uc2dc\uac04", "ART", - "\uc544\ub974\ud5e8\ud2f0\ub098 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "ARST", - "\uC544\uB974\uD5E8\uD2F0\uB098 \uD45C\uC900\uC2DC", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"\ubc29\uae00\ub77c\ub370\uc2dc \uc2dc\uac04", "BDT", - "\ubc29\uae00\ub77c\ub370\uc2dc \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "BDST", - "\uBC29\uAE00\uB77C\uB370\uC2DC \uD45C\uC900\uC2DC", "BDT"}; -- String BRISBANE[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD038\uC990\uB79C\uB4DC)", "EST", -- "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uD038\uC990\uB79C\uB4DC)", "EST", -- "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD038\uC990\uB79C\uB4DC)", "ET"}; -- String BROKEN_HILL[] = new String[] {"\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544/\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "CST", -- "\uC911\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544/\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "CST", -- "\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544/\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "CT"}; -+ String BRISBANE[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD038\uC990\uB79C\uB4DC)", "AEST", -+ "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uD038\uC990\uB79C\uB4DC)", "AEDT", -+ "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD038\uC990\uB79C\uB4DC)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544/\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "ACST", -+ "\uC911\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544/\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "ACDT", -+ "\uC911\uBD80 \uD45C\uC900\uC2DC(\uB0A8\uBD80 \uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544/\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "ACT"}; - String BRT[] = new String[] {"\ube0c\ub77c\uc9c8\ub9ac\uc544 \uc2dc\uac04", "BRT", - "\ube0c\ub77c\uc9c8\ub9ac\uc544 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "BRST", - "\uBE0C\uB77C\uC9C8\uB9AC\uC544 \uD45C\uC900\uC2DC", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"\ucfe0\ubc14 \ud45c\uc900\uc2dc", "CST", - "\ucfe0\ubc14 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "CDT", - "\uCFE0\uBC14 \uD45C\uC900\uC2DC", "CT"}; -- String DARWIN[] = new String[] {"\uC911\uBD80 \uD45C\uC900\uC2DC(\uBD81\uBD80 \uC9C0\uC5ED)", "CST", -- "\uC911\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uBD81\uBD80 \uC9C0\uC5ED)", "CST", -- "\uC911\uBD80 \uD45C\uC900\uC2DC(\uBD81\uBD80 \uC9C0\uC5ED)", "CT"}; -+ String DARWIN[] = new String[] {"\uC911\uBD80 \uD45C\uC900\uC2DC(\uBD81\uBD80 \uC9C0\uC5ED)", "ACST", -+ "\uC911\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uBD81\uBD80 \uC9C0\uC5ED)", "ACDT", -+ "\uC911\uBD80 \uD45C\uC900\uC2DC(\uBD81\uBD80 \uC9C0\uC5ED)", "ACT"}; - String DUBLIN[] = new String[] {"\uadf8\ub9ac\ub2c8\uce58 \ud45c\uc900\uc2dc", "GMT", - "\uc544\uc77c\ub79c\ub4dc \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "IST", - "\uC544\uC77C\uB79C\uB4DC \uD45C\uC900\uC2DC", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"\ub3d9\ubd80 \ud45c\uc900\uc2dc", "EST", - "\ub3d9\ubd80 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "EDT", - "\uB3D9\uBD80 \uD45C\uC900\uC2DC", "ET"}; -- String EST_NSW[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "EST", -- "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "EST", -- "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "ET"}; -+ String EST_NSW[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "AEST", -+ "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "AEDT", -+ "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uB274\uC0AC\uC6B0\uC2A4\uC6E8\uC77C\uC988)", "AET"}; - String FET[] = new String[] {"\uADF9\uB3D9 \uC720\uB7FD \uD45C\uC900\uC2DC", "FET", - "\uADF9\uB3D9 \uC720\uB7FD \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04", "FEST", - "\uADF9\uB3D9 \uC720\uB7FD \uD45C\uC900\uC2DC", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"\uc778\ub3c4\ucc28\uc774\ub098 \ubc18\ub3c4 \uc2dc\uac04", "ICT", - "\uc778\ub3c4\ucc28\uc774\ub098 \ubc18\ub3c4 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "ICST", - "\uC778\uB3C4\uCC28\uC774\uB098 \uBC18\uB3C4 \uD45C\uC900\uC2DC", "ICT"}; -+ String IRKT[] = new String[] {"\uc774\ub974\ucfe0\uce20\ud06c \uc2dc\uac04", "IRKT", -+ "\uc774\ub974\ucfe0\uce20\ud06c \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "IRKST", -+ "\uC774\uB974\uCFE0\uCE20\uD06C \uD45C\uC900\uC2DC", "IRKT"}; - String IRT[] = new String[] {"\uc774\ub780 \ud45c\uc900\uc2dc", "IRST", - "\uc774\ub780 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "IRDT", - "\uC774\uB780 \uD45C\uC900\uC2DC", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"\uc77c\ubcf8 \ud45c\uc900\uc2dc", "JST", - "\uc77c\ubcf8 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "JDT", - "\uC77C\uBCF8 \uD45C\uC900\uC2DC", "JT"}; -+ String KRAT[] = new String[] {"\ud06c\ub77c\uc2a4\ub178\uc57c\ub974\uc2a4\ud06c \uc2dc\uac04", "KRAT", -+ "\ud06c\ub77c\uc2a4\ub178\uc57c\ub974\uc2a4\ud06c \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "KRAST", -+ "\uD06C\uB77C\uC2A4\uB178\uC57C\uB974\uC2A4\uD06C \uD45C\uC900\uC2DC", "KRAT"}; - String KST[] = new String[] {"\ud55c\uad6d \ud45c\uc900\uc2dc", "KST", - "\ud55c\uad6d \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "KDT", - "\uB300\uD55C\uBBFC\uAD6D \uD45C\uC900\uC2DC", "KT"}; - String LORD_HOWE[] = new String[] {"\ub85c\ub4dc \ud558\uc6b0 \ud45c\uc900\uc2dc", "LHST", -- "\ub85c\ub4dc \ud558\uc6b0 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "LHST", -+ "\ub85c\ub4dc \ud558\uc6b0 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "LHDT", - "\uB85C\uB4DC\uD558\uC6B0 \uD45C\uC900\uC2DC", "LHT"}; - String MHT[] = new String[] {"\ub9c8\uc15c\uc81c\ub3c4 \uc2dc\uac04", "MHT", - "\ub9c8\uc15c\uc81c\ub3c4 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"\uc2f1\uac00\ud3ec\ub974 \uc2dc\uac04", "SGT", - "\uc2f1\uac00\ud3ec\ub974 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "SGST", - "\uC2F1\uAC00\uD3EC\uB974 \uD45C\uC900\uC2DC", "SGT"}; -- String SLST[] = new String[] {"\uadf8\ub9ac\ub2c8\uce58 \ud45c\uc900\uc2dc", "GMT", -- "\uc2dc\uc5d0\ub77c\ub9ac\uc628 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "SLST", -- "\uC2DC\uC5D0\uB77C\uB9AC\uC628 \uD45C\uC900\uC2DC", "SLT"}; -- String TASMANIA[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD0DC\uC988\uBA54\uC774\uB2C8\uC544)", "EST", -- "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uD0DC\uC988\uBA54\uC774\uB2C8\uC544)", "EST", -- "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD0DC\uC988\uBA54\uC774\uB2C8\uC544)", "ET"}; -+ String TASMANIA[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD0DC\uC988\uBA54\uC774\uB2C8\uC544)", "AEST", -+ "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uD0DC\uC988\uBA54\uC774\uB2C8\uC544)", "AEDT", -+ "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uD0DC\uC988\uBA54\uC774\uB2C8\uC544)", "AET"}; - String TMT[] = new String[] {"\ud22c\ub974\ud06c\uba54\ub2c8\uc2a4\ud0c4 \uc2dc\uac04", "TMT", - "\ud22c\ub974\ud06c\uba54\ub2c8\uc2a4\ud0c4 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "TMST", - "\uD22C\uB974\uD06C\uBA54\uB2C8\uC2A4\uD0C4 \uD45C\uC900\uC2DC", "TMT"}; - String ULAT[]= new String[] {"\uc6b8\ub780\ubc14\ud0c0\ub974 \uc2dc\uac04", "ULAT", - "\uc6b8\ub780\ubc14\ud0c0\ub974 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "ULAST", - "\uC6B8\uB780\uBC14\uD1A0\uB974 \uD45C\uC900\uC2DC", "ULAT"}; -- String WART[] = new String[] {"\uc11c\ubd80 \uc544\ub974\ud5e8\ud2f0\ub098 \uc2dc\uac04", "WART", -- "\uc11c\ubd80 \uc544\ub974\ud5e8\ud2f0\ub098 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "WARST"}; - String WAT[] = new String[] {"\uc11c\ubd80 \uc544\ud504\ub9ac\uce74 \uc2dc\uac04", "WAT", - "\uc11c\ubd80 \uc544\ud504\ub9ac\uce74 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "WAST", - "\uC11C\uBD80 \uC544\uD504\uB9AC\uCE74 \uD45C\uC900\uC2DC", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"\uc11c\uc778\ub3c4\ub124\uc2dc\uc544 \uc2dc\uac04", "WIB", - "\uc11c\uc778\ub3c4\ub124\uc2dc\uc544 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "WIST", - "\uC11C\uBD80 \uC778\uB3C4\uB124\uC2DC\uC544 \uD45C\uC900\uC2DC", "WIB"}; -- String WST_AUS[] = new String[] {"\uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "WST", -- "\uC11C\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "WST", -- "\uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "WT"}; -+ String WST_AUS[] = new String[] {"\uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "AWST", -+ "\uC11C\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "AWDT", -+ "\uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "AWT"}; - String SAMOA[] = new String[] {"\uc0ac\ubaa8\uc544 \ud45c\uc900\uc2dc", "SST", - "\uc0ac\ubaa8\uc544 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "SDT", - "\uC0AC\uBAA8\uC544 \uD45C\uC900\uC2DC", "ST"}; -- String WST_SAMOA[] = new String[] {"\uc11c\uc0ac\ubaa8\uc544 \uc2dc\uac04", "WST", -+ String WST_SAMOA[] = new String[] {"\uc11c\uc0ac\ubaa8\uc544 \uc2dc\uac04", "WSST", - "\uc11c\uc0ac\ubaa8\uc544 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "WSDT", - "\uC11C\uC0AC\uBAA8\uC544 \uD45C\uC900\uC2DC", "WST"}; - String ChST[] = new String[] {"\ucc28\ubaa8\ub85c \ud45c\uc900\uc2dc", "ChST", - "\ucc28\ubaa8\ub85c \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "ChDT", - "\uCC28\uBAA8\uB974 \uD45C\uC900\uC2DC", "ChT"}; -- String VICTORIA[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uBE45\uD1A0\uB9AC\uC544)", "EST", -- "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uBE45\uD1A0\uB9AC\uC544)", "EST", -- "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uBE45\uD1A0\uB9AC\uC544)", "ET"}; -+ String VICTORIA[] = new String[] {"\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uBE45\uD1A0\uB9AC\uC544)", "AEST", -+ "\uB3D9\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uBE45\uD1A0\uB9AC\uC544)", "AEDT", -+ "\uB3D9\uBD80 \uD45C\uC900\uC2DC(\uBE45\uD1A0\uB9AC\uC544)", "AET"}; - String UTC[] = new String[] {"\uc138\uacc4 \ud45c\uc900\uc2dc", "UTC", - "\uc138\uacc4 \ud45c\uc900\uc2dc", "UTC", - "\uC9C0\uC5ED \uD45C\uC900\uC2DC", "UTC"}; - String UZT[] = new String[] {"\uc6b0\uc988\ubca0\ud0a4\uc2a4\ud0c4 \uc2dc\uac04", "UZT", - "\uc6b0\uc988\ubca0\ud0a4\uc2a4\ud0c4 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "UZST", - "\uC6B0\uC988\uBCA0\uD0A4\uC2A4\uD0C4 \uD45C\uC900\uC2DC", "UZT"}; -+ String XJT[] = new String[] {"\uc911\uad6d \ud45c\uc900\uc2dc", "XJT", -+ "\uc911\uad6d \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "XJDT", -+ "\uC911\uAD6D \uD45C\uC900\uC2DC", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "\uc11c\ubd80 \uadf8\ub9b0\ub79c\ub4dc \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "WGST", - "\uC11C\uBD80 \uADF8\uB9B0\uB780\uB4DC \uD45C\uC900\uC2DC", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"\uBA54\uD2B8\uB77C\uCE74\uD2B8\uB77C \uD45C\uC900\uC2DC", "MeST", -- "\uBA54\uD2B8\uB77C\uCE74\uD2B8\uB77C \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04", "MeDT", -- "\uBA54\uD2B8\uB77C\uCE74\uD2B8\uB77C \uD45C\uC900\uC2DC", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"\ud53c\uc5d0\ub974 \ubbf8\ud06c\ub860 \ud45c\uc900\uc2dc", "PMST", - "\ud53c\uc5d0\ub974 \ubbf8\ud06c\ub860 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PMDT", -@@ -607,6 +609,7 @@ - "\ube0c\ub8e8\ub098\uc774 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "BNST", - "\uBE0C\uB8E8\uB098\uC774 \uD45C\uC900\uC2DC", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Choibalsan \uc2dc\uac04", "CHOT", - "Choibalsan \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "CHOST", - "\uCD08\uC774\uBC1C\uC0B0 \uD45C\uC900\uC2DC", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Hovd \uc2dc\uac04", "HOVT", - "Hovd \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "HOVST", - "\uD638\uBE0C\uB4DC \uD45C\uC900\uC2DC", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"\uc774\ub974\ucfe0\uce20\ud06c \uc2dc\uac04", "IRKT", -- "\uc774\ub974\ucfe0\uce20\ud06c \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "IRKST", -- "\uC774\uB974\uCFE0\uCE20\uD06C \uD45C\uC900\uC2DC", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"\ub3d9\ubd80 \uc778\ub3c4\ub124\uc2dc\uc544 \uc2dc\uac04", "WIT", -@@ -646,16 +647,14 @@ - "\ud398\ud2b8\ub85c\ud30c\ube14\ub85c\ud504\uc2a4\ud06c-\uce84\ucc28\uce20\ud0a4 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PETST", - "\uD398\uD2B8\uB85C\uD30C\uBE0C\uB85C\uD504\uC2A4\uD06C-\uCE84\uCC28\uCE20\uD0A4 \uD45C\uC900\uC2DC", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"\uD55C\uB514\uAC00 \uD45C\uC900\uC2DC", "YAKT", - "\uD55C\uB514\uAC00 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04", "YAKST", - "\uD55C\uB514\uAC00 \uD45C\uC900\uC2DC", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"\ud06c\ub77c\uc2a4\ub178\uc57c\ub974\uc2a4\ud06c \uc2dc\uac04", "KRAT", -- "\ud06c\ub77c\uc2a4\ub178\uc57c\ub974\uc2a4\ud06c \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "KRAST", -- "\uD06C\uB77C\uC2A4\uB178\uC57C\uB974\uC2A4\uD06C \uD45C\uC900\uC2DC", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "\uD544\uB9AC\uD540 \uD45C\uC900\uC2DC", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Oral \ud45c\uc900\uc2dc", "ORAT", - "Oral \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"\uC6B0\uC2A4\uD2F0\uB124\uB77C \uD45C\uC900\uC2DC", "VLAT", - "\uC6B0\uC2A4\uD2F0\uB124\uB77C \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04", "VLAST" , - "\uC6B0\uC2A4\uD2F0\uB124\uB77C \uD45C\uC900\uC2DC", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"\uC911\uC559 \uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "CWST", -- "\uC911\uC559 \uC11C\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "CWST", -- "\uC911\uC559 \uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"\uC911\uC559 \uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "ACWST", -+ "\uC911\uC559 \uC11C\uBD80 \uC77C\uAD11 \uC808\uC57D \uC2DC\uAC04(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "ACWDT", -+ "\uC911\uC559 \uC11C\uBD80 \uD45C\uC900\uC2DC(\uC624\uC2A4\uD2B8\uB808\uC77C\uB9AC\uC544)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"\ubcfc\uace0\uadf8\ub77c\ub4dc \uc2dc\uac04", "VOLT", -- "\ubcfc\uace0\uadf8\ub77c\ub4dc \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "VOLST", -- "\uBCFC\uACE0\uADF8\uB77C\uB4DC \uD45C\uC900\uC2DC", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/lt/CurrencyNames_lt_LT.properties Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/lt/CurrencyNames_lt_LT.properties Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - # --# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. -+# Copyright (c) 2005, 2014, 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 -@@ -35,4 +35,5 @@ - # This notice and attribution to Taligent may not be removed. - # Taligent is a registered trademark of Taligent, Inc. - -+EUR=\u20AC - LTL=Lt ---- ./jdk/src/share/classes/sun/util/resources/pt/TimeZoneNames_pt_BR.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/pt/TimeZoneNames_pt_BR.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Fuso hor\u00e1rio do Acre", "ACT", - "Fuso hor\u00e1rio de ver\u00e3o do Acre", "ACST", - "Fuso hor\u00e1rio do Acre", "ACT"}; -- String ADELAIDE[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Central (Austr\u00E1lia do Sul)", "CST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Central (Austr\u00E1lia do Sul)", "CST", -- "Hor\u00E1rio Central (Austr\u00E1lia do Sul)", "CT"}; -+ String ADELAIDE[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Central (Austr\u00E1lia do Sul)", "ACST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Central (Austr\u00E1lia do Sul)", "ACDT", -+ "Hor\u00E1rio Central (Austr\u00E1lia do Sul)", "ACT"}; - String AGT[] = new String[] {"Fuso hor\u00e1rio da Argentina", "ART", - "Fuso hor\u00e1rio de ver\u00e3o da Argentina", "ARST", - "Hor\u00E1rio da Argentina", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"Fuso hor\u00e1rio de Bangladesh", "BDT", - "Fuso hor\u00e1rio de ver\u00e3o de Bangladesh", "BDST", - "Hor\u00E1rio de Bangladesh", "BDT"}; -- String BRISBANE[] = new String[] {"Hor\u00E1rio-Padr\u00E3o do Leste (Queensland)", "EST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Queensland)", "EST", -- "Hor\u00E1rio do Leste (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Central (Austr\u00E1lia do Sul/Nova Gales do Sul)", "CST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Central (Austr\u00E1lia do Sul/Nova Gales do Sul)", "CST", -- "Hor\u00E1rio Central (Austr\u00E1lia do Sul/Nova Gales do Sul)", "CT"}; -+ String BRISBANE[] = new String[] {"Hor\u00E1rio-Padr\u00E3o do Leste (Queensland)", "AEST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Queensland)", "AEDT", -+ "Hor\u00E1rio do Leste (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Central (Austr\u00E1lia do Sul/Nova Gales do Sul)", "ACST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Central (Austr\u00E1lia do Sul/Nova Gales do Sul)", "ACDT", -+ "Hor\u00E1rio Central (Austr\u00E1lia do Sul/Nova Gales do Sul)", "ACT"}; - String BRT[] = new String[] {"Fuso hor\u00e1rio de Bras\u00edlia", "BRT", - "Fuso hor\u00e1rio de ver\u00e3o de Bras\u00edlia", "BRST", - "Hor\u00E1rio de Bras\u00EDlia", "BRT"}; -@@ -108,9 +108,9 @@ - String CUBA[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o de Cuba", "CST", - "Hor\u00e1rio de luz natural de Cuba", "CDT", - "Hor\u00E1rio de Cuba", "CT"}; -- String DARWIN[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Central (Territ\u00F3rio do Norte)", "CST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Central (Territ\u00F3rio do Norte)", "CST", -- "Hor\u00E1rio Central (Territ\u00F3rio do Norte)", "CT"}; -+ String DARWIN[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Central (Territ\u00F3rio do Norte)", "ACST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Central (Territ\u00F3rio do Norte)", "ACDT", -+ "Hor\u00E1rio Central (Territ\u00F3rio do Norte)", "ACT"}; - String DUBLIN[] = new String[] {"Fuso hor\u00e1rio do meridiano de Greenwich", "GMT", - "Fuso hor\u00e1rio de ver\u00e3o da Irlanda", "IST", - "Hor\u00E1rio da Rep\u00FAblica da Irlanda", "IT"}; -@@ -129,9 +129,9 @@ - String EST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o oriental", "EST", - "Hor\u00e1rio de luz natural oriental", "EDT", - "Hor\u00E1rio do Leste", "ET"}; -- String EST_NSW[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Oriental (Nova Gales do Sul)", "EST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Nova Gales do Sul)", "EST", -- "Hor\u00E1rio Oriental (Nova Gales do Sul)", "ET"}; -+ String EST_NSW[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Oriental (Nova Gales do Sul)", "AEST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Nova Gales do Sul)", "AEDT", -+ "Hor\u00E1rio Oriental (Nova Gales do Sul)", "AET"}; - String FET[] = new String[] {"Hor\u00E1rio do Extremo Leste Europeu (FET)", "FET", - "Fuso Hor\u00E1rio de Ver\u00E3o do Extremo Leste Europeu", "FEST", - "Hor\u00E1rio do Extremo Leste Europeu (FET)", "FET"}; -@@ -162,6 +162,9 @@ - String ICT[] = new String[] {"Fuso hor\u00e1rio da Indochina", "ICT", - "Fuso hor\u00e1rio de ver\u00e3o da Indochina", "ICST", - "Hor\u00E1rio da Indochina", "ICT"}; -+ String IRKT[] = new String[] {"Fuso hor\u00e1rio de Irkutsk", "IRKT", -+ "Fuso hor\u00e1rio de ver\u00e3o de Irkutsk", "IRKST", -+ "Hor\u00E1rio de Irkutsk", "IRKT"}; - String IRT[] = new String[] {"Fuso hor\u00e1rio do Ir\u00e3", "IRST", - "Hor\u00e1rio de luz natural do Ir\u00e3", "IRDT", - "Hor\u00E1rio do Ir\u00E3", "IRT"}; -@@ -174,11 +177,14 @@ - String JST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o do Jap\u00e3o", "JST", - "Hor\u00e1rio de luz natural do Jap\u00e3o", "JDT", - "Hor\u00E1rio do Jap\u00E3o", "JT"}; -+ String KRAT[] = new String[] {"Fuso hor\u00e1rio de Krasnoyarsk", "KRAT", -+ "Fuso hor\u00e1rio de ver\u00e3o de Krasnoyarsk", "KRAST", -+ "Hor\u00E1rio de Krasnoyarsk", "KRAT"}; - String KST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o da Coreia", "KST", - "Hor\u00e1rio de luz natural da Coreia", "KDT", - "Hor\u00E1rio da Coreia", "KT"}; - String LORD_HOWE[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o de Lord Howe", "LHST", -- "Fuso hor\u00e1rio de ver\u00e3o de Lord Howe", "LHST", -+ "Fuso hor\u00e1rio de ver\u00e3o de Lord Howe", "LHDT", - "Hor\u00E1rio de Lord Howe", "LHT"}; - String MHT[] = new String[] {"Fuso hor\u00e1rio das Ilhas Marshall", "MHT", - "Fuso hor\u00e1rio de ver\u00e3o das Ilhas Marshall", "MHST", -@@ -228,12 +234,9 @@ - String SGT[] = new String[] {"Fuso hor\u00e1rio de Cingapura", "SGT", - "Fuso hor\u00e1rio de ver\u00e1 de Cingapura", "SGST", - "Hor\u00E1rio de Cingapura", "SGT"}; -- String SLST[] = new String[] {"Fuso hor\u00e1rio do meridiano de Greenwich", "GMT", -- "Fuso hor\u00e1rio de ver\u00e3o de Serra Leoa", "SLST", -- "Hor\u00E1rio de Serra Leoa", "SLT"}; -- String TASMANIA[] = new String[] {"Hor\u00E1rio-Padr\u00E3o do Leste (Tasm\u00E2nia)", "EST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Tasm\u00E2nia)", "EST", -- "Hor\u00E1rio do Leste (Tasm\u00E2nia)", "ET"}; -+ String TASMANIA[] = new String[] {"Hor\u00E1rio-Padr\u00E3o do Leste (Tasm\u00E2nia)", "AEST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Tasm\u00E2nia)", "AEDT", -+ "Hor\u00E1rio do Leste (Tasm\u00E2nia)", "AET"}; - String TMT[] = new String[] {"Fuso hor\u00e1rio do Turcomenist\u00e3o", "TMT", - "Fuso hor\u00e1rio de ver\u00e3o do Turcomenist\u00e3o", "TMST", - "Hor\u00E1rio do Turcomenist\u00E3o", "TMT"}; -@@ -252,29 +255,30 @@ - String WIT[] = new String[] {"Fuso hor\u00e1rio da Indon\u00e9sia Ocidental", "WIB", - "Fuso hor\u00e1rio de ver\u00e3o da Indon\u00e9sia Ocidental", "WIST", - "Hor\u00E1rio da Indon\u00E9sia Ocidental", "WIB"}; -- String WST_AUS[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Ocidental (Austr\u00E1lia)", "WST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Ocidental (Austr\u00E1lia)", "WST", -- "Hor\u00E1rio Ocidental (Austr\u00E1lia)", "WT"}; -+ String WST_AUS[] = new String[] {"Hor\u00E1rio-Padr\u00E3o Ocidental (Austr\u00E1lia)", "AWST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Ocidental (Austr\u00E1lia)", "AWDT", -+ "Hor\u00E1rio Ocidental (Austr\u00E1lia)", "AWT"}; - String SAMOA[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o de Samoa", "SST", - "Hor\u00e1rio de luz natural de Samoa", "SDT", - "Hor\u00E1rio da Samoa", "ST"}; -- String WST_SAMOA[] = new String[] {"Fuso hor\u00e1rio de Samoa Ocidental", "WST", -+ String WST_SAMOA[] = new String[] {"Fuso hor\u00e1rio de Samoa Ocidental", "WSST", - "Fuso hor\u00e1rio de ver\u00e3o de Samoa Ocidental", "WSDT", - "Fuso Hor\u00E1rio de Samoa Ocidental", "WST"}; - String ChST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o de Chamorro", "ChST", - "Hor\u00e1rio de luz natural de Chamorro", "ChDT", - "Hor\u00E1rio de Chamorro", "ChT"}; -- String VICTORIA[] = new String[] {"Hor\u00E1rio-Padr\u00E3o do Leste (Victoria)", "EST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Victoria)", "EST", -- "Hor\u00E1rio do Leste (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"Hor\u00E1rio-Padr\u00E3o do Leste (Victoria)", "AEST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Oriental (Victoria)", "AEDT", -+ "Hor\u00E1rio do Leste (Victoria)", "AET"}; - String UTC[] = new String[] {"Tempo universal coordenado", "UTC", - "Tempo universal coordenado", "UTC", - "Hor\u00E1rio Universal Coordenado", "UTC"}; - String UZT[] = new String[] {"Fuso hor\u00e1rio do Uzbequist\u00e3o", "UZT", - "Fuso hor\u00e1rio de ver\u00e3o do Uzbequist\u00e3o", "UZST", - "Hor\u00E1rio do Uzbequist\u00E3o", "UZT"}; -- String WART[] = new String[] {"Fuso hor\u00e1rio da Argentina Ocidental", "WART", -- "Fuso hor\u00e1rio de ver\u00e3o da Argentina Ocidental", "WARST"}; -+ String XJT[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o da China", "XJT", -+ "Hor\u00e1rio de luz natural da China", "XJDT", -+ "Hor\u00E1rio da China", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "Fuso hor\u00e1rio de ver\u00e3o da Groenl\u00e2ndia Ocidental", "WGST", - "Hor\u00E1rio da Groenl\u00E2ndia Ocidental", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Hor\u00E1rio Padr\u00E3o de Metlakatla", "MeST", -- "Hor\u00E1rio de Luz Natural de Metlakatla", "MeDT", -- "Hor\u00E1rio de Metlakatla", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Fuso hor\u00e1rio padr\u00e3o de S\u00e3o Pedro e Miquelon", "PMST", - "Hor\u00e1rio de luz natural de S\u00e3o Pedro e Miquelon", "PMDT", -@@ -607,6 +609,7 @@ - "Fuso hor\u00e1rio de ver\u00e3o de Brunei", "BNST", - "Hor\u00E1rio de Brunei", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Fuso hor\u00e1rio de Choibalsan", "CHOT", - "Fuso hor\u00e1rio de ver\u00e3o de Choibalsan", "CHOST", - "Hor\u00E1rio de Choibalsan", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Fuso hor\u00e1rio de Hovd", "HOVT", - "Fuso hor\u00e1rio de ver\u00e3o de Hovd", "HOVST", - "Hor\u00E1rio de Hovd", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Fuso hor\u00e1rio de Irkutsk", "IRKT", -- "Fuso hor\u00e1rio de ver\u00e3o de Irkutsk", "IRKST", -- "Hor\u00E1rio de Irkutsk", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"Fuso hor\u00e1rio da Indon\u00e9sia Oriental", "WIT", -@@ -646,16 +647,14 @@ - "Fuso hor\u00e1rio de ver\u00e3o de Petropavlovsk-Kamchatski", "PETST", - "Hor\u00E1rio de Petropavlovsk-Kamchatski", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"Hor\u00E1rio de Khandyga", "YAKT", - "Hor\u00E1rio de Ver\u00E3o de Khandyga", "YAKST", - "Hor\u00E1rio de Khandyga", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"Fuso hor\u00e1rio de Krasnoyarsk", "KRAT", -- "Fuso hor\u00e1rio de ver\u00e3o de Krasnoyarsk", "KRAST", -- "Hor\u00E1rio de Krasnoyarsk", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "Hor\u00E1rio das Filipinas", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Fuso hor\u00e1rio de Uralsk", "ORAT", - "Fuso hor\u00e1rio de ver\u00e3o de Uralsk", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Hor\u00E1rio de Ust-Nera", "VLAT", - "Hor\u00E1rio de Ver\u00E3o de Ust-Nera", "VLAST", - "Hor\u00E1rio de Ust-Nera", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Fuso Hor\u00E1rio Ocidental Central (Austr\u00E1lia)", "CWST", -- "Fuso Hor\u00E1rio de Ver\u00E3o Ocidental Central (Austr\u00E1lia)", "CWST", -- "Hor\u00E1rio Ocidental Central (Austr\u00E1lia)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Fuso Hor\u00E1rio Ocidental Central (Austr\u00E1lia)", "ACWST", -+ "Fuso Hor\u00E1rio de Ver\u00E3o Ocidental Central (Austr\u00E1lia)", "ACWDT", -+ "Hor\u00E1rio Ocidental Central (Austr\u00E1lia)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Fuso hor\u00e1rio de Volgogrado", "VOLT", -- "Fuso hor\u00e1rio de ver\u00e3o de Volgogrado", "VOLST", -- "Hor\u00E1rio de Volgogrado", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", TRUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/sv/TimeZoneNames_sv.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/sv/TimeZoneNames_sv.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Acre, normaltid", "ACT", - "Acre, sommartid", "ACST", - "Acre, normaltid", "ACT"}; -- String ADELAIDE[] = new String[] {"Central standardtid (Sydaustralien)", "CST", -- "Central sommartid (South Australia)", "CST", -- "Central tid (Sydaustralien)", "CT"}; -+ String ADELAIDE[] = new String[] {"Central standardtid (Sydaustralien)", "ACST", -+ "Central sommartid (South Australia)", "ACDT", -+ "Central tid (Sydaustralien)", "ACT"}; - String AGT[] = new String[] {"Argentina, normaltid", "ART", - "Argentina, sommartid", "ARST", - "Argentinsk tid", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"Bangladesh, normaltid", "BDT", - "Bangladesh, sommartid", "BDST", - "Bangladeshisk tid", "BDT"}; -- String BRISBANE[] = new String[] {"\u00D6stlig standardtid (Queensland)", "EST", -- "\u00D6stlig sommartid (Queensland)", "EST", -- "\u00D6stlig tid (Queensland)", "ET"}; -- String BROKEN_HILL[] = new String[] {"Central standardtid (Sydaustralien/New South Wales)", "CST", -- "Central sommartid (South Australia/New South Wales)", "CST", -- "Central tid (Sydaustralien/New South Wales)", "CT"}; -+ String BRISBANE[] = new String[] {"\u00D6stlig standardtid (Queensland)", "AEST", -+ "\u00D6stlig sommartid (Queensland)", "AEDT", -+ "\u00D6stlig tid (Queensland)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"Central standardtid (Sydaustralien/New South Wales)", "ACST", -+ "Central sommartid (South Australia/New South Wales)", "ACDT", -+ "Central tid (Sydaustralien/New South Wales)", "ACT"}; - String BRT[] = new String[] {"Brasilien, normaltid", "BRT", - "Brasilien, sommartid", "BRST", - "Brasiliansk tid", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"Kuba, normaltid", "CST", - "Kuba, sommartid", "CDT", - "Kubansk tid", "CT"}; -- String DARWIN[] = new String[] {"Central standardtid (Nordterritoriet)", "CST", -- "Central sommartid (Nordterritoriet)", "CST", -- "Central tid (Nordterritoriet)", "CT"}; -+ String DARWIN[] = new String[] {"Central standardtid (Nordterritoriet)", "ACST", -+ "Central sommartid (Nordterritoriet)", "ACDT", -+ "Central tid (Nordterritoriet)", "ACT"}; - String DUBLIN[] = new String[] {"Greenwichtid", "GMT", - "Irland, sommartid", "IST", - "Irl\u00E4ndsk tid", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"Eastern, normaltid", "EST", - "Eastern, sommartid", "EDT", - "\u00D6stlig tid", "ET"}; -- String EST_NSW[] = new String[] {"\u00D6stlig standardtid (New South Wales)", "EST", -- "\u00D6stlig sommartid (New South Wales)", "EST", -- "\u00D6stlig tid (New South Wales)", "ET"}; -+ String EST_NSW[] = new String[] {"\u00D6stlig standardtid (New South Wales)", "AEST", -+ "\u00D6stlig sommartid (New South Wales)", "AEDT", -+ "\u00D6stlig tid (New South Wales)", "AET"}; - String FET[] = new String[] {"Kaliningradtid", "FET", - "\u00D6steuropeisk sommartid", "FEST", - "Kaliningradtid", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"Indokinesisk tid", "ICT", - "Indokinesisk sommartid", "ICST", - "Indokinesisk tid", "ICT"}; -+ String IRKT[] = new String[] {"Irkutsk, normaltid", "IRKT", -+ "Irkutsk, sommartid", "IRKST", -+ "Irkutsk-tid", "IRKT"}; - String IRT[] = new String[] {"Iran, normaltid", "IRST", - "Iran, sommartid", "IRDT", - "Iransk tid", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"Japan, normaltid", "JST", - "Japan, sommartid", "JDT", - "Japansk tid", "JT"}; -+ String KRAT[] = new String[] {"Krasnojarsk, normaltid", "KRAT", -+ "Krasnojarsk, sommartid", "KRAST", -+ "Krasnojarsk-tid", "KRAT"}; - String KST[] = new String[] {"Korea, normaltid", "KST", - "Korea, sommartid", "KDT", - "Koreansk tid", "KT"}; - String LORD_HOWE[] = new String[] {"Lord Howe, normaltid", "LHST", -- "Lord Howe, sommartid", "LHST", -+ "Lord Howe, sommartid", "LHDT", - "Lord Howe-tid", "LHT"}; - String MHT[] = new String[] {"Marshall\u00f6arna, normaltid", "MHT", - "Marshall\u00f6arna, sommartid", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"Singapore, normaltid", "SGT", - "Singapore, sommartid", "SGST", - "Singapore-tid", "SGT"}; -- String SLST[] = new String[] {"Greenwichtid", "GMT", -- "Sierra Leone, sommartid", "SLST", -- "Sierra Leone-tid", "SLT"}; -- String TASMANIA[] = new String[] {"\u00D6stlig standardtid (Tasmania)", "EST", -- "\u00D6stlig sommartid (Tasmanien)", "EST", -- "\u00D6stlig tid (Tasmania)", "ET"}; -+ String TASMANIA[] = new String[] {"\u00D6stlig standardtid (Tasmania)", "AEST", -+ "\u00D6stlig sommartid (Tasmanien)", "AEDT", -+ "\u00D6stlig tid (Tasmania)", "AET"}; - String TMT[] = new String[] {"Turkmenistan, normaltid", "TMT", - "Turkmenistan, sommartid", "TMST", - "Turkmensk tid", "TMT"}; - String ULAT[]= new String[] {"Ulaanbaatar, normaltid", "ULAT", - "Ulaanbaatar, sommartid", "ULAST", - "Ulaanbaatar-tid", "ULAT"}; -- String WART[] = new String[] {"V\u00e4stargentina, normaltid", "WART", -- "V\u00e4stargentina, sommartid", "WARST"}; - String WAT[] = new String[] {"V\u00e4stafrikansk tid", "WAT", - "V\u00e4stafrikansk sommartid", "WAST", - "V\u00E4stafrikansk tid", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"V\u00e4stindonesisk tid", "WIB", - "V\u00e4stindonesisk sommartid", "WIST", - "V\u00E4stindonesisk tid", "WIB"}; -- String WST_AUS[] = new String[] {"Western Standard Time (Australien)", "WST", -- "V\u00E4stlig sommartid (Australien)", "WST", -- "V\u00E4stlig tid (Australien)", "WT"}; -+ String WST_AUS[] = new String[] {"Western Standard Time (Australien)", "AWST", -+ "V\u00E4stlig sommartid (Australien)", "AWDT", -+ "V\u00E4stlig tid (Australien)", "AWT"}; - String SAMOA[] = new String[] {"Samoa, normaltid", "SST", - "Samoa, sommartid", "SDT", - "Samoansk tid", "ST"}; -- String WST_SAMOA[] = new String[] {"V\u00e4stsamoansk tid", "WST", -+ String WST_SAMOA[] = new String[] {"V\u00e4stsamoansk tid", "WSST", - "V\u00e4stsamoansk sommartid", "WSDT", - "V\u00E4stsamoansk tid", "WST"}; - String ChST[] = new String[] {"Chamorro, normaltid", "ChST", - "Chamorro, sommartid", "ChDT", - "Chamorros tid", "ChT"}; -- String VICTORIA[] = new String[] {"\u00D6stlig standardtid (Victoria)", "EST", -- "\u00D6stlig sommartid (Victoria)", "EST", -- "\u00D6stlig tid (Victoria)", "ET"}; -+ String VICTORIA[] = new String[] {"\u00D6stlig standardtid (Victoria)", "AEST", -+ "\u00D6stlig sommartid (Victoria)", "AEDT", -+ "\u00D6stlig tid (Victoria)", "AET"}; - String UTC[] = new String[] {"Koordinerad universell tid", "UTC", - "Koordinerad universell tid", "UTC", - "UTC (koordinerad v\u00E4rldstid)", "UTC"}; - String UZT[] = new String[] {"Uzbekistan, normaltid", "UZT", - "Uzbekistan, sommartid", "UZST", - "Uzbekisk tid", "UZT"}; -+ String XJT[] = new String[] {"Kina, normaltid", "XJT", -+ "Kina, sommartid", "XJDT", -+ "Kinesisk tid", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "V\u00e4stra Gr\u00f6nland, sommartid", "WGST", - "V\u00E4stgr\u00F6nl\u00E4ndsk tid", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"Metlakatla, normaltid", "MeST", -- "Metlakatla, sommartid", "MeDT", -- "Metlakatla-tid", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"Saint-Pierre-et-Miquelon, normaltid", "PMST", - "Saint-Pierre-et-Miquelon, sommartid", "PMDT", -@@ -612,6 +614,7 @@ - "Choibalsan-tid", "CHOT"}}, - {"Asia/Chongqing", CTT}, - {"Asia/Chungking", CTT}, -+ {"Asia/Chita", IRKT}, - {"Asia/Colombo", IST}, - {"Asia/Dacca", BDT}, - {"Asia/Dhaka", BDT}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"Hovd, normaltid", "HOVT", - "Hovd, sommartid", "HOVST", - "Hovd-tid", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Irkutsk, normaltid", "IRKT", -- "Irkutsk, sommartid", "IRKST", -- "Irkutsk-tid", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"\u00d6stindonesisk tid", "WIT", -@@ -646,16 +647,14 @@ - "Petropavlovsk-Kamtjatka, sommartid", "PETST", - "Petropavlovsk-Kamtjatskij-tid", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"Khandyga, normaltid", "YAKT", - "Khandyga, sommartid", "YAKST", - "Khandyga, normaltid", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"Krasnojarsk, normaltid", "KRAT", -- "Krasnojarsk, sommartid", "KRAST", -- "Krasnojarsk-tid", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "Filippinsk tid", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Oral, normaltid", "ORAT", - "Oral, sommartid", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"Ust-Nera, normaltid", "VLAT", - "Ust-Nera, sommartid", "VLAST", - "Ust-Nera, normaltid", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"Central v\u00E4stlig normaltid (Australien)", "CWST", -- "Central v\u00E4stlig sommartid (Australien)", "CWST", -- "Central v\u00E4stlig tid (Australien)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"Central v\u00E4stlig normaltid (Australien)", "ACWST", -+ "Central v\u00E4stlig sommartid (Australien)", "ACWDT", -+ "Central v\u00E4stlig tid (Australien)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"Volgograd-tid", "VOLT", -- "Volgograd, sommartid", "VOLST", -- "Volgograd, normaltid", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/zh/TimeZoneNames_zh_CN.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/zh/TimeZoneNames_zh_CN.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Acre \u65f6\u95f4", "ACT", - "Acre \u590f\u4ee4\u65f6", "ACST", - "Acre \u65f6\u95f4", "ACT"}; -- String ADELAIDE[] = new String[] {"\u4E2D\u592E\u6807\u51C6\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A)", "CST", -- "\u4E2D\u592E\u590F\u4EE4\u65F6 (\u5357\u6FB3\u5927\u5229\u4E9A)", "CST", -- "\u4E2D\u90E8\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A)", "CT"}; -+ String ADELAIDE[] = new String[] {"\u4E2D\u592E\u6807\u51C6\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A)", "ACST", -+ "\u4E2D\u592E\u590F\u4EE4\u65F6 (\u5357\u6FB3\u5927\u5229\u4E9A)", "ACDT", -+ "\u4E2D\u90E8\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A)", "ACT"}; - String AGT[] = new String[] {"\u963f\u6839\u5ef7\u65f6\u95f4", "ART", - "\u963f\u6839\u5ef7\u590f\u4ee4\u65f6", "ARST", - "\u963F\u6839\u5EF7\u65F6\u95F4", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"\u5b5f\u52a0\u62c9\u65f6\u95f4", "BDT", - "\u5b5f\u52a0\u62c9\u590f\u4ee4\u65f6", "BDST", - "\u5B5F\u52A0\u62C9\u65F6\u95F4", "BDT"}; -- String BRISBANE[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u6606\u58EB\u5170)", "EST", -- "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u6606\u58EB\u5170)", "EST", -- "\u4E1C\u90E8\u65F6\u95F4 (\u6606\u58EB\u5170)", "ET"}; -- String BROKEN_HILL[] = new String[] {"\u4E2D\u592E\u6807\u51C6\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A/\u65B0\u5357\u5A01\u5C14\u65AF)", "CST", -- "\u4E2D\u592E\u590F\u4EE4\u65F6 (\u5357\u6FB3\u5927\u5229\u4E9A/\u65B0\u5357\u5A01\u5C14\u65AF)", "CST", -- "\u4E2D\u90E8\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A/\u65B0\u5357\u5A01\u5C14\u65AF)", "CT"}; -+ String BRISBANE[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u6606\u58EB\u5170)", "AEST", -+ "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u6606\u58EB\u5170)", "AEDT", -+ "\u4E1C\u90E8\u65F6\u95F4 (\u6606\u58EB\u5170)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"\u4E2D\u592E\u6807\u51C6\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A/\u65B0\u5357\u5A01\u5C14\u65AF)", "ACST", -+ "\u4E2D\u592E\u590F\u4EE4\u65F6 (\u5357\u6FB3\u5927\u5229\u4E9A/\u65B0\u5357\u5A01\u5C14\u65AF)", "ACDT", -+ "\u4E2D\u90E8\u65F6\u95F4 (\u5357\u6FB3\u5927\u5229\u4E9A/\u65B0\u5357\u5A01\u5C14\u65AF)", "ACT"}; - String BRT[] = new String[] {"\u5df4\u897f\u5229\u4e9a\u65f6\u95f4", "BRT", - "\u5df4\u897f\u5229\u4e9a\u590f\u4ee4\u65f6", "BRST", - "\u5DF4\u897F\u5229\u4E9A\u65F6\u95F4", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"\u53e4\u5df4\u6807\u51c6\u65f6\u95f4", "CST", - "\u53e4\u5df4\u590f\u4ee4\u65f6", "CDT", - "\u53E4\u5DF4\u65F6\u95F4", "CT"}; -- String DARWIN[] = new String[] {"\u4E2D\u592E\u6807\u51C6\u65F6\u95F4 (\u5317\u9886\u5730)", "CST", -- "\u4E2D\u592E\u590F\u4EE4\u65F6 (\u5317\u9886\u5730)", "CST", -- "\u4E2D\u90E8\u65F6\u95F4 (\u5317\u90E8\u5730\u533A)", "CT"}; -+ String DARWIN[] = new String[] {"\u4E2D\u592E\u6807\u51C6\u65F6\u95F4 (\u5317\u9886\u5730)", "ACST", -+ "\u4E2D\u592E\u590F\u4EE4\u65F6 (\u5317\u9886\u5730)", "ACDT", -+ "\u4E2D\u90E8\u65F6\u95F4 (\u5317\u90E8\u5730\u533A)", "ACT"}; - String DUBLIN[] = new String[] {"\u683c\u6797\u5a01\u6cbb\u65f6\u95f4", "GMT", - "\u7231\u5c14\u5170\u590f\u4ee4\u65f6", "IST", - "\u7231\u5C14\u5170\u65F6\u95F4", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"\u4e1c\u90e8\u6807\u51c6\u65f6\u95f4", "EST", - "\u4e1c\u90e8\u590f\u4ee4\u65f6", "EDT", - "\u4E1C\u90E8\u65F6\u95F4", "ET"}; -- String EST_NSW[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u65B0\u5357\u5A01\u5C14\u65AF)", "EST", -- "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u65B0\u5357\u5A01\u5C14\u65AF)", "EST", -- "\u4E1C\u90E8\u65F6\u95F4 (\u65B0\u5357\u5A01\u5C14\u65AF)", "ET"}; -+ String EST_NSW[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u65B0\u5357\u5A01\u5C14\u65AF)", "AEST", -+ "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u65B0\u5357\u5A01\u5C14\u65AF)", "AEDT", -+ "\u4E1C\u90E8\u65F6\u95F4 (\u65B0\u5357\u5A01\u5C14\u65AF)", "AET"}; - String FET[] = new String[] {"\u8FDC\u4E1C\u6B27\u65F6\u95F4", "FET", - "\u8FDC\u4E1C\u6B27\u590F\u4EE4\u65F6", "FEST", - "\u8FDC\u4E1C\u6B27\u65F6\u95F4", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"\u5370\u5ea6\u652f\u90a3\u65f6\u95f4", "ICT", - "\u5370\u5ea6\u652f\u90a3\u590f\u4ee4\u65f6", "ICST", - "\u5370\u5EA6\u652F\u90A3\u65F6\u95F4", "ICT"}; -+ String IRKT[] = new String[] {"\u4f0a\u5c14\u5e93\u6b21\u514b\u65f6\u95f4", "IRKT", -+ "\u4f0a\u5c14\u5e93\u6b21\u514b\u590f\u4ee4\u65f6", "IRKST", -+ "\u4F0A\u5C14\u5E93\u6B21\u514B\u65F6\u95F4", "IRKT"}; - String IRT[] = new String[] {"\u4f0a\u6717\u6807\u51c6\u65f6\u95f4", "IRST", - "\u4f0a\u6717\u590f\u4ee4\u65f6", "IRDT", - "\u4F0A\u6717\u65F6\u95F4", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"\u65e5\u672c\u6807\u51c6\u65f6\u95f4", "JST", - "\u65e5\u672c\u590f\u4ee4\u65f6", "JDT", - "\u65E5\u672C\u65F6\u95F4", "JT"}; -+ String KRAT[] = new String[] {"\u514b\u62c9\u65af\u8bfa\u4e9a\u5c14\u65af\u514b\u65f6\u95f4", "KRAT", -+ "\u514b\u62c9\u65af\u8bfa\u4e9a\u5c14\u65af\u514b\u590f\u4ee4\u65f6", "KRAST", -+ "\u514B\u62C9\u65AF\u8BFA\u4E9A\u5C14\u65AF\u514B\u65F6\u95F4", "KRAT"}; - String KST[] = new String[] {"\u97e9\u56fd\u6807\u51c6\u65f6\u95f4", "KST", - "\u97e9\u56fd\u590f\u4ee4\u65f6", "KDT", - "\u97E9\u56FD\u65F6\u95F4", "KT"}; - String LORD_HOWE[] = new String[] {"\u8c6a\u516c\u6807\u51c6\u65f6\u95f4", "LHST", -- "\u8c6a\u516c\u590f\u4ee4\u65f6", "LHST", -+ "\u8c6a\u516c\u590f\u4ee4\u65f6", "LHDT", - "\u8C6A\u516C\u65F6\u95F4", "LHT"}; - String MHT[] = new String[] {"\u9a6c\u7ecd\u5c14\u7fa4\u5c9b\u65f6\u95f4", "MHT", - "\u9a6c\u7ecd\u5c14\u7fa4\u5c9b\u590f\u4ee4\u65f6", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"\u65b0\u52a0\u5761\u65f6\u95f4", "SGT", - "\u65b0\u52a0\u5761\u590f\u4ee4\u65f6", "SGST", - "\u65B0\u52A0\u5761\u65F6\u95F4", "SGT"}; -- String SLST[] = new String[] {"\u683c\u6797\u5a01\u6cbb\u65f6\u95f4", "GMT", -- "\u585e\u62c9\u5229\u6602\u590f\u4ee4\u65f6", "SLST", -- "\u585E\u62C9\u91CC\u6602\u65F6\u95F4", "SLT"}; -- String TASMANIA[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u5854\u65AF\u9A6C\u5C3C\u4E9A)", "EST", -- "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u5854\u65AF\u9A6C\u5C3C\u4E9A)", "EST", -- "\u4E1C\u90E8\u65F6\u95F4 (\u5854\u65AF\u9A6C\u5C3C\u4E9A)", "ET"}; -+ String TASMANIA[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u5854\u65AF\u9A6C\u5C3C\u4E9A)", "AEST", -+ "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u5854\u65AF\u9A6C\u5C3C\u4E9A)", "AEDT", -+ "\u4E1C\u90E8\u65F6\u95F4 (\u5854\u65AF\u9A6C\u5C3C\u4E9A)", "AET"}; - String TMT[] = new String[] {"\u571f\u5e93\u66fc\u65f6\u95f4", "TMT", - "\u571f\u5e93\u66fc\u590f\u4ee4\u65f6", "TMST", - "\u571F\u5E93\u66FC\u65F6\u95F4", "TMT"}; - String ULAT[]= new String[] {"\u5e93\u4f26\u65f6\u95f4", "ULAT", - "\u5e93\u4f26\u590f\u4ee4\u65f6", "ULAST", - "\u5E93\u4F26\u65F6\u95F4", "ULAT"}; -- String WART[] = new String[] {"\u897f\u963f\u6839\u5ef7\u65f6\u95f4", "WART", -- "\u897f\u963f\u6839\u5ef7\u590f\u4ee4\u65f6", "WARST"}; - String WAT[] = new String[] {"\u897f\u975e\u65f6\u95f4", "WAT", - "\u897f\u975e\u590f\u4ee4\u65f6", "WAST", - "\u897F\u975E\u65F6\u95F4", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"\u897f\u5370\u5ea6\u5c3c\u897f\u4e9a\u65f6\u95f4", "WIB", - "\u897f\u5370\u5ea6\u5c3c\u897f\u4e9a\u590f\u4ee4\u65f6", "WIST", - "\u897F\u5370\u5EA6\u5C3C\u897F\u4E9A\u65F6\u95F4", "WIB"}; -- String WST_AUS[] = new String[] {"\u897F\u90E8\u6807\u51C6\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "WST", -- "\u897F\u90E8\u590F\u4EE4\u65F6 (\u6FB3\u5927\u5229\u4E9A)", "WST", -- "\u897F\u90E8\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "WT"}; -+ String WST_AUS[] = new String[] {"\u897F\u90E8\u6807\u51C6\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "AWST", -+ "\u897F\u90E8\u590F\u4EE4\u65F6 (\u6FB3\u5927\u5229\u4E9A)", "AWDT", -+ "\u897F\u90E8\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "AWT"}; - String SAMOA[] = new String[] {"\u8428\u6469\u4e9a\u7fa4\u5c9b\u6807\u51c6\u65f6\u95f4", "SST", - "\u8428\u6469\u4e9a\u7fa4\u5c9b\u590f\u4ee4\u65f6", "SDT", - "\u8428\u6469\u4E9A\u65F6\u95F4", "ST"}; -- String WST_SAMOA[] = new String[] {"\u897f\u8428\u6469\u4e9a\u65f6\u95f4", "WST", -+ String WST_SAMOA[] = new String[] {"\u897f\u8428\u6469\u4e9a\u65f6\u95f4", "WSST", - "\u897f\u8428\u6469\u4e9a\u590f\u4ee4\u65f6", "WSDT", - "\u897F\u8428\u6469\u4E9A\u65F6\u95F4", "WST"}; - String ChST[] = new String[] {"Chamorro \u6807\u51c6\u65f6\u95f4", "ChST", - "Chamorro \u590f\u4ee4\u65f6", "ChDT", - "\u67E5\u6469\u6D1B\u65F6\u95F4", "ChT"}; -- String VICTORIA[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u7EF4\u591A\u5229\u4E9A)", "EST", -- "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u7EF4\u591A\u5229\u4E9A)", "EST", -- "\u4E1C\u90E8\u65F6\u95F4 (\u7EF4\u591A\u5229\u4E9A)", "ET"}; -+ String VICTORIA[] = new String[] {"\u4E1C\u90E8\u6807\u51C6\u65F6\u95F4 (\u7EF4\u591A\u5229\u4E9A)", "AEST", -+ "\u4E1C\u90E8\u590F\u4EE4\u65F6 (\u7EF4\u591A\u5229\u4E9A)", "AEDT", -+ "\u4E1C\u90E8\u65F6\u95F4 (\u7EF4\u591A\u5229\u4E9A)", "AET"}; - String UTC[] = new String[] {"\u534f\u8c03\u4e16\u754c\u65f6\u95f4", "UTC", - "\u534f\u8c03\u4e16\u754c\u65f6\u95f4", "UTC", - "\u534F\u8C03\u4E16\u754C\u65F6\u95F4", "UTC"}; - String UZT[] = new String[] {"\u4e4c\u5179\u522b\u514b\u65af\u5766\u65f6\u95f4", "UZT", - "\u4e4c\u5179\u522b\u514b\u65af\u5766\u590f\u4ee4\u65f6", "UZST", - "\u4E4C\u5179\u522B\u514B\u65AF\u5766\u65F6\u95F4", "UZT"}; -+ String XJT[] = new String[] {"\u4e2d\u56fd\u6807\u51c6\u65f6\u95f4", "XJT", -+ "\u4e2d\u56fd\u590f\u4ee4\u65f6", "XJDT", -+ "\u4E2D\u56FD\u65F6\u95F4", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "\u897f\u683c\u6797\u5170\u5c9b\u590f\u4ee4\u65f6", "WGST", - "\u897F\u683C\u6797\u5170\u5C9B\u65F6\u95F4", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"\u6885\u7279\u62C9\u5361\u7279\u62C9\u6807\u51C6\u65F6\u95F4", "MeST", -- "\u6885\u7279\u62C9\u5361\u7279\u62C9\u590F\u4EE4\u65F6", "MeDT", -- "\u6885\u7279\u62C9\u5361\u7279\u62C9\u65F6\u95F4", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"\u76ae\u57c3\u5c14\u5c9b\u53ca\u5bc6\u514b\u9686\u5c9b\u6807\u51c6\u65f6\u95f4", "PMST", - "\u76ae\u57c3\u5c14\u5c9b\u53ca\u5bc6\u514b\u9686\u5c9b\u590f\u4ee4\u65f6", "PMDT", -@@ -607,6 +609,7 @@ - "\u6587\u83b1\u590f\u4ee4\u65f6", "BNST", - "\u6587\u83B1\u65F6\u95F4", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"Choibalsan \u65f6\u95f4", "CHOT", - "Choibalsan \u590f\u4ee4\u65f6", "CHOST", - "Choibalsan \u65F6\u95F4", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"\u79d1\u5e03\u591a\u65f6\u95f4", "HOVT", - "\u79d1\u5e03\u591a\u590f\u4ee4\u65f6", "HOVST", - "\u79D1\u5E03\u591A\u65F6\u95F4", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"\u4f0a\u5c14\u5e93\u6b21\u514b\u65f6\u95f4", "IRKT", -- "\u4f0a\u5c14\u5e93\u6b21\u514b\u590f\u4ee4\u65f6", "IRKST", -- "\u4F0A\u5C14\u5E93\u6B21\u514B\u65F6\u95F4", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"\u4e1c\u5370\u5ea6\u5c3c\u897f\u4e9a\u65f6\u95f4", "WIT", -@@ -646,16 +647,14 @@ - "\u5f7c\u5f97\u7f57\u5df4\u752b\u6d1b\u592b\u65af\u514b\u590f\u4ee4\u65f6", "PETST", - "\u5F7C\u5F97\u7F57\u5DF4\u752B\u6D1B\u592B\u65AF\u514B\u65F6\u95F4", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"\u6C49\u5FB7\u52A0\u65F6\u95F4", "YAKT", - "\u6C49\u5FB7\u52A0\u590F\u4EE4\u65F6", "YAKST", - "\u6C49\u5FB7\u52A0\u65F6\u95F4", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"\u514b\u62c9\u65af\u8bfa\u4e9a\u5c14\u65af\u514b\u65f6\u95f4", "KRAT", -- "\u514b\u62c9\u65af\u8bfa\u4e9a\u5c14\u65af\u514b\u590f\u4ee4\u65f6", "KRAST", -- "\u514B\u62C9\u65AF\u8BFA\u4E9A\u5C14\u65AF\u514B\u65F6\u95F4", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "\u83F2\u5F8B\u5BBE\u65F6\u95F4", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"Oral \u65f6\u95f4", "ORAT", - "Oral \u590f\u4ee4\u65f6", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", CTT}, - {"Asia/Tel_Aviv", ISRAEL}, - {"Asia/Tashkent", UZT}, -@@ -708,7 +710,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"\u4E4C\u65AF\u5B63\u6D85\u62C9\u65F6\u95F4", "VLAT", - "\u4E4C\u65AF\u5B63\u6D85\u62C9\u590F\u4EE4\u65F6", "VLAST", - "\u4E4C\u65AF\u5B63\u6D85\u62C9\u65F6\u95F4", "VLAT"}}, -@@ -750,9 +752,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"\u4E2D\u897F\u90E8\u6807\u51C6\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "CWST", -- "\u4E2D\u897F\u90E8\u590F\u4EE4\u65F6 (\u6FB3\u5927\u5229\u4E9A)", "CWST", -- "\u4E2D\u897F\u90E8\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"\u4E2D\u897F\u90E8\u6807\u51C6\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "ACWST", -+ "\u4E2D\u897F\u90E8\u590F\u4EE4\u65F6 (\u6FB3\u5927\u5229\u4E9A)", "ACWDT", -+ "\u4E2D\u897F\u90E8\u65F6\u95F4 (\u6FB3\u5927\u5229\u4E9A)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -818,7 +820,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -827,7 +829,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -853,9 +855,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"\u4f0f\u5c14\u52a0\u683c\u52d2\u65f6\u95f4", "VOLT", -- "\u4f0f\u5c14\u52a0\u683c\u52d2\u590f\u4ee4\u65f6", "VOLST", -- "\u4F0F\u5C14\u52A0\u683C\u52D2\u65F6\u95F4", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -917,6 +917,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/classes/sun/util/resources/zh/TimeZoneNames_zh_TW.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/classes/sun/util/resources/zh/TimeZoneNames_zh_TW.java Mon Dec 08 12:29:42 2014 -0800 -@@ -48,9 +48,9 @@ - String ACT[] = new String[] {"Acre \u6642\u9593", "ACT", - "Acre \u590f\u4ee4\u6642\u9593", "ACST", - "Acre \u6642\u9593", "ACT"}; -- String ADELAIDE[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u90E8)", "CST", -- "\u4E2D\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u5340)", "CST", -- "\u4E2D\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u90E8)", "CT"}; -+ String ADELAIDE[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u90E8)", "ACST", -+ "\u4E2D\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u5340)", "ACDT", -+ "\u4E2D\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u90E8)", "ACT"}; - String AGT[] = new String[] {"\u963f\u6839\u5ef7\u6642\u9593", "ART", - "\u963f\u6839\u5ef7\u590f\u4ee4\u6642\u9593", "ARST", - "\u963F\u6839\u5EF7\u6642\u9593", "ART"}; -@@ -72,12 +72,12 @@ - String BDT[] = new String[] {"\u5b5f\u52a0\u62c9\u6642\u9593", "BDT", - "\u5b5f\u52a0\u62c9\u590f\u4ee4\u6642\u9593", "BDST", - "\u5B5F\u52A0\u62C9\u6642\u9593", "BDT"}; -- String BRISBANE[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u6606\u58EB\u862D)", "EST", -- "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u6606\u58EB\u862D)", "EST", -- "\u6771\u90E8\u6642\u9593 (\u6606\u58EB\u862D)", "ET"}; -- String BROKEN_HILL[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u5340/\u65B0\u5357\u5A01\u723E\u65AF)", "CST", -- "\u4E2D\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u5340/\u65B0\u5357\u5A01\u723E\u65AF)", "CST", -- "\u4E2D\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u90E8/\u65B0\u5357\u5A01\u723E\u65AF)", "CT"}; -+ String BRISBANE[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u6606\u58EB\u862D)", "AEST", -+ "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u6606\u58EB\u862D)", "AEDT", -+ "\u6771\u90E8\u6642\u9593 (\u6606\u58EB\u862D)", "AET"}; -+ String BROKEN_HILL[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u5340/\u65B0\u5357\u5A01\u723E\u65AF)", "ACST", -+ "\u4E2D\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u5340/\u65B0\u5357\u5A01\u723E\u65AF)", "ACDT", -+ "\u4E2D\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E\u5357\u90E8/\u65B0\u5357\u5A01\u723E\u65AF)", "ACT"}; - String BRT[] = new String[] {"\u5df4\u897f\u5229\u4e9e\u6642\u9593", "BRT", - "\u5df4\u897f\u5229\u4e9e\u590f\u4ee4\u6642\u9593", "BRST", - "\u5DF4\u897F\u5229\u4E9E\u6642\u9593", "BRT"}; -@@ -111,9 +111,9 @@ - String CUBA[] = new String[] {"\u53e4\u5df4\u6a19\u6e96\u6642\u9593", "CST", - "\u53e4\u5df4\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "CDT", - "\u53E4\u5DF4\u6642\u9593", "CT"}; -- String DARWIN[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642\u9593 (\u5317\u90E8\u5404\u5730\u5340)", "CST", -- "\u4E2D\u90E8\u590F\u4EE4\u6642\u9593 (\u5317\u90E8\u5404\u5730\u5340)", "CST", -- "\u6FB3\u5927\u5229\u4E9E\u4E2D\u90E8\u6642\u9593 (\u5317\u65B9\u5340\u57DF)", "CT"}; -+ String DARWIN[] = new String[] {"\u4E2D\u90E8\u6A19\u6E96\u6642\u9593 (\u5317\u90E8\u5404\u5730\u5340)", "ACST", -+ "\u4E2D\u90E8\u590F\u4EE4\u6642\u9593 (\u5317\u90E8\u5404\u5730\u5340)", "ACDT", -+ "\u6FB3\u5927\u5229\u4E9E\u4E2D\u90E8\u6642\u9593 (\u5317\u65B9\u5340\u57DF)", "ACT"}; - String DUBLIN[] = new String[] {"\u683c\u6797\u5a01\u6cbb\u5e73\u5747\u6642\u9593", "GMT", - "\u611b\u723e\u862d\u590f\u4ee4\u6642\u9593", "IST", - "\u611B\u723E\u862D\u6587\u6642\u9593", "IT"}; -@@ -132,9 +132,9 @@ - String EST[] = new String[] {"\u6771\u65b9\u6a19\u6e96\u6642\u9593", "EST", - "\u6771\u65b9\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "EDT", - "\u7F8E\u570B\u6771\u90E8\u6642\u9593", "ET"}; -- String EST_NSW[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u65B0\u5357\u5A01\u723E\u65AF)", "EST", -- "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u65B0\u5357\u5A01\u723E\u65AF)", "EST", -- "\u6771\u90E8\u6642\u9593 (\u65B0\u5357\u5A01\u723E\u65AF)", "ET"}; -+ String EST_NSW[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u65B0\u5357\u5A01\u723E\u65AF)", "AEST", -+ "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u65B0\u5357\u5A01\u723E\u65AF)", "AEDT", -+ "\u6771\u90E8\u6642\u9593 (\u65B0\u5357\u5A01\u723E\u65AF)", "AET"}; - String FET[] = new String[] {"\u6771\u6B50\u5167\u9678\u6642\u9593", "FET", - "\u6771\u6B50\u5167\u9678\u590F\u4EE4\u6642\u9593", "FEST", - "\u6771\u6B50\u5167\u9678\u6642\u9593", "FET"}; -@@ -165,6 +165,9 @@ - String ICT[] = new String[] {"\u5370\u5ea6\u652f\u90a3\u6642\u9593", "ICT", - "\u5370\u5ea6\u652f\u90a3\u590f\u4ee4\u6642\u9593", "ICST", - "\u5370\u5EA6\u652F\u90A3\u6642\u9593", "ICT"}; -+ String IRKT[] = new String[] {"Irkutsk \u6642\u9593", "IRKT", -+ "Irkutsk \u590f\u4ee4\u6642\u9593", "IRKST", -+ "\u4F0A\u723E\u5EAB\u6B21\u514B\u6642\u9593", "IRKT"}; - String IRT[] = new String[] {"\u4f0a\u6717\u6a19\u6e96\u6642\u9593", "IRST", - "\u4f0a\u6717\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "IRDT", - "\u4F0A\u6717\u6642\u9593", "IRT"}; -@@ -177,11 +180,14 @@ - String JST[] = new String[] {"\u65e5\u672c\u6a19\u6e96\u6642\u9593", "JST", - "\u65e5\u672c\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "JDT", - "\u65E5\u672C\u6642\u9593", "JT"}; -+ String KRAT[] = new String[] {"\u514b\u62c9\u65af\u8afe\u4e9e\u723e\u65af\u514b\u6642\u9593", "KRAT", -+ "\u514b\u62c9\u65af\u8afe\u4e9e\u723e\u65af\u514b\u590f\u4ee4\u6642\u9593", "KRAST", -+ "\u514B\u62C9\u65AF\u8AFE\u4E9E\u723E\u65AF\u514B\u6642\u9593", "KRAT"}; - String KST[] = new String[] {"\u97d3\u570b\u6a19\u6e96\u6642\u9593", "KST", - "\u97d3\u570b\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "KDT", - "\u97D3\u570B\u6642\u9593", "KT"}; - String LORD_HOWE[] = new String[] {"\u8c6a\u52f3\u7235\u5cf6\u6a19\u6e96\u6642\u9593", "LHST", -- "\u8c6a\u52f3\u7235\u5cf6\u590f\u4ee4\u6642\u9593", "LHST", -+ "\u8c6a\u52f3\u7235\u5cf6\u590f\u4ee4\u6642\u9593", "LHDT", - "\u8C6A\u52F3\u7235\u5CF6\u6642\u9593", "LHT"}; - String MHT[] = new String[] {"\u99ac\u7d39\u723e\u7fa4\u5cf6\u6642\u9593", "MHT", - "\u99ac\u7d39\u723e\u7fa4\u5cf6\u590f\u4ee4\u6642\u9593", "MHST", -@@ -231,20 +237,15 @@ - String SGT[] = new String[] {"\u65b0\u52a0\u5761\u6642\u9593", "SGT", - "\u65b0\u52a0\u5761\u590f\u4ee4\u6642\u9593", "SGST", - "\u65B0\u52A0\u5761\u6642\u9593", "SGT"}; -- String SLST[] = new String[] {"\u683c\u6797\u5a01\u6cbb\u5e73\u5747\u6642\u9593", "GMT", -- "\u7345\u5b50\u5c71\u590f\u4ee4\u6642\u9593", "SLST", -- "\u7345\u5B50\u5C71\u6642\u9593", "SLT"}; -- String TASMANIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u5854\u65AF\u6885\u5C3C\u4E9E\u5CF6)", "EST", -- "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u5854\u65AF\u6885\u5C3C\u4E9E\u5CF6)", "EST", -- "\u6FB3\u5927\u5229\u4E9E\u6771\u90E8\u6642\u9593 (\u5854\u65AF\u99AC\u5C3C\u4E9E\u5CF6)", "ET"}; -+ String TASMANIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u5854\u65AF\u6885\u5C3C\u4E9E\u5CF6)", "AEST", -+ "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u5854\u65AF\u6885\u5C3C\u4E9E\u5CF6)", "AEDT", -+ "\u6FB3\u5927\u5229\u4E9E\u6771\u90E8\u6642\u9593 (\u5854\u65AF\u99AC\u5C3C\u4E9E\u5CF6)", "AET"}; - String TMT[] = new String[] {"\u571f\u5eab\u66fc\u6642\u9593", "TMT", - "\u571f\u5eab\u66fc\u590f\u4ee4\u6642\u9593", "TMST", - "\u571F\u5EAB\u66FC\u6642\u9593", "TMT"}; - String ULAT[]= new String[] {"\u5eab\u502b\u6642\u9593", "ULAT", - "\u5eab\u502b\u590f\u4ee4\u6642\u9593", "ULAST", - "\u5EAB\u502B\u6642\u9593", "ULAT"}; -- String WART[] = new String[] {"\u897f\u963f\u6839\u5ef7\u6642\u9593", "WART", -- "\u897f\u963f\u6839\u5ef7\u590f\u4ee4\u6642\u9593", "WARST"}; - String WAT[] = new String[] {"\u897f\u975e\u6642\u9593", "WAT", - "\u897f\u975e\u590f\u4ee4\u6642\u9593", "WAST", - "\u897F\u975E\u6642\u9593", "WAT"}; -@@ -254,27 +255,30 @@ - String WIT[] = new String[] {"\u897f\u5370\u5c3c\u6642\u9593", "WIB", - "\u897f\u5370\u5c3c\u590f\u4ee4\u6642\u9593", "WIST", - "\u897F\u5370\u5C3C\u6642\u9593", "WIB"}; -- String WST_AUS[] = new String[] {"\u897F\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "WST", -- "\u897F\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "WST", -- "\u897F\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "WT"}; -+ String WST_AUS[] = new String[] {"\u897F\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "AWST", -+ "\u897F\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "AWDT", -+ "\u897F\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "AWT"}; - String SAMOA[] = new String[] {"\u85a9\u6469\u4e9e\u6a19\u6e96\u6642\u9593", "SST", - "\u85a9\u6469\u4e9e\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "SDT", - "\u85A9\u6469\u4E9E\u6642\u9593", "ST"}; -- String WST_SAMOA[] = new String[] {"\u897f\u85a9\u6469\u4e9e\u6642\u9593", "WST", -+ String WST_SAMOA[] = new String[] {"\u897f\u85a9\u6469\u4e9e\u6642\u9593", "WSST", - "\u897f\u85a9\u6469\u4e9e\u590f\u4ee4\u6642\u9593", "WSDT", - "\u897F\u85A9\u6469\u4E9E\u6642\u9593", "WST"}; - String ChST[] = new String[] {"\u67e5\u83ab\u6d1b\u6a19\u6e96\u6642\u9593", "ChST", - "\u67e5\u83ab\u6d1b\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "ChDT", - "\u67E5\u83AB\u7F85\u6642\u9593", "ChT"}; -- String VICTORIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u7DAD\u591A\u5229\u4E9E\u90A6)", "EST", -- "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u7DAD\u591A\u5229\u4E9E\u90A6)", "EST", -- "\u6771\u90E8\u6642\u9593 (\u7DAD\u591A\u5229\u4E9E)", "ET"}; -+ String VICTORIA[] = new String[] {"\u6771\u90E8\u6A19\u6E96\u6642\u9593 (\u7DAD\u591A\u5229\u4E9E\u90A6)", "AEST", -+ "\u6771\u90E8\u590F\u4EE4\u6642\u9593 (\u7DAD\u591A\u5229\u4E9E\u90A6)", "AEDT", -+ "\u6771\u90E8\u6642\u9593 (\u7DAD\u591A\u5229\u4E9E)", "AET"}; - String UTC[] = new String[] {"\u5354\u8abf\u4e16\u754c\u6642\u9593", "UTC", - "\u5354\u8abf\u4e16\u754c\u6642\u9593", "UTC", - "\u5354\u8ABF\u4E16\u754C\u6642\u9593", "UTC"}; - String UZT[] = new String[] {"\u70cf\u8332\u5225\u514b\u65af\u5766\u6642\u9593", "UZT", - "\u70cf\u8332\u5225\u514b\u65af\u5766\u590f\u4ee4\u6642\u9593", "UZST", - "\u70CF\u8332\u5225\u514B\u65AF\u5766\u6642\u9593", "UZT"}; -+ String XJT[] = new String[] {"\u4e2d\u570b\u6a19\u6e96\u6642\u9593", "XJT", -+ "\u4e2d\u570b\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "XJDT", -+ "\u4E2D\u570B\u6642\u9593", "XJT"}; - - return new Object[][] { - {"America/Los_Angeles", PST}, -@@ -336,7 +340,7 @@ - {"Africa/Djibouti", EAT}, - {"Africa/Douala", WAT}, - {"Africa/El_Aaiun", WET}, -- {"Africa/Freetown", SLST}, -+ {"Africa/Freetown", GMT}, - {"Africa/Gaborone", CAT}, - {"Africa/Harare", CAT}, - {"Africa/Johannesburg", SAST}, -@@ -437,7 +441,7 @@ - "\u897f\u683c\u6797\u862d\u5cf6\u590f\u4ee4\u6642\u9593", "WGST", - "\u897F\u683C\u9675\u862D\u6642\u9593", "WGT"}}, - {"America/Goose_Bay", AST}, -- {"America/Grand_Turk", EST}, -+ {"America/Grand_Turk", AST}, - {"America/Grenada", AST}, - {"America/Guadeloupe", AST}, - {"America/Guatemala", CST}, -@@ -484,9 +488,7 @@ - {"America/Mendoza", AGT}, - {"America/Menominee", CST}, - {"America/Merida", CST}, -- {"America/Metlakatla", new String[] {"\u6885\u7279\u62C9\u5361\u7279\u62C9\u6A19\u6E96\u6642\u9593", "MeST", -- "\u6885\u7279\u62C9\u5361\u7279\u62C9\u65E5\u5149\u7BC0\u7D04\u6642\u9593", "MeDT", -- "\u6885\u7279\u62C9\u5361\u7279\u62C9\u6642\u9593", "MeT"}}, -+ {"America/Metlakatla", PST}, - {"America/Mexico_City", CST}, - {"America/Miquelon", new String[] {"\u76ae\u57c3\u723e\u5cf6\u53ca\u5bc6\u514b\u9686\u5cf6\u6a19\u6e96\u6642\u9593", "PMST", - "\u76ae\u57c3\u723e\u5cf6\u53ca\u5bc6\u514b\u9686\u5cf6\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "PMDT", -@@ -607,6 +609,7 @@ - "\u6c76\u840a\u590f\u4ee4\u6642\u9593", "BNST", - "\u6C76\u840A\u6642\u9593", "BNT"}}, - {"Asia/Calcutta", IST}, -+ {"Asia/Chita", IRKT}, - {"Asia/Choibalsan", new String[] {"\u5de7\u5df4\u5c71 (Choibalsan) \u6642\u9593", "CHOT", - "\u5de7\u5df4\u5c71 (Choibalsan) \u590f\u4ee4\u6642\u9593", "CHOST", - "\u5DE7\u5DF4\u5C71 (Choibalsan) \u6642\u9593", "CHOT"}}, -@@ -631,9 +634,7 @@ - {"Asia/Hovd", new String[] {"\u4faf\u5fb7 (Hovd) \u6642\u9593", "HOVT", - "\u4faf\u5fb7 (Hovd) \u590f\u4ee4\u6642\u9593", "HOVST", - "\u4FAF\u5FB7 (Hovd) \u6642\u9593", "HOVT"}}, -- {"Asia/Irkutsk", new String[] {"Irkutsk \u6642\u9593", "IRKT", -- "Irkutsk \u590f\u4ee4\u6642\u9593", "IRKST", -- "\u4F0A\u723E\u5EAB\u6B21\u514B\u6642\u9593", "IRKT"}}, -+ {"Asia/Irkutsk", IRKT}, - {"Asia/Istanbul", EET}, - {"Asia/Jakarta", WIT}, - {"Asia/Jayapura", new String[] {"\u6771\u5370\u5ea6\u5c3c\u897f\u4e9e\u6642\u9593", "WIT", -@@ -646,16 +647,14 @@ - "Petropavlovsk-Kamchatski \u590f\u4ee4\u6642\u9593", "PETST", - "Petropavlovsk-Kamchatski \u6642\u9593", "PETT"}}, - {"Asia/Karachi", PKT}, -- {"Asia/Kashgar", CTT}, -+ {"Asia/Kashgar", XJT}, - {"Asia/Kathmandu", NPT}, - {"Asia/Katmandu", NPT}, - {"Asia/Khandyga", new String[] {"\u6F22\u5730\u52A0 (Khandyga) \u6642\u9593", "YAKT", - "\u6F22\u5730\u52A0 (Khandyga) \u590F\u4EE4\u6642\u9593", "YAKST", - "\u6F22\u5730\u52A0 (Khandyga) \u6642\u9593", "YAKT"}}, - {"Asia/Kolkata", IST}, -- {"Asia/Krasnoyarsk", new String[] {"\u514b\u62c9\u65af\u8afe\u4e9e\u723e\u65af\u514b\u6642\u9593", "KRAT", -- "\u514b\u62c9\u65af\u8afe\u4e9e\u723e\u65af\u514b\u590f\u4ee4\u6642\u9593", "KRAST", -- "\u514B\u62C9\u65AF\u8AFE\u4E9E\u723E\u65AF\u514B\u6642\u9593", "KRAT"}}, -+ {"Asia/Krasnoyarsk", KRAT}, - {"Asia/Kuala_Lumpur", MYT}, - {"Asia/Kuching", MYT}, - {"Asia/Kuwait", ARAST}, -@@ -670,7 +669,7 @@ - "\u83F2\u5F8B\u8CD3\u6642\u9593", "PHT"}}, - {"Asia/Muscat", GST}, - {"Asia/Nicosia", EET}, -- {"Asia/Novokuznetsk", NOVT}, -+ {"Asia/Novokuznetsk", KRAT}, - {"Asia/Novosibirsk", NOVT}, - {"Asia/Oral", new String[] {"\u6b50\u4f5b\u6642\u9593", "ORAT", - "\u6b50\u4f5b\u590f\u4ee4\u6642\u9593", "ORAST", -@@ -696,6 +695,9 @@ - {"Asia/Samarkand", UZT}, - {"Asia/Seoul", KST}, - {"Asia/Singapore", SGT}, -+ {"Asia/Srednekolymsk", new String[] {"Srednekolymsk Time", "SRET", -+ "Srednekolymsk Daylight Time", "SREDT", -+ "Srednekolymsk Time", "SRET"}}, - {"Asia/Taipei", new String[] {"\u53f0\u7063\u6a19\u6e96\u6642\u9593", "TST", - "\u53f0\u7063\u590f\u4ee4\u6642\u9593", "TDT", - "\u53f0\u7063\u6642\u9593", "TT"}}, -@@ -710,7 +712,7 @@ - {"Asia/Ujung_Pandang", CIT}, - {"Asia/Ulaanbaatar", ULAT}, - {"Asia/Ulan_Bator", ULAT}, -- {"Asia/Urumqi", CTT}, -+ {"Asia/Urumqi", XJT}, - {"Asia/Ust-Nera", new String[] {"\u70CF\u65AF\u5167\u62C9 (Ust-Nera) \u6642\u9593", "VLAT", - "\u70CF\u65AF\u5167\u62C9 (Ust-Nera) \u590F\u4EE4\u6642\u9593", "VLAST", - "\u70CF\u65AF\u5167\u62C9 (Ust-Nera) \u6642\u9593", "VLAT"}}, -@@ -752,9 +754,9 @@ - {"Australia/Canberra", EST_NSW}, - {"Australia/Currie", EST_NSW}, - {"Australia/Darwin", DARWIN}, -- {"Australia/Eucla", new String[] {"\u4E2D\u897F\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "CWST", -- "\u4E2D\u897F\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "CWST", -- "\u4E2D\u897F\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "CWT"}}, -+ {"Australia/Eucla", new String[] {"\u4E2D\u897F\u90E8\u6A19\u6E96\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "ACWST", -+ "\u4E2D\u897F\u90E8\u590F\u4EE4\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "ACWDT", -+ "\u4E2D\u897F\u90E8\u6642\u9593 (\u6FB3\u5927\u5229\u4E9E)", "ACWT"}}, - {"Australia/Hobart", TASMANIA}, - {"Australia/LHI", LORD_HOWE}, - {"Australia/Lindeman", BRISBANE}, -@@ -820,7 +822,7 @@ - {"Europe/Isle_of_Man", GMTBST}, - {"Europe/Istanbul", EET}, - {"Europe/Jersey", GMTBST}, -- {"Europe/Kaliningrad", FET}, -+ {"Europe/Kaliningrad", EET}, - {"Europe/Kiev", EET}, - {"Europe/Lisbon", WET}, - {"Europe/Ljubljana", CET}, -@@ -829,7 +831,7 @@ - {"Europe/Madrid", CET}, - {"Europe/Malta", CET}, - {"Europe/Mariehamn", EET}, -- {"Europe/Minsk", FET}, -+ {"Europe/Minsk", MSK}, - {"Europe/Monaco", CET}, - {"Europe/Moscow", MSK}, - {"Europe/Nicosia", EET}, -@@ -855,9 +857,7 @@ - {"Europe/Vatican", CET}, - {"Europe/Vienna", CET}, - {"Europe/Vilnius", EET}, -- {"Europe/Volgograd", new String[] {"\u4f0f\u723e\u52a0\u683c\u52d2\u6642\u9593", "VOLT", -- "\u4f0f\u723e\u52a0\u683c\u52d2\u590f\u4ee4\u6642\u9593", "VOLST", -- "\u4F0F\u723E\u52A0\u683C\u52D2\u6642\u9593", "VOLT"}}, -+ {"Europe/Volgograd", MSK}, - {"Europe/Warsaw", CET}, - {"Europe/Zagreb", CET}, - {"Europe/Zaporozhye", EET}, -@@ -919,6 +919,9 @@ - {"PRT", AST}, - {"Pacific/Apia", WST_SAMOA}, - {"Pacific/Auckland", NZST}, -+ {"Pacific/Bougainville", new String[] {"Bougainville Standard Time", "BST", -+ "Bougainville Daylight Time", "BST", -+ "Bougainville Time", "BT"}}, - {"Pacific/Chatham", CHAST}, - {"Pacific/Chuuk", CHUT}, - {"Pacific/Easter", EASTER}, ---- ./jdk/src/share/lib/security/java.security-aix Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/lib/security/java.security-aix Mon Dec 08 12:29:42 2014 -0800 -@@ -210,8 +210,8 @@ - org.jcp.xml.dsig.internal.,\ - jdk.internal.,\ - jdk.nashorn.internal.,\ -- jdk.nashorn.tools. -- -+ jdk.nashorn.tools.,\ -+ com.sun.activation.registries. - - # - # List of comma-separated packages that start with or equal this string -@@ -257,8 +257,8 @@ - org.jcp.xml.dsig.internal.,\ - jdk.internal.,\ - jdk.nashorn.internal.,\ -- jdk.nashorn.tools. -- -+ jdk.nashorn.tools.,\ -+ com.sun.activation.registries. - - # - # Determines whether this properties file can be appended to -@@ -479,8 +479,12 @@ - # - # In some environments, certain algorithms or key lengths may be undesirable - # when using SSL/TLS. This section describes the mechanism for disabling --# algorithms during SSL/TLS security parameters negotiation, including cipher --# suites selection, peer authentication and key exchange mechanisms. -+# algorithms during SSL/TLS security parameters negotiation, including -+# protocol version negotiation, cipher suites selection, peer authentication -+# and key exchange mechanisms. -+# -+# Disabled algorithms will not be negotiated for SSL/TLS connections, even -+# if they are enabled explicitly in an application. - # - # For PKI-based peer authentication and key exchange mechanisms, this list - # of disabled algorithms will also be checked during certification path -@@ -495,4 +499,5 @@ - # It is not guaranteed to be examined and used by other implementations. - # - # Example: --# jdk.tls.disabledAlgorithms=MD5, SHA1, DSA, RSA keySize < 2048 -+# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 -+jdk.tls.disabledAlgorithms=SSLv3 ---- ./jdk/src/share/lib/security/java.security-linux Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/lib/security/java.security-linux Mon Dec 08 12:29:42 2014 -0800 -@@ -479,8 +479,12 @@ - # - # In some environments, certain algorithms or key lengths may be undesirable - # when using SSL/TLS. This section describes the mechanism for disabling --# algorithms during SSL/TLS security parameters negotiation, including cipher --# suites selection, peer authentication and key exchange mechanisms. -+# algorithms during SSL/TLS security parameters negotiation, including -+# protocol version negotiation, cipher suites selection, peer authentication -+# and key exchange mechanisms. -+# -+# Disabled algorithms will not be negotiated for SSL/TLS connections, even -+# if they are enabled explicitly in an application. - # - # For PKI-based peer authentication and key exchange mechanisms, this list - # of disabled algorithms will also be checked during certification path -@@ -495,4 +499,5 @@ - # It is not guaranteed to be examined and used by other implementations. - # - # Example: --# jdk.tls.disabledAlgorithms=MD5, SHA1, DSA, RSA keySize < 2048 -+# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 -+jdk.tls.disabledAlgorithms=SSLv3 ---- ./jdk/src/share/lib/security/java.security-macosx Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/lib/security/java.security-macosx Mon Dec 08 12:29:42 2014 -0800 -@@ -482,8 +482,12 @@ - # - # In some environments, certain algorithms or key lengths may be undesirable - # when using SSL/TLS. This section describes the mechanism for disabling --# algorithms during SSL/TLS security parameters negotiation, including cipher --# suites selection, peer authentication and key exchange mechanisms. -+# algorithms during SSL/TLS security parameters negotiation, including -+# protocol version negotiation, cipher suites selection, peer authentication -+# and key exchange mechanisms. -+# -+# Disabled algorithms will not be negotiated for SSL/TLS connections, even -+# if they are enabled explicitly in an application. - # - # For PKI-based peer authentication and key exchange mechanisms, this list - # of disabled algorithms will also be checked during certification path -@@ -498,4 +502,5 @@ - # It is not guaranteed to be examined and used by other implementations. - # - # Example: --# jdk.tls.disabledAlgorithms=MD5, SHA1, DSA, RSA keySize < 2048 -+# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 -+jdk.tls.disabledAlgorithms=SSLv3 ---- ./jdk/src/share/lib/security/java.security-solaris Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/lib/security/java.security-solaris Mon Dec 08 12:29:42 2014 -0800 -@@ -481,8 +481,12 @@ - # - # In some environments, certain algorithms or key lengths may be undesirable - # when using SSL/TLS. This section describes the mechanism for disabling --# algorithms during SSL/TLS security parameters negotiation, including cipher --# suites selection, peer authentication and key exchange mechanisms. -+# algorithms during SSL/TLS security parameters negotiation, including -+# protocol version negotiation, cipher suites selection, peer authentication -+# and key exchange mechanisms. -+# -+# Disabled algorithms will not be negotiated for SSL/TLS connections, even -+# if they are enabled explicitly in an application. - # - # For PKI-based peer authentication and key exchange mechanisms, this list - # of disabled algorithms will also be checked during certification path -@@ -497,4 +501,5 @@ - # It is not guaranteed to be examined and used by other implementations. - # - # Example: --# jdk.tls.disabledAlgorithms=MD5, SHA1, DSA, RSA keySize < 2048 -+# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 -+jdk.tls.disabledAlgorithms=SSLv3 ---- ./jdk/src/share/lib/security/java.security-windows Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/lib/security/java.security-windows Mon Dec 08 12:29:42 2014 -0800 -@@ -482,8 +482,12 @@ - # - # In some environments, certain algorithms or key lengths may be undesirable - # when using SSL/TLS. This section describes the mechanism for disabling --# algorithms during SSL/TLS security parameters negotiation, including cipher --# suites selection, peer authentication and key exchange mechanisms. -+# algorithms during SSL/TLS security parameters negotiation, including -+# protocol version negotiation, cipher suites selection, peer authentication -+# and key exchange mechanisms. -+# -+# Disabled algorithms will not be negotiated for SSL/TLS connections, even -+# if they are enabled explicitly in an application. - # - # For PKI-based peer authentication and key exchange mechanisms, this list - # of disabled algorithms will also be checked during certification path -@@ -498,4 +502,5 @@ - # It is not guaranteed to be examined and used by other implementations. - # - # Example: --# jdk.tls.disabledAlgorithms=MD5, SHA1, DSA, RSA keySize < 2048 -+# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 -+jdk.tls.disabledAlgorithms=SSLv3 ---- ./jdk/src/share/native/sun/font/layout/ContextualSubstSubtables.cpp Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/native/sun/font/layout/ContextualSubstSubtables.cpp Mon Dec 08 12:29:42 2014 -0800 -@@ -583,6 +583,8 @@ - LEReferenceTo<ChainSubClassRuleTable> - chainSubClassRuleTable(chainSubClassSetTable, success, chainSubClassRuleTableOffset); - le_uint16 backtrackGlyphCount = SWAPW(chainSubClassRuleTable->backtrackGlyphCount); -+ LEReferenceToArrayOf<le_uint16> backtrackClassArray(base, success, chainSubClassRuleTable->backtrackClassArray, backtrackGlyphCount); -+ if( LE_FAILURE(success) ) { return 0; } - le_uint16 inputGlyphCount = SWAPW(chainSubClassRuleTable->backtrackClassArray[backtrackGlyphCount]) - 1; - LEReferenceToArrayOf<le_uint16> inputClassArray(base, success, &chainSubClassRuleTable->backtrackClassArray[backtrackGlyphCount + 1],inputGlyphCount+2); // +2 for the lookaheadGlyphCount count - le_uint16 lookaheadGlyphCount = SWAPW(inputClassArray.getObject(inputGlyphCount, success)); -@@ -599,8 +601,6 @@ - } - - tempIterator.prev(); -- LEReferenceToArrayOf<le_uint16> backtrackClassArray(base, success, chainSubClassRuleTable->backtrackClassArray, backtrackGlyphCount); -- if( LE_FAILURE(success) ) { return 0; } - if (! matchGlyphClasses(backtrackClassArray, backtrackGlyphCount, - &tempIterator, backtrackClassDefinitionTable, success, TRUE)) { - continue; ---- ./jdk/src/share/native/sun/font/layout/CursiveAttachmentSubtables.cpp Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/native/sun/font/layout/CursiveAttachmentSubtables.cpp Mon Dec 08 12:29:42 2014 -0800 -@@ -45,6 +45,9 @@ - le_int32 coverageIndex = getGlyphCoverage(base, glyphID, success); - le_uint16 eeCount = SWAPW(entryExitCount); - -+ LEReferenceToArrayOf<EntryExitRecord> -+ entryExitRecordsArrayRef(base, success, entryExitRecords, coverageIndex); -+ - if (coverageIndex < 0 || coverageIndex >= eeCount || LE_FAILURE(success)) { - glyphIterator->setCursiveGlyph(); - return 0; ---- ./jdk/src/share/native/sun/font/layout/Features.cpp Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/native/sun/font/layout/Features.cpp Mon Dec 08 12:29:42 2014 -0800 -@@ -40,6 +40,9 @@ - - LEReferenceTo<FeatureTable> FeatureListTable::getFeatureTable(const LETableReference &base, le_uint16 featureIndex, LETag *featureTag, LEErrorCode &success) const - { -+ LEReferenceToArrayOf<FeatureRecord> -+ featureRecordArrayRef(base, success, featureRecordArray, featureIndex); -+ - if (featureIndex >= SWAPW(featureCount) || LE_FAILURE(success)) { - return LEReferenceTo<FeatureTable>(); - } ---- ./jdk/src/share/native/sun/font/layout/LETableReference.h Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/native/sun/font/layout/LETableReference.h Mon Dec 08 12:29:42 2014 -0800 -@@ -470,7 +470,12 @@ - #endif - - const T& getObject(le_uint32 i, LEErrorCode &success) const { -- return *getAlias(i,success); -+ const T *ret = getAlias(i, success); -+ if (LE_FAILURE(success) || ret==NULL) { -+ return *(new T(0)); -+ } else { -+ return *ret; -+ } - } - - /** ---- ./jdk/src/share/native/sun/font/layout/LigatureSubstSubtables.cpp Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/native/sun/font/layout/LigatureSubstSubtables.cpp Mon Dec 08 12:29:42 2014 -0800 -@@ -64,6 +64,9 @@ - LEReferenceTo<LigatureTable> ligTable(ligSetTable, success, ligTableOffset); - if(LE_FAILURE(success)) { return 0; } - le_uint16 compCount = SWAPW(ligTable->compCount) - 1; -+ LEReferenceToArrayOf<TTGlyphID> -+ componentArrayRef(base, success, ligTable->componentArray, compCount); -+ if (LE_FAILURE(success)) { return 0; } - le_int32 startPosition = glyphIterator->getCurrStreamPosition(); - TTGlyphID ligGlyph = SWAPW(ligTable->ligGlyph); - le_uint16 comp; ---- ./jdk/src/share/native/sun/font/layout/MultipleSubstSubtables.cpp Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/share/native/sun/font/layout/MultipleSubstSubtables.cpp Mon Dec 08 12:29:42 2014 -0800 -@@ -61,6 +61,8 @@ - - le_int32 coverageIndex = getGlyphCoverage(base, glyph, success); - le_uint16 seqCount = SWAPW(sequenceCount); -+ LEReferenceToArrayOf<Offset> -+ sequenceTableOffsetArrayRef(base, success, sequenceTableOffsetArray, seqCount); - - if (LE_FAILURE(success)) { - return 0; ---- ./jdk/src/solaris/native/java/net/NetworkInterface.c Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/solaris/native/java/net/NetworkInterface.c Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2000, 2014, 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 -@@ -570,9 +570,14 @@ - jboolean isCopy; - int ret = -1; - int sock; -- const char* name_utf; -+ const char* name_utf = NULL; - -- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy); -+ if (name != NULL) { -+ name_utf = (*env)->GetStringUTFChars(env, name, &isCopy); -+ } else { -+ JNU_ThrowNullPointerException(env, "network interface name is NULL"); -+ return ret; -+ } - if (name_utf == NULL) { - if (!(*env)->ExceptionCheck(env)) - JNU_ThrowOutOfMemoryError(env, NULL); -@@ -600,7 +605,12 @@ - const char* name_utf; - int flags = 0; - -- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy); -+ if (name != NULL) { -+ name_utf = (*env)->GetStringUTFChars(env, name, &isCopy); -+ } else { -+ JNU_ThrowNullPointerException(env, "network interface name is NULL"); -+ return -1; -+ } - if (name_utf == NULL) { - if (!(*env)->ExceptionCheck(env)) - JNU_ThrowOutOfMemoryError(env, NULL); -@@ -1474,7 +1484,12 @@ - struct ifreq if2; - - memset((char *) &if2, 0, sizeof(if2)); -- strcpy(if2.ifr_name, ifname); -+ if (ifname != NULL) { -+ strcpy(if2.ifr_name, ifname); -+ } else { -+ JNU_ThrowNullPointerException(env, "network interface name is NULL"); -+ return -1; -+ } - - if (ioctl(sock, SIOCGIFMTU, (char *)&if2) < 0) { - NET_ThrowByNameWithLastError(env, JNU_JAVANETPKG "SocketException", "IOCTL SIOCGIFMTU failed"); ---- ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, 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 -@@ -1474,10 +1474,12 @@ - static jmethodID ni_ctrID; - static jfieldID ni_indexID; - static jfieldID ni_addrsID; -+ static jfieldID ni_nameID; - - jobjectArray addrArray; - jobject addr; - jobject ni; -+ jobject ni_name; - - struct in_addr in; - struct in_addr *inP = ∈ -@@ -1527,6 +1529,8 @@ - ni_addrsID = (*env)->GetFieldID(env, c, "addrs", - "[Ljava/net/InetAddress;"); - CHECK_NULL_RETURN(ni_addrsID, NULL); -+ ni_nameID = (*env)->GetFieldID(env, c,"name", "Ljava/lang/String;"); -+ CHECK_NULL_RETURN(ni_nameID, NULL); - ni_class = (*env)->NewGlobalRef(env, c); - CHECK_NULL_RETURN(ni_class, NULL); - } -@@ -1548,6 +1552,10 @@ - CHECK_NULL_RETURN(addrArray, NULL); - (*env)->SetObjectArrayElement(env, addrArray, 0, addr); - (*env)->SetObjectField(env, ni, ni_addrsID, addrArray); -+ ni_name = (*env)->NewStringUTF(env, ""); -+ if (ni_name != NULL) { -+ (*env)->SetObjectField(env, ni, ni_nameID, ni_name); -+ } - return ni; - } - -@@ -1564,14 +1572,16 @@ - static jfieldID ni_indexID; - static jfieldID ni_addrsID; - static jclass ia_class; -+ static jfieldID ni_nameID; - static jmethodID ia_anyLocalAddressID; - -- int index; -+ int index = 0; - int len = sizeof(index); - - jobjectArray addrArray; - jobject addr; - jobject ni; -+ jobject ni_name; - - if (JVM_GetSockOpt(fd, IPPROTO_IPV6, IPV6_MULTICAST_IF, - (char*)&index, &len) < 0) { -@@ -1600,6 +1610,8 @@ - "anyLocalAddress", - "()Ljava/net/InetAddress;"); - CHECK_NULL_RETURN(ia_anyLocalAddressID, NULL); -+ ni_nameID = (*env)->GetFieldID(env, c,"name", "Ljava/lang/String;"); -+ CHECK_NULL_RETURN(ni_nameID, NULL); - ni_class = (*env)->NewGlobalRef(env, c); - CHECK_NULL_RETURN(ni_class, NULL); - } -@@ -1660,6 +1672,10 @@ - CHECK_NULL_RETURN(addrArray, NULL); - (*env)->SetObjectArrayElement(env, addrArray, 0, addr); - (*env)->SetObjectField(env, ni, ni_addrsID, addrArray); -+ ni_name = (*env)->NewStringUTF(env, ""); -+ if (ni_name != NULL) { -+ (*env)->SetObjectField(env, ni, ni_nameID, ni_name); -+ } - return ni; - } - #endif ---- ./jdk/src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java Mon Dec 08 12:29:42 2014 -0800 -@@ -36,6 +36,7 @@ - import java.util.*; - import java.util.List; - import java.util.concurrent.*; -+import java.util.stream.Stream; - - import static sun.awt.shell.Win32ShellFolder2.*; - import sun.awt.OSInfo; -@@ -251,7 +252,7 @@ - if (file == null) { - file = getDesktop(); - } -- return file; -+ return checkFile(file); - } else if (key.equals("roots")) { - // Should be "History" and "Desktop" ? - if (roots == null) { -@@ -262,11 +263,11 @@ - roots = (File[])super.get(key); - } - } -- return roots; -+ return checkFiles(roots); - } else if (key.equals("fileChooserComboBoxFolders")) { - Win32ShellFolder2 desktop = getDesktop(); - -- if (desktop != null) { -+ if (desktop != null && checkFile(desktop) != null) { - ArrayList<File> folders = new ArrayList<File>(); - Win32ShellFolder2 drives = getDrives(); - -@@ -277,7 +278,7 @@ - - folders.add(desktop); - // Add all second level folders -- File[] secondLevelFolders = desktop.listFiles(); -+ File[] secondLevelFolders = checkFiles(desktop.listFiles()); - Arrays.sort(secondLevelFolders); - for (File secondLevelFolder : secondLevelFolders) { - Win32ShellFolder2 folder = (Win32ShellFolder2) secondLevelFolder; -@@ -285,7 +286,7 @@ - folders.add(folder); - // Add third level for "My Computer" - if (folder.equals(drives)) { -- File[] thirdLevelFolders = folder.listFiles(); -+ File[] thirdLevelFolders = checkFiles(folder.listFiles()); - if (thirdLevelFolders != null && thirdLevelFolders.length > 0) { - List<File> thirdLevelFoldersList = Arrays.asList(thirdLevelFolders); - -@@ -295,7 +296,7 @@ - } - } - } -- return folders.toArray(new File[folders.size()]); -+ return checkFiles(folders); - } else { - return super.get(key); - } -@@ -332,7 +333,7 @@ - } - } - } -- return folders.toArray(new File[folders.size()]); -+ return checkFiles(folders); - } else if (key.startsWith("fileChooserIcon ")) { - String name = key.substring(key.indexOf(" ") + 1); - -@@ -378,6 +379,41 @@ - return null; - } - -+ private File checkFile(File file) { -+ SecurityManager sm = System.getSecurityManager(); -+ return (sm == null || file == null) ? file : checkFile(file, sm); -+ } -+ -+ private File checkFile(File file, SecurityManager sm) { -+ try { -+ sm.checkRead(file.getPath()); -+ return file; -+ } catch (SecurityException se) { -+ return null; -+ } -+ } -+ -+ private File[] checkFiles(File[] files) { -+ SecurityManager sm = System.getSecurityManager(); -+ if (sm == null || files == null || files.length == 0) { -+ return files; -+ } -+ return checkFiles(Arrays.stream(files), sm); -+ } -+ -+ private File[] checkFiles(List<File> files) { -+ SecurityManager sm = System.getSecurityManager(); -+ if (sm == null || files.isEmpty()) { -+ return files.toArray(new File[files.size()]); -+ } -+ return checkFiles(files.stream(), sm); -+ } -+ -+ private File[] checkFiles(Stream<File> filesStream, SecurityManager sm) { -+ return filesStream.filter((file) -> checkFile(file, sm) != null) -+ .toArray(File[]::new); -+ } -+ - /** - * Does <code>dir</code> represent a "computer" such as a node on the network, or - * "My Computer" on the desktop. ---- ./jdk/src/windows/native/sun/windows/awt_Component.cpp Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/src/windows/native/sun/windows/awt_Component.cpp Mon Dec 08 12:29:42 2014 -0800 -@@ -492,7 +492,12 @@ - * member is referred in the GetClassName method of AwtLabel class. - * So m_peerObject member must be set here. - */ -- m_peerObject = env->NewGlobalRef(peer); -+ if (m_peerObject == NULL) { -+ m_peerObject = env->NewGlobalRef(peer); -+ } else { -+ assert(env->IsSameObject(m_peerObject, peer)); -+ } -+ - RegisterClass(); - - jobject target = env->GetObjectField(peer, AwtObject::targetID); -@@ -3960,7 +3965,6 @@ - DASSERT(stringCls); - CHECK_NULL(stringCls); - clauseReading = env->NewObjectArray(cClause, stringCls, NULL); -- env->DeleteLocalRef(stringCls); - DASSERT(clauseReading); - CHECK_NULL(clauseReading); - for (int i=0; i<cClause; i++) env->SetObjectArrayElement(clauseReading, i, rgClauseReading[i]); ---- ./jdk/test/ProblemList.txt Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/ProblemList.txt Mon Dec 08 12:29:42 2014 -0800 -@@ -272,4 +272,7 @@ - # Filed 6772009 - java/util/concurrent/locks/ReentrantLock/CancelledLockLoops.java generic-all - -+# 8051641 -+sun/util/calendar/zi/TestZoneInfo310.java generic-all -+ - ############################################################################ ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/java/awt/List/ListGarbageCollectionTest/AwtListGarbageCollectionTest.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,72 @@ -+/* -+ * Copyright (c) 2014, 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 8040076 -+ * @summary AwtList not garbage collected -+ * @run main/othervm -Xmx100m AwtListGarbageCollectionTest -+ */ -+ -+import java.awt.*; -+import java.awt.event.WindowAdapter; -+import java.awt.event.WindowEvent; -+import java.lang.ref.WeakReference; -+ -+public class AwtListGarbageCollectionTest { -+ public static void main(String[] args) { -+ Frame frame = new Frame("List leak test"); -+ try { -+ test(frame); -+ } finally { -+ frame.dispose(); -+ } -+ } -+ -+ private static void test(Frame frame) { -+ WeakReference<List> weakListRef = null; -+ try { -+ frame.setSize(300, 200); -+ frame.setVisible(true); -+ -+ List strongListRef = new List(); -+ frame.add(strongListRef); -+ strongListRef.setMultipleMode(true); -+ frame.remove(strongListRef); -+ weakListRef = new WeakReference<List>(strongListRef); -+ strongListRef = null; -+ -+ //make out of memory to force gc -+ String veryLongString = new String(new char[100]); -+ while (true) { -+ veryLongString += veryLongString; -+ } -+ } catch (OutOfMemoryError e) { -+ if (weakListRef == null) { -+ throw new RuntimeException("Weak list ref wasn't created"); -+ } else if (weakListRef.get() != null) { -+ throw new RuntimeException("List wasn't garbage collected"); -+ } -+ } -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/java/awt/im/8041990/bug8041990.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,104 @@ -+/* -+ * Copyright (c) 2014, 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 8041990 -+ @summary Language specific keys does not work in applets when opened outside the browser -+ @author Petr Pchelko -+*/ -+ -+import sun.awt.SunToolkit; -+ -+import javax.swing.*; -+import java.awt.*; -+import java.awt.event.InputMethodEvent; -+import java.awt.font.TextHitInfo; -+import java.text.AttributedString; -+import java.util.concurrent.CountDownLatch; -+import java.util.concurrent.atomic.AtomicReference; -+ -+public class bug8041990 { -+ private static JFrame frame; -+ private static JComponent component; -+ -+ public static void main(String[] args) throws Exception { -+ ThreadGroup stubTG = new ThreadGroup(getRootThreadGroup(), "Stub Thread Group"); -+ ThreadGroup swingTG = new ThreadGroup(getRootThreadGroup(), "SwingTG"); -+ try { -+ Thread stubThread = new Thread(stubTG, SunToolkit::createNewAppContext); -+ stubThread.start(); -+ stubThread.join(); -+ -+ CountDownLatch startSwingLatch = new CountDownLatch(1); -+ new Thread(swingTG, () -> { -+ SunToolkit.createNewAppContext(); -+ SwingUtilities.invokeLater(() -> { -+ frame = new JFrame(); -+ component = new JLabel("Test Text"); -+ frame.add(component); -+ frame.setBounds(100, 100, 100, 100); -+ frame.setVisible(true); -+ startSwingLatch.countDown(); -+ }); -+ }).start(); -+ startSwingLatch.await(); -+ -+ AtomicReference<Exception> caughtException = new AtomicReference<>(); -+ Thread checkThread = new Thread(getRootThreadGroup(), () -> { -+ try { -+ // If the bug is present this will throw exception -+ new InputMethodEvent(component, -+ InputMethodEvent.CARET_POSITION_CHANGED, -+ TextHitInfo.leading(0), -+ TextHitInfo.trailing(0)); -+ } catch (Exception e) { -+ caughtException.set(e); -+ } -+ }); -+ checkThread.start(); -+ checkThread.join(); -+ -+ if (caughtException.get() != null) { -+ throw new RuntimeException("Failed. Caught exception!", caughtException.get()); -+ } -+ } finally { -+ new Thread(swingTG, () -> SwingUtilities.invokeLater(() -> { -+ if (frame != null) { -+ frame.dispose(); -+ } -+ })).start(); -+ } -+ } -+ -+ private static ThreadGroup getRootThreadGroup() { -+ ThreadGroup currentTG = Thread.currentThread().getThreadGroup(); -+ ThreadGroup parentTG = currentTG.getParent(); -+ while (parentTG != null) { -+ currentTG = parentTG; -+ parentTG = currentTG.getParent(); -+ } -+ return currentTG; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/java/io/ByteArrayOutputStream/MaxCapacity.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,65 @@ -+/* -+ * Copyright (c) 2014 Google Inc. 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 -+ * @ignore This test has huge memory requirements -+ * @run main/timeout=1800/othervm -Xmx8g MaxCapacity -+ * @bug 8055949 -+ * @summary Check that we can write (almost) Integer.MAX_VALUE bytes -+ * to a ByteArrayOutputStream. -+ * @author Martin Buchholz -+ */ -+import java.io.ByteArrayOutputStream; -+ -+public class MaxCapacity { -+ public static void main(String[] args) { -+ long maxHeap = Runtime.getRuntime().maxMemory(); -+ if (maxHeap < 3L * Integer.MAX_VALUE) { -+ System.out.printf("Skipping test; max memory %sM too small%n", -+ maxHeap/(1024*1024)); -+ return; -+ } -+ ByteArrayOutputStream baos = new ByteArrayOutputStream(); -+ for (long n = 0; ; n++) { -+ try { -+ baos.write((byte)'x'); -+ } catch (Throwable t) { -+ // check data integrity while we're here -+ byte[] bytes = baos.toByteArray(); -+ if (bytes.length != n) -+ throw new AssertionError("wrong length"); -+ if (bytes[0] != 'x' || -+ bytes[bytes.length - 1] != 'x') -+ throw new AssertionError("wrong contents"); -+ -+ long gap = Integer.MAX_VALUE - n; -+ System.out.printf("gap=%dM %d%n", gap/(1024*1024), gap); -+ if (gap > 1024) -+ throw t; -+ // t.printStackTrace(); -+ break; -+ } -+ } -+ } -+} ---- ./jdk/test/java/time/test/java/time/format/TestZoneTextPrinterParser.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/java/time/test/java/time/format/TestZoneTextPrinterParser.java Mon Dec 08 12:29:42 2014 -0800 -@@ -138,7 +138,7 @@ - {"Asia/Taipei", "China Standard Time", preferred, Locale.ENGLISH, TextStyle.FULL}, - {"America/Chicago", "CST", none, Locale.ENGLISH, TextStyle.SHORT}, - {"Asia/Taipei", "CST", preferred, Locale.ENGLISH, TextStyle.SHORT}, -- {"Australia/South", "CST", preferred_s, Locale.ENGLISH, TextStyle.SHORT}, -+ {"Australia/South", "ACST", preferred_s, Locale.ENGLISH, TextStyle.SHORT}, - {"America/Chicago", "CDT", none, Locale.ENGLISH, TextStyle.SHORT}, - {"Asia/Shanghai", "CDT", preferred_s, Locale.ENGLISH, TextStyle.SHORT}, - }; ---- ./jdk/test/java/util/Currency/tablea1.txt Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/java/util/Currency/tablea1.txt Mon Dec 08 12:29:42 2014 -0800 -@@ -1,12 +1,12 @@ - # - # --# Amendments up until ISO 4217 AMENDMENT NUMBER 156 --# (As of 23 July 2013) -+# Amendments up until ISO 4217 AMENDMENT NUMBER 159 -+# (As of 15 August 2014) - # - - # Version - FILEVERSION=1 --DATAVERSION=156 -+DATAVERSION=159 - - # ISO 4217 currency data - AF AFN 971 2 -@@ -142,7 +142,7 @@ - LR LRD 430 2 - LY LYD 434 3 - LI CHF 756 2 --LT LTL 440 2 -+LT LTL 440 2 2014-12-31-22-00-00 EUR 978 2 - LU EUR 978 2 - MO MOP 446 2 - MK MKD 807 2 ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/swing/JComponent/8043610/bug8043610.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,100 @@ -+/* -+ * Copyright (c) 2014, 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 8043610 -+ @summary Tests that JComponent invalidate, revalidate and repaint methods could -+ be called from any thread -+ @author Petr Pchelko -+*/ -+ -+import sun.awt.SunToolkit; -+ -+import javax.swing.*; -+import java.awt.*; -+import java.util.concurrent.CountDownLatch; -+import java.util.concurrent.atomic.AtomicReference; -+ -+public class bug8043610 { -+ private static volatile JFrame frame; -+ private static volatile JComponent component; -+ -+ public static void main(String[] args) throws Exception { -+ ThreadGroup stubTG = new ThreadGroup(getRootThreadGroup(), "Stub Thread Group"); -+ ThreadGroup swingTG = new ThreadGroup(getRootThreadGroup(), "SwingTG"); -+ try { -+ Thread stubThread = new Thread(stubTG, SunToolkit::createNewAppContext); -+ stubThread.start(); -+ stubThread.join(); -+ -+ CountDownLatch startSwingLatch = new CountDownLatch(1); -+ new Thread(swingTG, () -> { -+ SunToolkit.createNewAppContext(); -+ SwingUtilities.invokeLater(() -> { -+ frame = new JFrame(); -+ component = new JLabel("Test Text"); -+ frame.add(component); -+ frame.setBounds(100, 100, 100, 100); -+ frame.setVisible(true); -+ startSwingLatch.countDown(); -+ }); -+ }).start(); -+ startSwingLatch.await(); -+ -+ AtomicReference<Exception> caughtException = new AtomicReference<>(); -+ Thread checkThread = new Thread(getRootThreadGroup(), () -> { -+ try { -+ component.invalidate(); -+ component.revalidate(); -+ component.repaint(new Rectangle(0, 0, 0, 0)); -+ } catch (Exception e) { -+ caughtException.set(e); -+ } -+ }); -+ checkThread.start(); -+ checkThread.join(); -+ -+ if (caughtException.get() != null) { -+ throw new RuntimeException("Failed. Caught exception!", caughtException.get()); -+ } -+ } finally { -+ new Thread(swingTG, () -> SwingUtilities.invokeLater(() -> { -+ if (frame != null) { -+ frame.dispose(); -+ } -+ })).start(); -+ } -+ } -+ -+ private static ThreadGroup getRootThreadGroup() { -+ ThreadGroup currentTG = Thread.currentThread().getThreadGroup(); -+ ThreadGroup parentTG = currentTG.getParent(); -+ while (parentTG != null) { -+ currentTG = parentTG; -+ parentTG = currentTG.getParent(); -+ } -+ return currentTG; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/swing/JFileChooser/8062561/bug8062561.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,210 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+import java.awt.Robot; -+import java.awt.event.KeyEvent; -+import java.io.File; -+import java.io.IOException; -+import java.io.InputStream; -+import java.io.PrintWriter; -+import java.util.concurrent.TimeUnit; -+import javax.swing.JFileChooser; -+import javax.swing.SwingUtilities; -+import javax.swing.filechooser.FileSystemView; -+import sun.awt.OSInfo; -+ -+/** -+ * @test -+ * @bug 8062561 -+ * @summary File system view returns null default directory -+ * @run main/othervm bug8062561 GENERATE_POLICY -+ * @run main/othervm/policy=security.policy bug8062561 CHECK_DEFAULT_DIR run -+ */ -+public class bug8062561 { -+ -+ private static final String POLICY_FILE = "security2.policy"; -+ private static volatile boolean fileChooserIsShown = false; -+ -+ public static void main(String[] args) throws Exception { -+ -+ String test = args[0]; -+ -+ switch (test) { -+ case "GENERATE_POLICY": -+ generatePolicyFile(); -+ break; -+ case "CHECK_DEFAULT_DIR": -+ checkDefaultDirectory(); -+ break; -+ case "CHECK_FILE_CHOOSER": -+ checkFileChooser(); -+ break; -+ default: -+ throw new RuntimeException("Wrong argument!"); -+ } -+ } -+ -+ private static void checkDefaultDirectory() { -+ if (System.getSecurityManager() == null) { -+ throw new RuntimeException("Security manager is not set!"); -+ } -+ -+ File defaultDirectory = FileSystemView.getFileSystemView(). -+ getDefaultDirectory(); -+ if (defaultDirectory != null) { -+ throw new RuntimeException("File system default directory is null!"); -+ } -+ } -+ private static volatile JFileChooser fileChooser; -+ -+ private static void checkFileChooser() throws Exception { -+ if (System.getSecurityManager() == null) { -+ throw new RuntimeException("Security manager is not set!"); -+ } -+ -+ Robot robot = new Robot(); -+ robot.setAutoDelay(50); -+ -+ SwingUtilities.invokeLater(new Runnable() { -+ -+ public void run() { -+ fileChooser = new JFileChooser(); -+ fileChooser.showOpenDialog(null); -+ fileChooserIsShown = true; -+ System.out.println("Start file chooser: " + fileChooserIsShown); -+ } -+ }); -+ -+ long time = System.currentTimeMillis(); -+ while (fileChooser == null) { -+ if (System.currentTimeMillis() - time >= 10000) { -+ throw new RuntimeException("FileChoser is not shown!"); -+ } -+ Thread.sleep(500); -+ } -+ -+ Thread.sleep(500); -+ robot.keyPress(KeyEvent.VK_ESCAPE); -+ robot.keyRelease(KeyEvent.VK_ESCAPE); -+ System.exit(0); -+ } -+ -+ private static void generatePolicyFile() throws Exception { -+ if (System.getSecurityManager() != null) { -+ throw new RuntimeException("Security manager should be null!"); -+ } -+ -+ if (!OSInfo.getOSType().equals(OSInfo.OSType.WINDOWS)) { -+ return; -+ } -+ -+ File defaultDirectory = FileSystemView.getFileSystemView(). -+ getDefaultDirectory(); -+ -+ if (defaultDirectory == null) { -+ throw new RuntimeException("Default directory is null!"); -+ } -+ -+ File policyFile = new File(POLICY_FILE); -+ if (!policyFile.exists()) { -+ policyFile.createNewFile(); -+ } -+ -+ try (PrintWriter writer = new PrintWriter(policyFile, "UTF-8")) { -+ writer.println("grant {"); -+ String documents = defaultDirectory.getCanonicalPath(); -+ documents = documents.replace('\\', '/'); -+ // Documents permission -+ writer.print(" permission java.io.FilePermission"); -+ writer.print(" \"" + documents + "\","); -+ writer.println(" \"read\";"); -+ // Desktop permission -+ writer.print(" permission java.io.FilePermission"); -+ writer.print(" \"" + documents.replace("Documents", "Desktop") + "\","); -+ writer.println(" \"read\";"); -+ // robot permission // "java.awt.AWTPermission" "createRobot" -+ writer.print(" permission java.awt.AWTPermission"); -+ writer.println(" \"createRobot\";"); -+ writer.println("};"); -+ } -+ -+ performTest(); -+ } -+ -+ private static void performTest() throws Exception { -+ String javaPath = System.getProperty("java.home", ""); -+ String command = javaPath + File.separator + "bin" + File.separator + "java" -+ + " -Djava.security.manager -Djava.security.policy=" + POLICY_FILE -+ + " bug8062561 CHECK_FILE_CHOOSER"; -+ System.out.println(command); -+ boolean processExit = false; -+ -+ Process process = Runtime.getRuntime().exec(command); -+ -+ try { -+ processExit = process.waitFor(20, TimeUnit.SECONDS); -+ } catch (IllegalThreadStateException e) { -+ throw new RuntimeException(e); -+ } -+ System.out.println("[RESULT] : " -+ + "The sub process has cleanly exited : PASS"); -+ -+ InputStream errorStream = process.getErrorStream(); -+ System.out.println("========= Child process stderr ========"); -+ boolean exception = dumpStream(errorStream); -+ if (exception) { -+ throw new RuntimeException("[RESULT] :" -+ + " Exception in child process : FAIL"); -+ } -+ System.out.println("======================================="); -+ -+ InputStream processInputStream = process.getInputStream(); -+ System.out.println("========= Child process output ========"); -+ dumpStream(processInputStream); -+ System.out.println("======================================="); -+ -+ if (!processExit) { -+ process.destroy(); -+ throw new RuntimeException("[RESULT] : " -+ + "The sub process has not exited : FAIL"); -+ } -+ } -+ -+ public static boolean dumpStream(InputStream in) throws IOException { -+ String tempString; -+ int count = in.available(); -+ boolean exception = false; -+ while (count > 0) { -+ byte[] b = new byte[count]; -+ in.read(b); -+ tempString = new String(b); -+ if (!exception) { -+ exception = tempString.indexOf("Exception") != -1; -+ } -+ System.out.println(tempString); -+ count = in.available(); -+ } -+ -+ return exception; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/swing/JFileChooser/8062561/security.policy Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,4 @@ -+grant { -+ -+ permission java.util.PropertyPermission "user.home", "read"; -+}; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/swing/JFileChooser/8062561/security2.policy Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,1 @@ -+// Autogenerated file -\ No newline at end of file ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/marshal/8036981/Good.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,94 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+package testjaxbcontext; -+ -+import org.w3c.dom.Element; -+import javax.xml.bind.annotation.XmlAccessType; -+import javax.xml.bind.annotation.XmlAccessorType; -+import javax.xml.bind.annotation.XmlAnyElement; -+import javax.xml.bind.annotation.XmlType; -+import java.util.ArrayList; -+import java.util.List; -+ -+/** -+ * <p> -+ * Java class for Good complex type. -+ * -+ * <p> -+ * The following schema fragment specifies the expected content contained within -+ * this class. -+ * -+ * <pre> -+ * <complexType name="Good"> -+ * <complexContent> -+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> -+ * <sequence> -+ * <any processContents='skip' maxOccurs="70"/> -+ * </sequence> -+ * </restriction> -+ * </complexContent> -+ * </complexType> -+ * </pre> -+ * -+ * -+ */ -+@XmlAccessorType(XmlAccessType.FIELD) -+@XmlType(name = "Good", propOrder = { -+ "any" -+}) -+public class Good { -+ -+ @XmlAnyElement -+ protected List<Element> any; -+ -+ /** -+ * Gets the value of the any property. -+ * -+ * <p> -+ * This accessor method returns a reference to the live list, not a -+ * snapshot. Therefore any modification you make to the returned list will -+ * be present inside the JAXB object. This is why there is not a -+ * <CODE>set</CODE> method for the any property. -+ * -+ * <p> -+ * For example, to add a new item, do as follows: -+ * <pre> -+ * getAny().add(newItem); -+ * </pre> -+ * -+ * -+ * <p> -+ * Objects of the following type(s) are allowed in the list -+ * {@link org.w3c.dom.Element } -+ * -+ * -+ */ -+ public List<Element> getAny() { -+ if (any == null) { -+ any = new ArrayList<Element>(); -+ } -+ return this.any; -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/marshal/8036981/Main.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,104 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+package testjaxbcontext; -+ -+import javax.xml.bind.annotation.*; -+ -+/** -+ * <p> -+ * Java class for main complex type. -+ * -+ * <p> -+ * The following schema fragment specifies the expected content contained within -+ * this class. -+ * -+ * <pre> -+ * <complexType name="main"> -+ * <complexContent> -+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> -+ * <sequence> -+ * <element name="Root" type="{}Root"/> -+ * <element name="Good" type="{}Good"/> -+ * </sequence> -+ * </restriction> -+ * </complexContent> -+ * </complexType> -+ * </pre> -+ * -+ * -+ */ -+@XmlAccessorType(XmlAccessType.FIELD) -+@XmlType(name = "main", propOrder = { -+ "root", -+ "good" -+}) -+@XmlRootElement -+public class Main { -+ -+ @XmlElement(name = "Root", required = true) -+ protected Root root; -+ @XmlElement(name = "Good", required = true) -+ protected Good good; -+ -+ /** -+ * Gets the value of the root property. -+ * -+ * @return possible object is {@link Root } -+ * -+ */ -+ public Root getRoot() { -+ return root; -+ } -+ -+ /** -+ * Sets the value of the root property. -+ * -+ * @param value allowed object is {@link Root } -+ * -+ */ -+ public void setRoot(Root value) { -+ this.root = value; -+ } -+ -+ /** -+ * Gets the value of the good property. -+ * -+ * @return possible object is {@link Good } -+ * -+ */ -+ public Good getGood() { -+ return good; -+ } -+ -+ /** -+ * Sets the value of the good property. -+ * -+ * @param value allowed object is {@link Good } -+ * -+ */ -+ public void setGood(Good value) { -+ this.good = value; -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/marshal/8036981/ObjectFactory.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,74 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+package testjaxbcontext; -+ -+import javax.xml.bind.annotation.XmlRegistry; -+ -+/** -+ * This object contains factory methods for each Java content interface and Java -+ * element interface generated in the generated package. -+ * <p> -+ * An ObjectFactory allows you to programatically construct new instances of the -+ * Java representation for XML content. The Java representation of XML content -+ * can consist of schema derived interfaces and classes representing the binding -+ * of schema type definitions, element declarations and model groups. Factory -+ * methods for each of these are provided in this class. -+ * -+ */ -+@XmlRegistry -+public class ObjectFactory { -+ -+ /** -+ * Create a new ObjectFactory that can be used to create new instances of -+ * schema derived classes for package: generated -+ * -+ */ -+ public ObjectFactory() { -+ } -+ -+ /** -+ * Create an instance of {@link Root } -+ * -+ */ -+ public Root createRoot() { -+ return new Root(); -+ } -+ -+ /** -+ * Create an instance of {@link Good } -+ * -+ */ -+ public Good createGood() { -+ return new Good(); -+ } -+ -+ /** -+ * Create an instance of {@link Main } -+ * -+ */ -+ public Main createMain() { -+ return new Main(); -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/marshal/8036981/Root.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,91 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+package testjaxbcontext; -+ -+import javax.xml.bind.annotation.*; -+import java.util.ArrayList; -+import java.util.List; -+ -+/** -+ * <p> -+ * Java class for Root complex type. -+ * -+ * <p> -+ * The following schema fragment specifies the expected content contained within -+ * this class. -+ * -+ * <pre> -+ * <complexType name="Root"> -+ * <complexContent> -+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> -+ * <sequence> -+ * <any processContents='skip' maxOccurs="70"/> -+ * </sequence> -+ * </restriction> -+ * </complexContent> -+ * </complexType> -+ * </pre> -+ * -+ * -+ */ -+@XmlAccessorType(XmlAccessType.FIELD) -+@XmlType(name = "Root", propOrder = { -+ "content" -+}) -+public class Root { -+ -+ @XmlMixed -+ @XmlAnyElement -+ protected List<Object> content; -+ -+ /** -+ * Gets the value of the content property. -+ * -+ * <p> -+ * This accessor method returns a reference to the live list, not a -+ * snapshot. Therefore any modification you make to the returned list will -+ * be present inside the JAXB object. This is why there is not a -+ * <CODE>set</CODE> method for the content property. -+ * -+ * <p> -+ * For example, to add a new item, do as follows: -+ * <pre> -+ * getContent().add(newItem); -+ * </pre> -+ * -+ * -+ * <p> -+ * Objects of the following type(s) are allowed in the list {@link org.w3c.dom.Element } -+ * {@link String } -+ * -+ * -+ */ -+ public List<Object> getContent() { -+ if (content == null) { -+ content = new ArrayList<Object>(); -+ } -+ return this.content; -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/marshal/8036981/Test.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,67 @@ -+/* -+ * Copyright (c) 2014, 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 Test.java -+ * @bug 8036981 -+ * @summary JAXB not preserving formatting during unmarshalling/marshalling -+ * @compile Good.java Main.java ObjectFactory.java Root.java -+ * @run main/othervm Test -+ */ -+ -+import javax.xml.bind.JAXBContext; -+import javax.xml.bind.Marshaller; -+import javax.xml.bind.Unmarshaller; -+import java.io.File; -+import java.io.StringWriter; -+ -+/** -+ * Test for marshalling and unmarshalling mixed and unmixed content -+ */ -+public class Test { -+ -+ private static final String EXPECTED = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><main><Root>\n" + -+ " <SomeTag>\n" + -+ " <AChildTag>\n" + -+ " <AnotherChildTag/>\n" + -+ " <AnotherChildTag/>\n" + -+ " </AChildTag>\n" + -+ " </SomeTag>\n" + -+ " </Root><Good><VeryGood><TheBest><MegaSuper/><MegaSuper/>\n" + -+ " </TheBest>\n" + -+ " </VeryGood></Good></main>"; -+ -+ public static void main(String[] args) throws Exception { -+ JAXBContext jc = JAXBContext.newInstance("testjaxbcontext"); -+ Unmarshaller u = jc.createUnmarshaller(); -+ Object result = u.unmarshal(new File(System.getProperty("test.src", ".") + "/test.xml")); -+ StringWriter sw = new StringWriter(); -+ Marshaller m = jc.createMarshaller(); -+ m.marshal(result, sw); -+ System.out.println("Expected:" + EXPECTED); -+ System.out.println("Observed:" + sw.toString()); -+ if (!EXPECTED.equals(sw.toString())) { -+ throw new Exception("Unmarshal/Marshal generates different content"); -+ } -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/marshal/8036981/test.xml Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,19 @@ -+<?xml version="1.0" encoding="UTF-8" standalone="yes"?> -+<main> -+ <Root> -+ <SomeTag> -+ <AChildTag> -+ <AnotherChildTag/> -+ <AnotherChildTag/> -+ </AChildTag> -+ </SomeTag> -+ </Root> -+ <Good> -+ <VeryGood> -+ <TheBest> -+ <MegaSuper/> -+ <MegaSuper/> -+ </TheBest> -+ </VeryGood> -+ </Good> -+</main> ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/xjc/8029837/PreParseGrammarTest.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,58 @@ -+/* -+ * Copyright (c) 2014, 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 8029837 -+ * @summary Test simulates the partial call to xjc ant task that fails with -+ * NullPointer exception -+ * @run main/othervm PreParseGrammarTest -+ */ -+ -+import com.sun.org.apache.xerces.internal.parsers.XMLGrammarPreparser; -+import com.sun.org.apache.xerces.internal.xni.XNIException; -+import com.sun.org.apache.xerces.internal.xni.grammars.Grammar; -+import com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarDescription; -+import com.sun.org.apache.xerces.internal.xni.parser.XMLInputSource; -+import java.io.BufferedInputStream; -+import java.io.File; -+import java.io.FileInputStream; -+import java.io.FileNotFoundException; -+import java.io.IOException; -+import java.io.InputStream; -+ -+public class PreParseGrammarTest { -+ -+ public static void main(String[] args) throws FileNotFoundException, XNIException, IOException { -+ File xsdf = new File(System.getProperty("test.src", ".") + "/test.xsd"); -+ InputStream is = new BufferedInputStream(new FileInputStream(xsdf)); -+ XMLInputSource xis = new XMLInputSource(null, null, null, is, null); -+ XMLGrammarPreparser gp = new XMLGrammarPreparser(); -+ gp.registerPreparser(XMLGrammarDescription.XML_SCHEMA, null); -+ //The NullPointerException is observed on next call during ant task -+ // execution -+ Grammar res = gp.preparseGrammar(XMLGrammarDescription.XML_SCHEMA, xis); -+ System.out.println("Grammar preparsed successfully:" + res); -+ return; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/bind/xjc/8029837/test.xsd Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,4 @@ -+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> -+ <xsd:element name="root"> -+ </xsd:element> -+</xsd:schema> ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/jaxp/testng/TEST.properties Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,3 @@ -+# This file identifies root(s) of the test-ng hierarchy. -+ -+TestNG.dirs = . ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/jaxp/testng/parse/XMLEntityScannerLoad.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,75 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+package parse; -+ -+import java.io.ByteArrayInputStream; -+import java.io.IOException; -+import javax.xml.parsers.DocumentBuilderFactory; -+import javax.xml.parsers.ParserConfigurationException; -+ -+import static org.testng.Assert.assertEquals; -+import org.testng.annotations.DataProvider; -+import org.testng.annotations.Test; -+import org.w3c.dom.Document; -+import org.xml.sax.SAXException; -+ -+/** -+ * JDK-8059327: XML parser returns corrupt attribute value -+ * https://bugs.openjdk.java.net/browse/JDK-8059327 -+ * -+ * Also: -+ * JDK-8061550: XMLEntityScanner can corrupt corrupt content during parsing -+ * https://bugs.openjdk.java.net/browse/JDK-8061550 -+ * -+ * @Summary: verify that the character cache in XMLEntityScanner is reset properly -+ */ -+ -+public class XMLEntityScannerLoad { -+ -+ @Test(dataProvider = "xmls") -+ public void test(String xml) throws SAXException, IOException, ParserConfigurationException { -+ Document d = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new ChunkInputStream(xml)); -+ String value = d.getDocumentElement().getAttribute("a1"); -+ assertEquals(value, "w"); -+ } -+ -+ static class ChunkInputStream extends ByteArrayInputStream { -+ ChunkInputStream(String xml) { -+ super(xml.getBytes()); -+ } -+ -+ @Override -+ public synchronized int read(byte[] b, int off, int len) { -+ return super.read(b, off, 7); -+ } -+ } -+ -+ @DataProvider(name = "xmls") -+ private Object[][] xmls() { -+ return new Object[][] { -+ {"<?xml version=\"1.0\"?><element a1=\"w\" a2=\"""\"/>"}, -+ {"<?xml version=\"1.1\"?><element a1=\"w\" a2=\"""\"/>"} -+ }; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/ws/xsanymixed/CopyingResponse.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,35 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+ -+import org.somewhere.ws.EchoRequest; -+import org.somewhere.ws.EchoResponse; -+ -+public class CopyingResponse extends EchoResponse { -+ -+ public CopyingResponse() {} -+ -+ public CopyingResponse(EchoRequest request) { -+ content = request.getContent(); -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/ws/xsanymixed/ServiceImpl.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,51 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+ -+import org.somewhere.ws.EchoRequest; -+import org.somewhere.ws.EchoResponse; -+import org.somewhere.ws.TestPort; -+ -+import javax.jws.WebService; -+import javax.xml.namespace.QName; -+ -+ -+/** -+ * Simple Webservice implementation just copying xml part as is -+ * from incoming request into outgoing response -+ */ -+@WebService( -+ endpointInterface = "org.somewhere.ws.TestPort", -+ targetNamespace = "http://ws.somewhere.org/", -+ serviceName = "TestService", -+ portName = "TestPort") -+public class ServiceImpl implements TestPort { -+ -+ public static final QName PORT_NAME = new QName("http://ws.somewhere.org/", "TestPort"); -+ public static final QName SERVICE_NAME = new QName("http://ws.somewhere.org/", "TestService"); -+ -+ @Override -+ public EchoResponse echo(EchoRequest request) { -+ return new CopyingResponse(request); -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/ws/xsanymixed/Test.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,197 @@ -+/* -+ * Copyright (c) 2014, 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 8036981 8038966 8051441 -+ * @summary the content of xs:any content:mixed should remain as is, -+ * no white space changes and no changes to namespace prefixes -+ * @run shell compile-wsdl.sh -+ * @run main/othervm Test -+ */ -+ -+import com.sun.net.httpserver.HttpServer; -+ -+import javax.xml.transform.Source; -+import javax.xml.transform.Transformer; -+import javax.xml.transform.TransformerException; -+import javax.xml.transform.TransformerFactory; -+import javax.xml.transform.stream.StreamResult; -+import javax.xml.transform.stream.StreamSource; -+import javax.xml.ws.Dispatch; -+import javax.xml.ws.Endpoint; -+import javax.xml.ws.Service; -+import java.io.ByteArrayOutputStream; -+import java.io.IOException; -+import java.io.StringReader; -+import java.net.InetSocketAddress; -+import java.net.URL; -+import java.nio.file.FileVisitResult; -+import java.nio.file.Files; -+import java.nio.file.Path; -+import java.nio.file.Paths; -+import java.nio.file.SimpleFileVisitor; -+import java.nio.file.attribute.BasicFileAttributes; -+ -+import static java.nio.file.FileVisitResult.CONTINUE; -+ -+public class Test { -+ -+ private static HttpServer httpServer; -+ private static Endpoint endpoint; -+ private static final String NL = System.getProperty("line.separator"); -+ -+ private static final String XS_ANY_MIXED_PART = -+ "<AppHdr xmlns=\"urn:head.001\">" + NL + -+ " <Fr>" + NL + NL + -+ "<FIId xmlns=\"urn:head.009\">" + NL + NL + -+ " any" + NL + -+ " white" + NL + -+ " space" + NL + NL + -+ " <FinInstnId>... and" + NL + NL + -+ " NO namespace prefixes!!!" + NL + NL + -+ " </FinInstnId>" + NL + NL + -+ " </FIId>" + NL + -+ "</Fr>" + NL + -+ "</AppHdr>"; -+ -+ private static final String XML_REQUEST = "<soap:Envelope " + -+ "xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" " + -+ "xmlns:ws=\"http://ws.somewhere.org/\">" + -+ "<soap:Header/><soap:Body>" + -+ "<ws:echoRequest>" + NL + -+ XS_ANY_MIXED_PART + NL + -+ "</ws:echoRequest>" + -+ "</soap:Body></soap:Envelope>"; -+ -+ private static String deployWebservice() throws IOException { -+ // Manually create HttpServer here using ephemeral address for port -+ // so as to not end up with attempt to bind to an in-use port -+ httpServer = HttpServer.create(new InetSocketAddress(0), 0); -+ httpServer.start(); -+ endpoint = Endpoint.create(new ServiceImpl()); -+ endpoint.publish(httpServer.createContext("/wservice")); -+ -+ String wsdlAddress = "http://localhost:" + httpServer.getAddress().getPort() + "/wservice?wsdl"; -+ log("address = " + wsdlAddress); -+ return wsdlAddress; -+ } -+ -+ private static void stopWebservice() { -+ if (endpoint != null && endpoint.isPublished()) { -+ endpoint.stop(); -+ } -+ if (httpServer != null) { -+ httpServer.stop(0); -+ } -+ } -+ -+ public static void main(String[] args) throws IOException, TransformerException { -+ -+ try { -+ String address = deployWebservice(); -+ Service service = Service.create(new URL(address), ServiceImpl.SERVICE_NAME); -+ -+ Dispatch<Source> d = service.createDispatch(ServiceImpl.PORT_NAME, Source.class, Service.Mode.MESSAGE); -+ Source response = d.invoke(new StreamSource(new StringReader(XML_REQUEST))); -+ -+ String resultXml = toString(response); -+ -+ log("= request ======== \n"); -+ log(XML_REQUEST); -+ log("= result ========= \n"); -+ log(resultXml); -+ log("\n=================="); -+ -+ boolean xsAnyMixedPartSame = resultXml.contains(XS_ANY_MIXED_PART); -+ log("resultXml.contains(XS_ANY_PART) = " + xsAnyMixedPartSame); -+ if (!xsAnyMixedPartSame) { -+ fail("The xs:any content=mixed part is supposed to be same in request and response."); -+ throw new RuntimeException(); -+ } -+ -+ log("TEST PASSED"); -+ } finally { -+ stopWebservice(); -+ -+ // if you need to debug or explore wsdl generation result -+ // comment this line out: -+ deleteGeneratedFiles(); -+ } -+ } -+ -+ private static String toString(Source response) throws TransformerException, IOException { -+ ByteArrayOutputStream bos = new ByteArrayOutputStream(); -+ TransformerFactory transformerFactory = TransformerFactory.newInstance(); -+ Transformer transformer = transformerFactory.newTransformer(); -+ transformer.transform(response, new StreamResult(bos)); -+ bos.close(); -+ return new String(bos.toByteArray()); -+ } -+ -+ private static void fail(String message) { -+ log("TEST FAILED."); -+ throw new RuntimeException(message); -+ } -+ -+ private static void log(String msg) { -+ System.out.println(msg); -+ } -+ -+ private static void deleteGeneratedFiles() { -+ Path p = Paths.get("..", "classes", "javax", "xml", "ws", "xsanymixed", "org"); -+ System.out.println("performing cleanup, deleting wsdl compilation result: " + p.toFile().getAbsolutePath()); -+ if (Files.exists(p)) { -+ try { -+ Files.walkFileTree(p, new SimpleFileVisitor<Path>() { -+ @Override -+ public FileVisitResult visitFile( -+ Path file, -+ BasicFileAttributes attrs) throws IOException { -+ -+ System.out.println("deleting file [" + file.toFile().getAbsoluteFile() + "]"); -+ Files.delete(file); -+ return CONTINUE; -+ } -+ -+ @Override -+ public FileVisitResult postVisitDirectory( -+ Path dir, -+ IOException exc) throws IOException { -+ -+ System.out.println("deleting dir [" + dir.toFile().getAbsoluteFile() + "]"); -+ if (exc == null) { -+ Files.delete(dir); -+ return CONTINUE; -+ } else { -+ throw exc; -+ } -+ } -+ }); -+ } catch (IOException ioe) { -+ ioe.printStackTrace(); -+ } -+ } -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/ws/xsanymixed/compile-wsdl.sh Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,36 @@ -+#! /bin/sh -+ -+# -+# Copyright (c) 2014, 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. -+# -+ -+# -+ -+if [ "x$TESTJAVA" = x ]; then -+ TESTJAVA=$1; shift -+ TESTCLASSES=. -+fi -+ -+echo "compiling [test-service.wsdl] wsdl ..." -+$TESTJAVA/bin/wsimport -keep -d ${TESTCLASSES} ${TESTSRC}/service.wsdl -+ -+echo "WSDL compiled. Main test class Test.java can be compiled now." ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/javax/xml/ws/xsanymixed/service.wsdl Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,87 @@ -+<?xml version="1.0" encoding="UTF-8" standalone="no"?> -+<!-- -+ Copyright (c) 2014, 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. -+--> -+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" -+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" -+ xmlns:tns="http://ws.somewhere.org/" -+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" -+ xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" -+ name="TestService" -+ targetNamespace="http://ws.somewhere.org/"> -+ -+ <types> -+ <xsd:schema targetNamespace="http://ws.somewhere.org/" version="1.0" -+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://ws.somewhere.org/"> -+ -+ <xsd:element type="tns:echoRequest" name="echoRequest"/> -+ <xsd:element type="tns:echoResponse" name="echoResponse"/> -+ -+ <xsd:complexType name="echoRequest" mixed="true"> -+ <xsd:sequence> -+ <xsd:any namespace="##any" processContents="skip" minOccurs="1" maxOccurs="10"/> -+ </xsd:sequence> -+ </xsd:complexType> -+ -+ <xsd:complexType name="echoResponse" mixed="true"> -+ <xsd:sequence> -+ <xsd:any namespace="##any" processContents="skip" minOccurs="1" maxOccurs="10"/> -+ </xsd:sequence> -+ </xsd:complexType> -+ </xsd:schema> -+ </types> -+ -+ <message name="echoRequest"> -+ <part element="tns:echoRequest" name="parameters"/> -+ </message> -+ <message name="echoResponse"> -+ <part element="tns:echoResponse" name="parameters"/> -+ </message> -+ -+ <portType name="TestPort"> -+ <operation name="echo"> -+ <input message="tns:echoRequest" wsam:Action="http://ws.somewhere.org/tester/echoRequest"/> -+ <output message="tns:echoResponse" wsam:Action="http://ws.somewhere.org/tester/echoResponse"/> -+ </operation> -+ </portType> -+ -+ <binding name="TestServicePortBinding" type="tns:TestPort"> -+ <soap:binding style="document" -+ transport="http://schemas.xmlsoap.org/soap/http"/> -+ -+ <operation name="echo"> -+ <soap:operation soapAction=""/> -+ <input> -+ <soap:body use="literal"/> -+ </input> -+ <output> -+ <soap:body use="literal"/> -+ </output> -+ </operation> -+ </binding> -+ -+ <service name="TestService"> -+ <port binding="tns:TestServicePortBinding" name="TestPort"> -+ <soap:address location="http://localhost/ws/tester"/> -+ </port> -+ </service> -+</definitions> ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/test/sun/java2d/OpenGL/DrawHugeImageTest.java Mon Dec 08 12:29:42 2014 -0800 -@@ -0,0 +1,108 @@ -+/* -+ * Copyright (c) 2014, 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 8040617 -+ * @summary Test verifies that an attempt to get an accelerated copy of -+ * a huge buffered image does not result in an OOME. -+ * -+ * @run main DrawHugeImageTest -+ */ -+ -+import java.awt.Color; -+import java.awt.Graphics2D; -+import java.awt.GraphicsConfiguration; -+import java.awt.GraphicsEnvironment; -+import java.awt.image.BufferedImage; -+import java.awt.image.VolatileImage; -+ -+public class DrawHugeImageTest { -+ // we have to render the BI source several times in order -+ // to get an accelerated copy to be used. -+ static { -+ System.setProperty("sun.java2d.accthreshold", "1"); -+ } -+ private static final int max_rendering_count = 5; -+ -+ private static final Color srcColor = Color.red; -+ private static final Color dstColor = Color.blue; -+ -+ public static void main(String[] args) { -+ BufferedImage src = createSrc(); -+ -+ VolatileImage dst = createDst(); -+ System.out.println("Dst: " + dst); -+ boolean status; -+ int count = max_rendering_count; -+ -+ do { -+ System.out.println("render image: " + (max_rendering_count - count)); -+ status = render(src, dst); -+ -+ } while (status && count-- > 0); -+ -+ if (!status || count > 0) { -+ throw new RuntimeException("Test failed: " + count); -+ } -+ } -+ -+ private static boolean render(BufferedImage src, VolatileImage dst) { -+ int cnt = 5; -+ do { -+ Graphics2D g = dst.createGraphics(); -+ g.setColor(dstColor); -+ g.fillRect(0, 0, dst.getWidth(), dst.getHeight()); -+ g.drawImage(src, 0, 0, null); -+ g.dispose(); -+ } while (dst.contentsLost() && (--cnt > 0)); -+ -+ if (cnt == 0) { -+ System.err.println("Test failed: unable to render to volatile destination"); -+ return false; -+ } -+ -+ BufferedImage s = dst.getSnapshot(); -+ -+ return s.getRGB(1,1) == srcColor.getRGB(); -+ } -+ -+ private static BufferedImage createSrc() { -+ final int w = 20000; -+ final int h = 5; -+ -+ BufferedImage img = new BufferedImage(w, h, BufferedImage.TYPE_3BYTE_BGR); -+ Graphics2D g = img.createGraphics(); -+ g.setColor(srcColor); -+ g.fillRect(0, 0, w, h); -+ g.dispose(); -+ -+ return img; -+ } -+ -+ private static VolatileImage createDst() { -+ GraphicsConfiguration gc = -+ GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration(); -+ -+ return gc.createCompatibleVolatileImage(200, 200); -+ } -+} ---- ./jdk/test/sun/security/ec/TestEC.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ec/TestEC.java Mon Dec 08 12:29:42 2014 -0800 -@@ -68,6 +68,10 @@ - } - - public static void main0(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - Provider p = Security.getProvider("SunEC"); - - if (p == null) { ---- ./jdk/test/sun/security/pkcs11/sslecc/ClientJSSEServerJSSE.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/pkcs11/sslecc/ClientJSSEServerJSSE.java Mon Dec 08 12:29:42 2014 -0800 -@@ -43,6 +43,10 @@ - private static String[] cmdArgs; - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - cmdArgs = args; - main(new ClientJSSEServerJSSE()); - } ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/ProtocolVersion/HttpsProtocols.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/ProtocolVersion/HttpsProtocols.java Mon Dec 08 12:29:42 2014 -0800 -@@ -32,6 +32,7 @@ - import java.io.*; - import java.net.*; - import javax.net.ssl.*; -+import java.security.Security; - - public class HttpsProtocols implements HostnameVerifier { - -@@ -177,6 +178,10 @@ - volatile Exception clientException = null; - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - String keyFilename = - System.getProperty("test.src", "./") + "/" + pathToStores + - "/" + keyStoreFile; ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/CustomizedDefaultProtocols.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/CustomizedDefaultProtocols.java Mon Dec 08 12:29:42 2014 -0800 -@@ -35,6 +35,7 @@ - import javax.net.*; - import javax.net.ssl.*; - import java.util.Arrays; -+import java.security.Security; - - public class CustomizedDefaultProtocols { - static enum ContextVersion { -@@ -93,6 +94,10 @@ - } - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - boolean failed = false; - for (ContextVersion cv : ContextVersion.values()) { - System.out.println("Checking SSLContext of " + cv.contextVersion); ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/DefaultEnabledProtocols.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/DefaultEnabledProtocols.java Mon Dec 08 12:29:42 2014 -0800 -@@ -34,6 +34,7 @@ - import javax.net.*; - import javax.net.ssl.*; - import java.util.Arrays; -+import java.security.Security; - - public class DefaultEnabledProtocols { - static enum ContextVersion { -@@ -92,6 +93,10 @@ - } - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - boolean failed = false; - for (ContextVersion cv : ContextVersion.values()) { - System.out.println("Checking SSLContext of " + cv.contextVersion); ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/NoOldVersionContext.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLContextImpl/NoOldVersionContext.java Mon Dec 08 12:29:42 2014 -0800 -@@ -35,6 +35,7 @@ - import javax.net.*; - import javax.net.ssl.*; - import java.util.Arrays; -+import java.security.Security; - - public class NoOldVersionContext { - static enum ContextVersion { -@@ -93,6 +94,10 @@ - } - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - boolean failed = false; - for (ContextVersion cv : ContextVersion.values()) { - System.out.println("Checking SSLContext of " + cv.contextVersion); ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLEngineImpl/DelegatedTaskWrongException.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLEngineImpl/DelegatedTaskWrongException.java Mon Dec 08 12:29:42 2014 -0800 -@@ -115,6 +115,9 @@ - } - - public static void main(String args[]) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); - - DelegatedTaskWrongException test; - ---- ./jdk/test/sun/security/ssl/javax/net/ssl/NewAPIs/testEnabledProtocols.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/javax/net/ssl/NewAPIs/testEnabledProtocols.java Mon Dec 08 12:29:42 2014 -0800 -@@ -21,6 +21,11 @@ - * questions. - */ - -+// -+// SunJSSE does not support dynamic system properties, no way to re-use -+// system properties in samevm/agentvm mode. -+// -+ - /* - * @test - * @bug 4416068 4478803 4479736 -@@ -31,9 +36,6 @@ - * 4701722 protocol mismatch exceptions should be consistent between - * SSLv3 and TLSv1 - * @run main/othervm testEnabledProtocols -- * -- * SunJSSE does not support dynamic system properties, no way to re-use -- * system properties in samevm/agentvm mode. - * @author Ram Marti - */ - -@@ -120,6 +122,10 @@ - volatile Exception clientException = null; - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - String keyFilename = - System.getProperty("test.src", "./") + "/" + pathToStores + - "/" + keyStoreFile; ---- ./jdk/test/sun/security/ssl/javax/net/ssl/ServerName/SSLEngineExplorer.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/javax/net/ssl/ServerName/SSLEngineExplorer.java Mon Dec 08 12:29:42 2014 -0800 -@@ -44,6 +44,7 @@ - import java.net.*; - import java.util.*; - import java.nio.channels.*; -+import java.security.Security; - - public class SSLEngineExplorer extends SSLEngineService { - -@@ -231,6 +232,10 @@ - volatile int serverPort = 0; - - public static void main(String args[]) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - if (debug) - System.setProperty("javax.net.debug", "all"); - ---- ./jdk/test/sun/security/ssl/javax/net/ssl/ServerName/SSLSocketExplorer.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/javax/net/ssl/ServerName/SSLSocketExplorer.java Mon Dec 08 12:29:42 2014 -0800 -@@ -45,6 +45,7 @@ - import java.util.*; - import java.net.*; - import javax.net.ssl.*; -+import java.security.Security; - - public class SSLSocketExplorer { - -@@ -224,6 +225,10 @@ - volatile Exception clientException = null; - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - String keyFilename = - System.getProperty("test.src", ".") + "/" + pathToStores + - "/" + keyStoreFile; ---- ./jdk/test/sun/security/ssl/sanity/interop/ClientJSSEServerJSSE.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/security/ssl/sanity/interop/ClientJSSEServerJSSE.java Mon Dec 08 12:29:42 2014 -0800 -@@ -29,9 +29,15 @@ - * @run main/othervm/timeout=300 ClientJSSEServerJSSE - */ - -+import java.security.Security; -+ - public class ClientJSSEServerJSSE { - - public static void main(String[] args) throws Exception { -+ // reset the security property to make sure that the algorithms -+ // and keys used in this test are not disabled. -+ Security.setProperty("jdk.tls.disabledAlgorithms", ""); -+ - CipherTest.main(new JSSEFactory(), args); - } - ---- ./jdk/test/sun/text/resources/LocaleData Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/text/resources/LocaleData Mon Dec 08 12:29:42 2014 -0800 -@@ -7699,3 +7699,6 @@ - # bug 8037343 - FormatData/es_DO/DatePatterns/2=dd/MM/yyyy - FormatData/es_DO/DatePatterns/3=dd/MM/yy -+ -+# bug 8055222 -+CurrencyNames/lt_LT/EUR=\u20AC ---- ./jdk/test/sun/text/resources/LocaleDataTest.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/text/resources/LocaleDataTest.java Mon Dec 08 12:29:42 2014 -0800 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2007, 2014, 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 -@@ -36,7 +36,7 @@ - * 6919624 6998391 7019267 7020960 7025837 7020583 7036905 7066203 7101495 - * 7003124 7085757 7028073 7171028 7189611 8000983 7195759 8004489 8006509 - * 7114053 7074882 7040556 8013836 8021121 6192407 6931564 8027695 7090826 -- * 8017142 8037343 -+ * 8017142 8037343 8055222 - * @summary Verify locale data - * - */ ---- ./jdk/test/sun/util/calendar/zi/tzdata/VERSION Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/VERSION Mon Dec 08 12:29:42 2014 -0800 -@@ -1,24 +1,24 @@ - # - # 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. Oracle designates this - # particular file as subject to the "Classpath" exception as provided - # by Oracle in the LICENSE file that accompanied this code. --# -+# - # 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. - # --tzdata2014c -+tzdata2014j ---- ./jdk/test/sun/util/calendar/zi/tzdata/africa Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/africa Mon Dec 08 12:29:42 2014 -0800 -@@ -21,36 +21,35 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2013-02-21): -+# From Paul Eggert (2014-10-31): - # --# A good source for time zone historical data outside the U.S. is -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Another source occasionally used is Edward W. Whitman, World Time Differences, - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which - # I found in the UCLA library. - # - # For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 - # - # A reliable and entertaining source about time zones is - # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997). -@@ -58,13 +57,13 @@ - # 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 --# the area that includes Nigeria is ``West Africa''. --# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference. -+# '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 -+# 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; -+# 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 -@@ -77,7 +76,7 @@ - # 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 -+# 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. - # -@@ -88,7 +87,6 @@ - # 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 --# 4:00 EAST East Africa Summer Time (no longer used) - - # Algeria - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -117,9 +115,9 @@ - # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's - # more precise 0:09:21. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01 -- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -- 0:00 Algeria WE%sT 1940 Feb 25 2:00 -+Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01 -+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -+ 0:00 Algeria WE%sT 1940 Feb 25 2:00 - 1:00 Algeria CE%sT 1946 Oct 7 - 0:00 - WET 1956 Jan 29 - 1:00 - CET 1963 Apr 14 -@@ -129,92 +127,71 @@ - 1:00 - CET - - # Angola --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Luanda 0:52:56 - LMT 1892 -- 0:52:04 - AOT 1911 May 26 # Angola Time -- 1:00 - WAT -- - # Benin --# Whitman says they switched to 1:00 in 1946, not 1934; --# go with Shanks & Pottenger. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Porto-Novo 0:10:28 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- 1:00 - WAT -+# See Africa/Lagos. - - # Botswana --# From Paul Eggert (2013-02-21): --# Milne says they were regulated by the Cape Town Signal in 1899; --# assume they switched to 2:00 when Cape Town did. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Gaborone 1:43:40 - LMT 1885 -- 1:30 - SAST 1903 Mar -- 2:00 - CAT 1943 Sep 19 2:00 -- 2:00 1:00 CAST 1944 Mar 19 2:00 -- 2:00 - CAT -+# See Africa/Maputo. - - # Burkina Faso --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Ouagadougou -0:06:04 - LMT 1912 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Burundi --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bujumbura 1:57:28 - LMT 1890 -- 2:00 - CAT -+# See Africa/Maputo. - - # Cameroon --# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Douala 0:38:48 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - - # Cape Verde -+# -+# Shanks gives 1907 for the transition to CVT. -+# Perhaps the 1911-05-26 Portuguese decree -+# http://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 -+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 -+ -2:00 - CVT 1975 Nov 25 2:00 - -1:00 - CVT - - # Central African Republic --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bangui 1:14:20 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - - # Chad - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Ndjamena 1:00:12 - LMT 1912 -+Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena - 1:00 - WAT 1979 Oct 14 - 1:00 1:00 WAST 1980 Mar 8 - 1:00 - WAT - - # Comoros --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro -- 3:00 - EAT -+# See Africa/Nairobi. - --# Democratic Republic of Congo --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9 -- 1:00 - WAT --Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9 -- 2:00 - CAT -+# Democratic Republic of the Congo -+# See Africa/Lagos for the western part and Africa/Maputo for the eastern. - - # Republic of the Congo --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Brazzaville 1:01:08 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - --# Cote D'Ivoire -+# Côte d'Ivoire / Ivory Coast - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Abidjan -0:16:08 - LMT 1912 - 0:00 - GMT -+Link Africa/Abidjan Africa/Bamako # Mali -+Link Africa/Abidjan Africa/Banjul # Gambia -+Link Africa/Abidjan Africa/Conakry # Guinea -+Link Africa/Abidjan Africa/Dakar # Senegal -+Link Africa/Abidjan Africa/Freetown # Sierra Leone -+Link Africa/Abidjan Africa/Lome # Togo -+Link Africa/Abidjan Africa/Nouakchott # Mauritania -+Link Africa/Abidjan Africa/Ouagadougou # Burkina Faso -+Link Africa/Abidjan Africa/Sao_Tome # São Tomé and Príncipe -+Link Africa/Abidjan Atlantic/St_Helena # St Helena - - # Djibouti --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul -- 3:00 - EAT -+# See Africa/Nairobi. - - ############################################################################### - -@@ -254,30 +231,26 @@ - # Egyptians would approve the cancellation." - # - # Egypt to cancel daylight saving time --# <a href="http://www.almasryalyoum.com/en/node/407168"> - # http://www.almasryalyoum.com/en/node/407168 --# </a> - # or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_egypt04.html"> - # http://www.worldtimezone.com/dst_news/dst_news_egypt04.html --# </a> - Rule Egypt 1995 2010 - Apr lastFri 0:00s 1:00 S --Rule Egypt 1995 2005 - Sep lastThu 23:00s 0 - -+Rule Egypt 1995 2005 - Sep lastThu 24:00 0 - - # From Steffen Thorsen (2006-09-19): - # The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports: - # Egypt will turn back clocks by one hour at the midnight of Thursday - # after observing the daylight saving time since May. - # http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf --Rule Egypt 2006 only - Sep 21 23:00s 0 - -+Rule Egypt 2006 only - Sep 21 24:00 0 - - # From Dirk Losch (2007-08-14): - # I received a mail from an airline which says that the daylight - # saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07. --# From Jesper Norgaard Welen (2007-08-15): [The following agree:] -+# From Jesper Nørgaard Welen (2007-08-15): [The following agree:] - # http://www.nentjes.info/Bill/bill5.htm - # http://www.timeanddate.com/worldclock/city.html?n=53 - # From Steffen Thorsen (2007-09-04): The official information...: - # http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm --Rule Egypt 2007 only - Sep Thu>=1 23:00s 0 - -+Rule Egypt 2007 only - Sep Thu>=1 24:00 0 - - # From Abdelrahman Hassan (2007-09-06): - # Due to the Hijri (lunar Islamic calendar) year being 11 days shorter - # than the year of the Gregorian calendar, Ramadan shifts earlier each -@@ -311,15 +284,9 @@ - # - # timeanddate[2] and another site I've found[3] also support that. - # --# [1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=492263"> --# https://bugzilla.redhat.com/show_bug.cgi?id=492263 --# </a> --# [2] <a href="http://www.timeanddate.com/worldclock/clockchange.html?n=53"> --# http://www.timeanddate.com/worldclock/clockchange.html?n=53 --# </a> --# [3] <a href="http://wwp.greenwichmeantime.com/time-zone/africa/egypt/"> --# http://wwp.greenwichmeantime.com/time-zone/africa/egypt/ --# </a> -+# [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263 -+# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53 -+# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/ - - # From Arthur David Olson (2009-04-20): - # In 2009 (and for the next several years), Ramadan ends before the fourth -@@ -329,14 +296,10 @@ - # From Steffen Thorsen (2009-08-11): - # We have been able to confirm the August change with the Egyptian Cabinet - # Information and Decision Support Center: --# <a href="http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html"> - # http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html --# </a> - # - # The Middle East News Agency --# <a href="http://www.mena.org.eg/index.aspx"> - # http://www.mena.org.eg/index.aspx --# </a> - # also reports "Egypt starts winter time on August 21" - # today in article numbered "71, 11/08/2009 12:25 GMT." - # Only the title above is available without a subscription to their service, -@@ -344,67 +307,93 @@ - # (at least today). - - # From Alexander Krivenyshev (2010-07-20): --# According to News from Egypt - Al-Masry Al-Youm Egypt's cabinet has -+# According to News from Egypt - Al-Masry Al-Youm Egypt's cabinet has - # decided that Daylight Saving Time will not be used in Egypt during - # Ramadan. - # - # Arabic translation: --# "Clocks to go back during Ramadan--and then forward again" --# <a href="http://www.almasryalyoum.com/en/news/clocks-go-back-during-ramadan-and-then-forward-again"> -+# "Clocks to go back during Ramadan - and then forward again" - # http://www.almasryalyoum.com/en/news/clocks-go-back-during-ramadan-and-then-forward-again --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_egypt02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_egypt02.html --# </a> - - # From Ahmad El-Dardiry (2014-05-07): - # Egypt is to change back to Daylight system on May 15 - # http://english.ahram.org.eg/NewsContent/1/64/100735/Egypt/Politics-/Egypts-government-to-reapply-daylight-saving-time-.aspx - --# From Gunther Vermier (2015-05-13): -+# From Gunther Vermier (2014-05-13): - # our Egypt office confirms that the change will be at 15 May "midnight" (24:00) - --# From Paul Eggert (2014-05-13): -+# From Imed Chihi (2014-06-04): -+# We have finally "located" a precise official reference about the DST changes -+# in Egypt. The Ministers Cabinet decision is explained at -+# http://www.cabinet.gov.eg/Media/CabinetMeetingsDetails.aspx?id=347 ... -+# [T]his (Arabic) site is not accessible outside Egypt, but the page ... -+# translates into: "With regard to daylight saving time, it is scheduled to -+# take effect at exactly twelve o'clock this evening, Thursday, 15 MAY 2014, -+# to be suspended by twelve o'clock on the evening of Thursday, 26 JUN 2014, -+# and re-established again at the end of the month of Ramadan, at twelve -+# o'clock on the evening of Thursday, 31 JUL 2014." This statement has been -+# reproduced by other (more accessible) sites[, e.g.,]... -+# http://elgornal.net/news/news.aspx?id=4699258 -+ -+# From Paul Eggert (2014-06-04): - # Sarah El Deeb and Lee Keath of AP report that the Egyptian government says - # the change is because of blackouts in Cairo, even though Ahram Online (cited --# above) says DST had no affect on electricity consumption. The AP story says --# DST will not be observed during Ramadan. There is no information about when --# DST will end. See: -+# above) says DST had no affect on electricity consumption. There is -+# no information about when DST will end this fall. See: - # http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833 - # --# For now, guess that later transitions will use 2010's rules, and that --# Egypt will agree with Morocco (see below) about the date Ramadan starts and --# ends, though (unlike Morocco) it will switch at 00:00 standard time. In --# Egypt the spring-forward transitions are removed for 2020-2022, when the --# guessed spring-forward date falls during the estimated Ramadan, and all --# transitions removed for 2023-2038, where the estimated Ramadan falls entirely --# outside the guessed daylight-saving time. Ramadan intrudes on the guessed --# DST starting in 2039, but that's beyond our somewhat-arbitrary cutoff. -- --Rule Egypt 2008 only - Aug lastThu 23:00s 0 - --Rule Egypt 2009 only - Aug 20 23:00s 0 - --Rule Egypt 2010 only - Aug 11 0:00 0 - --Rule Egypt 2010 only - Sep 10 0:00 1:00 S --Rule Egypt 2010 only - Sep lastThu 23:00s 0 - -+# For now, guess that later spring and fall transitions will use -+# 2010's rules, and guess that Egypt will switch to standard time at -+# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the -+# first Friday after Ramadan. To implement this, -+# transition dates for 2015 through 2037 were determined by running -+# the following program under GNU Emacs 24.3, with the results integrated -+# by hand into the table below. Ramadan again intrudes on the guessed -+# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff. -+# (let ((islamic-year 1436)) -+# (while (< islamic-year 1460) -+# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year))) -+# (b (calendar-islamic-to-absolute (list 10 1 islamic-year))) -+# (friday 5)) -+# (while (/= friday (mod a 7)) -+# (setq a (1- a))) -+# (while (/= friday (mod b 7)) -+# (setq b (1+ b))) -+# (setq a (1- a)) -+# (setq b (1- b)) -+# (setq a (calendar-gregorian-from-absolute a)) -+# (setq b (calendar-gregorian-from-absolute b)) -+# (insert -+# (format -+# (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n" -+# "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n") -+# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) -+# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) -+# (setq islamic-year (+ 1 islamic-year)))) -+Rule Egypt 2008 only - Aug lastThu 24:00 0 - -+Rule Egypt 2009 only - Aug 20 24:00 0 - -+Rule Egypt 2010 only - Aug 10 24:00 0 - -+Rule Egypt 2010 only - Sep 9 24:00 1:00 S -+Rule Egypt 2010 only - Sep lastThu 24:00 0 - - Rule Egypt 2014 only - May 15 24:00 1:00 S --Rule Egypt 2014 only - Jun 29 0:00s 0 - --Rule Egypt 2014 only - Jul 29 0:00s 1:00 S --Rule Egypt 2014 max - Sep lastThu 23:00s 0 - -+Rule Egypt 2014 only - Jun 26 24:00 0 - -+Rule Egypt 2014 only - Jul 31 24:00 1:00 S -+Rule Egypt 2014 max - Sep lastThu 24:00 0 - - Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S --Rule Egypt 2015 only - Jun 18 0:00s 0 - --Rule Egypt 2015 only - Jul 18 0:00s 1:00 S --Rule Egypt 2016 only - Jun 7 0:00s 0 - --Rule Egypt 2016 only - Jul 7 0:00s 1:00 S --Rule Egypt 2017 only - May 27 0:00s 0 - --Rule Egypt 2017 only - Jun 26 0:00s 1:00 S --Rule Egypt 2018 only - May 16 0:00s 0 - --Rule Egypt 2018 only - Jun 15 0:00s 1:00 S --Rule Egypt 2019 only - May 6 0:00s 0 - --Rule Egypt 2019 only - Jun 5 0:00s 1:00 S --Rule Egypt 2020 only - May 24 0:00s 1:00 S --Rule Egypt 2021 only - May 13 0:00s 1:00 S --Rule Egypt 2022 only - May 3 0:00s 1:00 S -+Rule Egypt 2015 only - Jun 11 24:00 0 - -+Rule Egypt 2015 only - Jul 23 24:00 1:00 S -+Rule Egypt 2016 only - Jun 2 24:00 0 - -+Rule Egypt 2016 only - Jul 7 24:00 1:00 S -+Rule Egypt 2017 only - May 25 24:00 0 - -+Rule Egypt 2017 only - Jun 29 24:00 1:00 S -+Rule Egypt 2018 only - May 10 24:00 0 - -+Rule Egypt 2018 only - Jun 14 24:00 1:00 S -+Rule Egypt 2019 only - May 2 24:00 0 - -+Rule Egypt 2019 only - Jun 6 24:00 1:00 S -+Rule Egypt 2020 only - May 28 24:00 1:00 S -+Rule Egypt 2021 only - May 13 24:00 1:00 S -+Rule Egypt 2022 only - May 5 24:00 1:00 S - Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] -@@ -412,60 +401,44 @@ - 2:00 Egypt EE%sT - - # Equatorial Guinea --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Malabo 0:35:08 - LMT 1912 -- 0:00 - GMT 1963 Dec 15 -- 1:00 - WAT -+# See Africa/Lagos. - - # Eritrea --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Asmara 2:35:32 - LMT 1870 -- 2:35:32 - AMT 1890 # Asmara Mean Time -- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT -- 3:00 - EAT -- - # Ethiopia --# From Paul Eggert (2006-03-22): --# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones --# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890. --# We'll guess that 38E50 is for Adis Dera. --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Addis_Ababa 2:34:48 - LMT 1870 -- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT -- 3:00 - EAT -+# See Africa/Nairobi. - - # Gabon --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Libreville 0:37:48 - LMT 1912 -- 1:00 - WAT -+# See Africa/Lagos. - - # Gambia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Banjul -1:06:36 - LMT 1912 -- -1:06:36 - BMT 1935 # Banjul Mean Time -- -1:00 - WAT 1964 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Ghana - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --# Whitman says DST was observed from 1931 to ``the present''; --# go with Shanks & Pottenger. --Rule Ghana 1936 1942 - Sep 1 0:00 0:20 GHST --Rule Ghana 1936 1942 - Dec 31 0:00 0 GMT -+# Whitman says DST was observed from 1931 to "the present"; -+# Shanks & Pottenger say 1936 to 1942; -+# and September 1 to January 1 is given by: -+# Scott Keltie J, Epstein M (eds), The Statesman's Year-Book, -+# 57th ed. Macmillan, London (1920), OCLC 609408015, pp xxviii. -+# For lack of better info, assume DST was observed from 1920 to 1942. -+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 - - # Guinea --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Conakry -0:54:52 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- -1:00 - WAT 1960 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Guinea-Bissau -+# -+# 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 -+# with the date that it took effect, namely 1912-01-01. -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bissau -1:02:20 - LMT 1911 May 26 -+Zone Africa/Bissau -1:02:20 - LMT 1912 Jan 1 - -1:00 - WAT 1975 - 0:00 - GMT - -@@ -476,13 +449,18 @@ - 2:30 - BEAT 1940 - 2:45 - BEAUT 1960 - 3:00 - EAT -+Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia -+Link Africa/Nairobi Africa/Asmara # Eritrea -+Link Africa/Nairobi Africa/Dar_es_Salaam # Tanzania -+Link Africa/Nairobi Africa/Djibouti -+Link Africa/Nairobi Africa/Kampala # Uganda -+Link Africa/Nairobi Africa/Mogadishu # Somalia -+Link Africa/Nairobi Indian/Antananarivo # Madagascar -+Link Africa/Nairobi Indian/Comoro -+Link Africa/Nairobi Indian/Mayotte - - # Lesotho --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Maseru 1:50:00 - LMT 1903 Mar -- 2:00 - SAST 1943 Sep 19 2:00 -- 2:00 1:00 SAST 1944 Mar 19 2:00 -- 2:00 - SAST -+# See Africa/Johannesburg. - - # Liberia - # From Paul Eggert (2006-03-22): -@@ -549,38 +527,22 @@ - 2:00 - EET 1982 - 1:00 Libya CE%sT 1990 May 4 - # The 1996 and 1997 entries are from Shanks & Pottenger; --# the IATA SSIM data contain some obvious errors. -+# the IATA SSIM data entries contain some obvious errors. - 2:00 - EET 1996 Sep 30 - 1:00 Libya CE%sT 1997 Oct 4 -- 2:00 - EET 2012 Nov 10 2:00 -- 1:00 Libya CE%sT 2013 Oct 25 2:00 -+ 2:00 - EET 2012 Nov 10 2:00 -+ 1:00 Libya CE%sT 2013 Oct 25 2:00 - 2:00 - EET - - # Madagascar --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul -- 3:00 - EAT 1954 Feb 27 23:00s -- 3:00 1:00 EAST 1954 May 29 23:00s -- 3:00 - EAT -+# See Africa/Nairobi. - - # Malawi --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar -- 2:00 - CAT -+# See Africa/Maputo. - - # Mali --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Bamako -0:32:00 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- -1:00 - WAT 1960 Jun 20 -- 0:00 - GMT -- - # Mauritania --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Nouakchott -1:03:48 - LMT 1912 -- 0:00 - GMT 1934 Feb 26 -- -1:00 - WAT 1960 Nov 28 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Mauritius - -@@ -604,9 +566,7 @@ - - # From Steffen Thorsen (2008-07-10): - # According to --# <a href="http://www.lexpress.mu/display_article.php?news_id=111216"> - # http://www.lexpress.mu/display_article.php?news_id=111216 --# </a> - # (in French), Mauritius will start and end their DST a few days earlier - # than previously announced (2008-11-01 to 2009-03-31). The new start - # date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time -@@ -621,22 +581,17 @@ - - # From Alex Krivenyshev (2008-07-11): - # Seems that English language article "The revival of daylight saving --# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally -+# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally - # published on Monday, June 30, 2008... - # - # I guess that article in French "Le gouvernement avance l'introduction --# de l'heure d'ete" stating that DST in Mauritius starting on October 26 --# and ending on March 27, 2009 is the most recent one. --# ... --# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html"> -+# de l'heure d'été" stating that DST in Mauritius starting on October 26 -+# and ending on March 27, 2009 is the most recent one.... - # http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html --# </a> - - # From Riad M. Hossen Ally (2008-08-03): - # The Government of Mauritius weblink --# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD"> - # http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD --# </a> - # Cabinet Decision of July 18th, 2008 states as follows: - # - # 4. ...Cabinet has agreed to the introduction into the National Assembly -@@ -646,33 +601,25 @@ - # States of America. It will start at two o'clock in the morning on the - # last Sunday of October and will end at two o'clock in the morning on - # the last Sunday of March the following year. The summer time for the --# year 2008 - 2009 will, therefore, be effective as from 26 October 2008 -+# year 2008-2009 will, therefore, be effective as from 26 October 2008 - # and end on 29 March 2009. - - # From Ed Maste (2008-10-07): - # THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the - # beginning / ending of summer time is 2 o'clock standard time in the - # morning of the last Sunday of October / last Sunday of March. --# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf"> - # http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf --# </a> - - # From Steffen Thorsen (2009-06-05): - # According to several sources, Mauritius will not continue to observe - # DST the coming summer... - # - # Some sources, in French: --# <a href="http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB"> - # http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB --# </a> --# <a href="http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-"> - # http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints- --# </a> - # - # Our wrap-up: --# <a href="http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html"> - # http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html --# </a> - - # From Arthur David Olson (2009-07-11): - # The "mauritius-dst-will-not-repeat" wrapup includes this: -@@ -685,18 +632,16 @@ - 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 -+Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis - 4:00 Mauritius MU%sT # Mauritius Time - # Agalega Is, Rodriguez - # no information; probably like Indian/Mauritius - - # Mayotte --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou -- 3:00 - EAT -+# See Africa/Nairobi. - - # Morocco --# See the `europe' file for Spanish Morocco (Africa/Ceuta). -+# See the 'europe' file for Spanish Morocco (Africa/Ceuta). - - # From Alex Krivenyshev (2008-05-09): - # Here is an article that Morocco plan to introduce Daylight Saving Time between -@@ -704,60 +649,44 @@ - # - # "... Morocco is to save energy by adjusting its clock during summer so it will - # be one hour ahead of GMT between 1 June and 27 September, according to --# Communication Minister and Gov ernment Spokesman, Khalid Naciri...." -+# Communication Minister and Government Spokesman, Khalid Naciri...." - # --# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html"> - # http://www.worldtimezone.net/dst_news/dst_news_morocco01.html --# </a> --# OR --# <a href="http://en.afrik.com/news11892.html"> - # http://en.afrik.com/news11892.html --# </a> - - # From Alex Krivenyshev (2008-05-09): --# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse: --# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view"> -+# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe -+# Presse: - # http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view --# </a> - # - # Morocco shifts to daylight time on June 1st through September 27, Govt. - # spokesman. - - # From Patrice Scattolin (2008-05-09): - # According to this article: --# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html"> - # http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html --# </a> --# (and republished here: --# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html"> --# http://www.actu.ma/heure-dete-comment_i127896_0.html --# </a> --# ) --# the changes occurs at midnight: -+# (and republished here: <http://www.actu.ma/heure-dete-comment_i127896_0.html>) -+# the changes occur at midnight: - # --# saturday night may 31st at midnight (which in french is to be --# intrepreted as the night between saturday and sunday) --# sunday night the 28th at midnight -+# Saturday night May 31st at midnight (which in French is to be -+# interpreted as the night between Saturday and Sunday) -+# Sunday night the 28th at midnight - # --# Seeing that the 28th is monday, I am guessing that she intends to say --# the midnight of the 28th which is the midnight between sunday and --# monday, which jives with other sources that say that it's inclusive --# june1st to sept 27th. -+# Seeing that the 28th is Monday, I am guessing that she intends to say -+# the midnight of the 28th which is the midnight between Sunday and -+# Monday, which jives with other sources that say that it's inclusive -+# June 1st to Sept 27th. - # - # The decision was taken by decree *2-08-224 *but I can't find the decree - # published on the web. - # - # It's also confirmed here: --# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm"> - # http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm --# </a> --# on a government portal as being between june 1st and sept 27th (not yet --# posted in english). -+# on a government portal as being between June 1st and Sept 27th (not yet -+# posted in English). - # --# The following google query will generate many relevant hits: --# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search"> -+# The following Google query will generate many relevant hits: - # http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search --# </a> - - # From Steffen Thorsen (2008-08-27): - # Morocco will change the clocks back on the midnight between August 31 -@@ -765,47 +694,32 @@ - # of September: - # - # One article about it (in French): --# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default"> - # http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default --# </a> - # - # We have some further details posted here: --# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html"> - # http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html --# </a> - - # From Steffen Thorsen (2009-03-17): - # Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according - # to many sources, such as --# <a href="http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html"> - # http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html --# </a> --# <a href="http://www.medi1sat.ma/fr/depeche.aspx?idp=2312"> - # http://www.medi1sat.ma/fr/depeche.aspx?idp=2312 --# </a> - # (French) - # - # Our summary: --# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html"> - # http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html --# </a> - - # From Alexander Krivenyshev (2009-03-17): - # Here is a link to official document from Royaume du Maroc Premier Ministre, --# Ministere de la Modernisation des Secteurs Publics -+# Ministère de la Modernisation des Secteurs Publics - # - # Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967) - # concerning the amendment of the legal time, the Ministry of Modernization of - # Public Sectors announced that the official time in the Kingdom will be - # advanced 60 minutes from Sunday 31 May 2009 at midnight. - # --# <a href="http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf"> - # http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf --# </a> --# --# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_morocco03.html --# </a> - - # From Steffen Thorsen (2010-04-13): - # Several news media in Morocco report that the Ministry of Modernization -@@ -813,51 +727,33 @@ - # 2010-05-02 to 2010-08-08. - # - # Example: --# <a href="http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html"> - # http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html --# </a> - # (French) - # Our page: --# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html"> - # http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html --# </a> - - # From Dan Abitol (2011-03-30): - # ...Rules for Africa/Casablanca are the following (24h format) --# The 3rd april 2011 at 00:00:00, [it] will be 3rd april 1:00:00 --# The 31th july 2011 at 00:59:59, [it] will be 31th July 00:00:00 -+# The 3rd April 2011 at 00:00:00, [it] will be 3rd April 01:00:00 -+# The 31st July 2011 at 00:59:59, [it] will be 31st July 00:00:00 - # ...Official links of change in morocco - # The change was broadcast on the FM Radio - # I ve called ANRT (telecom regulations in Morocco) at - # +212.537.71.84.00 --# <a href="http://www.anrt.net.ma/fr/"> - # http://www.anrt.net.ma/fr/ --# </a> - # They said that --# <a href="http://www.map.ma/fr/sections/accueil/l_heure_legale_au_ma/view"> - # http://www.map.ma/fr/sections/accueil/l_heure_legale_au_ma/view --# </a> - # is the official publication to look at. - # They said that the decision was already taken. - # - # More articles in the press --# <a href="http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-lev"> --# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-lev --# </a> --# e.html --# <a href="http://www.lematin.ma/Actualite/Express/Article.asp?id=148923"> -+# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html - # http://www.lematin.ma/Actualite/Express/Article.asp?id=148923 --# </a> --# <a href="http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim"> - # http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim --# anche-prochain-5538.html --# </a> - - # From Petr Machata (2011-03-30): - # They have it written in English here: --# <a href="http://www.map.ma/eng/sections/home/morocco_to_spring_fo/view"> - # http://www.map.ma/eng/sections/home/morocco_to_spring_fo/view --# </a> - # - # It says there that "Morocco will resume its standard time on July 31, - # 2011 at midnight." Now they don't say whether they mean midnight of -@@ -865,20 +761,16 @@ - # also been like that in the past. - - # From Alexander Krivenyshev (2012-03-09): --# According to Infomédiaire web site from Morocco (infomediaire.ma), --# on March 9, 2012, (in French) Heure légale: --# Le Maroc adopte officiellement l'heure d'été --# <a href="http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9"> -+# According to Infomédiaire web site from Morocco (infomediaire.ma), -+# on March 9, 2012, (in French) Heure légale: -+# Le Maroc adopte officiellement l'heure d'été - # http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9 --# </a> - # Governing Council adopted draft decree, that Morocco DST starts on - # the last Sunday of March (March 25, 2012) and ends on - # last Sunday of September (September 30, 2012) - # except the month of Ramadan. - # or (brief) --# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco06.html"> - # http://www.worldtimezone.com/dst_news/dst_news_morocco06.html --# </a> - - # From Arthur David Olson (2012-03-10): - # The infomediaire.ma source indicates that the system is to be in -@@ -889,17 +781,13 @@ - - # From Christophe Tropamer (2012-03-16): - # Seen Morocco change again: --# <a href="http://www.le2uminutes.com/actualite.php"> - # http://www.le2uminutes.com/actualite.php --# </a> --# "...à partir du dernier dimance d'avril et non fins mars, --# comme annoncé précédemment." -+# "...à partir du dernier dimanche d'avril et non fins mars, -+# comme annoncé précédemment." - - # From Milamber Space Network (2012-07-17): - # The official return to GMT is announced by the Moroccan government: --# <a href="http://www.mmsp.gov.ma/fr/actualites.aspx?id=288"> - # http://www.mmsp.gov.ma/fr/actualites.aspx?id=288 [in French] --# </a> - # - # Google translation, lightly edited: - # Back to the standard time of the Kingdom (GMT) -@@ -917,7 +805,7 @@ - # announced a bit in advance. On 2012-07-11 the Moroccan government - # announced that year's Ramadan daylight-saving transitions would be - # 2012-07-20 and 2012-08-20; see --# <http://www.mmsp.gov.ma/fr/actualites.aspx?id=288>. -+# http://www.mmsp.gov.ma/fr/actualites.aspx?id=288 - - # From Andrew Paprocki (2013-07-02): - # Morocco announced that the year's Ramadan daylight-savings -@@ -937,39 +825,36 @@ - # From Sebastien Willemijns (2014-03-18): - # http://www.afriquinfos.com/articles/2014/3/18/maroc-heure-dete-avancez-tous-horloges-247891.asp - --# From Paul Eggert (2014-03-19): --# To estimate what the Moroccan government will do in future years, --# transition dates for 2014 through 2038 were determined by running --# the following program under GNU Emacs 24.3: --# --# (let ((islamic-year 1435)) --# (while (< islamic-year 1461) --# (let ((a --# (calendar-gregorian-from-absolute --# (calendar-islamic-to-absolute (list 9 1 islamic-year)))) --# (b --# (calendar-gregorian-from-absolute --# (calendar-islamic-to-absolute (list 10 1 islamic-year))))) --# (insert --# (format --# (concat "Rule\tMorocco\t%d\tonly\t-\t%s\t %2d\t 3:00\t0\t-\n" --# "Rule\tMorocco\t%d\tonly\t-\t%s\t %2d\t 2:00\t1:00\tS\n") --# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) --# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) -+# From Milamber Space Network (2014-06-05): -+# The Moroccan government has recently announced that the country will return -+# to standard time at 03:00 on Saturday, June 28, 2014 local time.... DST -+# will resume again at 02:00 on Saturday, August 2, 2014.... -+# http://www.mmsp.gov.ma/fr/actualites.aspx?id=586 -+ -+# From Paul Eggert (2014-06-05): -+# For now, guess that later spring and fall transitions will use 2014's rules, -+# and guess that Morocco will switch to standard time at 03:00 the last -+# Saturday before Ramadan, and back to DST at 02:00 the first Saturday after -+# Ramadan. To implement this, transition dates for 2015 through 2037 were -+# determined by running the following program under GNU Emacs 24.3, with the -+# results integrated by hand into the table below. -+# (let ((islamic-year 1436)) -+# (while (< islamic-year 1460) -+# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year))) -+# (b (calendar-islamic-to-absolute (list 10 1 islamic-year))) -+# (saturday 6)) -+# (while (/= saturday (mod (setq a (1- a)) 7))) -+# (while (/= saturday (mod b 7)) -+# (setq b (1+ b))) -+# (setq a (calendar-gregorian-from-absolute a)) -+# (setq b (calendar-gregorian-from-absolute b)) -+# (insert -+# (format -+# (concat "Rule\tMorocco\t%d\tonly\t-\t%s\t%2d\t 3:00\t0\t-\n" -+# "Rule\tMorocco\t%d\tonly\t-\t%s\t%2d\t 2:00\t1:00\tS\n") -+# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a)) -+# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b))))) - # (setq islamic-year (+ 1 islamic-year)))) --# --# with spring-forward transitions removed for 2023-2025, when the --# normal spring-forward date falls during the estimated Ramadan; with --# all transitions removed for 2026-2035, where the estimated Ramadan --# falls entirely outside daylight-saving time; and with fall-back --# transitions removed for 2036-2037, where the normal fall-back --# date falls during the estimated Ramadan. Normally, the table would --# stop after 2037 because 32-bit time_t values roll around early in 2038, --# but that would imply a prediction of perpetual DST after March 2038 --# due to the year-2037 glitches. So, this table instead stops after --# 2038, the first non-glitchy year after the 32-bit rollover. --# An advantage of stopping after 2038 is that it lets zic guess --# TZ='WET0WEST,M3.5.0,M10.5.0/3' for time stamps far in the future. - - # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S - -@@ -991,46 +876,44 @@ - Rule Morocco 2008 only - Jun 1 0:00 1:00 S - Rule Morocco 2008 only - Sep 1 0:00 0 - - Rule Morocco 2009 only - Jun 1 0:00 1:00 S --Rule Morocco 2009 only - Aug 21 0:00 0 - -+Rule Morocco 2009 only - Aug 21 0:00 0 - - Rule Morocco 2010 only - May 2 0:00 1:00 S - Rule Morocco 2010 only - Aug 8 0:00 0 - - Rule Morocco 2011 only - Apr 3 0:00 1:00 S --Rule Morocco 2011 only - Jul 31 0 0 - --Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S --Rule Morocco 2012 only - Sep 30 3:00 0 - --Rule Morocco 2012 only - Jul 20 3:00 0 - --Rule Morocco 2012 only - Aug 20 2:00 1:00 S --Rule Morocco 2013 only - Jul 7 3:00 0 - --Rule Morocco 2013 only - Aug 10 2:00 1:00 S --Rule Morocco 2013 2035 - Oct lastSun 3:00 0 - --Rule Morocco 2014 2022 - Mar lastSun 2:00 1:00 S --Rule Morocco 2014 only - Jun 29 3:00 0 - --Rule Morocco 2014 only - Jul 29 2:00 1:00 S --Rule Morocco 2015 only - Jun 18 3:00 0 - --Rule Morocco 2015 only - Jul 18 2:00 1:00 S --Rule Morocco 2016 only - Jun 7 3:00 0 - --Rule Morocco 2016 only - Jul 7 2:00 1:00 S --Rule Morocco 2017 only - May 27 3:00 0 - --Rule Morocco 2017 only - Jun 26 2:00 1:00 S --Rule Morocco 2018 only - May 16 3:00 0 - --Rule Morocco 2018 only - Jun 15 2:00 1:00 S --Rule Morocco 2019 only - May 6 3:00 0 - --Rule Morocco 2019 only - Jun 5 2:00 1:00 S --Rule Morocco 2020 only - Apr 24 3:00 0 - --Rule Morocco 2020 only - May 24 2:00 1:00 S --Rule Morocco 2021 only - Apr 13 3:00 0 - --Rule Morocco 2021 only - May 13 2:00 1:00 S --Rule Morocco 2022 only - Apr 3 3:00 0 - --Rule Morocco 2022 only - May 3 2:00 1:00 S --Rule Morocco 2023 only - Apr 22 2:00 1:00 S --Rule Morocco 2024 only - Apr 10 2:00 1:00 S --Rule Morocco 2025 only - Mar 31 2:00 1:00 S --Rule Morocco 2026 max - Mar lastSun 2:00 1:00 S --Rule Morocco 2036 only - Oct 21 3:00 0 - --Rule Morocco 2037 only - Oct 11 3:00 0 - --Rule Morocco 2038 only - Sep 30 3:00 0 - --Rule Morocco 2038 only - Oct 30 2:00 1:00 S --Rule Morocco 2038 max - Oct lastSun 3:00 0 - -+Rule Morocco 2011 only - Jul 31 0 0 - -+Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S -+Rule Morocco 2012 only - Sep 30 3:00 0 - -+Rule Morocco 2012 only - Jul 20 3:00 0 - -+Rule Morocco 2012 only - Aug 20 2:00 1:00 S -+Rule Morocco 2013 only - Jul 7 3:00 0 - -+Rule Morocco 2013 only - Aug 10 2:00 1:00 S -+Rule Morocco 2013 max - Oct lastSun 3:00 0 - -+Rule Morocco 2014 2022 - Mar lastSun 2:00 1:00 S -+Rule Morocco 2014 only - Jun 28 3:00 0 - -+Rule Morocco 2014 only - Aug 2 2:00 1:00 S -+Rule Morocco 2015 only - Jun 13 3:00 0 - -+Rule Morocco 2015 only - Jul 18 2:00 1:00 S -+Rule Morocco 2016 only - Jun 4 3:00 0 - -+Rule Morocco 2016 only - Jul 9 2:00 1:00 S -+Rule Morocco 2017 only - May 20 3:00 0 - -+Rule Morocco 2017 only - Jul 1 2:00 1:00 S -+Rule Morocco 2018 only - May 12 3:00 0 - -+Rule Morocco 2018 only - Jun 16 2:00 1:00 S -+Rule Morocco 2019 only - May 4 3:00 0 - -+Rule Morocco 2019 only - Jun 8 2:00 1:00 S -+Rule Morocco 2020 only - Apr 18 3:00 0 - -+Rule Morocco 2020 only - May 30 2:00 1:00 S -+Rule Morocco 2021 only - Apr 10 3:00 0 - -+Rule Morocco 2021 only - May 15 2:00 1:00 S -+Rule Morocco 2022 only - Apr 2 3:00 0 - -+Rule Morocco 2022 only - May 7 2:00 1:00 S -+Rule Morocco 2023 only - Apr 22 2:00 1:00 S -+Rule Morocco 2024 only - Apr 13 2:00 1:00 S -+Rule Morocco 2025 only - Apr 5 2:00 1:00 S -+Rule Morocco 2026 max - Mar lastSun 2:00 1:00 S -+Rule Morocco 2035 only - Oct 27 3:00 0 - -+Rule Morocco 2036 only - Oct 18 3:00 0 - -+Rule Morocco 2037 only - Oct 10 3:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26 -@@ -1049,21 +932,34 @@ - # Assume that this has been true since Western Sahara switched to GMT, - # since most of it was then controlled by Morocco. - --Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan -+Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún - -1:00 - WAT 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 -+# merely made it official? -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Maputo 2:10:20 - LMT 1903 Mar - 2:00 - CAT -+Link Africa/Maputo Africa/Blantyre # Malawi -+Link Africa/Maputo Africa/Bujumbura # Burundi -+Link Africa/Maputo Africa/Gaborone # Botswana -+Link Africa/Maputo Africa/Harare # Zimbabwe -+Link Africa/Maputo Africa/Kigali # Rwanda -+Link Africa/Maputo Africa/Lubumbashi # E Dem. Rep. of Congo -+Link Africa/Maputo Africa/Lusaka # Zambia - - # Namibia - # The 1994-04-03 transition is from Shanks & Pottenger. - # Shanks & Pottenger report no DST after 1998-04; go with IATA. - --# From Petronella Sibeene (2007-03-30) in --# <http://allafrica.com/stories/200703300178.html>: -+# From Petronella Sibeene (2007-03-30): -+# http://allafrica.com/stories/200703300178.html - # While the entire country changes its time, Katima Mulilo and other - # settlements in Caprivi unofficially will not because the sun there - # rises and sets earlier compared to other regions. Chief of -@@ -1080,34 +976,41 @@ - 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 -- 2:00 - SAST 1942 Sep 20 2:00 -- 2:00 1:00 SAST 1943 Mar 21 2:00 -+ 1:30 - SWAT 1903 Mar # SW Africa Time -+ 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 - 2:00 - CAT 1994 Apr 3 - 1:00 Namibia WA%sT - - # Niger --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Niamey 0:08:28 - LMT 1912 -- -1:00 - WAT 1934 Feb 26 -- 0:00 - GMT 1960 -- 1:00 - WAT -+# See Africa/Lagos. - - # Nigeria - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Lagos 0:13:36 - LMT 1919 Sep - 1:00 - WAT -+Link Africa/Lagos Africa/Bangui # Central African Republic -+Link Africa/Lagos Africa/Brazzaville # Rep. of the Congo -+Link Africa/Lagos Africa/Douala # Cameroon -+Link Africa/Lagos Africa/Kinshasa # Dem. Rep. of the Congo (west) -+Link Africa/Lagos Africa/Libreville # Gabon -+Link Africa/Lagos Africa/Luanda # Angola -+Link Africa/Lagos Africa/Malabo # Equatorial Guinea -+Link Africa/Lagos Africa/Niamey # Niger -+Link Africa/Lagos Africa/Porto-Novo # Benin - --# Reunion -+# Réunion - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis -- 4:00 - RET # Reunion Time -+Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis -+ 4:00 - RET # Réunion Time - # --# Scattered Islands (Iles Eparses) administered from Reunion are as follows. -+# Crozet Islands also observes Réunion time; see the 'antarctica' file. -+# -+# Scattered Islands (Îles Éparses) administered from Réunion are as follows. - # The following information about them is taken from --# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French; --# no longer available as of 1999-08-17). -+# Îles Éparses (<http://www.outre-mer.gouv.fr/domtom/ile.htm>, 1997-07-22, -+# in French; no longer available as of 1999-08-17). - # We have no info about their time zone histories. - # - # Bassas da India - uninhabited -@@ -1117,37 +1020,24 @@ - # Tromelin - inhabited until at least 1958 - - # Rwanda --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Kigali 2:00:16 - LMT 1935 Jun -- 2:00 - CAT -+# See Africa/Maputo. - - # St Helena --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown -- -0:22:48 - JMT 1951 # Jamestown Mean Time -- 0:00 - GMT -+# See Africa/Abidjan. - # The other parts of the St Helena territory are similar: - # Tristan da Cunha: on GMT, say Whitman and the CIA --# Ascension: on GMT, says usno1995 and the CIA -+# Ascension: on GMT, say the USNO (1995-12-21) and the CIA - # Gough (scientific station since 1955; sealers wintered previously): - # on GMT, says the CIA --# Inaccessible, Nightingale: no information, but probably GMT -+# Inaccessible, Nightingale: uninhabited - --# Sao Tome and Principe --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Sao_Tome 0:26:56 - LMT 1884 -- -0:36:32 - LMT 1912 # Lisbon Mean Time -- 0:00 - GMT -- -+# São Tomé and Príncipe - # Senegal --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Dakar -1:09:44 - LMT 1912 -- -1:00 - WAT 1941 Jun -- 0:00 - GMT -+# See Africa/Abidjan. - - # Seychelles - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria -+Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria - 4:00 - SCT # Seychelles Time - # From Paul Eggert (2001-05-30): - # Aldabra, Farquhar, and Desroches, originally dependencies of the -@@ -1157,24 +1047,10 @@ - # Possibly the islands were uninhabited. - - # Sierra Leone --# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger. --Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST --Rule SL 1935 1942 - Oct 1 0:00 0 WAT --Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST --Rule SL 1957 1962 - Sep 1 0:00 0 GMT --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Freetown -0:53:00 - LMT 1882 -- -0:53:00 - FMT 1913 Jun # Freetown Mean Time -- -1:00 SL %s 1957 -- 0:00 SL %s -+# See Africa/Abidjan. - - # Somalia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov -- 3:00 - EAT 1931 -- 2:30 - BEAT 1957 -- 3:00 - EAT -+# See Africa/Nairobi. - - # South Africa - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1184,15 +1060,18 @@ - Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8 - 1:30 - SAST 1903 Mar - 2:00 SA SAST -+Link Africa/Johannesburg Africa/Maseru # Lesotho -+Link Africa/Johannesburg Africa/Mbabane # Swaziland -+# - # Marion and Prince Edward Is - # scientific station since 1947 - # no information - - # Sudan - # --# From <a href="http://www.sunanews.net/sn13jane.html"> --# Sudan News Agency (2000-01-13) --# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen: -+# From <http://www.sunanews.net/sn13jane.html> -+# Sudan News Agency (2000-01-13), -+# also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen: - # Clocks will be moved ahead for 60 minutes all over the Sudan as of noon - # Saturday.... This was announced Thursday by Caretaker State Minister for - # Manpower Abdul-Rahman Nur-Eddin. -@@ -1211,26 +1090,18 @@ - Link Africa/Khartoum Africa/Juba - - # Swaziland --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar -- 2:00 - SAST -+# See Africa/Johannesburg. - - # Tanzania --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931 -- 3:00 - EAT 1948 -- 2:45 - BEAUT 1961 -- 3:00 - EAT -+# See Africa/Nairobi. - - # Togo --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Lome 0:04:52 - LMT 1893 -- 0:00 - GMT -+# See Africa/Abidjan. - - # Tunisia - - # From Gwillim Law (2005-04-30): --# My correspondent, Risto Nykanen, has alerted me to another adoption of DST, -+# My correspondent, Risto Nykänen, has alerted me to another adoption of DST, - # this time in Tunisia. According to Yahoo France News - # <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP - # and dated 2005-04-26, "Tunisia has decided to advance its official time by -@@ -1239,8 +1110,8 @@ - # Saturday." (My translation) - # - # From Oscar van Vlijmen (2005-05-02): --# LaPresse, the first national daily newspaper ... --# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html> -+# La Presse, the first national daily newspaper ... -+# http://www.lapresse.tn/archives/archives280405/actualites/lheure.html - # ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30, - # 1h standard time. - # -@@ -1253,18 +1124,12 @@ - # From Steffen Thorsen (2009-03-16): - # According to several news sources, Tunisia will not observe DST this year. - # (Arabic) --# <a href="http://www.elbashayer.com/?page=viewn&nid=42546"> - # http://www.elbashayer.com/?page=viewn&nid=42546 --# </a> --# <a href="http://www.babnet.net/kiwidetail-15295.asp"> - # http://www.babnet.net/kiwidetail-15295.asp --# </a> - # - # We have also confirmed this with the US embassy in Tunisia. - # We have a wrap-up about this on the following page: --# <a href="http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html"> - # http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html --# </a> - - # From Alexander Krivenyshev (2009-03-17): - # Here is a link to Tunis Afrique Presse News Agency -@@ -1272,20 +1137,17 @@ - # Standard time to be kept the whole year long (tap.info.tn): - # - # (in English) --# <a href="http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157"> - # http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157 --# </a> - # - # (in Arabic) --# <a href="http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1"> - # http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1 --# </a> - --# From Arthur David Olson (2009--3-18): --# The Tunis Afrique Presse News Agency notice contains this: "This measure is due to the fact --# that the fasting month of ramadan coincides with the period concerned by summer time. --# Therefore, the standard time will be kept unchanged the whole year long." --# So foregoing DST seems to be an exception (albeit one that may be repeated in the future). -+# From Arthur David Olson (2009-03-18): -+# The Tunis Afrique Presse News Agency notice contains this: "This measure is -+# due to the fact that the fasting month of Ramadan coincides with the period -+# concerned by summer time. Therefore, the standard time will be kept -+# unchanged the whole year long." So foregoing DST seems to be an exception -+# (albeit one that may be repeated in the future). - - # From Alexander Krivenyshev (2010-03-27): - # According to some news reports Tunis confirmed not to use DST in 2010 -@@ -1297,12 +1159,8 @@ - # coincided with the month of Ramadan..." - # - # (in Arabic) --# <a href="http://www.moheet.com/show_news.aspx?nid=358861&pg=1"> - # http://www.moheet.com/show_news.aspx?nid=358861&pg=1 --# <a href="http://www.almadenahnews.com/newss/news.php?c=118&id=38036"> - # http://www.almadenahnews.com/newss/news.php?c=118&id=38036 --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_tunis02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_tunis02.html - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1337,23 +1195,12 @@ - # Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Africa/Tunis 0:40:44 - LMT 1881 May 12 -- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time - 1:00 Tunisia CE%sT - - # Uganda --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Kampala 2:09:40 - LMT 1928 Jul -- 3:00 - EAT 1930 -- 2:30 - BEAT 1948 -- 2:45 - BEAUT 1957 -- 3:00 - EAT -+# See Africa/Nairobi. - - # Zambia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar -- 2:00 - CAT -- - # Zimbabwe --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Africa/Harare 2:04:12 - LMT 1903 Mar -- 2:00 - CAT -+# See Africa/Maputo. ---- ./jdk/test/sun/util/calendar/zi/tzdata/antarctica Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/antarctica Mon Dec 08 12:29:42 2014 -0800 -@@ -21,19 +21,16 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - - # From Paul Eggert (1999-11-15): - # To keep things manageable, we list only locations occupied year-round; see --# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/"> - # COMNAP - Stations and Bases --# </a> -+# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/ - # and --# <a href="http://www.spri.cam.ac.uk/bob/periant.htm"> - # Summary of the Peri-Antarctic Islands (1998-07-23) --# </a> -+# http://www.spri.cam.ac.uk/bob/periant.htm - # for information. - # Unless otherwise specified, we have no time zone information. - # -@@ -78,19 +75,19 @@ - - # Argentina - year-round bases - # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05 --# Esperanza, San Martin Land, -6323-05659, since 1952-12-17 --# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01 --# Marambio, Seymour I, -6414-05637, since 1969-10-29 -+# Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01 -+# Esperanza, Hope Bay, -6323-05659, since 1952-12-17 -+# Marambio, -6414-05637, since 1969-10-29 - # Orcadas, Laurie I, -6016-04444, since 1904-02-22 --# San Martin, Debenham I, -6807-06708, since 1951-03-21 -+# San Martín, Barry I, -6808-06706, since 1951-03-21 - # (except 1960-03 / 1976-03-21) - - # Australia - territories - # Heard Island, McDonald Islands (uninhabited) - # previously sealers and scientific personnel wintered --# <a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html"> - # Margaret Turner reports --# </a> (1999-09-30) that they're UTC+5, with no DST; -+# http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html -+# (1999-09-30) that they're UTC+5, with no DST; - # presumably this is when they have visitors. - # - # year-round bases -@@ -107,14 +104,10 @@ - # The changes occurred on 2009-10-18 at 02:00 (local times). - # - # Government source: (Australian Antarctic Division) --# <a href="http://www.aad.gov.au/default.asp?casid=37079"> - # http://www.aad.gov.au/default.asp?casid=37079 --# </a> - # - # We have more background information here: --# <a href="http://www.timeanddate.com/news/time/antarctica-new-times.html"> - # http://www.timeanddate.com/news/time/antarctica-new-times.html --# </a> - - # From Steffen Thorsen (2010-03-10): - # We got these changes from the Australian Antarctic Division: ... -@@ -129,50 +122,49 @@ - # - Mawson station stays on UTC+5. - # - # Background: --# <a href="http://www.timeanddate.com/news/time/antartica-time-changes-2010.html"> - # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html --# </a> - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Antarctica/Casey 0 - zzz 1969 -- 8:00 - WST 2009 Oct 18 2:00 -- # Western (Aus) Standard Time -- 11:00 - CAST 2010 Mar 5 2:00 -- # Casey Time -- 8:00 - WST 2011 Oct 28 2:00 -+ 8:00 - AWST 2009 Oct 18 2:00 -+ # Australian Western Std Time -+ 11:00 - CAST 2010 Mar 5 2:00 # Casey Time -+ 8:00 - AWST 2011 Oct 28 2:00 - 11:00 - CAST 2012 Feb 21 17:00u -- 8:00 - WST -+ 8:00 - AWST - Zone Antarctica/Davis 0 - zzz 1957 Jan 13 -- 7:00 - DAVT 1964 Nov # Davis Time -+ 7:00 - DAVT 1964 Nov # Davis Time - 0 - zzz 1969 Feb -- 7:00 - DAVT 2009 Oct 18 2:00 -+ 7:00 - DAVT 2009 Oct 18 2:00 - 5:00 - DAVT 2010 Mar 10 20:00u -- 7:00 - DAVT 2011 Oct 28 2:00 -+ 7:00 - DAVT 2011 Oct 28 2:00 - 5:00 - DAVT 2012 Feb 21 20:00u - 7:00 - DAVT - Zone Antarctica/Mawson 0 - zzz 1954 Feb 13 -- 6:00 - MAWT 2009 Oct 18 2:00 -- # Mawson Time -+ 6:00 - MAWT 2009 Oct 18 2:00 # Mawson Time - 5:00 - MAWT - # References: --# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html"> - # Casey Weather (1998-02-26) --# </a> --# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html"> -+# http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html - # Davis Station, Antarctica (1998-02-26) --# </a> --# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html"> -+# http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html - # Mawson Station, Antarctica (1998-02-25) --# </a> -+# http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html -+ -+# Belgium - year-round base -+# Princess Elisabeth, Queen Maud Land, -713412+0231200, since 2007 - - # Brazil - year-round base --# Comandante Ferraz, King George Island, -6205+05824, since 1983/4 -+# Ferraz, King George Island, -6205+05824, since 1983/4 -+ -+# Bulgaria - year-round base -+# St. Kliment Ohridski, Livingston Island, -623829-0602153, since 1988 - - # Chile - year-round bases and towns - # Escudero, South Shetland Is, -621157-0585735, since 1994 --# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07 --# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02 --# Capitan Arturo Prat, -6230-05941 -+# Frei Montalva, King George Island, -6214-05848, since 1969-03-07 -+# 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'. - -@@ -180,31 +172,35 @@ - # Great Wall, King George Island, -6213-05858, since 1985-02-20 - # Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26 - --# France - year-round bases -+# France - year-round bases (also see "France & Italy") - # - # From Antoine Leca (1997-01-20): --# Time data are from Nicole Pailleau at the IFRTP -+# Time data entries are from Nicole Pailleau at the IFRTP - # (French Institute for Polar Research and Technology). --# She confirms that French Southern Territories and Terre Adelie bases --# don't observe daylight saving time, even if Terre Adelie supplies came -+# She confirms that French Southern Territories and Terre Adélie bases -+# don't observe daylight saving time, even if Terre Adélie supplies came - # from Tasmania. - # - # French Southern Territories with year-round inhabitants - # --# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950 --# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964 --# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951; -+# Alfred Faure, Possession Island, Crozet Islands, -462551+0515152, since 1964; -+# sealing & whaling stations operated variously 1802/1911+; -+# see Indian/Reunion. -+# -+# Martin-de-Viviès, Amsterdam Island, -374105+0773155, since 1950 -+# Port-aux-Français, Kerguelen Islands, -492110+0701303, since 1951; - # whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956 - # - # St Paul Island - near Amsterdam, uninhabited - # fishing stations operated variously 1819/1931 - # - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Francais -+Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français - 5:00 - TFT # ISO code TF Time - # - # year-round base in the main continent --# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11 -+# Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11 -+# <http://en.wikipedia.org/wiki/Dumont_d'Urville_Station> (2005-12-05) - # - # Another base at Port-Martin, 50km east, began operation in 1947. - # It was destroyed by fire on 1952-01-14. -@@ -214,20 +210,22 @@ - 10:00 - PMT 1952 Jan 14 # Port-Martin Time - 0 - zzz 1956 Nov - 10:00 - DDUT # Dumont-d'Urville Time --# Reference: --# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station"> --# Dumont d'Urville Station (2005-12-05) --# </a> -+ -+# France & Italy - year-round base -+# Concordia, -750600+1232000, since 2005 - - # Germany - year-round base --# Georg von Neumayer, -7039-00815 -+# Neumayer III, -704080-0081602, since 2009 - --# India - year-round base --# Dakshin Gangotri, -7005+01200 -+# India - year-round bases -+# Bharati, -692428+0761114, since 2012 -+# Maitri, -704558+0114356, since 1989 -+ -+# Italy - year-round base (also see "France & Italy") -+# Zuchelli, Terra Nova Bay, -744140+1640647, since 1986 - - # Japan - year-round bases --# Dome Fuji, -7719+03942 --# Syowa, -690022+0393524 -+# Syowa (also known as Showa), -690022+0393524, since 1957 - # - # From Hideyuki Suzuki (1999-02-06): - # In all Japanese stations, +0300 is used as the standard time. -@@ -239,11 +237,11 @@ - Zone Antarctica/Syowa 0 - zzz 1957 Jan 29 - 3:00 - SYOT # Syowa Time - # See: --# <a href="http://www.nipr.ac.jp/english/ara01.html"> - # NIPR Antarctic Research Activities (1999-08-17) --# </a> -+# http://www.nipr.ac.jp/english/ara01.html - - # S Korea - year-round base -+# Jang Bogo, Terra Nova Bay, -743700+1641205 since 2014 - # King Sejong, King George Island, -6213-05847, since 1988 - - # New Zealand - claims -@@ -287,11 +285,14 @@ - Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Antarctica/Troll 0 - zzz 2005 Feb 12 -- 0:00 Troll %s -+ 0:00 Troll %s - - # Poland - year-round base - # Arctowski, King George Island, -620945-0582745, since 1977 - -+# Romania - year-bound base -+# Law-Racoviță, Larsemann Hills, -692319+0762251, since 1986 -+ - # Russia - year-round bases - # Bellingshausen, King George Island, -621159-0585337, since 1968-02-22 - # Mirny, Davis coast, -6633+09301, since 1956-02 -@@ -301,8 +302,8 @@ - # year-round from 1960/61 to 1992 - - # Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11 --# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP"> --# From Craig Mundell (1994-12-15)</a>: -+# From Craig Mundell (1994-12-15): -+# http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP - # Vostok, which is one of the Russian stations, is set on the same - # time as Moscow, Russia. - # -@@ -317,7 +318,7 @@ - # - # From Paul Eggert (2001-05-04): - # This seems to be hopelessly confusing, so I asked Lee Hotz about it --# in person. He said that some Antartic locations set their local -+# in person. He said that some Antarctic locations set their local - # time so that noon is the warmest part of the day, and that this - # changes during the year and does not necessarily correspond to mean - # solar noon. So the Vostok time might have been whatever the clocks -@@ -329,9 +330,12 @@ - - # S Africa - year-round bases - # Marion Island, -4653+03752 --# Sanae, -7141-00250 -+# SANAE IV, Vesleskarvet, Queen Maud Land, -714022-0025026, since 1997 - --# UK -+# Ukraine - year-round base -+# Vernadsky (formerly Faraday), Galindez Island, -651445-0641526, since 1954 -+ -+# United Kingdom - # - # British Antarctic Territories (BAT) claims - # South Orkney Islands -@@ -387,7 +391,7 @@ - # but that he found it more convenient to keep GMT+12 - # as supplies for the station were coming from McMurdo Sound, - # which was on GMT+12 because New Zealand was on GMT+12 all year --# at that time (1957). (Source: Siple's book 90 degrees SOUTH.) -+# at that time (1957). (Source: Siple's book 90 Degrees South.) - # - # From Susan Smith - # http://www.cybertours.com/whs/pole10.html ---- ./jdk/test/sun/util/calendar/zi/tzdata/asia Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/asia Mon Dec 08 12:29:42 2014 -0800 -@@ -21,41 +21,44 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2013-08-11): -+# From Paul Eggert (2014-10-31): - # --# A good source for time zone historical data outside the U.S. is -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Another source occasionally used is Edward W. Whitman, World Time Differences, - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which - # I found in the UCLA library. - # - # For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 -+# -+# For Russian data circa 1919, a source is: -+# Byalokoz EL. New Counting of Time in Russia since July 1, 1919. -+# (See the 'europe' file for a fuller citation.) - # - # 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; -+# 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 -@@ -66,17 +69,19 @@ - # 3:30 IRST IRDT Iran - # 4:00 GST Gulf* - # 5:30 IST India --# 7:00 ICT Indochina* -+# 7:00 ICT Indochina, most times and locations* - # 7:00 WIB west Indonesia (Waktu Indonesia Barat) - # 8:00 WITA central Indonesia (Waktu Indonesia Tengah) - # 8:00 CST China --# 9:00 CJT Central Japanese Time (1896/1937)* -+# 8:00 IDT Indochina, 1943-45, 1947-55, 1960-75 (some locations)* -+# 8:00 JWST Western Standard Time (Japan, 1896/1937)* -+# 9:00 JCST Central Standard Time (Japan, 1896/1937) - # 9:00 WIT east Indonesia (Waktu Indonesia Timur) - # 9:00 JST JDT Japan - # 9:00 KST KDT Korea --# 9:30 CST (Australian) Central Standard Time -+# 9:30 ACST Australian Central Standard Time - # --# See the `europe' file for Russia and Turkey in Asia. -+# See the 'europe' file for Russia and Turkey in Asia. - - # From Guy Harris: - # Incorporates data for Singapore from Robert Elz' asia 1.1, as well as -@@ -86,7 +91,7 @@ - - ############################################################################### - --# These rules are stolen from the `europe' file. -+# These rules are stolen from the 'europe' file. - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule EUAsia 1981 max - Mar lastSun 1:00u 1:00 S - Rule EUAsia 1979 1995 - Sep lastSun 1:00u 0 - -@@ -138,11 +143,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2 - 3:00 - YERT 1957 Mar # Yerevan Time -- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s -+ 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s - 3:00 1:00 YERST 1991 Sep 23 # independence -- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s -+ 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s - 4:00 - AMT 1997 -- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s -+ 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s - 4:00 - AMT - - # Azerbaijan -@@ -155,16 +160,16 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Baku 3:19:24 - LMT 1924 May 2 - 3:00 - BAKT 1957 Mar # Baku Time -- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s -+ 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s - 3:00 1:00 BAKST 1991 Aug 30 # independence - 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00 -- 4:00 - AZT 1996 # Azerbaijan time -+ 4:00 - AZT 1996 # Azerbaijan Time - 4:00 EUAsia AZ%sT 1997 - 4:00 Azer AZ%sT - - # Bahrain - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Bahrain 3:22:20 - LMT 1920 # Al Manamah -+Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah - 4:00 - GST 1972 Jun - 3:00 - AST - -@@ -174,13 +179,8 @@ - # Daylight Saving Time from June 16 to Sept 30 - # - # Bangladesh to introduce daylight saving time likely from June 16 --# <a href="http://www.asiantribune.com/?q=node/17288"> - # http://www.asiantribune.com/?q=node/17288 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html --# </a> - # - # "... Bangladesh government has decided to switch daylight saving time from - # June -@@ -195,17 +195,11 @@ - # the 19th and 20th, and they have not set the end date yet. - # - # Some sources: --# <a href="http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601"> - # http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601 --# </a> --# <a href="http://bdnews24.com/details.php?id=85889&cid=2"> - # http://bdnews24.com/details.php?id=85889&cid=2 --# </a> - # - # Our wrap-up: --# <a href="http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html"> - # http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html --# </a> - - # From A. N. M. Kamrus Saadat (2009-06-15): - # Finally we've got the official mail regarding DST start time where DST start -@@ -220,13 +214,8 @@ - # - # Following report by same newspaper-"The Daily Star Friday": - # "DST change awaits cabinet decision-Clock won't go back by 1-hr from Oct 1" --# <a href="http://www.thedailystar.net/newDesign/news-details.php?nid=107021"> - # http://www.thedailystar.net/newDesign/news-details.php?nid=107021 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html --# </a> - - # From Steffen Thorsen (2009-10-13): - # IANS (Indo-Asian News Service) now reports: -@@ -235,22 +224,15 @@ - # "continue for an indefinite period." - # - # One of many places where it is published: --# <a href="http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html"> - # http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html --# </a> - - # From Alexander Krivenyshev (2009-12-24): - # According to Bangladesh newspaper "The Daily Star," - # Bangladesh will change its clock back to Standard Time on Dec 31, 2009. - # - # Clock goes back 1-hr on Dec 31 night. --# <a href="http://www.thedailystar.net/newDesign/news-details.php?nid=119228"> - # http://www.thedailystar.net/newDesign/news-details.php?nid=119228 --# </a> --# and --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh05.html --# </a> - # - # "...The government yesterday decided to put the clock back by one hour - # on December 31 midnight and the new time will continue until March 31, -@@ -260,17 +242,12 @@ - # From Alexander Krivenyshev (2010-03-22): - # According to Bangladesh newspaper "The Daily Star," - # Cabinet cancels Daylight Saving Time --# <a href="http://www.thedailystar.net/newDesign/latest_news.php?nid=22817"> - # http://www.thedailystar.net/newDesign/latest_news.php?nid=22817 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh06.html"> - # http://www.worldtimezone.com/dst_news/dst_news_bangladesh06.html --# </a> - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Dhaka 2009 only - Jun 19 23:00 1:00 S --Rule Dhaka 2009 only - Dec 31 23:59 0 - -+Rule Dhaka 2009 only - Dec 31 24:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Dhaka 6:01:40 - LMT 1890 -@@ -301,7 +278,7 @@ - - # Brunei - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan -+Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan - 7:30 - BNT 1933 - 8:00 - BNT - -@@ -310,19 +287,15 @@ - # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon -- 6:24:40 - RMT 1920 # Rangoon Mean Time? -- 6:30 - BURT 1942 May # Burma Time -- 9:00 - JST 1945 May 3 -- 6:30 - MMT # Myanmar Time -+Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon -+ 6:24:40 - RMT 1920 # Rangoon Mean Time? -+ 6:30 - BURT 1942 May # Burma Time -+ 9:00 - JST 1945 May 3 -+ 6:30 - MMT # Myanmar Time - - # Cambodia --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9 -- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT? -- 7:00 - ICT 1912 May -- 8:00 - ICT 1931 May -- 7:00 - ICT -+# See Asia/Bangkok. -+ - - # China - -@@ -332,12 +305,12 @@ - # From Bob Devine (1988-01-28): - # No they don't. See TIME mag, 1986-02-17 p.52. Even though - # China is across 4 physical time zones, before Feb 1, 1986 only the --# Peking (Bejing) time zone was recognized. Since that date, China --# has two of 'em -- Peking's and Urumqi (named after the capital of -+# Peking (Beijing) time zone was recognized. Since that date, China -+# has two of 'em - Peking's and Ürümqi (named after the capital of - # the Xinjiang Uyghur Autonomous Region). I don't know about DST for it. - # - # . . .I just deleted the DST table and this editor makes it too --# painful to suck in another copy.. So, here is what I have for -+# painful to suck in another copy. So, here is what I have for - # DST start/end dates for Peking's time zone (info from AP): - # - # 1986 May 4 - Sept 14 -@@ -347,15 +320,16 @@ - # CHINA 8 H AHEAD OF UTC ALL OF CHINA, INCL TAIWAN - # CHINA 9 H AHEAD OF UTC APR 17 - SEP 10 - --# From Paul Eggert (2006-03-22): --# Shanks & Pottenger write that China (except for Hong Kong and Macau) --# has had a single time zone since 1980 May 1, observing summer DST --# from 1986 through 1991; this contradicts Devine's --# note about Time magazine, though apparently _something_ happened in 1986. --# Go with Shanks & Pottenger for now. I made up names for the other --# pre-1980 time zones. -+# From Paul Eggert (2008-02-11): -+# Jim Mann, "A clumsy embrace for another western custom: China on daylight -+# time - sort of", Los Angeles Times, 1986-05-05 ... [says] that China began -+# observing daylight saving time in 1986. - --# From Shanks & Pottenger: -+# From Paul Eggert (2014-06-30): -+# Shanks & Pottenger have China switching to a single time zone in 1980, but -+# this doesn't seem to be correct. They also write that China observed summer -+# DST from 1986 through 1991, which seems to match the above commentary, so -+# go with them for DST rules as follows: - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Shang 1940 only - Jun 3 0:00 1:00 D - Rule Shang 1940 1941 - Oct 1 0:00 0 S -@@ -369,7 +343,7 @@ - # historic timezones from some Taiwan websites. And yes, there are official - # Chinese names for these locales (before 1949). - # --# From Jesper Norgaard Welen (2006-07-14): -+# From Jesper Nørgaard Welen (2006-07-14): - # I have investigated the timezones around 1970 on the - # http://www.astro.com/atlas site [with provinces and county - # boundaries summarized below].... A few other exceptions were two -@@ -380,65 +354,97 @@ - # (could be true), for the moment I am assuming that those two - # counties are mistakes in the astro.com data. - --# From Paul Eggert (2008-02-11): --# I just now checked Google News for western news sources that talk --# about China's single time zone, and couldn't find anything before 1986 --# talking about China being in one time zone. (That article was: Jim --# Mann, "A clumsy embrace for another western custom: China on daylight --# time--sort of", Los Angeles Times, 1986-05-05. By the way, this --# article confirms the tz database's data claiming that China began --# observing daylight saving time in 1986. -+# From Paul Eggert (2014-06-30): -+# Alois Treindl kindly sent me translations of the following two sources: - # --# From Thomas S. Mullaney (2008-02-11): --# I think you're combining two subjects that need to treated --# separately: daylight savings (which, you're correct, wasn't --# implemented until the 1980s) and the unified time zone centered near --# Beijing (which was implemented in 1949). Briefly, there was also a --# "Lhasa Time" in Tibet and "Urumqi Time" in Xinjiang. The first was --# ceased, and the second eventually recognized (again, in the 1980s). -+# (1) -+# Guo Qingsheng (National Time-Service Center, CAS, Xi'an 710600, China) -+# Beijing Time at the Beginning of the PRC -+# China Historical Materials of Science and Technology -+# (Zhongguo ke ji shi liao, 中国科技史料), Vol. 24, No. 1 (2003) -+# It gives evidence that at the beginning of the PRC, Beijing time was -+# officially apparent solar time! However, Guo also says that the -+# evidence is dubious, as the relevant institute of astronomy had not -+# been taken over by the PRC yet. It's plausible that apparent solar -+# time was announced but never implemented, and that people continued -+# to use UT+8. As the Shanghai radio station (and I presume the -+# observatory) was still under control of French missionaries, it -+# could well have ignored any such mandate. - # --# From Paul Eggert (2008-06-30): --# There seems to be a good chance China switched to a single time zone in 1949 --# rather than in 1980 as Shanks & Pottenger have it, but we don't have a --# reliable documentary source saying so yet, so for now we still go with --# Shanks & Pottenger. -- --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) -+# (2) -+# Guo Qing-sheng (Shaanxi Astronomical Observatory, CAS, Xi'an 710600, China) -+# A Study on the Standard Time Changes for the Past 100 Years in China -+# [undated and unknown publication location] -+# It says several things: -+# * The Qing dynasty used local apparent solar time throughout China. -+# * The Republic of China instituted Beijing mean solar time effective -+# the official calendar book of 1914. -+# * The French Concession in Shanghai set up signal stations in -+# French docks in the 1890s, controlled by Xujiahui (Zikawei) -+# Observatory and set to local mean time. -+# * "From the end of the 19th century" it changed to UT+8. -+# * Chinese Customs (by then reduced to a tool of foreign powers) -+# eventually standardized on this time for all ports, and it -+# became used by railways as well. -+# * In 1918 the Central Observatory proposed dividing China into -+# five time zones (see below for details). This caught on -+# at first only in coastal areas observing UT+8. -+# * During WWII all of China was in theory was at UT+7. In practice -+# this was ignored in the west, and I presume was ignored in -+# Japanese-occupied territory. -+# * Japanese-occupied Manchuria was at UT+9, i.e., Japan time. -+# * The five-zone plan was resurrected after WWII and officially put into -+# place (with some modifications) in March 1948. It's not clear -+# how well it was observed in areas under Nationalist control. -+# * The People's Liberation Army used UT+8 during the civil war. -+# -+# An AP article "Shanghai Internat'l Area Little Changed" in the -+# Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is -+# different - the occupied districts going by Tokyo time, an hour -+# ahead of that prevailing in the rest of Shanghai." Guess that the -+# Xujiahui Observatory was under French control and stuck with UT+8. -+# -+# In earlier versions of this file, China had many separate Zone entries, but -+# this was based on what were apparently incorrect data in Shanks & Pottenger. -+# This has now been simplified to the two entries Asia/Shanghai and -+# Asia/Urumqi, with the others being links for backward compatibility. -+# Proposed in 1918 and theoretically in effect until 1949 (although in practice -+# mainly observed in coastal areas), the five zones were: -+# -+# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5 -+# Asia/Harbin (currently a link to Asia/Shanghai) - # Heilongjiang (except Mohe county), Jilin --Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin -- 8:30 - CHAT 1932 Mar # Changbai Time -- 8:00 - CST 1940 -- 9:00 - CHAT 1966 May -- 8:30 - CHAT 1980 May -- 8:00 PRC C%sT --# Zhongyuan Time ("Central plain Time") -+# -+# Zhongyuan Time ("Central plain Time") UT+8 -+# Asia/Shanghai - # most of China --# Milne gives 8:05:56.7; round to nearest. --Zone Asia/Shanghai 8:05:57 - LMT 1928 -- 8:00 Shang C%sT 1949 -- 8:00 PRC C%sT --# Long-shu Time (probably due to Long and Shu being two names of that area) -+# This currently represents most other zones as well, -+# as apparently these regions have been the same since 1970. -+# Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest. -+# Guo says Shanghai switched to UT+8 "from the end of the 19th century". -+# -+# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7 -+# Asia/Chongqing (currently a link to Asia/Shanghai) - # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan; - # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong - # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing, - # Yangchun, Yangjiang, Yu'nan, and Yunfu. --Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking -- 7:00 - LONT 1980 May # Long-shu Time -- 8:00 PRC C%sT --# Xin-zang Time ("Xinjiang-Tibet Time") -+# -+# Xin-zang Time ("Xinjiang-Tibet Time") UT+6 -+# Asia/Urumqi -+# This currently represents Kunlun Time as well, -+# as apparently the two regions have been the same since 1970. - # The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai; - # the Guangdong counties Xuwen, Haikang, Suixi, Lianjiang, - # Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi; - # east Tibet, including Lhasa, Chamdo, Shigaise, Jimsar, Shawan and Hutubi; --# east Xinjiang, including Urumqi, Turpan, Karamay, Korla, Minfeng, Jinghe, -+# east Xinjiang, including Ürümqi, Turpan, Karamay, Korla, Minfeng, Jinghe, - # Wusu, Qiemo, Xinyan, Wulanwusu, Jinghe, Yumin, Tacheng, Tuoli, Emin, - # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami, - # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan. --Zone Asia/Urumqi 5:50:20 - LMT 1928 # or Urumchi -- 6:00 - URUT 1980 May # Urumqi Time -- 8:00 PRC C%sT --# Kunlun Time -+# -+# Kunlun Time UT+5.5 -+# Asia/Kashgar (currently a link to Asia/Urumqi) - # West Tibet, including Pulan, Aheqi, Shufu, Shule; - # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke, - # Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding, -@@ -455,9 +461,9 @@ - # population of Xinjiang, typically use "Xinjiang time" which is two - # hours behind Beijing time, or UTC +0600. The government of the Xinjiang - # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as --# local governments such as the Urumqi city government use both times in -+# local governments such as the Ürümqi city government use both times in - # publications, referring to what is popularly called Xinjiang time as --# "Urumqi time." When Uyghurs make an appointment in the Uyghur language -+# "Ürümqi time." When Uyghurs make an appointment in the Uyghur language - # they almost invariably use Xinjiang time. - # - # (Their ethnic Han compatriots would typically have no clue of its -@@ -469,21 +475,6 @@ - # the province not having dual times but four times in use at the same - # time. Some areas remained on standard Xinjiang time or Beijing time and - # others moving their clocks ahead.) --# --# ...an example of an official website using of Urumqi time. --# --# The first few lines of the Google translation of --# <a href="http://www.fjysgl.gov.cn/show.aspx?id=2379&cid=39"> --# http://www.fjysgl.gov.cn/show.aspx?id=2379&cid=39 --# </a> --# (retrieved 2009-10-13) --# > Urumqi fire seven people are missing the alleged losses of at least --# > 500 million yuan --# > --# > (Reporter Dong Liu) the day before 20:20 or so (Urumqi Time 18:20), --# > Urumqi City Department of International Plaza Luther Qiantang River --# > burst fire. As of yesterday, 18:30, Urumqi City Fire officers and men --# > have worked continuously for 22 hours... - - # From Luther Ma (2009-11-19): - # With the risk of being redundant to previous answers these are the most common -@@ -494,7 +485,7 @@ - # 3. Urumqi... - # 4. Kashgar... - # ... --# 5. It seems that Uyghurs in Urumqi has been using Xinjiang since at least the -+# 5. It seems that Uyghurs in Ürümqi has been using Xinjiang since at least the - # 1960's. I know of one Han, now over 50, who grew up in the surrounding - # countryside and used Xinjiang time as a child. - # -@@ -506,10 +497,55 @@ - # Autonomous Region under the PRC. (Before that Uyghurs, of course, would also - # not be using Beijing time, but some local time.) - --Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar -- 5:30 - KAST 1940 # Kashgar Time -- 5:00 - KAST 1980 May -+# From David Cochrane (2014-03-26): -+# Just a confirmation that Ürümqi time was implemented in Ürümqi on 1 Feb 1986: -+# http://content.time.com/time/magazine/article/0,9171,960684,00.html -+ -+# From Luther Ma (2014-04-22): -+# I have interviewed numerous people of various nationalities and from -+# different localities in Xinjiang and can confirm the information in Guo's -+# report regarding Xinjiang, as well as the Time article reference by David -+# Cochrane. Whether officially recognized or not (and both are officially -+# recognized), two separate times have been in use in Xinjiang since at least -+# the Cultural Revolution: Xinjiang Time (XJT), aka Ürümqi Time or local time; -+# and Beijing Time. There is no confusion in Xinjiang as to which name refers -+# to which time. Both are widely used in the province, although in some -+# population groups might be use one to the exclusion of the other. The only -+# problem is that computers and smart phones list Ürümqi (or Kashgar) as -+# having the same time as Beijing. -+ -+# From Paul Eggert (2014-06-30): -+# In the early days of the PRC, Tibet was given its own time zone (UT+6) but -+# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun, -+# Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN -+# 978-0231142861 (2008), translator's introduction by Matthew Akester, p x. -+# As this is before our 1970 cutoff, Tibet doesn't need a separate zone. -+# -+# Xinjiang Time is well-documented as being officially recognized. E.g., see -+# "The Working-Calendar for The Xinjiang Uygur Autonomous Region Government" -+# <http://www.sinkiang.gov.cn/service/ourworking/> (2014-04-22). -+# Unfortunately, we have no good records of time in Xinjiang before 1986. -+# During the 20th century parts of Xinjiang were ruled by the Qing dynasty, -+# the Republic of China, various warlords, the First and Second East Turkestan -+# Republics, the Soviet Union, the Kuomintang, and the People's Republic of -+# China, and tracking down all these organizations' timekeeping rules would be -+# quite a trick. Approximate this lost history by a transition from LMT to -+# XJT at the start of 1928, the year of accession of the warlord Jin Shuren, -+# which happens to be the date given by Shanks & Pottenger (no doubt as a -+# guess) as the transition from LMT. Ignore the usage of UT+8 before -+# 1986-02-01 under the theory that the transition date to UT+8 is unknown and -+# that the sort of users who prefer Asia/Urumqi now typically ignored the -+# UT+8 mandate back then. -+ -+# Zone NAME GMTOFF RULES FORMAT [UNTIL] -+# Beijing time, used throughout China; represented by Shanghai. -+Zone Asia/Shanghai 8:05:43 - LMT 1901 -+ 8:00 Shang C%sT 1949 - 8:00 PRC C%sT -+# Xinjiang time, used by many in western China; represented by Ürümqi / Ürümchi -+# / Wulumuqi. (Please use Asia/Shanghai if you prefer Beijing time.) -+Zone Asia/Urumqi 5:50:20 - LMT 1928 -+ 6:00 - XJT - - - # Hong Kong (Xianggang) -@@ -524,15 +560,11 @@ - # and incorrect rules. Although the exact switch over time is missing, I - # think 3:30 is correct. The official DST record for Hong Kong can be - # obtained from --# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm"> - # http://www.hko.gov.hk/gts/time/Summertime.htm --# </a>. - - # From Arthur David Olson (2009-10-28): - # Here are the dates given at --# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm"> - # http://www.hko.gov.hk/gts/time/Summertime.htm --# </a> - # as of 2009-10-28: - # Year Period - # 1941 1 Apr to 30 Sep -@@ -612,35 +644,113 @@ - - # Taiwan - --# Shanks & Pottenger write that Taiwan observed DST during 1945, when it --# was still controlled by Japan. This is hard to believe, but we don't --# have any other information. -- - # From smallufo (2010-04-03): --# According to Taiwan's CWB, --# <a href="http://www.cwb.gov.tw/V6/astronomy/cdata/summert.htm"> -+# According to Taiwan's CWB [Central Weather Bureau], - # http://www.cwb.gov.tw/V6/astronomy/cdata/summert.htm --# </a> - # Taipei has DST in 1979 between July 1st and Sep 30. - --# From Arthur David Olson (2010-04-07): --# Here's Google's translation of the table at the bottom of the "summert.htm" page: --# Decade Name Start and end date --# Republic of China 34 years to 40 years (AD 1945-1951 years) Summer Time May 1 to September 30 --# 41 years of the Republic of China (AD 1952) Daylight Saving Time March 1 to October 31 --# Republic of China 42 years to 43 years (AD 1953-1954 years) Daylight Saving Time April 1 to October 31 --# In the 44 years to 45 years (AD 1955-1956 years) Daylight Saving Time April 1 to September 30 --# Republic of China 46 years to 48 years (AD 1957-1959) Summer Time April 1 to September 30 --# Republic of China 49 years to 50 years (AD 1960-1961) Summer Time June 1 to September 30 --# Republic of China 51 years to 62 years (AD 1962-1973 years) Stop Summer Time --# Republic of China 63 years to 64 years (1974-1975 AD) Daylight Saving Time April 1 to September 30 --# Republic of China 65 years to 67 years (1976-1978 AD) Stop Daylight Saving Time --# Republic of China 68 years (AD 1979) Daylight Saving Time July 1 to September 30 --# Republic of China since 69 years (AD 1980) Stop Daylight Saving Time -+# From Yu-Cheng Chuang (2013-07-12): -+# On Dec 28, 1895, the Meiji Emperor announced Ordinance No. 167 of -+# Meiji Year 28 "The clause about standard time", mentioned that -+# Taiwan and Penghu Islands, as well as Yaeyama and Miyako Islands -+# (both in Okinawa) adopt the Western Standard Time which is based on -+# 120E. The adoption began from Jan 1, 1896. The original text can be -+# found on Wikisource: -+# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時) -+# ... This could be the first adoption of time zone in Taiwan, because -+# during the Qing Dynasty, it seems that there was no time zone -+# declared officially. -+# -+# Later, in the beginning of World War II, on Sep 25, 1937, the Showa -+# Emperor announced Ordinance No. 529 of Showa Year 12 "The clause of -+# revision in the ordinance No. 167 of Meiji year 28 about standard -+# time", in which abolished the adoption of Western Standard Time in -+# western islands (listed above), which means the whole Japan -+# territory, including later occupations, adopt Japan Central Time -+# (UTC+9). The adoption began on Oct 1, 1937. The original text can -+# be found on Wikisource: -+# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件 -+# -+# That is, the time zone of Taipei switched to UTC+9 on Oct 1, 1937. -+ -+# From Yu-Cheng Chuang (2014-07-02): -+# I've found more evidence about when the time zone was switched from UTC+9 -+# back to UTC+8 after WW2. I believe it was on Sep 21, 1945. In a document -+# during Japanese era [1] in which the officer told the staff to change time -+# zone back to Western Standard Time (UTC+8) on Sep 21. And in another -+# history page of National Cheng Kung University [2], on Sep 21 there is a -+# note "from today, switch back to Western Standard Time". From these two -+# materials, I believe that the time zone change happened on Sep 21. And -+# today I have found another monthly journal called "The Astronomical Herald" -+# from The Astronomical Society of Japan [3] in which it mentioned the fact -+# that: -+# -+# 1. Standard Time of the Country (Japan) was adopted on Jan 1, 1888, using -+# the time at 135E (GMT+9) -+# -+# 2. Standard Time of the Country was renamed to Central Standard Time, on Jan -+# 1, 1898, and on the same day, the new territories Taiwan and Penghu islands, -+# as well as Yaeyama and Miyako islands, adopted a new time zone called -+# Western Standard Time, which is in GMT+8. -+# -+# 3. Western Standard Time was deprecated on Sep 30, 1937. From then all the -+# territories of Japan adopted the same time zone, which is Central Standard -+# Time. -+# -+# [1] Academica Historica, Taiwan: -+# http://163.29.208.22:8080/govsaleShowImage/connect_img.php?s=00101738900090036&e=00101738900090037 -+# [2] Nat'l Cheng Kung University 70th Anniversary Special Site: -+# http://www.ncku.edu.tw/~ncku70/menu/001/01_01.htm -+# [3] Yukio Niimi, The Standard Time in Japan (1997), p.475: -+# http://www.asj.or.jp/geppou/archive_open/1997/pdf/19971001c.pdf -+ -+# Yu-Cheng Chuang (2014-07-03): -+# I finally have found the real official gazette about changing back to -+# Western Standard Time on Sep 21 in Taiwan. It's Taiwan Governor-General -+# Bulletin No. 386 in Showa 20 years (1945), published on Sep 19, 1945. [1] ... -+# [It] abolishes Bulletin No. 207 in Showa 12 years (1937), which is a local -+# bulletin in Taiwan for that Ordinance No. 529. It also mentioned that 1am on -+# Sep 21, 1945 will be 12am on Sep 21. I think this bulletin is much more -+# official than the one I mentioned in my first mail, because it's from the -+# top-level government in Taiwan. If you're going to quote any resource, this -+# would be a good one. -+# [1] Taiwan Governor-General Gazette, No. 1018, Sep 19, 1945: -+# http://db2.th.gov.tw/db2/view/viewImg.php?imgcode=0072031018a&num=19&bgn=019&end=019&otherImg=&type=gener -+ -+# From Yu-Cheng Chuang (2014-07-02): -+# In 1946, DST in Taiwan was from May 15 and ended on Sep 30. The info from -+# Central Weather Bureau website was not correct. -+# -+# Original Bulletin: -+# http://subtpg.tpg.gov.tw/og/image2.asp?f=03502F0AKM1AF -+# http://subtpg.tpg.gov.tw/og/image2.asp?f=0350300AKM1B0 (cont.) -+# -+# In 1947, DST in Taiwan was expanded to Oct 31. There is a backup of that -+# telegram announcement from Taiwan Province Government: -+# -+# http://subtpg.tpg.gov.tw/og/image2.asp?f=0360310AKZ431 -+# -+# Here is a brief translation: -+# -+# The Summer Time this year is adopted from midnight Apr 15 until Sep 20 -+# midnight. To save (energy?) consumption, we're expanding Summer Time -+# adoption till Oct 31 midnight. -+# -+# The Central Weather Bureau website didn't mention that, however it can -+# be found from historical government announcement database. -+ -+# From Paul Eggert (2014-07-03): -+# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01 -+# until 1945-09-21 at 01:00, overriding Shanks & Pottenger. -+# Likewise, use Yu-Cheng Chuang's data for DST in Taiwan. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Taiwan 1945 1951 - May 1 0:00 1:00 D --Rule Taiwan 1945 1951 - Oct 1 0:00 0 S -+Rule Taiwan 1946 only - May 15 0:00 1:00 D -+Rule Taiwan 1946 only - Oct 1 0:00 0 S -+Rule Taiwan 1947 only - Apr 15 0:00 1:00 D -+Rule Taiwan 1947 only - Nov 1 0:00 0 S -+Rule Taiwan 1948 1951 - May 1 0:00 1:00 D -+Rule Taiwan 1948 1951 - Oct 1 0:00 0 S - Rule Taiwan 1952 only - Mar 1 0:00 1:00 D - Rule Taiwan 1952 1954 - Nov 1 0:00 0 S - Rule Taiwan 1953 1959 - Apr 1 0:00 1:00 D -@@ -648,11 +758,14 @@ - Rule Taiwan 1960 1961 - Jun 1 0:00 1:00 D - Rule Taiwan 1974 1975 - Apr 1 0:00 1:00 D - Rule Taiwan 1974 1975 - Oct 1 0:00 0 S --Rule Taiwan 1979 only - Jun 30 0:00 1:00 D --Rule Taiwan 1979 only - Sep 30 0:00 0 S -+Rule Taiwan 1979 only - Jul 1 0:00 1:00 D -+Rule Taiwan 1979 only - Oct 1 0:00 0 S - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Taipei 8:06:00 - LMT 1896 # or Taibei or T'ai-pei -+# Taipei or Taibei or T'ai-pei -+Zone Asia/Taipei 8:06:00 - LMT 1896 Jan 1 -+ 8:00 - JWST 1937 Oct 1 -+ 9:00 - JST 1945 Sep 21 1:00 - 8:00 Taiwan C%sT - - # Macau (Macao, Aomen) -@@ -672,7 +785,7 @@ - Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S - Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Macau 7:34:20 - LMT 1912 -+Zone Asia/Macau 7:34:20 - LMT 1912 Jan 1 - 8:00 Macau MO%sT 1999 Dec 20 # return to China - 8:00 PRC C%sT - -@@ -721,7 +834,7 @@ - # republic has changed its time zone back to that of Moscow. As a result it - # is now just four hours ahead of Greenwich Mean Time, rather than five hours - # ahead. The switch was decreed by the pro-Western president of Georgia, --# Mikhail Saakashvili, who said the change was partly prompted by the process -+# Mikheil Saakashvili, who said the change was partly prompted by the process - # of integration into Europe. - - # From Teimuraz Abashidze (2005-11-07): -@@ -734,29 +847,31 @@ - # I don't know what can be done, especially knowing that some years ago our - # DST rules where changed THREE TIMES during one month. - -+# Milne 1899 says Tbilisi (Tiflis) time was 2:59:05.7. -+# Byalokoz 1919 says Georgia was 2:59:11. -+# Go with Byalokoz. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Tbilisi 2:59:16 - LMT 1880 -- 2:59:16 - TBMT 1924 May 2 # Tbilisi Mean Time -+Zone Asia/Tbilisi 2:59:11 - LMT 1880 -+ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time - 3:00 - TBIT 1957 Mar # Tbilisi Time -- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s -+ 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s - 3:00 1:00 TBIST 1991 Apr 9 # independence -- 3:00 RussiaAsia GE%sT 1992 # Georgia Time -+ 3:00 RussiaAsia GE%sT 1992 # Georgia Time - 3:00 E-EurAsia GE%sT 1994 Sep lastSun - 4:00 E-EurAsia GE%sT 1996 Oct lastSun - 4:00 1:00 GEST 1997 Mar lastSun - 4:00 E-EurAsia GE%sT 2004 Jun 27 -- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00 -+ 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00 - 4:00 - GET - - # East Timor - - # See Indonesia for the 1945 transition. - --# From Joao Carrascalao, brother of the former governor of East Timor, in --# <a href="http://etan.org/et99c/december/26-31/30ETMAY.htm"> -+# From João Carrascalão, brother of the former governor of East Timor, in - # East Timor may be late for its millennium --# </a> (1999-12-26/31): -+# <http://etan.org/et99c/december/26-31/30ETMAY.htm> (1999-12-26/31): - # Portugal tried to change the time forward in 1974 because the sun - # rises too early but the suggestion raised a lot of problems with the - # Timorese and I still don't think it would work today because it -@@ -766,25 +881,25 @@ - # We don't have any record of the above attempt. - # Most likely our records are incomplete, but we have no better data. - --# <a href="http://www.hri.org/news/world/undh/last/00-08-16.undh.html"> - # From Manoel de Almeida e Silva, Deputy Spokesman for the UN Secretary-General --# (2000-08-16)</a>: -+# http://www.hri.org/news/world/undh/2000/00-08-16.undh.html -+# (2000-08-16): - # The Cabinet of the East Timor Transition Administration decided - # today to advance East Timor's time by one hour. The time change, - # which will be permanent, with no seasonal adjustment, will happen at - # midnight on Saturday, September 16. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Dili 8:22:20 - LMT 1912 -+Zone Asia/Dili 8:22:20 - LMT 1912 Jan 1 - 8:00 - TLT 1942 Feb 21 23:00 # E Timor Time - 9:00 - JST 1945 Sep 23 - 9:00 - TLT 1976 May 3 -- 8:00 - WITA 2000 Sep 17 00:00 -+ 8:00 - WITA 2000 Sep 17 0:00 - 9:00 - TLT - - # India - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata -+Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata - 5:53:20 - HMT 1941 Oct # Howrah Mean Time? - 6:30 - BURT 1942 May 15 # Burma Time - 5:30 - IST 1942 Sep -@@ -797,8 +912,12 @@ - - # Indonesia - # -+# From Paul Eggert (2014-09-06): -+# The 1876 Report of the Secretary of the [US] Navy, p 306 says that Batavia -+# civil time was 7:07:12.5; round to even for Jakarta. -+# - # From Gwillim Law (2001-05-28), overriding Shanks & Pottenger: --# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime> -+# http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime - # says that Indonesia's time zones changed on 1988-01-01. Looking at some - # time zone maps, I think that must refer to Western Borneo (Kalimantan Barat - # and Kalimantan Tengah) switching from UTC+8 to UTC+7. -@@ -810,7 +929,7 @@ - # other formal surrender ceremonies were September 9, 11, and 13, plus - # September 12 for the regional surrender to Mountbatten in Singapore. - # These would be the earliest possible times for a change. --# Regimes horaires pour le monde entier, by Henri Le Corre, (Editions -+# Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions - # Traditionnelles, 1987, Paris) says that Java and Madura switched - # from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura - # (Hollandia). For now, assume all Indonesian locations other than Jayapura -@@ -835,7 +954,7 @@ - # Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13, - # but this must be a typo. - 7:07:12 - BMT 1923 Dec 31 23:47:12 # Batavia -- 7:20 - JAVT 1932 Nov # Java Time -+ 7:20 - JAVT 1932 Nov # Java Time - 7:30 - WIB 1942 Mar 23 - 9:00 - JST 1945 Sep 23 - 7:30 - WIB 1948 May -@@ -861,7 +980,7 @@ - # Maluku Islands, West Papua, Papua - Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov - 9:00 - WIT 1944 Sep 1 -- 9:30 - CST 1964 -+ 9:30 - ACST 1964 - 9:00 - WIT - - # Iran -@@ -927,7 +1046,7 @@ - # Several of my users have reported that Iran will not observe DST anymore: - # http://www.irna.ir/en/news/view/line-17/0603193812164948.htm - # --# From Reuters (2007-09-16), with a heads-up from Jesper Norgaard Welen: -+# From Reuters (2007-09-16), with a heads-up from Jesper Nørgaard Welen: - # ... the Guardian Council ... approved a law on Sunday to re-introduce - # daylight saving time ... - # http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916 -@@ -993,7 +1112,7 @@ - Rule Iran 2036 2037 - Sep 21 0:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Tehran 3:25:44 - LMT 1916 -- 3:25:44 - TMT 1946 # Tehran Mean Time -+ 3:25:44 - TMT 1946 # Tehran Mean Time - 3:30 - IRST 1977 Nov - 4:00 Iran IR%sT 1979 - 3:30 Iran IR%sT -@@ -1018,17 +1137,11 @@ - # From Steffen Thorsen (2008-03-10): - # The cabinet in Iraq abolished DST last week, according to the following - # news sources (in Arabic): --# <a href="http://www.aljeeran.net/wesima_articles/news-20080305-98602.html"> - # http://www.aljeeran.net/wesima_articles/news-20080305-98602.html --# </a> --# <a href="http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10"> - # http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10 --# </a> - # - # We have published a short article in English about the change: --# <a href="http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html"> - # http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html --# </a> - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Iraq 1982 only - May 1 0:00 1:00 D -@@ -1037,14 +1150,14 @@ - Rule Iraq 1984 1985 - Apr 1 0:00 1:00 D - Rule Iraq 1985 1990 - Sep lastSun 1:00s 0 S - Rule Iraq 1986 1990 - Mar lastSun 1:00s 1:00 D --# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the `:01' is a typo. -+# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the ':01' is a typo. - # Shanks & Pottenger say Iraq did not observe DST 1992/1997; ignore this. - # - Rule Iraq 1991 2007 - Apr 1 3:00s 1:00 D - Rule Iraq 1991 2007 - Oct 1 3:00s 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Baghdad 2:57:40 - LMT 1890 -- 2:57:36 - BMT 1918 # Baghdad Mean Time? -+ 2:57:36 - BMT 1918 # Baghdad Mean Time? - 3:00 - AST 1982 May - 3:00 Iraq A%sT - -@@ -1272,7 +1385,7 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Jerusalem 2:20:54 - LMT 1880 -- 2:20:40 - JMT 1918 # Jerusalem Mean Time? -+ 2:20:40 - JMT 1918 # Jerusalem Mean Time? - 2:00 Zion I%sT - - -@@ -1281,15 +1394,15 @@ - - # Japan - --# `9:00' and `JST' is from Guy Harris. -+# '9:00' and 'JST' is from Guy Harris. - - # From Paul Eggert (1995-03-06): - # Today's _Asahi Evening News_ (page 4) reports that Japan had --# daylight saving between 1948 and 1951, but ``the system was discontinued --# because the public believed it would lead to longer working hours.'' -+# daylight saving between 1948 and 1951, but "the system was discontinued -+# because the public believed it would lead to longer working hours." - --# From Mayumi Negishi in the 2005-08-10 Japan Times --# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>: -+# From Mayumi Negishi in the 2005-08-10 Japan Times: -+# http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm - # Occupation authorities imposed daylight-saving time on Japan on - # [1948-05-01].... But lack of prior debate and the execution of - # daylight-saving time just three days after the bill was passed generated -@@ -1313,7 +1426,8 @@ - - # From Hideyuki Suzuki (1998-11-09): - # 'Tokyo' usually stands for the former location of Tokyo Astronomical --# Observatory: E 139 44' 40".90 (9h 18m 58s.727), N 35 39' 16".0. -+# Observatory: 139 degrees 44' 40.90" E (9h 18m 58.727s), -+# 35 degrees 39' 16.0" N. - # This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996' - # edited by National Astronomical Observatory of Japan.... - # JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST). -@@ -1321,10 +1435,10 @@ - - # From Hideyuki Suzuki (1998-11-16): - # The ordinance No. 51 (1886) established "standard time" in Japan, --# which stands for the time on E 135 degree. -+# which stands for the time on 135 degrees E. - # In the ordinance No. 167 (1895), "standard time" was renamed to "central - # standard time". And the same ordinance also established "western standard --# time", which stands for the time on E 120 degree.... But "western standard -+# time", which stands for the time on 120 degrees E.... But "western standard - # time" was abolished in the ordinance No. 529 (1937). In the ordinance No. - # 167, there is no mention regarding for what place western standard time is - # standard.... -@@ -1332,27 +1446,33 @@ - # I wrote "ordinance" above, but I don't know how to translate. - # In Japanese it's "chokurei", which means ordinance from emperor. - --# Shanks & Pottenger claim JST in use since 1896, and that a few --# places (e.g. Ishigaki) use +0800; go with Suzuki. Guess that all --# ordinances took effect on Jan 1. -+# From Yu-Cheng Chuang (2013-07-12): -+# ...the Meiji Emperor announced Ordinance No. 167 of Meiji Year 28 "The clause -+# about standard time" ... The adoption began from Jan 1, 1896. -+# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時) -+# -+# ...the Showa Emperor announced Ordinance No. 529 of Showa Year 12 ... which -+# means the whole Japan territory, including later occupations, adopt Japan -+# Central Time (UTC+9). The adoption began on Oct 1, 1937. -+# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u -- 9:00 - JST 1896 -- 9:00 - CJT 1938 -+ 9:00 - JST 1896 Jan 1 -+ 9:00 - JCST 1937 Oct 1 - 9:00 Japan J%sT - # Since 1938, all Japanese possessions have been like Asia/Tokyo. - - # Jordan - # --# From <a href="http://star.arabia.com/990701/JO9.html"> --# Jordan Week (1999-07-01) </a> via Steffen Thorsen (1999-09-09): -+# From <http://star.arabia.com/990701/JO9.html> -+# Jordan Week (1999-07-01) via Steffen Thorsen (1999-09-09): - # Clocks in Jordan were forwarded one hour on Wednesday at midnight, - # in accordance with the government's decision to implement summer time - # all year round. - # --# From <a href="http://star.arabia.com/990930/JO9.html"> --# Jordan Week (1999-09-30) </a> via Steffen Thorsen (1999-11-09): -+# From <http://star.arabia.com/990930/JO9.html> -+# Jordan Week (1999-09-30) via Steffen Thorsen (1999-11-09): - # Winter time starts today Thursday, 30 September. Clocks will be turned back - # by one hour. This is the latest government decision and it's final! - # The decision was taken because of the increase in working hours in -@@ -1372,9 +1492,7 @@ - - # From Steffen Thorsen (2009-04-02): - # This single one might be good enough, (2009-03-24, Arabic): --# <a href="http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279"> - # http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279 --# </a> - # - # Google's translation: - # -@@ -1465,9 +1583,8 @@ - # - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00. - # - Oral switched from +5:00 to +4:00 in spring 1989. - --# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm"> --# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21): --# </a> -+# From Kazakhstan Embassy's News Bulletin #11 -+# <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21): - # The Government of Kazakhstan passed a resolution March 15 abolishing - # daylight saving time citing lack of economic benefits and health - # complications coupled with a decrease in productivity. -@@ -1500,10 +1617,10 @@ - 6:00 - KIZT 1982 Apr 1 - 5:00 RussiaAsia KIZ%sT 1991 - 5:00 - KIZT 1991 Dec 16 # independence -- 5:00 - QYZT 1992 Jan 19 2:00 -+ 5:00 - QYZT 1992 Jan 19 2:00 - 6:00 RussiaAsia QYZ%sT 2005 Mar 15 - 6:00 - QYZT --# Aqtobe (aka Aktobe, formerly Akt'ubinsk) -+# Aqtobe (aka Aktobe, formerly Aktyubinsk) - Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2 - 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time - 5:00 - AKTT 1981 Apr 1 -@@ -1523,7 +1640,7 @@ - 6:00 - SHET 1982 Apr 1 - 5:00 RussiaAsia SHE%sT 1991 - 5:00 - SHET 1991 Dec 16 # independence -- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time -+ 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time - 4:00 RussiaAsia AQT%sT 2005 Mar 15 - 5:00 - AQTT - # West Kazakhstan -@@ -1532,7 +1649,7 @@ - 5:00 - URAT 1981 Apr 1 - 5:00 1:00 URAST 1981 Oct 1 - 6:00 - URAT 1982 Apr 1 -- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00 -+ 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00 - 4:00 RussiaAsia URA%sT 1991 - 4:00 - URAT 1991 Dec 16 # independence - 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time -@@ -1543,7 +1660,7 @@ - - # From Paul Eggert (2005-08-15): - # According to an article dated today in the Kyrgyzstan Development Gateway --# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml> -+# http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml - # Kyrgyzstan is canceling the daylight saving time system. I take the article - # to mean that they will leave their clocks at 6 hours ahead of UTC. - # From Malik Abdugaliev (2005-09-21): -@@ -1558,68 +1675,92 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2 - 5:00 - FRUT 1930 Jun 21 # Frunze Time -- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s -- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence -- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time -+ 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s -+ 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence -+ 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time - 6:00 - KGT - - ############################################################################### - - # Korea (North and South) - --# From Annie I. Bang (2006-07-10) in --# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>: --# The Ministry of Commerce, Industry and Energy has already --# commissioned a research project [to reintroduce DST] and has said --# the system may begin as early as 2008.... Korea ran a daylight --# saving program from 1949-61 but stopped it during the 1950-53 Korean War. -+# From Annie I. Bang (2006-07-10): -+# http://www.koreaherald.com/view.php?ud=200607100012 -+# Korea ran a daylight saving program from 1949-61 but stopped it -+# during the 1950-53 Korean War. The system was temporarily enforced -+# between 1987 and 1988 ... - --# From Shanks & Pottenger: -+# From Sanghyuk Jung (2014-10-29): -+# http://mm.icann.org/pipermail/tz/2014-October/021830.html -+# According to the Korean Wikipedia -+# http://ko.wikipedia.org/wiki/한국_표준시 -+# [oldid=12896437 2014-09-04 08:03 UTC] -+# DST in Republic of Korea was as follows.... And I checked old -+# newspapers in Korean, all articles correspond with data in Wikipedia. -+# For example, the article in 1948 (Korean Language) proved that DST -+# started at June 1 in that year. For another example, the article in -+# 1988 said that DST started at 2:00 AM in that year. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule ROK 1960 only - May 15 0:00 1:00 D --Rule ROK 1960 only - Sep 13 0:00 0 S --Rule ROK 1987 1988 - May Sun>=8 0:00 1:00 D --Rule ROK 1987 1988 - Oct Sun>=8 0:00 0 S -+Rule ROK 1948 only - Jun 1 0:00 1:00 D -+Rule ROK 1948 only - Sep 13 0:00 0 S -+Rule ROK 1949 only - Apr 3 0:00 1:00 D -+Rule ROK 1949 1951 - Sep Sun>=8 0:00 0 S -+Rule ROK 1950 only - Apr 1 0:00 1:00 D -+Rule ROK 1951 only - May 6 0:00 1:00 D -+Rule ROK 1955 only - May 5 0:00 1:00 D -+Rule ROK 1955 only - Sep 9 0:00 0 S -+Rule ROK 1956 only - May 20 0:00 1:00 D -+Rule ROK 1956 only - Sep 30 0:00 0 S -+Rule ROK 1957 1960 - May Sun>=1 0:00 1:00 D -+Rule ROK 1957 1960 - Sep Sun>=18 0:00 0 S -+Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D -+Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S -+ -+# From Paul Eggert (2014-10-30): -+# The Korean Wikipedia entry gives the following sources for UT offsets: -+# -+# 1908: Official Journal Article No. 3994 (Edict No. 5) -+# 1912: Governor-General of Korea Official Gazette Issue No. 367 -+# (Announcement No. 338) -+# 1954: Presidential Decree No. 876 (1954-03-17) -+# 1961: Law No. 676 (1961-08-07) -+# 1987: Law No. 3919 (1986-12-31) -+# -+# The Wikipedia entry also has confusing information about a change -+# to UT+9 in April 1910, but then what would be the point of the later change -+# to UT+9 on 1912-01-01? Omit the 1910 change for now. -+# -+# I guessed that time zone abbreviations through 1945 followed the same -+# rules as discussed under Taiwan, with nominal switches from JST to KST -+# when the respective cities were taken over by the Allies after WWII. -+# -+# For Pyongyang we have no information; guess no changes since World War II. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Seoul 8:27:52 - LMT 1890 -- 8:30 - KST 1904 Dec -- 9:00 - KST 1928 -- 8:30 - KST 1932 -+Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1 -+ 8:30 - KST 1912 Jan 1 -+ 9:00 - JCST 1937 Oct 1 -+ 9:00 - JST 1945 Sep 8 - 9:00 - KST 1954 Mar 21 -- 8:00 ROK K%sT 1961 Aug 10 -- 8:30 - KST 1968 Oct -+ 8:30 ROK K%sT 1961 Aug 10 - 9:00 ROK K%sT --Zone Asia/Pyongyang 8:23:00 - LMT 1890 -- 8:30 - KST 1904 Dec -- 9:00 - KST 1928 -- 8:30 - KST 1932 -- 9:00 - KST 1954 Mar 21 -- 8:00 - KST 1961 Aug 10 -+Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1 -+ 8:30 - KST 1912 Jan 1 -+ 9:00 - JCST 1937 Oct 1 -+ 9:00 - JST 1945 Aug 24 - 9:00 - KST - - ############################################################################### - - # Kuwait - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# From the Arab Times (2007-03-14): --# The Civil Service Commission (CSC) has approved a proposal forwarded --# by MP Ahmad Baqer on implementing the daylight saving time (DST) in --# Kuwait starting from April until the end of Sept this year, reports Al-Anba. --# <http://www.arabtimesonline.com/arabtimes/kuwait/Viewdet.asp?ID=9950>. --# From Paul Eggert (2007-03-29): --# We don't know the details, or whether the approval means it'll happen, --# so for now we assume no DST. - Zone Asia/Kuwait 3:11:56 - LMT 1950 - 3:00 - AST - - # Laos --# Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Vientiane 6:50:24 - LMT 1906 Jun 9 # or Viangchan -- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT? -- 7:00 - ICT 1912 May -- 8:00 - ICT 1931 May -- 7:00 - ICT -+# See Asia/Bangkok. -+ - - # Lebanon - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1657,8 +1798,8 @@ - Rule NBorneo 1935 1941 - Dec 14 0:00 0 - - # - # peninsular Malaysia --# The data here are taken from Mok Ly Yng (2003-10-30) --# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>. -+# taken from Mok Ly Yng (2003-10-30) -+# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1 - 6:55:25 - SMT 1905 Jun 1 # Singapore M.T. -@@ -1670,12 +1811,12 @@ - 7:30 - MALT 1982 Jan 1 - 8:00 - MYT # Malaysia Time - # Sabah & Sarawak --# From Paul Eggert (2006-03-22): --# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982 --# transition dates are from Mok Ly Yng. -+# From Paul Eggert (2014-08-12): -+# The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945 -+# and 1982 transition dates are from Mok Ly Yng. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Kuching 7:21:20 - LMT 1926 Mar -- 7:30 - BORT 1933 # Borneo Time -+ 7:30 - BORT 1933 # Borneo Time - 8:00 NBorneo BOR%sT 1942 Feb 16 - 9:00 - JST 1945 Sep 12 - 8:00 - BORT 1982 Jan 1 -@@ -1683,22 +1824,21 @@ - - # Maldives - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Indian/Maldives 4:54:00 - LMT 1880 # Male -- 4:54:00 - MMT 1960 # Male Mean Time -- 5:00 - MVT # Maldives Time -+Zone Indian/Maldives 4:54:00 - LMT 1880 # Male -+ 4:54:00 - MMT 1960 # Male Mean Time -+ 5:00 - MVT # Maldives Time - - # Mongolia - - # Shanks & Pottenger say that Mongolia has three time zones, but --# usno1995 and the CIA map Standard Time Zones of the World (2005-03) --# both say that it has just one. -+# The USNO (1995-12-21) and the CIA map Standard Time Zones of the World -+# (2005-03) both say that it has just one. - - # From Oscar van Vlijmen (1999-12-11): --# <a href="http://www.mongoliatourism.gov.mn/general.htm"> - # General Information Mongolia --# </a> (1999-09) -+# <http://www.mongoliatourism.gov.mn/general.htm> (1999-09) - # "Time: Mongolia has two time zones. Three westernmost provinces of --# Bayan-Ulgii, Uvs, and Hovd are one hour earlier than the capital city, and -+# Bayan-Ölgii, Uvs, and Hovd are one hour earlier than the capital city, and - # the rest of the country follows the Ulaanbaatar time, which is UTC/GMT plus - # eight hours." - -@@ -1709,7 +1849,7 @@ - # of implementation may have been different.... - # Some maps in the past have indicated that there was an additional time - # zone in the eastern part of Mongolia, including the provinces of Dornod, --# Suhbaatar, and possibly Khentij. -+# Sükhbaatar, and possibly Khentii. - - # From Paul Eggert (1999-12-15): - # Naming and spelling is tricky in Mongolia. -@@ -1723,10 +1863,10 @@ - # (adopted DST on 2001-04-27 02:00 local time, ending 2001-09-28), - # there are three time zones. - # --# Provinces [at 7:00]: Bayan-ulgii, Uvs, Khovd, Zavkhan, Govi-Altai --# Provinces [at 8:00]: Khovsgol, Bulgan, Arkhangai, Khentii, Tov, --# Bayankhongor, Ovorkhangai, Dundgovi, Dornogovi, Omnogovi --# Provinces [at 9:00]: Dornod, Sukhbaatar -+# Provinces [at 7:00]: Bayan-Ölgii, Uvs, Khovd, Zavkhan, Govi-Altai -+# Provinces [at 8:00]: Khövsgöl, Bulgan, Arkhangai, Khentii, Töv, -+# Bayankhongor, Övörkhangai, Dundgovi, Dornogovi, Ömnögovi -+# Provinces [at 9:00]: Dornod, Sükhbaatar - # - # [The province of Selenge is omitted from the above lists.] - -@@ -1743,16 +1883,16 @@ - # We have wildly conflicting information about Mongolia's time zones. - # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says - # there is only one time zone and that DST is observed, citing Microsoft --# Windows XP as the source. Risto Nykanen (2005-05-16) reports that -+# Windows XP as the source. Risto Nykänen (2005-05-16) reports that - # travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST. - # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in - # Washington, DC says there are two time zones, with DST observed. - # He also found --# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&> -+# http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1& - # which also says that there is DST, and which has a comment by "Toddius" - # (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones. - # The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT --# and some Eastern provinces are +9 GMT but Sukhbaatar Aimag is SUHK +8.5 GMT. -+# and some Eastern provinces are +9 GMT but Sükhbaatar Aimag is SUHK +8.5 GMT. - # The SUKH timezone is new this year, it is one of the few things the - # parliament passed during the tumultuous winter session." - # For now, let's ignore this information, until we have more confirmation. -@@ -1768,29 +1908,23 @@ - # +08:00 instead. Different sources appear to disagree with the tz - # database on this, e.g.: - # --# <a href="http://www.timeanddate.com/worldclock/city.html?n=1026"> - # http://www.timeanddate.com/worldclock/city.html?n=1026 --# </a> --# <a href="http://www.worldtimeserver.com/current_time_in_MN.aspx"> - # http://www.worldtimeserver.com/current_time_in_MN.aspx --# </a> - # - # both say GMT+08:00. - - # From Steffen Thorsen (2008-03-31): - # eznis airways, which operates several domestic flights, has a flight - # schedule here: --# <a href="http://www.eznis.com/Container.jsp?id=112"> - # http://www.eznis.com/Container.jsp?id=112 --# </a> - # (click the English flag for English) - # --# There it appears that flights between Choibalsan and Ulaanbatar arrive -+# There it appears that flights between Choibalsan and Ulaanbaatar arrive - # about 1:35 - 1:50 hours later in local clock time, no matter the --# direction, while Ulaanbaatar-Khvod takes 2 hours in the Eastern --# direction and 3:35 back, which indicates that Ulaanbatar and Khvod are -+# direction, while Ulaanbaatar-Khovd takes 2 hours in the Eastern -+# direction and 3:35 back, which indicates that Ulaanbaatar and Khovd are - # in different time zones (like we know about), while Choibalsan and --# Ulaanbatar are in the same time zone (correction needed). -+# Ulaanbaatar are in the same time zone (correction needed). - - # From Arthur David Olson (2008-05-19): - # Assume that Choibalsan is indeed offset by 8:00. -@@ -1806,7 +1940,7 @@ - # (1996-09) says 1996-10-25. Go with Shanks & Pottenger through 1998. - # - # Shanks & Pottenger say that the Sept. 1984 through Sept. 1990 switches --# in Choibalsan (more precisely, in Dornod and Sukhbaatar) took place -+# in Choibalsan (more precisely, in Dornod and Sükhbaatar) took place - # at 02:00 standard time, not at 00:00 local time as in the rest of - # the country. That would be odd, and possibly is a result of their - # correction of 02:00 (in the previous edition) not being done correctly -@@ -1822,13 +1956,13 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta - Zone Asia/Hovd 6:06:36 - LMT 1905 Aug -- 6:00 - HOVT 1978 # Hovd Time -+ 6:00 - HOVT 1978 # Hovd Time - 7:00 Mongol HOV%sT - # Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga - Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug -- 7:00 - ULAT 1978 # Ulaanbaatar Time -+ 7:00 - ULAT 1978 # Ulaanbaatar Time - 8:00 Mongol ULA%sT --# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan, -+# Choibalsan, a.k.a. Bajan Tümen, Bajan Tumen, Chojbalsan, - # Choybalsan, Sanbejse, Tchoibalsan - Zone Asia/Choibalsan 7:38:00 - LMT 1905 Aug - 7:00 - ULAT 1978 -@@ -1860,7 +1994,7 @@ - # 00:01 was to make it clear which day it was on. - - # From Paul Eggert (2002-03-15): --# Jesper Norgaard found this URL: -+# Jesper Nørgaard found this URL: - # http://www.pak.gov.pk/public/news/app/app06_dec.htm - # (dated 2001-12-06) which says that the Cabinet adopted a scheme "to - # advance the clocks by one hour on the night between the first -@@ -1892,43 +2026,30 @@ - # Here is an article that Pakistan plan to introduce Daylight Saving Time - # on June 1, 2008 for 3 months. - # --# "... The federal cabinet on Wednesday announced a new conservation plan to help --# reduce load shedding by approving the closure of commercial centres at 9pm and --# moving clocks forward by one hour for the next three months. --# ...." -+# "... The federal cabinet on Wednesday announced a new conservation plan to -+# help reduce load shedding by approving the closure of commercial centres at -+# 9pm and moving clocks forward by one hour for the next three months. ...." - # --# <a href="http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html"> - # http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html --# </a> --# OR --# <a href="http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4"> - # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4 --# </a> - - # From Arthur David Olson (2008-05-19): - # XXX--midnight transitions is a guess; 2008 only is a guess. - - # From Alexander Krivenyshev (2008-08-28): - # Pakistan government has decided to keep the watches one-hour advanced --# for another 2 months--plan to return to Standard Time on October 31 -+# for another 2 months - plan to return to Standard Time on October 31 - # instead of August 31. - # --# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html"> - # http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html --# </a> --# OR --# <a href="http://dailymailnews.com/200808/28/news/dmbrn03.html"> - # http://dailymailnews.com/200808/28/news/dmbrn03.html --# </a> - - # From Alexander Krivenyshev (2009-04-08): - # Based on previous media reports that "... proposed plan to - # advance clocks by one hour from May 1 will cause disturbance - # to the working schedules rather than bringing discipline in - # official working." --# <a href="http://www.thenews.com.pk/daily_detail.asp?id=171280"> - # http://www.thenews.com.pk/daily_detail.asp?id=171280 --# </a> - # - # recent news that instead of May 2009 - Pakistan plan to - # introduce DST from April 15, 2009 -@@ -1936,15 +2057,8 @@ - # FYI: Associated Press Of Pakistan - # April 08, 2009 - # Cabinet okays proposal to advance clocks by one hour from April 15 --# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1"> - # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1 --# </a> --# --# or --# --# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html --# </a> - # - # .... - # The Federal Cabinet on Wednesday approved the proposal to -@@ -1957,34 +2071,20 @@ - # clocks backward by one hour from October 1. A formal announcement to - # this effect will be made after the Prime Minister grants approval in - # this regard." --# <a href="http://www.thenews.com.pk/updates.asp?id=87168"> - # http://www.thenews.com.pk/updates.asp?id=87168 --# </a> - - # From Alexander Krivenyshev (2009-09-28): - # According to Associated Press Of Pakistan, it is confirmed that --# Pakistan clocks across the country would be turned back by an hour from October --# 1, 2009. -+# Pakistan clocks across the country would be turned back by an hour from -+# October 1, 2009. - # - # "Clocks to go back one hour from 1 Oct" --# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2"> - # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm"> - # http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm --# </a> -- -+# - # From Steffen Thorsen (2009-09-29): --# Alexander Krivenyshev wrote: --# > According to Associated Press Of Pakistan, it is confirmed that --# > Pakistan clocks across the country would be turned back by an hour from October --# > 1, 2009. --# - # Now they seem to have changed their mind, November 1 is the new date: --# <a href="http://www.thenews.com.pk/top_story_detail.asp?Id=24742"> - # http://www.thenews.com.pk/top_story_detail.asp?Id=24742 --# </a> - # "The country's clocks will be reversed by one hour on November 1. - # Officials of Federal Ministry for Interior told this to Geo News on - # Monday." -@@ -1996,11 +2096,9 @@ - # - # We have confirmed this year's end date with both with the Ministry of - # Water and Power and the Pakistan Electric Power Company: --# <a href="http://www.timeanddate.com/news/time/pakistan-ends-dst09.html"> - # http://www.timeanddate.com/news/time/pakistan-ends-dst09.html --# </a> - --# From Christoph Goehre (2009-10-01): -+# From Christoph Göhre (2009-10-01): - # [T]he German Consulate General in Karachi reported me today that Pakistan - # will go back to standard time on 1st of November. - -@@ -2016,22 +2114,17 @@ - # Now, it seems that the decision to not observe DST in final: - # - # "Govt Withdraws Plan To Advance Clocks" --# <a href="http://www.apakistannews.com/govt-withdraws-plan-to-advance-clocks-172041"> - # http://www.apakistannews.com/govt-withdraws-plan-to-advance-clocks-172041 --# </a> - # - # "People laud PM's announcement to end DST" --# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2"> - # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2 --# </a> - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S - Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 - - Rule Pakistan 2008 only - Jun 1 0:00 1:00 S --Rule Pakistan 2008 only - Nov 1 0:00 0 - -+Rule Pakistan 2008 2009 - Nov 1 0:00 0 - - Rule Pakistan 2009 only - Apr 15 0:00 1:00 S --Rule Pakistan 2009 only - Nov 1 0:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Karachi 4:28:12 - LMT 1907 -@@ -2105,10 +2198,9 @@ - # the PA has decided to implement DST in April. - - # From Paul Eggert (1999-09-20): --# Daoud Kuttab writes in --# <a href="http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html"> --# Holiday havoc --# </a> (Jerusalem Post, 1999-04-22) that -+# Daoud Kuttab writes in Holiday havoc -+# http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html -+# (Jerusalem Post, 1999-04-22) that - # the Palestinian National Authority changed to DST on 1999-04-15. - # I vaguely recall that they switch back in October (sorry, forgot the source). - # For now, let's assume that the spring switch was at 24:00, -@@ -2121,7 +2213,7 @@ - # A user from Gaza reported that Gaza made the change early because of - # the Ramadan. Next year Ramadan will be even earlier, so I think - # there is a good chance next year's end date will be around two weeks --# earlier--the same goes for Jordan. -+# earlier - the same goes for Jordan. - - # From Steffen Thorsen (2006-08-17): - # I was informed by a user in Bethlehem that in Bethlehem it started the -@@ -2140,7 +2232,7 @@ - # I guess it is likely that next year's date will be moved as well, - # because of the Ramadan. - --# From Jesper Norgaard Welen (2007-09-18): -+# From Jesper Nørgaard Welen (2007-09-18): - # According to Steffen Thorsen's web site the Gaza Strip and the rest of the - # Palestinian territories left DST early on 13.th. of September at 2:00. - -@@ -2157,16 +2249,9 @@ - # Gaza Strip (as Egypt) ended DST at midnight Thursday (Aug 28, 2008), while - # the West Bank will end Daylight Saving Time at midnight Sunday (Aug 31, 2008). - # --# <a href="http://www.guardian.co.uk/world/feedarticle/7759001"> - # http://www.guardian.co.uk/world/feedarticle/7759001 --# </a> --# <a href="http://www.abcnews.go.com/International/wireStory?id=5676087"> - # http://www.abcnews.go.com/International/wireStory?id=5676087 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html"> - # http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html --# </a> - - # From Alexander Krivenyshev (2009-03-26): - # According to the Palestine News Network (arabic.pnn.ps), Palestinian -@@ -2174,24 +2259,17 @@ - # 26 and continue until the night of 27 September 2009. - # - # (in Arabic) --# <a href="http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850"> - # http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850 --# </a> - # --# or - # (English translation) --# <a href="http://www.worldtimezone.com/dst_news/dst_news_westbank01.html"> - # http://www.worldtimezone.com/dst_news/dst_news_westbank01.html --# </a> - - # From Steffen Thorsen (2009-08-31): - # Palestine's Council of Ministers announced that they will revert back to - # winter time on Friday, 2009-09-04. - # - # One news source: --# <a href="http://www.safa.ps/ara/?action=showdetail&seid=4158"> - # http://www.safa.ps/ara/?action=showdetail&seid=4158 --# </a> - # (Palestinian press agency, Arabic), - # Google translate: "Decided that the Palestinian government in Ramallah - # headed by Salam Fayyad, the start of work in time for the winter of -@@ -2200,9 +2278,7 @@ - # - # We are not sure if Gaza will do the same, last year they had a different - # end date, we will keep this page updated: --# <a href="http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html"> - # http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html --# </a> - - # From Alexander Krivenyshev (2009-09-02): - # Seems that Gaza Strip will go back to Winter Time same date as West Bank. -@@ -2212,51 +2288,35 @@ - # - # "Winter time unite the West Bank and Gaza" - # (from Palestinian National Authority): --# <a href="http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505 - # http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html> - # http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html --# </a> - - # From Alexander Krivenyshev (2010-03-19): - # According to Voice of Palestine DST will last for 191 days, from March - # 26, 2010 till "the last Sunday before the tenth day of Tishri - # (October), each year" (October 03, 2010?) - # --# <a href="http://palvoice.org/forums/showthread.php?t=245697"> - # http://palvoice.org/forums/showthread.php?t=245697 --# </a> - # (in Arabic) --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_westbank03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_westbank03.html --# </a> - - # From Steffen Thorsen (2010-03-24): - # ...Ma'an News Agency reports that Hamas cabinet has decided it will - # start one day later, at 12:01am. Not sure if they really mean 12:01am or - # noon though: - # --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=271178"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=271178 --# </a> - # (Ma'an News Agency) - # "At 12:01am Friday, clocks in Israel and the West Bank will change to - # 1:01am, while Gaza clocks will change at 12:01am Saturday morning." - - # From Steffen Thorsen (2010-08-11): - # According to several sources, including --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=306795"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=306795 --# </a> - # the clocks were set back one hour at 2010-08-11 00:00:00 local time in - # Gaza and the West Bank. - # Some more background info: --# <a href="http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html"> - # http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html --# </a> - - # From Steffen Thorsen (2011-08-26): - # Gaza and the West Bank did go back to standard time in the beginning of -@@ -2264,13 +2324,9 @@ - # 00:00 (so two periods of DST in 2011). The pause was because of - # Ramadan. - # --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=416217"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=416217 --# </a> - # Additional info: --# <a href="http://www.timeanddate.com/news/time/palestine-dst-2011.html"> - # http://www.timeanddate.com/news/time/palestine-dst-2011.html --# </a> - - # From Alexander Krivenyshev (2011-08-27): - # According to the article in The Jerusalem Post: -@@ -2280,14 +2336,9 @@ - # The Hamas government said on Saturday that it won't observe summertime after - # the Muslim feast of Id al-Fitr, which begins on Tuesday..." - # ... --# <a href="http://www.jpost.com/MiddleEast/Article.aspx?id=235650"> - # http://www.jpost.com/MiddleEast/Article.aspx?id=235650 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html --# </a> --# The rules for Egypt are stolen from the `africa' file. -+# The rules for Egypt are stolen from the 'africa' file. - - # From Steffen Thorsen (2011-09-30): - # West Bank did end Daylight Saving Time this morning/midnight (2011-09-30 -@@ -2295,26 +2346,18 @@ - # So West Bank and Gaza now have the same time again. - # - # Many sources, including: --# <a href="http://www.maannews.net/eng/ViewDetails.aspx?ID=424808"> - # http://www.maannews.net/eng/ViewDetails.aspx?ID=424808 --# </a> - - # From Steffen Thorsen (2012-03-26): - # Palestinian news sources tell that both Gaza and West Bank will start DST - # on Friday (Thursday midnight, 2012-03-29 24:00). - # Some of many sources in Arabic: --# <a href="http://www.samanews.com/index.php?act=Show&id=122638"> - # http://www.samanews.com/index.php?act=Show&id=122638 --# </a> - # --# <a href="http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html"> - # http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html --# </a> - # - # Our brief summary: --# <a href="http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html"> - # http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html --# </a> - - # From Steffen Thorsen (2013-03-26): - # The following news sources tells that Palestine will "start daylight saving -@@ -2374,10 +2417,10 @@ - 2:00 EgyptAsia EE%sT 1967 Jun 5 - 2:00 Zion I%sT 1996 - 2:00 Jordan EE%sT 1999 -- 2:00 Palestine EE%sT 2008 Aug 29 0:00 -+ 2:00 Palestine EE%sT 2008 Aug 29 0:00 - 2:00 - EET 2008 Sep - 2:00 Palestine EE%sT 2010 -- 2:00 - EET 2010 Mar 27 0:01 -+ 2:00 - EET 2010 Mar 27 0:01 - 2:00 Palestine EE%sT 2011 Aug 1 - 2:00 - EET 2012 - 2:00 Palestine EE%sT -@@ -2393,25 +2436,27 @@ - # no information - - # Philippines --# On 1844-08-16, Narciso Claveria, governor-general of the -+# On 1844-08-16, Narciso Clavería, governor-general of the - # Philippines, issued a proclamation announcing that 1844-12-30 was to --# be immediately followed by 1845-01-01. Robert H. van Gent has a --# transcript of the decree in <http://www.phys.uu.nl/~vgent/idl/idl.htm>. --# The rest of the data are from Shanks & Pottenger. -+# be immediately followed by 1845-01-01; see R.H. van Gent's -+# History of the International Date Line -+# http://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm -+# The rest of the data entries are from Shanks & Pottenger. - --# From Paul Eggert (2006-04-25): --# Tomorrow's Manila Standard reports that the Philippines Department of --# Trade and Industry is considering adopting DST this June when the --# rainy season begins. See --# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>. --# For now, we'll ignore this, since it's not definite and we lack details. --# --# From Jesper Norgaard Welen (2006-04-26): -+# From Jesper Nørgaard Welen (2006-04-26): - # ... claims that Philippines had DST last time in 1990: - # http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/ - # [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires, - # but no details] - -+# From Paul Eggert (2014-08-14): -+# The following source says DST may be instituted November-January and again -+# March-June, but this is not definite. It also says DST was last proclaimed -+# during the Ramos administration (1992-1998); but again, no details. -+# Carcamo D. PNoy urged to declare use of daylight saving time. -+# Philippine Star 2014-08-05 -+# http://www.philstar.com/headlines/2014/08/05/1354152/pnoy-urged-declare-use-daylight-saving-time -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Phil 1936 only - Nov 1 0:00 1:00 S - Rule Phil 1937 only - Feb 1 0:00 0 - -@@ -2428,18 +2473,39 @@ - - # Qatar - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha -+Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha - 4:00 - GST 1972 Jun - 3:00 - AST - - # Saudi Arabia -+# -+# From Paul Eggert (2014-07-15): -+# Time in Saudi Arabia and other countries in the Arabian peninsula was not -+# standardized until relatively recently; we don't know when, and possibly it -+# has never been made official. Richard P Hunt, in "Islam city yielding to -+# modern times", New York Times (1961-04-09), p 20, wrote that only airlines -+# observed standard time, and that people in Jeddah mostly observed quasi-solar -+# time, doing so by setting their watches at sunrise to 6 o'clock (or to 12 -+# o'clock for "Arab" time). -+# -+# The TZ database cannot represent quasi-solar time; airline time is the best -+# we can do. The 1946 foreign air news digest of the U.S. Civil Aeronautics -+# Board (OCLC 42299995) reported that the "... Arabian Government, inaugurated -+# a weekly Dhahran-Cairo service, via the Saudi Arabian cities of Riyadh and -+# Jidda, on March 14, 1947". Shanks & Pottenger guessed 1950; go with the -+# earlier date. -+# -+# Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two -+# time zones; the other zone, at UTC+4, was in the far eastern part of -+# the country. Ignore this, as it's before our 1970 cutoff. -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Riyadh 3:06:52 - LMT 1950 -+Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14 - 3:00 - AST - - # Singapore --# The data here are taken from Mok Ly Yng (2003-10-30) --# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>. -+# taken from Mok Ly Yng (2003-10-30) -+# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1 - 6:55:25 - SMT 1905 Jun 1 # Singapore M.T. -@@ -2465,26 +2531,24 @@ - - # From Paul Eggert (1996-09-03): - # "Sri Lanka advances clock by an hour to avoid blackout" --# (www.virtual-pc.com/lankaweb/news/items/240596-2.html, 1996-05-24, -+# (<http://www.virtual-pc.com/lankaweb/news/items/240596-2.html>, 1996-05-24, - # no longer available as of 1999-08-17) --# reported ``the country's standard time will be put forward by one hour at --# midnight Friday (1830 GMT) `in the light of the present power crisis'.'' -+# reported "the country's standard time will be put forward by one hour at -+# midnight Friday (1830 GMT) 'in the light of the present power crisis'." - # - # From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted --# by Shamindra in --# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net"> --# Daily News - Hot News Section (1996-10-26) --# </a>: -+# by Shamindra in Daily News - Hot News Section -+# <news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net> (1996-10-26): - # With effect from 12.30 a.m. on 26th October 1996 - # Sri Lanka will be six (06) hours ahead of GMT. - --# From Jesper Norgaard Welen (2006-04-14), quoting Sri Lanka News Online -+# From Jesper Nørgaard Welen (2006-04-14), quoting Sri Lanka News Online - # <http://news.sinhalaya.com/wmview.php?ArtID=11002> (2006-04-13): - # 0030 hrs on April 15, 2006 (midnight of April 14, 2006 +30 minutes) - # at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006). - - # From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in: --# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML> -+# http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML - # [The Tamil Tigers] never accepted the original 1996 time change and simply - # kept their clocks set five and a half hours ahead of Greenwich Mean - # Time (GMT), in line with neighbor India. -@@ -2498,7 +2562,7 @@ - # twice in 1996 and probably SL Government or its standardization - # agencies never declared an abbreviation as a national standard. - # --# I recollect before the recent change the government annoucemments -+# I recollect before the recent change the government announcements - # mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka - # Time and no mention was made about the abbreviation. - # -@@ -2508,7 +2572,7 @@ - # item.... - # - # Within Sri Lanka I think LKT is well known among computer users and --# adminsitrators. In my opinion SLT may not be a good choice because the -+# administrators. In my opinion SLT may not be a good choice because the - # nation's largest telcom / internet operator Sri Lanka Telcom is well - # known by that abbreviation - simply as SLT (there IP domains are - # slt.lk and sltnet.lk). -@@ -2523,13 +2587,13 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Colombo 5:19:24 - LMT 1880 -- 5:19:32 - MMT 1906 # Moratuwa Mean Time -+ 5:19:32 - MMT 1906 # Moratuwa Mean Time - 5:30 - IST 1942 Jan 5 - 5:30 0:30 IHST 1942 Sep -- 5:30 1:00 IST 1945 Oct 16 2:00 -- 5:30 - IST 1996 May 25 0:00 -- 6:30 - LKT 1996 Oct 26 0:30 -- 6:00 - LKT 2006 Apr 15 0:30 -+ 5:30 1:00 IST 1945 Oct 16 2:00 -+ 5:30 - IST 1996 May 25 0:00 -+ 6:30 - LKT 1996 Oct 26 0:30 -+ 6:00 - LKT 2006 Apr 15 0:30 - 5:30 - IST - - # Syria -@@ -2580,7 +2644,7 @@ - # Today the AP reported "Syria will switch to summertime at midnight Thursday." - # http://www.iht.com/articles/ap/2007/03/29/africa/ME-GEN-Syria-Time-Change.php - Rule Syria 2007 only - Mar lastFri 0:00 1:00 S --# From Jesper Norgard (2007-10-27): -+# From Jesper Nørgaard (2007-10-27): - # The sister center ICARDA of my work CIMMYT is confirming that Syria DST will - # not take place 1st November at 0:00 o'clock but 1st November at 24:00 or - # rather Midnight between Thursday and Friday. This does make more sense than -@@ -2589,7 +2653,7 @@ - # it is implemented at midnight of the last workday before weekend... - # - # From Steffen Thorsen (2007-10-27): --# Jesper Norgaard Welen wrote: -+# Jesper Nørgaard Welen wrote: - # - # > "Winter local time in Syria will be observed at midnight of Thursday 1 - # > November 2007, and the clock will be put back 1 hour." -@@ -2605,8 +2669,7 @@ - - # From Stephen Colebourne (2008-03-17): - # For everyone's info, I saw an IATA time zone change for [Syria] for --# this month (March 2008) in the last day or so...This is the data IATA --# are now using: -+# this month (March 2008) in the last day or so.... - # Country Time Standard --- DST Start --- --- DST End --- DST - # Name Zone Variation Time Date Time Date - # Variation -@@ -2618,16 +2681,15 @@ - # From Arthur David Olson (2008-03-17): - # Here's a link to English-language coverage by the Syrian Arab News - # Agency (SANA)... --# <a href="http://www.sana.sy/eng/21/2008/03/11/165173.htm"> - # http://www.sana.sy/eng/21/2008/03/11/165173.htm --# </a>...which reads (in part) "The Cabinet approved the suggestion of the -+# ...which reads (in part) "The Cabinet approved the suggestion of the - # Ministry of Electricity to begin daylight savings time on Friday April - # 4th, advancing clocks one hour ahead on midnight of Thursday April 3rd." - # Since Syria is two hours east of UTC, the 2200 and 2100 transition times - # shown above match up with midnight in Syria. - - # From Arthur David Olson (2008-03-18): --# My buest guess at a Syrian rule is "the Friday nearest April 1"; -+# My best guess at a Syrian rule is "the Friday nearest April 1"; - # coding that involves either using a "Mar Fri>=29" construct that old time zone - # compilers can't handle or having multiple Rules (a la Israel). - # For now, use "Apr Fri>=1", and go with IATA on a uniform Sep 30 end. -@@ -2640,37 +2702,27 @@ - # winter time on 2008-11-01 at 00:00 local daylight time (delaying/setting - # clocks back 60 minutes). - # --# <a href="http://sana.sy/ara/2/2008/10/07/195459.htm"> - # http://sana.sy/ara/2/2008/10/07/195459.htm --# </a> - - # From Steffen Thorsen (2009-03-19): - # Syria will start DST on 2009-03-27 00:00 this year according to many sources, - # two examples: - # --# <a href="http://www.sana.sy/eng/21/2009/03/17/217563.htm"> - # http://www.sana.sy/eng/21/2009/03/17/217563.htm --# </a> - # (English, Syrian Arab News # Agency) --# <a href="http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209"> - # http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209 --# </a> - # (Arabic, gov-site) - # - # We have not found any sources saying anything about when DST ends this year. - # - # Our summary --# <a href="http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html"> - # http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html --# </a> - - # From Steffen Thorsen (2009-10-27): - # The Syrian Arab News Network on 2009-09-29 reported that Syria will - # revert back to winter (standard) time on midnight between Thursday - # 2009-10-29 and Friday 2009-10-30: --# <a href="http://www.sana.sy/ara/2/2009/09/29/247012.htm"> - # http://www.sana.sy/ara/2/2009/09/29/247012.htm (Arabic) --# </a> - - # From Arthur David Olson (2009-10-28): - # We'll see if future DST switching times turn out to be end of the last -@@ -2681,23 +2733,17 @@ - # The "Syrian News Station" reported on 2010-03-16 that the Council of - # Ministers has decided that Syria will start DST on midnight Thursday - # 2010-04-01: (midnight between Thursday and Friday): --# <a href="http://sns.sy/sns/?path=news/read/11421"> - # http://sns.sy/sns/?path=news/read/11421 (Arabic) --# </a> - - # From Steffen Thorsen (2012-03-26): - # Today, Syria's government announced that they will start DST early on Friday - # (00:00). This is a bit earlier than the past two years. - # - # From Syrian Arab News Agency, in Arabic: --# <a href="http://www.sana.sy/ara/2/2012/03/26/408215.htm"> - # http://www.sana.sy/ara/2/2012/03/26/408215.htm --# </a> - # - # Our brief summary: --# <a href="http://www.timeanddate.com/news/time/syria-dst-2012.html"> - # http://www.timeanddate.com/news/time/syria-dst-2012.html --# </a> - - # From Arthur David Olson (2012-03-27): - # Assume last Friday in March going forward XXX. -@@ -2710,7 +2756,7 @@ - Rule Syria 2009 max - Oct lastFri 0:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq -+Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq - 2:00 Syria EE%sT - - # Tajikistan -@@ -2718,24 +2764,26 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2 - 5:00 - DUST 1930 Jun 21 # Dushanbe Time -- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s -- 5:00 1:00 DUSST 1991 Sep 9 2:00s -- 5:00 - TJT # Tajikistan Time -+ 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s -+ 5:00 1:00 DUSST 1991 Sep 9 2:00s -+ 5:00 - TJT # Tajikistan Time - - # Thailand - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Bangkok 6:42:04 - LMT 1880 - 6:42:04 - BMT 1920 Apr # Bangkok Mean Time - 7:00 - ICT -+Link Asia/Bangkok Asia/Phnom_Penh # Cambodia -+Link Asia/Bangkok Asia/Vientiane # Laos - - # Turkmenistan - # From Shanks & Pottenger. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad - 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time -- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00 -+ 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00 - 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence -- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00 -+ 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00 - 5:00 - TMT - - # United Arab Emirates -@@ -2744,8 +2792,9 @@ - 4:00 - GST - - # Uzbekistan -+# Byalokoz 1919 says Uzbekistan was 4:27:53. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Samarkand 4:27:12 - LMT 1924 May 2 -+Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2 - 4:00 - SAMT 1930 Jun 21 # Samarkand Time - 5:00 - SAMT 1981 Apr 1 - 5:00 1:00 SAMST 1981 Oct 1 -@@ -2753,31 +2802,75 @@ - 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence - 5:00 RussiaAsia UZ%sT 1992 - 5:00 - UZT --Zone Asia/Tashkent 4:37:12 - LMT 1924 May 2 -+# Milne says Tashkent was 4:37:10.8; round to nearest. -+Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2 - 5:00 - TAST 1930 Jun 21 # Tashkent Time -- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00 -+ 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00 - 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence - 5:00 RussiaAsia UZ%sT 1992 - 5:00 - UZT - - # Vietnam - --# From Paul Eggert (2013-02-21): -+# From Paul Eggert (2014-10-04): - # Milne gives 7:16:56 for the meridian of Saigon in 1899, as being - # used in Lower Laos, Cambodia, and Annam. But this is quite a ways - # from Saigon's location. For now, ignore this and stick with Shanks --# and Pottenger. -+# and Pottenger for LMT before 1906. - - # From Arthur David Olson (2008-03-18): --# The English-language name of Vietnam's most populous city is "Ho Chi Min City"; --# we use Ho_Chi_Minh below to avoid a name of more than 14 characters. -+# The English-language name of Vietnam's most populous city is "Ho Chi Minh -+# City"; use Ho_Chi_Minh below to avoid a name of more than 14 characters. - --# From Shanks & Pottenger: -+# From Paul Eggert (2014-10-21) after a heads-up from Trần Ngọc Quân: -+# Trần Tiến Bình's authoritative book "Lịch Việt Nam: thế kỷ XX-XXI (1901-2100)" -+# (Nhà xuất bản Văn Hoá - Thông Tin, Hanoi, 2005), pp 49-50, -+# is quoted verbatim in: -+# http://www.thoigian.com.vn/?mPage=P80D01 -+# is translated by Brian Inglis in: -+# http://mm.icann.org/pipermail/tz/2014-October/021654.html -+# and is the basis for the information below. -+# -+# The 1906 transition was effective July 1 and standardized Indochina to -+# Phù Liễn Observatory, legally 104 deg. 17'17" east of Paris. -+# It's unclear whether this meant legal Paris Mean Time (00:09:21) or -+# the Paris Meridian (2 deg. 20'14.03" E); the former yields 07:06:30.1333... -+# and the latter 07:06:29.333... so either way it rounds to 07:06:30, -+# which is used below even though the modern-day Phù Liễn Observatory -+# is closer to 07:06:31. Abbreviate Phù Liễn Mean Time as PLMT. -+# -+# The following transitions occurred in Indochina in general (before 1954) -+# and in South Vietnam in particular (after 1954): -+# To 07:00 on 1911-05-01. -+# To 08:00 on 1942-12-31 at 23:00. -+# To 09:00 in 1945-03-14 at 23:00. -+# To 07:00 on 1945-09-02 in Vietnam. -+# To 08:00 on 1947-04-01 in French-controlled Indochina. -+# To 07:00 on 1955-07-01 in South Vietnam. -+# To 08:00 on 1959-12-31 at 23:00 in South Vietnam. -+# To 07:00 on 1975-06-13 in South Vietnam. -+# -+# Trần cites the following sources; it's unclear which supplied the info above. -+# -+# Hoàng Xuân Hãn: "Lịch và lịch Việt Nam". Tập san Khoa học Xã hội, -+# No. 9, Paris, February 1982. -+# -+# Lê Thành Lân: "Lịch và niên biểu lịch sử hai mươi thế kỷ (0001-2010)", -+# NXB Thống kê, Hanoi, 2000. -+# -+# Lê Thành Lân: "Lịch hai thế kỷ (1802-2010) và các lịch vĩnh cửu", -+# NXB Thuận Hoá, Huế, 1995. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jun 9 -- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT? -- 7:00 - ICT 1912 May -- 8:00 - ICT 1931 May -+Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jul 1 -+ 7:06:30 - PLMT 1911 May 1 -+ 7:00 - ICT 1942 Dec 31 23:00 -+ 8:00 - IDT 1945 Mar 14 23:00 -+ 9:00 - JST 1945 Sep 2 -+ 7:00 - ICT 1947 Apr 1 -+ 8:00 - IDT 1955 Jul 1 -+ 7:00 - ICT 1959 Dec 31 23:00 -+ 8:00 - IDT 1975 Jun 13 - 7:00 - ICT - - # Yemen ---- ./jdk/test/sun/util/calendar/zi/tzdata/australasia Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/australasia Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - -@@ -36,13 +35,13 @@ - # Please see the notes below for the controversy about "EST" versus "AEST" etc. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Aus 1917 only - Jan 1 0:01 1:00 - --Rule Aus 1917 only - Mar 25 2:00 0 - --Rule Aus 1942 only - Jan 1 2:00 1:00 - --Rule Aus 1942 only - Mar 29 2:00 0 - --Rule Aus 1942 only - Sep 27 2:00 1:00 - --Rule Aus 1943 1944 - Mar lastSun 2:00 0 - --Rule Aus 1943 only - Oct 3 2:00 1:00 - -+Rule Aus 1917 only - Jan 1 0:01 1:00 D -+Rule Aus 1917 only - Mar 25 2:00 0 S -+Rule Aus 1942 only - Jan 1 2:00 1:00 D -+Rule Aus 1942 only - Mar 29 2:00 0 S -+Rule Aus 1942 only - Sep 27 2:00 1:00 D -+Rule Aus 1943 1944 - Mar lastSun 2:00 0 S -+Rule Aus 1943 only - Oct 3 2:00 1:00 D - # Go with Whitman and the Australian National Standards Commission, which - # says W Australia didn't use DST in 1943/1944. Ignore Whitman's claim that - # 1944/1945 was just like 1943/1944. -@@ -50,26 +49,26 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # Northern Territory - Zone Australia/Darwin 8:43:20 - LMT 1895 Feb -- 9:00 - CST 1899 May -- 9:30 Aus CST -+ 9:00 - ACST 1899 May -+ 9:30 Aus AC%sT - # Western Australia - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AW 1974 only - Oct lastSun 2:00s 1:00 - --Rule AW 1975 only - Mar Sun>=1 2:00s 0 - --Rule AW 1983 only - Oct lastSun 2:00s 1:00 - --Rule AW 1984 only - Mar Sun>=1 2:00s 0 - --Rule AW 1991 only - Nov 17 2:00s 1:00 - --Rule AW 1992 only - Mar Sun>=1 2:00s 0 - --Rule AW 2006 only - Dec 3 2:00s 1:00 - --Rule AW 2007 2009 - Mar lastSun 2:00s 0 - --Rule AW 2007 2008 - Oct lastSun 2:00s 1:00 - -+Rule AW 1974 only - Oct lastSun 2:00s 1:00 D -+Rule AW 1975 only - Mar Sun>=1 2:00s 0 S -+Rule AW 1983 only - Oct lastSun 2:00s 1:00 D -+Rule AW 1984 only - Mar Sun>=1 2:00s 0 S -+Rule AW 1991 only - Nov 17 2:00s 1:00 D -+Rule AW 1992 only - Mar Sun>=1 2:00s 0 S -+Rule AW 2006 only - Dec 3 2:00s 1:00 D -+Rule AW 2007 2009 - Mar lastSun 2:00s 0 S -+Rule AW 2007 2008 - Oct lastSun 2:00s 1:00 D - Zone Australia/Perth 7:43:24 - LMT 1895 Dec -- 8:00 Aus WST 1943 Jul -- 8:00 AW WST -+ 8:00 Aus AW%sT 1943 Jul -+ 8:00 AW AW%sT - Zone Australia/Eucla 8:35:28 - LMT 1895 Dec -- 8:45 Aus CWST 1943 Jul -- 8:45 AW CWST -+ 8:45 Aus ACW%sT 1943 Jul -+ 8:45 AW ACW%sT - - # Queensland - # -@@ -85,150 +84,150 @@ - # so use Lindeman. - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AQ 1971 only - Oct lastSun 2:00s 1:00 - --Rule AQ 1972 only - Feb lastSun 2:00s 0 - --Rule AQ 1989 1991 - Oct lastSun 2:00s 1:00 - --Rule AQ 1990 1992 - Mar Sun>=1 2:00s 0 - --Rule Holiday 1992 1993 - Oct lastSun 2:00s 1:00 - --Rule Holiday 1993 1994 - Mar Sun>=1 2:00s 0 - -+Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D -+Rule AQ 1972 only - Feb lastSun 2:00s 0 S -+Rule AQ 1989 1991 - Oct lastSun 2:00s 1:00 D -+Rule AQ 1990 1992 - Mar Sun>=1 2:00s 0 S -+Rule Holiday 1992 1993 - Oct lastSun 2:00s 1:00 D -+Rule Holiday 1993 1994 - Mar Sun>=1 2:00s 0 S - Zone Australia/Brisbane 10:12:08 - LMT 1895 -- 10:00 Aus EST 1971 -- 10:00 AQ EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AQ AE%sT - Zone Australia/Lindeman 9:55:56 - LMT 1895 -- 10:00 Aus EST 1971 -- 10:00 AQ EST 1992 Jul -- 10:00 Holiday EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AQ AE%sT 1992 Jul -+ 10:00 Holiday AE%sT - - # South Australia - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 - --Rule AS 1986 only - Oct 19 2:00s 1:00 - --Rule AS 1987 2007 - Oct lastSun 2:00s 1:00 - --Rule AS 1972 only - Feb 27 2:00s 0 - --Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 - --Rule AS 1986 1990 - Mar Sun>=15 2:00s 0 - --Rule AS 1991 only - Mar 3 2:00s 0 - --Rule AS 1992 only - Mar 22 2:00s 0 - --Rule AS 1993 only - Mar 7 2:00s 0 - --Rule AS 1994 only - Mar 20 2:00s 0 - --Rule AS 1995 2005 - Mar lastSun 2:00s 0 - --Rule AS 2006 only - Apr 2 2:00s 0 - --Rule AS 2007 only - Mar lastSun 2:00s 0 - --Rule AS 2008 max - Apr Sun>=1 2:00s 0 - --Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 - -+Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 D -+Rule AS 1986 only - Oct 19 2:00s 1:00 D -+Rule AS 1987 2007 - Oct lastSun 2:00s 1:00 D -+Rule AS 1972 only - Feb 27 2:00s 0 S -+Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 S -+Rule AS 1986 1990 - Mar Sun>=15 2:00s 0 S -+Rule AS 1991 only - Mar 3 2:00s 0 S -+Rule AS 1992 only - Mar 22 2:00s 0 S -+Rule AS 1993 only - Mar 7 2:00s 0 S -+Rule AS 1994 only - Mar 20 2:00s 0 S -+Rule AS 1995 2005 - Mar lastSun 2:00s 0 S -+Rule AS 2006 only - Apr 2 2:00s 0 S -+Rule AS 2007 only - Mar lastSun 2:00s 0 S -+Rule AS 2008 max - Apr Sun>=1 2:00s 0 S -+Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb -- 9:00 - CST 1899 May -- 9:30 Aus CST 1971 -- 9:30 AS CST -+ 9:00 - ACST 1899 May -+ 9:30 Aus AC%sT 1971 -+ 9:30 AS AC%sT - - # Tasmania - # - # From Paul Eggert (2005-08-16): --# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml> -+# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml - # says King Island didn't observe DST from WWII until late 1971. - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AT 1967 only - Oct Sun>=1 2:00s 1:00 - --Rule AT 1968 only - Mar lastSun 2:00s 0 - --Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 - --Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 - --Rule AT 1972 only - Feb lastSun 2:00s 0 - --Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 - --Rule AT 1982 1983 - Mar lastSun 2:00s 0 - --Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 - --Rule AT 1986 only - Oct Sun>=15 2:00s 1:00 - --Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 - --Rule AT 1987 only - Oct Sun>=22 2:00s 1:00 - --Rule AT 1988 1990 - Oct lastSun 2:00s 1:00 - --Rule AT 1991 1999 - Oct Sun>=1 2:00s 1:00 - --Rule AT 1991 2005 - Mar lastSun 2:00s 0 - --Rule AT 2000 only - Aug lastSun 2:00s 1:00 - --Rule AT 2001 max - Oct Sun>=1 2:00s 1:00 - --Rule AT 2006 only - Apr Sun>=1 2:00s 0 - --Rule AT 2007 only - Mar lastSun 2:00s 0 - --Rule AT 2008 max - Apr Sun>=1 2:00s 0 - -+Rule AT 1967 only - Oct Sun>=1 2:00s 1:00 D -+Rule AT 1968 only - Mar lastSun 2:00s 0 S -+Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 D -+Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 S -+Rule AT 1972 only - Feb lastSun 2:00s 0 S -+Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 S -+Rule AT 1982 1983 - Mar lastSun 2:00s 0 S -+Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 S -+Rule AT 1986 only - Oct Sun>=15 2:00s 1:00 D -+Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 S -+Rule AT 1987 only - Oct Sun>=22 2:00s 1:00 D -+Rule AT 1988 1990 - Oct lastSun 2:00s 1:00 D -+Rule AT 1991 1999 - Oct Sun>=1 2:00s 1:00 D -+Rule AT 1991 2005 - Mar lastSun 2:00s 0 S -+Rule AT 2000 only - Aug lastSun 2:00s 1:00 D -+Rule AT 2001 max - Oct Sun>=1 2:00s 1:00 D -+Rule AT 2006 only - Apr Sun>=1 2:00s 0 S -+Rule AT 2007 only - Mar lastSun 2:00s 0 S -+Rule AT 2008 max - Apr Sun>=1 2:00s 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Hobart 9:49:16 - LMT 1895 Sep -- 10:00 - EST 1916 Oct 1 2:00 -- 10:00 1:00 EST 1917 Feb -- 10:00 Aus EST 1967 -- 10:00 AT EST -+ 10:00 - AEST 1916 Oct 1 2:00 -+ 10:00 1:00 AEDT 1917 Feb -+ 10:00 Aus AE%sT 1967 -+ 10:00 AT AE%sT - Zone Australia/Currie 9:35:28 - LMT 1895 Sep -- 10:00 - EST 1916 Oct 1 2:00 -- 10:00 1:00 EST 1917 Feb -- 10:00 Aus EST 1971 Jul -- 10:00 AT EST -+ 10:00 - AEST 1916 Oct 1 2:00 -+ 10:00 1:00 AEDT 1917 Feb -+ 10:00 Aus AE%sT 1971 Jul -+ 10:00 AT AE%sT - - # Victoria - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 - --Rule AV 1972 only - Feb lastSun 2:00s 0 - --Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 - --Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 - --Rule AV 1986 1987 - Oct Sun>=15 2:00s 1:00 - --Rule AV 1988 1999 - Oct lastSun 2:00s 1:00 - --Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 - --Rule AV 1995 2005 - Mar lastSun 2:00s 0 - --Rule AV 2000 only - Aug lastSun 2:00s 1:00 - --Rule AV 2001 2007 - Oct lastSun 2:00s 1:00 - --Rule AV 2006 only - Apr Sun>=1 2:00s 0 - --Rule AV 2007 only - Mar lastSun 2:00s 0 - --Rule AV 2008 max - Apr Sun>=1 2:00s 0 - --Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 - -+Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 D -+Rule AV 1972 only - Feb lastSun 2:00s 0 S -+Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 S -+Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 S -+Rule AV 1986 1987 - Oct Sun>=15 2:00s 1:00 D -+Rule AV 1988 1999 - Oct lastSun 2:00s 1:00 D -+Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 S -+Rule AV 1995 2005 - Mar lastSun 2:00s 0 S -+Rule AV 2000 only - Aug lastSun 2:00s 1:00 D -+Rule AV 2001 2007 - Oct lastSun 2:00s 1:00 D -+Rule AV 2006 only - Apr Sun>=1 2:00s 0 S -+Rule AV 2007 only - Mar lastSun 2:00s 0 S -+Rule AV 2008 max - Apr Sun>=1 2:00s 0 S -+Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Melbourne 9:39:52 - LMT 1895 Feb -- 10:00 Aus EST 1971 -- 10:00 AV EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AV AE%sT - - # New South Wales - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 - --Rule AN 1972 only - Feb 27 2:00s 0 - --Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 - --Rule AN 1982 only - Apr Sun>=1 2:00s 0 - --Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 - --Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 - --Rule AN 1986 only - Oct 19 2:00s 1:00 - --Rule AN 1987 1999 - Oct lastSun 2:00s 1:00 - --Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 - --Rule AN 1996 2005 - Mar lastSun 2:00s 0 - --Rule AN 2000 only - Aug lastSun 2:00s 1:00 - --Rule AN 2001 2007 - Oct lastSun 2:00s 1:00 - --Rule AN 2006 only - Apr Sun>=1 2:00s 0 - --Rule AN 2007 only - Mar lastSun 2:00s 0 - --Rule AN 2008 max - Apr Sun>=1 2:00s 0 - --Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 - -+Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 D -+Rule AN 1972 only - Feb 27 2:00s 0 S -+Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 S -+Rule AN 1982 only - Apr Sun>=1 2:00s 0 S -+Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 S -+Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 S -+Rule AN 1986 only - Oct 19 2:00s 1:00 D -+Rule AN 1987 1999 - Oct lastSun 2:00s 1:00 D -+Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 S -+Rule AN 1996 2005 - Mar lastSun 2:00s 0 S -+Rule AN 2000 only - Aug lastSun 2:00s 1:00 D -+Rule AN 2001 2007 - Oct lastSun 2:00s 1:00 D -+Rule AN 2006 only - Apr Sun>=1 2:00s 0 S -+Rule AN 2007 only - Mar lastSun 2:00s 0 S -+Rule AN 2008 max - Apr Sun>=1 2:00s 0 S -+Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Australia/Sydney 10:04:52 - LMT 1895 Feb -- 10:00 Aus EST 1971 -- 10:00 AN EST -+ 10:00 Aus AE%sT 1971 -+ 10:00 AN AE%sT - Zone Australia/Broken_Hill 9:25:48 - LMT 1895 Feb -- 10:00 - EST 1896 Aug 23 -- 9:00 - CST 1899 May -- 9:30 Aus CST 1971 -- 9:30 AN CST 2000 -- 9:30 AS CST -+ 10:00 - AEST 1896 Aug 23 -+ 9:00 - ACST 1899 May -+ 9:30 Aus AC%sT 1971 -+ 9:30 AN AC%sT 2000 -+ 9:30 AS AC%sT - - # Lord Howe Island - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule LH 1981 1984 - Oct lastSun 2:00 1:00 - --Rule LH 1982 1985 - Mar Sun>=1 2:00 0 - --Rule LH 1985 only - Oct lastSun 2:00 0:30 - --Rule LH 1986 1989 - Mar Sun>=15 2:00 0 - --Rule LH 1986 only - Oct 19 2:00 0:30 - --Rule LH 1987 1999 - Oct lastSun 2:00 0:30 - --Rule LH 1990 1995 - Mar Sun>=1 2:00 0 - --Rule LH 1996 2005 - Mar lastSun 2:00 0 - --Rule LH 2000 only - Aug lastSun 2:00 0:30 - --Rule LH 2001 2007 - Oct lastSun 2:00 0:30 - --Rule LH 2006 only - Apr Sun>=1 2:00 0 - --Rule LH 2007 only - Mar lastSun 2:00 0 - --Rule LH 2008 max - Apr Sun>=1 2:00 0 - --Rule LH 2008 max - Oct Sun>=1 2:00 0:30 - -+Rule LH 1981 1984 - Oct lastSun 2:00 1:00 D -+Rule LH 1982 1985 - Mar Sun>=1 2:00 0 S -+Rule LH 1985 only - Oct lastSun 2:00 0:30 D -+Rule LH 1986 1989 - Mar Sun>=15 2:00 0 S -+Rule LH 1986 only - Oct 19 2:00 0:30 D -+Rule LH 1987 1999 - Oct lastSun 2:00 0:30 D -+Rule LH 1990 1995 - Mar Sun>=1 2:00 0 S -+Rule LH 1996 2005 - Mar lastSun 2:00 0 S -+Rule LH 2000 only - Aug lastSun 2:00 0:30 D -+Rule LH 2001 2007 - Oct lastSun 2:00 0:30 D -+Rule LH 2006 only - Apr Sun>=1 2:00 0 S -+Rule LH 2007 only - Mar lastSun 2:00 0 S -+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 - EST 1981 Mar -- 10:30 LH LHST -+ 10:00 - AEST 1981 Mar -+ 10:30 LH LH%sT - - # Australian miscellany - # -@@ -244,8 +243,8 @@ - # Permanent occupation (scientific station) 1911-1915 and since 25 March 1948; - # sealing and penguin oil station operated Nov 1899 to Apr 1919. See the - # Tasmania Parks & Wildlife Service history of sealing at Macquarie Island --# <http://www.parks.tas.gov.au/index.aspx?base=1828> --# <http://www.parks.tas.gov.au/index.aspx?base=1831>. -+# http://www.parks.tas.gov.au/index.aspx?base=1828 -+# http://www.parks.tas.gov.au/index.aspx?base=1831 - # Guess that it was like Australia/Hobart while inhabited before 2010. - # - # From Steffen Thorsen (2010-03-10): -@@ -256,16 +255,16 @@ - # - # From Arthur David Olson (2013-05-23): - # The 1919 transition is overspecified below so pre-2013 zics --# will produce a binary file with an EST-type as the first 32-bit type; -+# will produce a binary file with an [A]EST-type as the first 32-bit type; - # this is required for correct handling of times before 1916 by - # pre-2013 versions of localtime. - Zone Antarctica/Macquarie 0 - zzz 1899 Nov -- 10:00 - EST 1916 Oct 1 2:00 -- 10:00 1:00 EST 1917 Feb -- 10:00 Aus EST 1919 Apr 1 0:00s -+ 10:00 - AEST 1916 Oct 1 2:00 -+ 10:00 1:00 AEDT 1917 Feb -+ 10:00 Aus AE%sT 1919 Apr 1 0:00s - 0 - zzz 1948 Mar 25 -- 10:00 Aus EST 1967 -- 10:00 AT EST 2010 Apr 4 3:00 -+ 10:00 Aus AE%sT 1967 -+ 10:00 AT AE%sT 2010 Apr 4 3:00 - 11:00 - MIST # Macquarie I Standard Time - - # Christmas -@@ -273,24 +272,14 @@ - Zone Indian/Christmas 7:02:52 - LMT 1895 Feb - 7:00 - CXT # Christmas Island Time - --# Cook Is --# From Shanks & Pottenger: --# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Cook 1978 only - Nov 12 0:00 0:30 HS --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 -- --# Cocos -+# 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 - -+ - # Fiji - - # Milne gives 11:55:44 for Suva. -@@ -300,20 +289,13 @@ - # from November 29th 2009 to April 25th 2010. - # - # "Daylight savings to commence this month" --# <a href="http://www.radiofiji.com.fj/fullstory.php?id=23719"> - # http://www.radiofiji.com.fj/fullstory.php?id=23719 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_fiji01.html"> - # http://www.worldtimezone.com/dst_news/dst_news_fiji01.html --# </a> - - # From Steffen Thorsen (2009-11-10): - # The Fiji Government has posted some more details about the approved - # amendments: --# <a href="http://www.fiji.gov.fj/publish/page_16198.shtml"> - # http://www.fiji.gov.fj/publish/page_16198.shtml --# </a> - - # From Steffen Thorsen (2010-03-03): - # The Cabinet in Fiji has decided to end DST about a month early, on -@@ -322,35 +304,24 @@ - # 2011 (last Sunday a good guess?). - # - # Official source: --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166"> - # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166 --# </a> - # - # A bit more background info here: --# <a href="http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html"> - # http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html --# </a> - - # From Alexander Krivenyshev (2010-10-24): - # According to Radio Fiji and Fiji Times online, Fiji will end DST 3 - # weeks earlier than expected - on March 6, 2011, not March 27, 2011... - # Here is confirmation from Government of the Republic of the Fiji Islands, - # Ministry of Information (fiji.gov.fj) web site: --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=2608:daylight-savings&catid=71:press-releases&Itemid=155"> - # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=2608:daylight-savings&catid=71:press-releases&Itemid=155 --# </a> --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_fiji04.html"> - # http://www.worldtimezone.com/dst_news/dst_news_fiji04.html --# </a> - - # From Steffen Thorsen (2011-10-03): - # Now the dates have been confirmed, and at least our start date - # assumption was correct (end date was one week wrong). - # --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=4966:daylight-saving-starts-in-fiji&catid=71:press-releases&Itemid=155"> --# www.fiji.gov.fj/index.php?option=com_content&view=article&id=4966:daylight-saving-starts-in-fiji&catid=71:press-releases&Itemid=155 --# </a> -+# http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=4966:daylight-saving-starts-in-fiji&catid=71:press-releases&Itemid=155 - # which says - # Members of the public are reminded to change their time to one hour in - # advance at 2am to 3am on October 23, 2011 and one hour back at 3am to -@@ -360,9 +331,7 @@ - # Another change to the Fiji DST end date. In the TZ database the end date for - # Fiji DST 2012, is currently Feb 26. This has been changed to Jan 22. - # --# <a href="http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=5017:amendments-to-daylight-savings&catid=71:press-releases&Itemid=155"> - # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=5017:amendments-to-daylight-savings&catid=71:press-releases&Itemid=155 --# </a> - # states: - # - # The end of daylight saving scheduled initially for the 26th of February 2012 -@@ -385,31 +354,38 @@ - # Fiji will end DST on 2014-01-19 02:00: - # http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVINGS-TO-END-THIS-MONTH-%281%29.aspx - --# From Paul Eggert (2014-01-10): --# For now, guess that Fiji springs forward the Sunday before the fourth --# Monday in October, and springs back the penultimate Sunday in January. --# This is ad hoc, but matches recent practice. -+# From Ken Rylander (2014-10-20): -+# DST will start Nov. 2 this year. -+# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-SUNDAY,-NOVEMBER-2ND.aspx -+ -+# From Paul Eggert (2014-10-20): -+# For now, guess DST from 02:00 the first Sunday in November to -+# 03:00 the first Sunday on or after January 18. Although ad hoc, it -+# matches this year's plan and seems more likely to match future -+# practice than guessing no DST. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S - Rule Fiji 1999 2000 - Feb lastSun 3:00 0 - - Rule Fiji 2009 only - Nov 29 2:00 1:00 S - Rule Fiji 2010 only - Mar lastSun 3:00 0 - --Rule Fiji 2010 max - Oct Sun>=21 2:00 1:00 S -+Rule Fiji 2010 2013 - Oct Sun>=21 2:00 1:00 S - Rule Fiji 2011 only - Mar Sun>=1 3:00 0 - - Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 - --Rule Fiji 2014 max - Jan Sun>=18 2:00 0 - -+Rule Fiji 2014 only - Jan Sun>=18 2:00 0 - -+Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S -+Rule Fiji 2015 max - Jan Sun>=18 3:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva -+Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva - 12:00 Fiji FJ%sT # Fiji Time - - # French Polynesia - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea -+Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea - -9:00 - GAMT # Gambier Time - Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct - -9:30 - MART # Marquesas Time --Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete -+Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete - -10:00 - TAHT # Tahiti Time - # Clipperton (near North America) is administered from French Polynesia; - # it is uninhabited. -@@ -417,14 +393,14 @@ - # Guam - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31 -- 9:39:00 - LMT 1901 # Agana -- 10:00 - GST 2000 Dec 23 # Guam -+ 9:39:00 - LMT 1901 # Agana -+ 10:00 - GST 2000 Dec 23 # Guam - 10:00 - ChST # Chamorro Standard Time - - # Kiribati - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki -- 12:00 - GILT # Gilbert Is Time -+Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki -+ 12:00 - GILT # Gilbert Is Time - Zone Pacific/Enderbury -11:24:20 - LMT 1901 - -12:00 - PHOT 1979 Oct # Phoenix Is Time - -11:00 - PHOT 1995 -@@ -438,7 +414,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31 - 9:43:00 - LMT 1901 -- 9:00 - MPT 1969 Oct # N Mariana Is Time -+ 9:00 - MPT 1969 Oct # N Mariana Is Time - 10:00 - MPT 2000 Dec 23 - 10:00 - ChST # Chamorro Standard Time - -@@ -449,24 +425,24 @@ - 12:00 - MHT - Zone Pacific/Kwajalein 11:09:20 - LMT 1901 - 11:00 - MHT 1969 Oct -- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time -+ -12:00 - KWAT 1993 Aug 20 # Kwajalein Time - 12:00 - MHT - - # Micronesia - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Chuuk 10:07:08 - LMT 1901 -- 10:00 - CHUT # Chuuk Time --Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia -- 11:00 - PONT # Pohnpei Time -+ 10:00 - CHUT # Chuuk Time -+Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia -+ 11:00 - PONT # Pohnpei Time - Zone Pacific/Kosrae 10:51:56 - LMT 1901 -- 11:00 - KOST 1969 Oct # Kosrae Time -+ 11:00 - KOST 1969 Oct # Kosrae Time - 12:00 - KOST 1999 - 11:00 - KOST - - # 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 -+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 -@@ -479,7 +455,7 @@ - # Shanks & Pottenger say the following was at 2:00; go with IATA. - 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 -+Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa - 11:00 NC NC%sT - - -@@ -496,7 +472,8 @@ - Rule NZ 1934 1940 - Sep lastSun 2:00 0:30 S - Rule NZ 1946 only - Jan 1 0:00 0 S - # Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no --# convenient notation for this so we must duplicate the Rule lines. -+# convenient single notation for the date and time of this transition -+# so we must duplicate the Rule lines. - Rule NZ 1974 only - Nov Sun>=1 2:00s 1:00 D - Rule Chatham 1974 only - Nov Sun>=1 2:45s 1:00 D - Rule NZ 1975 only - Feb lastSun 2:00s 0 S -@@ -519,13 +496,14 @@ - 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 1957 Jan 1 -+Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2 -+ 12:15 - CHAST 1946 Jan 1 - 12:45 Chatham CHA%sT - - Link Pacific/Auckland Antarctica/McMurdo - - # Auckland Is --# uninhabited; Maori and Moriori, colonial settlers, pastoralists, sealers, -+# uninhabited; Māori and Moriori, colonial settlers, pastoralists, sealers, - # and scientific personnel have wintered - - # Campbell I -@@ -534,48 +512,82 @@ - # previously whalers, sealers, pastoralists, and scientific personnel wintered - # was probably like Pacific/Auckland - -+# Cook Is -+# From Shanks & Pottenger: -+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -+Rule Cook 1978 only - Nov 12 0:00 0:30 HS -+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 -+ - ############################################################################### - - - # 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 -+Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi -+ -11:20 - NUT 1951 # Niue Time -+ -11:30 - NUT 1978 Oct 1 - -11:00 - NUT - - # 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 # Norfolk Time -+Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston -+ 11:12 - NMT 1951 # Norfolk Mean Time -+ 11:30 - NFT # Norfolk Time - - # Palau (Belau) - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror -+Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror - 9:00 - PWT # Palau Time - - # 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 -+ 9:48:32 - PMMT 1895 # Port Moresby Mean Time -+ 10:00 - PGT # Papua New Guinea Time -+# -+# From Paul Eggert (2014-10-13): -+# Base the Bougainville entry on the Arawa-Kieta region, which appears to have -+# the most people even though it was devastated in the Bougainville Civil War. -+# -+# Although Shanks gives 1942-03-15 / 1943-11-01 for JST, these dates -+# are apparently rough guesswork from the starts of military campaigns. -+# The World War II entries below are instead based on Arawa-Kieta. -+# The Japanese occupied Kieta in July 1942, -+# according to the Pacific War Online Encyclopedia -+# http://pwencycl.kgbudge.com/B/o/Bougainville.htm -+# and seem to have controlled it until their 1945-08-21 surrender. -+# -+# The Autonomous Region of Bougainville plans to switch from UTC+10 to UTC+11 -+# on 2014-12-28 at 02:00. They call UTC+11 "Bougainville Standard Time"; -+# abbreviate this as BST. 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 - - # Pitcairn - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown -- -8:30 - PNT 1998 Apr 27 00:00 -+Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown -+ -8:30 - PNT 1998 Apr 27 0:00 - -8:00 - PST # Pitcairn Standard Time - - # American Samoa - Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5 - -11:22:48 - LMT 1911 -- -11:30 - SAMT 1950 # Samoa Time -- -11:00 - NST 1967 Apr # N=Nome -- -11:00 - BST 1983 Nov 30 # B=Bering -- -11:00 - SST # S=Samoa -+ -11:00 - NST 1967 Apr # N=Nome -+ -11:00 - BST 1983 Nov 30 # B=Bering -+ -11:00 - SST # S=Samoa - --# Samoa -+# Samoa (formerly and also known as Western Samoa) - - # From Steffen Thorsen (2009-10-16): - # We have been in contact with the government of Samoa again, and received -@@ -586,141 +598,80 @@ - # Sunday of April 2011." - # - # Background info: --# <a href="http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html"> - # http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html --# </a> - # - # Samoa's Daylight Saving Time Act 2009 is available here, but does not - # contain any dates: --# <a href="http://www.parliament.gov.ws/documents/acts/Daylight%20Saving%20Act%20%202009%20%28English%29%20-%20Final%207-7-091.pdf"> - # http://www.parliament.gov.ws/documents/acts/Daylight%20Saving%20Act%20%202009%20%28English%29%20-%20Final%207-7-091.pdf --# </a> - - # From Laupue Raymond Hughes (2010-10-07): - # Please see --# <a href="http://www.mcil.gov.ws"> - # http://www.mcil.gov.ws --# </a>, - # the Ministry of Commerce, Industry and Labour (sideframe) "Last Sunday - # September 2010 (26/09/10) - adjust clocks forward from 12:00 midnight - # to 01:00am and First Sunday April 2011 (03/04/11) - adjust clocks - # backwards from 1:00am to 12:00am" - - # From Laupue Raymond Hughes (2011-03-07): --# I believe this will be posted shortly on the website --# <a href="http://www.mcil.gov.ws"> --# www.mcil.gov.ws --# </a> -+# [http://www.mcil.gov.ws/ftcd/daylight_saving_2011.pdf] - # --# PUBLIC NOTICE ON DAYLIGHT SAVING TIME --# --# Pursuant to the Daylight Saving Act 2009 and Cabinets decision, --# businesses and the general public are hereby advised that daylight --# saving time is on the first Saturday of April 2011 (02/04/11). --# --# The public is therefore advised that when the standard time strikes --# the hour of four oclock (4.00am or 0400 Hours) on the 2nd April 2011, --# then all instruments used to measure standard time are to be --# adjusted/changed to three oclock (3:00am or 0300Hrs). --# --# Margaret Fruean ACTING CHIEF EXECUTIVE OFFICER MINISTRY OF COMMERCE, --# INDUSTRY AND LABOUR 28th February 2011 -+# ... when the standard time strikes the hour of four o'clock (4.00am -+# or 0400 Hours) on the 2nd April 2011, then all instruments used to -+# measure standard time are to be adjusted/changed to three o'clock -+# (3:00am or 0300Hrs). - --# From David Zuelke (2011-05-09): -+# From David Zülke (2011-05-09): - # Subject: Samoa to move timezone from east to west of international date line - # --# <a href="http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963"> - # http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963 --# </a> - --# From Mark Sim-Smith (2011-08-17): --# I have been in contact with Leilani Tuala Warren from the Samoa Law --# Reform Commission, and she has sent me a copy of the Bill that she --# confirmed has been passed...Most of the sections are about maps rather --# than the time zone change, but I'll paste the relevant bits below. But --# the essence is that at midnight 29 Dec (UTC-11 I suppose), Samoa --# changes from UTC-11 to UTC+13: --# --# International Date Line Bill 2011 --# --# AN ACT to provide for the change to standard time in Samoa and to make --# consequential amendments to the position of the International Date --# Line, and for related purposes. --# --# BE IT ENACTED by the Legislative Assembly of Samoa in Parliament --# assembled as follows: --# --# 1. Short title and commencement-(1) This Act may be cited as the --# International Date Line Act 2011. (2) Except for section 5(3) this Act --# commences at 12 o'clock midnight, on Thursday 29th December 2011. (3) --# Section 5(3) commences on the date of assent by the Head of State. --# --# [snip] --# --# 3. Interpretation - [snip] "Samoa standard time" in this Act and any --# other statute of Samoa which refers to 'Samoa standard time' means the --# time 13 hours in advance of Co-ordinated Universal Time. --# --# 4. Samoa standard time - (1) Upon the commencement of this Act, Samoa --# standard time shall be set at 13 hours in advance of Co-ordinated --# Universal Time for the whole of Samoa. (2) All references to Samoa's --# time zone and to Samoa standard time in Samoa in all legislation and --# instruments after the commencement of this Act shall be references to --# Samoa standard time as provided for in this Act. (3) Nothing in this --# Act affects the provisions of the Daylight Saving Act 2009, except that --# it defines Samoa standard time.... -+# From Paul Eggert (2014-06-27): -+# The International Date Line Act 2011 -+# http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf -+# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on -+# Thursday 29th December 2011". The International Date Line was adjusted -+# accordingly. - - # From Laupue Raymond Hughes (2011-09-02): --# <a href="http://www.mcil.gov.ws/mcil_publications.html"> - # http://www.mcil.gov.ws/mcil_publications.html --# </a> - # - # here is the official website publication for Samoa DST and dateline change - # - # DST --# Year End Time Start Time --# 2011 - - - - - - 24 September 3:00am to 4:00am --# 2012 01 April 4:00am to 3:00am - - - - - - -+# Year End Time Start Time -+# 2011 - - - - - - 24 September 3:00am to 4:00am -+# 2012 01 April 4:00am to 3:00am - - - - - - - # - # Dateline Change skip Friday 30th Dec 2011 - # Thursday 29th December 2011 23:59:59 Hours - # Saturday 31st December 2011 00:00:00 Hours - # --# Clarification by Tim Parenti (2012-01-03): --# Although Samoa has used Daylight Saving Time in the 2010-2011 and 2011-2012 --# seasons, there is not yet any indication that this trend will continue on --# a regular basis. For now, we have explicitly listed the transitions below. --# --# From Nicky (2012-09-10): -+# From Nicholas Pereira (2012-09-10): - # Daylight Saving Time commences on Sunday 30th September 2012 and --# ends on Sunday 7th of April 2013. --# --# Please find link below for more information. -+# ends on Sunday 7th of April 2013.... - # http://www.mcil.gov.ws/mcil_publications.html - # --# That publication also includes dates for Summer of 2013/4 as well --# which give the impression of a pattern in selecting dates for the --# future, so for now, we will guess this will continue. -+# From Paul Eggert (2014-07-08): -+# That web page currently lists transitions for 2012/3 and 2013/4. -+# Assume the pattern instituted in 2012 will continue indefinitely. - --# Western Samoa - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -+Rule WS 2010 only - Sep lastSun 0:00 1 D -+Rule WS 2011 only - Apr Sat>=1 4:00 0 S -+Rule WS 2011 only - Sep lastSat 3:00 1 D -+Rule WS 2012 max - Apr Sun>=1 4:00 0 S - Rule WS 2012 max - Sep lastSun 3:00 1 D --Rule WS 2012 max - Apr Sun>=1 4:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5 - -11:26:56 - LMT 1911 -- -11:30 - SAMT 1950 # Samoa Time -- -11:00 - WST 2010 Sep 26 -- -11:00 1:00 WSDT 2011 Apr 2 4:00 -- -11:00 - WST 2011 Sep 24 3:00 -- -11:00 1:00 WSDT 2011 Dec 30 -- 13:00 1:00 WSDT 2012 Apr Sun>=1 4:00 -+ -11:30 - WSST 1950 -+ -11:00 WS S%sT 2011 Dec 29 24:00 # S=Samoa - 13:00 WS WS%sT - - # 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 -+Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara - 11:00 - SBT # Solomon Is Time - - # Tokelau Is -@@ -744,7 +695,7 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Pacific/Fakaofo -11:24:56 - LMT 1901 -- -11:00 - TKT 2011 Dec 30 # Tokelau Time -+ -11:00 - TKT 2011 Dec 30 # Tokelau Time - 13:00 - TKT - - # Tonga -@@ -804,8 +755,8 @@ - # time from Operation Newsreel (Hardtack I/Teak shot, 1958-08-01) to the last - # Operation Fishbowl shot (Tightrope, 1962-11-04).... [See] Herman Hoerlin, - # "The United States High-Altitude Test Experience: A Review Emphasizing the --# Impact on the Environment", Los Alamos LA-6405, Oct 1976 --# <http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf>. -+# Impact on the Environment", Los Alamos LA-6405, Oct 1976. -+# http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf - # 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". -@@ -820,7 +771,7 @@ - # From Mark Brader (2005-01-23): - # [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies, - # published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3] --# reproduced a Pan American Airways timeables from 1936, for their weekly -+# reproduced a Pan American Airways timetable from 1936, for their weekly - # "Orient Express" flights between San Francisco and Manila, and connecting - # flights to Chicago and the US East Coast. As it uses some time zone - # designations that I've never seen before:.... -@@ -830,9 +781,9 @@ - Zone Pacific/Midway -11:49:28 - LMT 1901 - -11:00 - NST 1956 Jun 3 - -11:00 1:00 NDT 1956 Sep 2 -- -11:00 - NST 1967 Apr # N=Nome -- -11:00 - BST 1983 Nov 30 # B=Bering -- -11:00 - SST # S=Samoa -+ -11:00 - NST 1967 Apr # N=Nome -+ -11:00 - BST 1983 Nov 30 # B=Bering -+ -11:00 - SST # S=Samoa - - # Palmyra - # uninhabited since World War II; was probably like Pacific/Kiritimati -@@ -852,7 +803,7 @@ - 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 -+Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila - 11:00 Vanuatu VU%sT # Vanuatu Time - - # Wallis and Futuna -@@ -864,188 +815,213 @@ - - # NOTES - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2013-02-21): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Another source occasionally used is Edward W. Whitman, World Time Differences, - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which - # I found in the UCLA library. - # - # For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 - # - # 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; -+# 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 --# LMT Local Mean Time --# 8:00 WST WST Western Australia --# 8:45 CWST CWST Central Western Australia* --# 9:00 JST Japan --# 9:30 CST CST Central Australia --# 10:00 EST EST Eastern Australia --# 10:00 ChST Chamorro --# 10:30 LHST LHST Lord Howe* --# 11:30 NZMT NZST New Zealand through 1945 --# 12:00 NZST NZDT New Zealand 1946-present --# 12:45 CHAST CHADT Chatham* --# -11:00 SST Samoa --# -10:00 HST Hawaii --# - 8:00 PST Pitcairn* -+# 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 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 Galapagos Is. -+# See the 'northamerica' file for Hawaii. -+# See the 'southamerica' file for Easter I and the Galápagos Is. - - ############################################################################### - - # Australia - -+# From Paul Eggert (2014-06-30): -+# Daylight saving time has long been controversial in Australia, pitting -+# region against region, rural against urban, and local against global. -+# For example, in her review of Graeme Davison's _The Unforgiving -+# Minute: how Australians learned to tell the time_ (1993), Perth native -+# Phillipa J Martyr wrote, "The section entitled 'Saving Daylight' was -+# very informative, but was (as can, sadly, only be expected from a -+# Melbourne-based study) replete with the usual chuckleheaded -+# Queenslanders and straw-chewing yokels from the West prattling fables -+# about fading curtains and crazed farm animals." -+# Electronic Journal of Australian and New Zealand History (1997-03-03) -+# http://www.jcu.edu.au/aff/history/reviews/davison.htm -+ - # From Paul Eggert (2005-12-08): --# <a href="http://www.bom.gov.au/climate/averages/tables/dst_times.shtml"> - # Implementation Dates of Daylight Saving Time within Australia --# </a> summarizes daylight saving issues in Australia. -+# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml -+# summarizes daylight saving issues in Australia. - - # From Arthur David Olson (2005-12-12): --# <a href="http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving"> - # Lawlink NSW:Daylight Saving in New South Wales --# </a> covers New South Wales in particular. -+# http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving -+# covers New South Wales in particular. - - # From John Mackin (1991-03-06): --# We in Australia have _never_ referred to DST as `daylight' time. --# It is called `summer' time. Now by a happy coincidence, `summer' --# and `standard' happen to start with the same letter; hence, the -+# We in Australia have _never_ referred to DST as 'daylight' time. -+# It is called 'summer' time. Now by a happy coincidence, 'summer' -+# and 'standard' happen to start with the same letter; hence, the - # abbreviation does _not_ change... - # The legislation does not actually define abbreviations, at least - # in this State, but the abbreviation is just commonly taken to be the - # initials of the phrase, and the legislation here uniformly uses --# the phrase `summer time' and does not use the phrase `daylight -+# the phrase 'summer time' and does not use the phrase 'daylight - # time'. - # Announcers on the Commonwealth radio network, the ABC (for Australian --# Broadcasting Commission), use the phrases `Eastern Standard Time' --# or `Eastern Summer Time'. (Note, though, that as I say in the -+# Broadcasting Commission), use the phrases 'Eastern Standard Time' -+# or 'Eastern Summer Time'. (Note, though, that as I say in the - # current australasia file, there is really no such thing.) Announcers - # on its overseas service, Radio Australia, use the same phrases --# prefixed by the word `Australian' when referring to local times; -+# prefixed by the word 'Australian' when referring to local times; - # time announcements on that service, naturally enough, are made in UTC. - --# From Arthur David Olson (1992-03-08): --# Given the above, what's chosen for year-round use is: --# CST for any place operating at a GMTOFF of 9:30 --# WST for any place operating at a GMTOFF of 8:00 --# EST for any place operating at a GMTOFF of 10:00 -- --# From Chuck Soper (2006-06-01): --# I recently found this Australian government web page on time zones: --# <http://www.australia.gov.au/about-australia-13time> --# And this government web page lists time zone names and abbreviations: --# <http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml> -- --# From Paul Eggert (2001-04-05), summarizing a long discussion about "EST" --# versus "AEST" etc.: -+# From Paul Eggert (2014-06-30): - # --# I see the following points of dispute: -+# Inspired by Mackin's remarks quoted above, earlier versions of this -+# file used "EST" for both Eastern Standard Time and Eastern Summer -+# Time in Australia, and similarly for "CST", "CWST", and "WST". -+# However, these abbreviations were confusing and were not common -+# practice among Australians, and there were justifiable complaints -+# about them, so I attempted to survey current Australian usage. -+# For the tz database, the full English phrase is not that important; -+# what matters is the abbreviation. It's difficult to survey the web -+# directly for abbreviation usage, as there are so many false hits for -+# strings like "EST" and "EDT", so I looked for pages that defined an -+# abbreviation for eastern or central DST in Australia, and got the -+# following numbers of unique hits for the listed Google queries: - # --# * How important are unique time zone abbreviations? -+# 10 "Eastern Daylight Time AEST" site:au [some are false hits] -+# 10 "Eastern Summer Time AEST" site:au -+# 10 "Summer Time AEDT" site:au -+# 13 "EDST Eastern Daylight Saving Time" site:au -+# 18 "Summer Time ESST" site:au -+# 28 "Eastern Daylight Saving Time EDST" site:au -+# 39 "EDT Eastern Daylight Time" site:au [some are false hits] -+# 53 "Eastern Daylight Time EDT" site:au [some are false hits] -+# 54 "AEDT Australian Eastern Daylight Time" site:au -+# 182 "Eastern Daylight Time AEDT" site:au - # --# Here I tend to agree with the point (most recently made by Chris --# Newman) that unique abbreviations should not be essential for proper --# operation of software. We have other instances of ambiguity --# (e.g. "IST" denoting both "Israel Standard Time" and "Indian --# Standard Time"), and they are not likely to go away any time soon. --# In the old days, some software mistakenly relied on unique --# abbreviations, but this is becoming less true with time, and I don't --# think it's that important to cater to such software these days. -+# 17 "Central Daylight Time CDT" site:au [some are false hits] -+# 46 "Central Daylight Time ACDT" site:au - # --# On the other hand, there is another motivation for unambiguous --# abbreviations: it cuts down on human confusion. This is --# particularly true for Australia, where "EST" can mean one thing for --# time T and a different thing for time T plus 1 second. -+# I tried several other variants (e.g., "Eastern Summer Time EST") but -+# they all returned fewer than 10 unique hits. I also looked for pages -+# mentioning both "western standard time" and an abbreviation, since -+# there is no WST in the US to generate false hits, and found: - # --# * Does the relevant legislation indicate which abbreviations should be used? -+# 156 "western standard time" AWST site:au -+# 226 "western standard time" WST site:au - # --# Here I tend to think that things are a mess, just as they are in --# many other countries. We Americans are currently disagreeing about --# which abbreviation to use for the newly legislated Chamorro Standard --# Time, for example. -+# I then surveyed the top ten newspapers in Australia by circulation as -+# listed in Wikipedia, using Google queries like "AEDT site:heraldsun.com.au" -+# and obtaining estimated counts from the initial page of search results. -+# All ten papers greatly preferred "AEDT" to "EDT". The papers -+# surveyed were the Herald Sun, The Daily Telegraph, The Courier-Mail, -+# The Sydney Morning Herald, The West Australian, The Age, The Advertiser, -+# The Australian, The Financial Review, and The Herald (Newcastle). - # --# Personally, I would prefer to use common practice; I would like to --# refer to legislation only for examples of common practice, or as a --# tiebreaker. -+# I also searched for historical usage, to see whether abbreviations -+# like "AEDT" are new. A Trove search <http://trove.nla.gov.au/> -+# found only one newspaper (The Canberra Times) with a house style -+# dating back to the 1970s, I expect because other newspapers weren't -+# fully indexed. The Canberra Times strongly preferred abbreviations -+# like "AEDT". The first occurrence of "AEDT" was a World Weather -+# column (1971-11-17, page 24), and of "ACDT" was a Scoreboard column -+# (1993-01-24, p 16). The style was the typical usage but was not -+# strictly enforced; for example, "Welcome to the twilight zones ..." -+# (1994-10-29, p 1) uses the abbreviations AEST/AEDT, CST/CDT, and -+# WST, and goes on to say, "The confusion and frustration some feel -+# about the lack of uniformity among Australia's six states and two -+# territories has prompted one group to form its very own political -+# party -- the Sydney-based Daylight Saving Extension Party." - # --# * Do Australians more often use "Eastern Daylight Time" or "Eastern --# Summer Time"? Do they typically prefix the time zone names with --# the word "Australian"? -+# I also surveyed federal government sources. They did not agree: - # --# My own impression is that both "Daylight Time" and "Summer Time" are --# common and are widely understood, but that "Summer Time" is more --# popular; and that the leading "A" is also common but is omitted more --# often than not. I just used AltaVista advanced search and got the --# following count of page hits: -+# The Australian Government (2014-03-26) -+# http://australia.gov.au/about-australia/our-country/time -+# (This document was produced by the Department of Finance.) -+# AEST ACST AWST AEDT ACDT - # --# 1,103 "Eastern Summer Time" AND domain:au --# 971 "Australian Eastern Summer Time" AND domain:au --# 613 "Eastern Daylight Time" AND domain:au --# 127 "Australian Eastern Daylight Time" AND domain:au -+# Bureau of Meteorology (2012-11-08) -+# http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml -+# EST CST WST EDT CDT - # --# Here "Summer" seems quite a bit more popular than "Daylight", --# particularly when we know the time zone is Australian and not US, --# say. The "Australian" prefix seems to be popular for Eastern Summer --# Time, but unpopular for Eastern Daylight Time. -+# Civil Aviation Safety Authority (undated) -+# http://services.casa.gov.au/outnback/inc/pages/episode3/episode-3_time_zones.shtml -+# EST CST WST (no abbreviations given for DST) - # --# For abbreviations, tools like AltaVista are less useful because of --# ambiguity. Many hits are not really time zones, unfortunately, and --# many hits denote US time zones and not Australian ones. But here --# are the hit counts anyway: -+# Geoscience Australia (2011-11-24) -+# http://www.ga.gov.au/geodesy/astro/sunrise.jsp -+# AEST ACST AWST AEDT ACDT - # --# 161,304 "EST" and domain:au --# 25,156 "EDT" and domain:au --# 18,263 "AEST" and domain:au --# 10,416 "AEDT" and domain:au -+# Parliamentary Library (2008-11-10) -+# http://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf -+# EST CST WST preferred for standard time; AEST AEDT ACST ACDT also used - # --# 14,538 "CST" and domain:au --# 5,728 "CDT" and domain:au --# 176 "ACST" and domain:au --# 29 "ACDT" and domain:au -+# The Transport Safety Bureau has an extensive series of accident reports, -+# and investigators seem to use whatever abbreviation they like. -+# Googling site:atsb.gov.au found the following number of unique hits: -+# 311 "ESuT", 195 "EDT", 26 "AEDT", 83 "CSuT", 46 "CDT". -+# "_SuT" tended to appear in older reports, and "A_DT" tended to -+# appear in reports of events with international implications. - # --# 7,539 "WST" and domain:au --# 68 "AWST" and domain:au --# --# This data suggest that Australians tend to omit the "A" prefix in --# practice. The situation for "ST" versus "DT" is less clear, given --# the ambiguities involved. --# --# * How do Australians feel about the abbreviations in the tz database? --# --# If you just count Australians on this list, I count 2 in favor and 3 --# against. One of the "against" votes (David Keegel) counseled delay, --# saying that both AEST/AEDT and EST/EST are widely used and --# understood in Australia. -+# From the above it appears that there is a working consensus in -+# Australia to use trailing "DT" for daylight saving time; although -+# some sources use trailing "SST" or "ST" or "SuT" they are by far in -+# the minority. The case for leading "A" is weaker, but since it -+# seems to be preferred in the overall web and is preferred in all -+# the leading newspaper websites and in many government departments, -+# it has a stronger case than omitting the leading "A". The current -+# version of the database therefore uses abbreviations like "AEST" and -+# "AEDT" for Australian time zones. - - # From Paul Eggert (1995-12-19): - # Shanks & Pottenger report 2:00 for all autumn changes in Australia and NZ. - # Mark Prior writes that his newspaper - # reports that NSW's fall 1995 change will occur at 2:00, - # but Robert Elz says it's been 3:00 in Victoria since 1970 --# and perhaps the newspaper's `2:00' is referring to standard time. -+# and perhaps the newspaper's '2:00' is referring to standard time. - # For now we'll continue to assume 2:00s for changes since 1960. - - # From Eric Ulevik (1998-01-05): -@@ -1055,17 +1031,14 @@ - # relevant entries in this database. - # - # NSW (including LHI and Broken Hill): --# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html"> - # Standard Time Act 1987 (updated 1995-04-04) --# </a> -+# http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html - # ACT --# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html"> - # Standard Time and Summer Time Act 1972 --# </a> -+# http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html - # SA --# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html"> - # Standard Time Act, 1898 --# </a> -+# http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html - - # From David Grosz (2005-06-13): - # It was announced last week that Daylight Saving would be extended by -@@ -1083,7 +1056,7 @@ - # Victoria: I wasn't able to find anything separate, but the other articles - # allude to it. - # But not Queensland --# http://www.news.com.au/story/0,10117,15564030-1248,00.html. -+# http://www.news.com.au/story/0,10117,15564030-1248,00.html - - # Northern Territory - -@@ -1130,9 +1103,9 @@ - # The 1992 ending date used in the rules is a best guess; - # it matches what was used in the past. - --# <a href="http://www.bom.gov.au/faq/faqgen.htm"> - # The Australian Bureau of Meteorology FAQ --# </a> (1999-09-27) writes that Giles Meteorological Station uses -+# http://www.bom.gov.au/faq/faqgen.htm -+# (1999-09-27) writes that Giles Meteorological Station uses - # South Australian time even though it's located in Western Australia. - - # Queensland -@@ -1173,9 +1146,9 @@ - # The chosen rules the union of the 1971/1972 change and the 1989-1992 changes. - - # From Christopher Hunt (2006-11-21), after an advance warning --# from Jesper Norgaard Welen (2006-11-01): -+# from Jesper Nørgaard Welen (2006-11-01): - # WA are trialing DST for three years. --# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf> -+# http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf - - # From Rives McDow (2002-04-09): - # The most interesting region I have found consists of three towns on the -@@ -1189,7 +1162,7 @@ - # From Paul Eggert (2002-04-09): - # This is confirmed by the section entitled - # "What's the deal with time zones???" in --# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>. -+# http://www.earthsci.unimelb.edu.au/~awatkins/null.html - # - # From Alex Livingston (2006-12-07): - # ... it was just on four years ago that I drove along the Eyre Highway, -@@ -1337,7 +1310,7 @@ - # Based on law library research by John Mackin, - # who notes: - # In Australia, time is not legislated federally, but rather by the --# individual states. Thus, while such terms as ``Eastern Standard Time'' -+# individual states. Thus, while such terms as "Eastern Standard Time" - # [I mean, of course, Australian EST, not any other kind] are in common - # use, _they have NO REAL MEANING_, as they are not defined in the - # legislation. This is very important to understand. -@@ -1345,48 +1318,42 @@ - - # From Eric Ulevik (1999-05-26): - # DST will start in NSW on the last Sunday of August, rather than the usual --# October in 2000. [See: Matthew Moore, --# <a href="http://www.smh.com.au/news/9905/26/pageone/pageone4.html"> --# Two months more daylight saving --# </a> --# Sydney Morning Herald (1999-05-26).] -+# October in 2000. See: Matthew Moore, -+# Two months more daylight saving, Sydney Morning Herald (1999-05-26). -+# http://www.smh.com.au/news/9905/26/pageone/pageone4.html - - # From Paul Eggert (1999-09-27): - # See the following official NSW source: --# <a href="http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ"> - # Daylight Saving in New South Wales. --# </a> -+# http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ - # - # Narrabri Shire (NSW) council has announced it will ignore the extension of - # daylight saving next year. See: --# <a href="http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm"> - # Narrabri Council to ignore daylight saving --# </a> (1999-07-22). For now, we'll wait to see if this really happens. -+# http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm -+# (1999-07-22). For now, we'll wait to see if this really happens. - # - # Victoria will following NSW. See: --# <a href="http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm"> --# Vic to extend daylight saving --# </a> (1999-07-28). -+# Vic to extend daylight saving (1999-07-28) -+# http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm - # - # However, South Australia rejected the DST request. See: --# <a href="http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm"> --# South Australia rejects Olympics daylight savings request --# </a> (1999-07-19). -+# South Australia rejects Olympics daylight savings request (1999-07-19) -+# http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm - # - # Queensland also will not observe DST for the Olympics. See: --# <a href="http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm"> - # Qld says no to daylight savings for Olympics --# </a> (1999-06-01), which quotes Queensland Premier Peter Beattie as saying --# ``Look you've got to remember in my family when this came up last time -+# http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm -+# (1999-06-01), which quotes Queensland Premier Peter Beattie as saying -+# "Look you've got to remember in my family when this came up last time - # I voted for it, my wife voted against it and she said to me it's all very - # well for you, you don't have to worry about getting the children out of - # bed, getting them to school, getting them to sleep at night. --# I've been through all this argument domestically...my wife rules.'' -+# I've been through all this argument domestically...my wife rules." - # - # Broken Hill will stick with South Australian time in 2000. See: --# <a href="http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm"> --# Broken Hill to be behind the times --# </a> (1999-07-21). -+# Broken Hill to be behind the times (1999-07-21) -+# http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm - - # IATA SSIM (1998-09) says that the spring 2000 change for Australian - # Capital Territory, New South Wales except Lord Howe Island and Broken -@@ -1402,7 +1369,7 @@ - # Yancowinna - - # From John Mackin (1989-01-04): --# `Broken Hill' means the County of Yancowinna. -+# 'Broken Hill' means the County of Yancowinna. - - # From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06): - # # YANCOWINNA.. [ Confirmation courtesy of Broken Hill Postmaster ] -@@ -1459,9 +1426,7 @@ - # summer (southern hemisphere). - # - # From --# <a href="http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf"> - # http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf --# </a> - # The extended daylight saving period that South Australia has been trialling - # for over the last year is now set to be ongoing. - # Daylight saving will continue to start on the first Sunday in October each -@@ -1471,9 +1436,7 @@ - # the ACT for all 52 weeks of the year... - # - # We have a wrap-up here: --# <a href="http://www.timeanddate.com/news/time/south-australia-extends-dst.html"> - # http://www.timeanddate.com/news/time/south-australia-extends-dst.html --# </a> - ############################################################################### - - # New Zealand -@@ -1482,7 +1445,7 @@ - # the 1989/90 year was a trial of an extended "daylight saving" period. - # This trial was deemed successful and the extended period adopted for - # subsequent years (with the addition of a further week at the start). --# source -- phone call to Ministry of Internal Affairs Head Office. -+# source - phone call to Ministry of Internal Affairs Head Office. - - # From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06): - # # The Country of New Zealand (Australia's east island -) Gee they hate that! -@@ -1524,6 +1487,19 @@ - # that DST will begin on 2007-09-30 2008-04-06. - # http://www.dia.govt.nz/diawebsite.nsf/wpg_URL/Services-Daylight-Saving-Daylight-saving-to-be-extended - -+# From Paul Eggert (2014-07-14): -+# Chatham Island time was formally standardized on 1957-01-01 by -+# New Zealand's Standard Time Amendment Act 1956 (1956-10-26). -+# http://www.austlii.edu.au/nz/legis/hist_act/staa19561956n100244.pdf -+# According to Google Books snippet view, a speaker in the New Zealand -+# parliamentary debates in 1956 said "Clause 78 makes provision for standard -+# time in the Chatham Islands. The time there is 45 minutes in advance of New -+# Zealand time. I understand that is the time they keep locally, anyhow." -+# For now, assume this practice goes back to the introduction of standard time -+# in New Zealand, as this would make Chatham Islands time almost exactly match -+# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did -+# not observe New Zealand's prewar DST. -+ - ############################################################################### - - -@@ -1543,7 +1519,7 @@ - - # From the BBC World Service in - # http://news.bbc.co.uk/2/hi/asia-pacific/205226.stm (1998-10-31 16:03 UTC): --# The Fijiian government says the main reasons for the time change is to -+# The Fijian government says the main reasons for the time change is to - # improve productivity and reduce road accidents.... [T]he move is also - # intended to boost Fiji's ability to attract tourists to witness the dawning - # of the new millennium. -@@ -1551,16 +1527,12 @@ - # http://www.fiji.gov.fj/press/2000_09/2000_09_13-05.shtml (2000-09-13) - # reports that Fiji has discontinued DST. - --# Johnston -- --# Johnston data is from usno1995. -- - - # Kiribati - - # From Paul Eggert (1996-01-22): - # Today's _Wall Street Journal_ (page 1) reports that Kiribati --# ``declared it the same day [throughout] the country as of Jan. 1, 1995'' -+# "declared it the same day [throughout] the country as of Jan. 1, 1995" - # as part of the competition to be first into the 21st century. - - -@@ -1575,8 +1547,8 @@ - - # N Mariana Is, Guam - --# Howse writes (p 153) ``The Spaniards, on the other hand, reached the --# Philippines and the Ladrones from America,'' and implies that the Ladrones -+# Howse writes (p 153) "The Spaniards, on the other hand, reached the -+# Philippines and the Ladrones from America," and implies that the Ladrones - # (now called the Marianas) kept American date for quite some time. - # For now, we assume the Ladrones switched at the same time as the Philippines; - # see Asia/Manila. -@@ -1590,17 +1562,16 @@ - # Micronesia - - # Alan Eugene Davis writes (1996-03-16), --# ``I am certain, having lived there for the past decade, that "Truk" --# (now properly known as Chuuk) ... is in the time zone GMT+10.'' -+# "I am certain, having lived there for the past decade, that 'Truk' -+# (now properly known as Chuuk) ... is in the time zone GMT+10." - # - # Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11 - # on 1978-10-01; ignore this for now. - - # From Paul Eggert (1999-10-29): - # The Federated States of Micronesia Visitors Board writes in --# <a href="http://www.fsmgov.org/info/clocks.html"> --# The Federated States of Micronesia - Visitor Information --# </a> (1999-01-26) -+# The Federated States of Micronesia - Visitor Information (1999-01-26) -+# http://www.fsmgov.org/info/clocks.html - # that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11. - # We don't know when Kosrae switched from UTC+12; assume January 1 for now. - -@@ -1646,27 +1617,34 @@ - # Sacramento but it was changed a couple of years ago. - - --# Samoa -+# (Western) Samoa and American Samoa - - # Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald) - # that in 1879 the King of Samoa decided to change --# ``the date in his kingdom from the Antipodean to the American system, --# ordaining -- by a masterpiece of diplomatic flattery -- that --# the Fourth of July should be celebrated twice in that year.'' -+# "the date in his kingdom from the Antipodean to the American system, -+# ordaining - by a masterpiece of diplomatic flattery - that -+# the Fourth of July should be celebrated twice in that year." - -+# Although Shanks & Pottenger says they both switched to UTC-11:30 -+# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11 -+# for American Samoa, e.g., the US National Bureau of Standards -+# circular "Standard Time Throughout the World", 1932. -+# Assume American Samoa switched to UTC-11 in 1911, not 1950, -+# and that after 1950 they agreed until (western) Samoa skipped a -+# day in 2011. Assume also that the Samoas follow the US and New -+# Zealand's "ST"/"DT" style of daylight-saving abbreviations. - - # Tonga - - # From Paul Eggert (1996-01-22): --# Today's _Wall Street Journal_ (p 1) reports that ``Tonga has been plotting --# to sneak ahead of [New Zealanders] by introducing daylight-saving time.'' -+# Today's _Wall Street Journal_ (p 1) reports that "Tonga has been plotting -+# to sneak ahead of [New Zealanders] by introducing daylight-saving time." - # Since Kiribati has moved the Date Line it's not clear what Tonga will do. - - # Don Mundell writes in the 1997-02-20 Tonga Chronicle --# <a href="http://www.tongatapu.net.to/tonga/homeland/timebegins.htm"> --# How Tonga became `The Land where Time Begins' --# </a>: -- -+# How Tonga became 'The Land where Time Begins': -+# http://www.tongatapu.net.to/tonga/homeland/timebegins.htm -+# - # Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST - # 12 hours and 20 minutes ahead of GMT. When New Zealand adjusted its - # standard time in 1940s, Tonga had the choice of subtracting from its -@@ -1674,8 +1652,8 @@ - # advancing its time to maintain the differential of 13 degrees - # (approximately 50 minutes ahead of New Zealand time). - # --# Because His Majesty King Taufa'ahau Tupou IV, then Crown Prince --# Tungi, preferred to ensure Tonga's title as the land where time -+# Because His Majesty King Tāufaʻāhau Tupou IV, then Crown Prince -+# Tungī, preferred to ensure Tonga's title as the land where time - # begins, the Legislative Assembly approved the latter change. - # - # But some of the older, more conservative members from the outer -@@ -1701,9 +1679,7 @@ - # * Tonga will introduce DST in November - # - # I was given this link by John Letts: --# <a href="http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm"> - # http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm --# </a> - # - # I have not been able to find exact dates for the transition in November - # yet. By reading this article it seems like Fiji will be 14 hours ahead -@@ -1711,9 +1687,7 @@ - # (12 + 1 hour DST). - - # From Arthur David Olson (1999-09-20): --# According to <a href="http://www.tongaonline.com/news/sept1799.html"> --# http://www.tongaonline.com/news/sept1799.html --# </a>: -+# According to <http://www.tongaonline.com/news/sept1799.html>: - # "Daylight Savings Time will take effect on Oct. 2 through April 15, 2000 - # and annually thereafter from the first Saturday in October through the - # third Saturday of April. Under the system approved by Privy Council on -@@ -1731,7 +1705,7 @@ - # instead of the original reported date April 16. Unfortunately, the article - # is no longer available on the site, and I did not make a copy of the - # text, and I have forgotten to report it here. --# (Original URL was: http://www.tongaonline.com/news/march162000.htm ) -+# (Original URL was <http://www.tongaonline.com/news/march162000.htm>) - - # From Rives McDow (2000-12-01): - # Tonga is observing DST as of 2000-11-04 and will stop on 2001-01-27. -@@ -1751,7 +1725,7 @@ - # From Vernice Anderson, Personal Secretary to Philip Jessup, - # US Ambassador At Large (oral history interview, 1971-02-02): - # --# Saturday, the 14th [of October, 1950] -- ... The time was all the -+# Saturday, the 14th [of October, 1950] - ... The time was all the - # more confusing at that point, because we had crossed the - # International Date Line, thus getting two Sundays. Furthermore, we - # discovered that Wake Island had two hours of daylight saving time -@@ -1796,7 +1770,7 @@ - # on the high seas. Whenever a ship was within the territorial waters of any - # nation it would use that nation's standard time. The captain was permitted - # to change his ship's clocks at a time of his choice following his ship's --# entry into another zone time--he often chose midnight. These zones were -+# entry into another zone time - he often chose midnight. These zones were - # adopted by all major fleets between 1920 and 1925 but not by many - # independent merchant ships until World War II. - -@@ -1804,6 +1778,6 @@ - # (2005-03-20): - # - # The American Practical Navigator (2002) --# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187> -+# http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187 - # talks only about the 180-degree meridian with respect to ships in - # international waters; it ignores the international date line. ---- ./jdk/test/sun/util/calendar/zi/tzdata/backward Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/backward Mon Dec 08 12:29:42 2014 -0800 -@@ -21,15 +21,15 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - - # This file provides links between current names for time zones - # and their old names. Many names changed in late 1993. - -+# Link TARGET LINK-NAME - Link Africa/Asmara Africa/Asmera --Link Africa/Bamako Africa/Timbuktu -+Link Africa/Abidjan Africa/Timbuktu - Link America/Argentina/Catamarca America/Argentina/ComodRivadavia - Link America/Adak America/Atka - Link America/Argentina/Buenos_Aires America/Buenos_Aires -@@ -50,8 +50,11 @@ - Link Pacific/Auckland Antarctica/South_Pole - Link Asia/Ashgabat Asia/Ashkhabad - Link Asia/Kolkata Asia/Calcutta --Link Asia/Chongqing Asia/Chungking -+Link Asia/Shanghai Asia/Chongqing -+Link Asia/Shanghai Asia/Chungking - Link Asia/Dhaka Asia/Dacca -+Link Asia/Shanghai Asia/Harbin -+Link Asia/Urumqi Asia/Kashgar - Link Asia/Kathmandu Asia/Katmandu - Link Asia/Macau Asia/Macao - Link Asia/Ho_Chi_Minh Asia/Saigon ---- ./jdk/test/sun/util/calendar/zi/tzdata/etcetera Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/etcetera Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - -@@ -37,7 +36,7 @@ - Zone Etc/UCT 0 - UCT - - # The following link uses older naming conventions, --# but it belongs here, not in the file `backward', -+# but it belongs here, not in the file 'backward', - # as functions like gmtime load the "GMT" file to handle leap seconds properly. - # We want this to work even on installations that omit the other older names. - Link Etc/GMT GMT ---- ./jdk/test/sun/util/calendar/zi/tzdata/europe Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/europe Mon Dec 08 12:29:42 2014 -0800 -@@ -21,24 +21,30 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2006-03-22): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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 - # Association's Standard Schedules Information Manual (IATA SSIM), - # published semiannually. Law sent in several helpful summaries --# of the IATA's data after 1990. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. -+# -+# A reliable and entertaining source about time zones is -+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997). - # - # Except where otherwise noted, Shanks & Pottenger is the source for - # entries through 1991, and IATA SSIM is the source for entries afterwards. -@@ -49,9 +55,9 @@ - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), - # which I found in the UCLA library. - # --# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf"> - # William Willett, The Waste of Daylight, 19th edition --# </a> (1914-03) -+# <http://cs.ucla.edu/~eggert/The-Waste-of-Daylight-19th.pdf> -+# [PDF] (1914-03) - # - # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 - # <http://www.jstor.org/stable/1774359>. He writes: -@@ -59,10 +65,20 @@ - # may be sent to Mr. John Milne, Royal Geographical Society, - # Savile Row, London." Nowadays please email them to tz@iana.org. - # --# Brazil's Departamento Servico da Hora (DSH), --# <a href="http://pcdsh01.on.br/HISTHV.htm"> -+# Byalokoz EL. New Counting of Time in Russia since July 1, 1919. -+# This Russian-language source was consulted by Vladimir Karpinsky; see -+# http://mm.icann.org/pipermail/tz/2014-August/021320.html -+# The full Russian citation is: -+# Бялокоз, Евгений Людвигович. Новый счет времени в течении суток -+# введенный декретом Совета народных комиссаров для всей России с 1-го -+# июля 1919 г. / Изд. 2-е Междуведомственной комиссии. - Петроград: -+# Десятая гос. тип., 1919. -+# http://resolver.gpntb.ru/purl?docushare/dsweb/Get/Resource-2011/Byalokoz__E.L.__Novyy__schet__vremeni__v__techenie__sutok__izd__2(1).pdf -+# -+# Brazil's Divisão Serviço da Hora (DSHO), - # History of Summer Time --# </a> (1998-09-21, in Portuguese) -+# <http://pcdsh01.on.br/HISTHV.htm> -+# (1998-09-21, in Portuguese) - - # - # I invented the abbreviations marked '*' in the following table; -@@ -78,13 +94,12 @@ - # 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 --# --# A reliable and entertaining source about time zones, especially in Britain, --# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997). -+# 3:00 FET Further-eastern Europe (2011-2014)* -+# 3:00 MSK MSD MSM* Moscow - - # From Peter Ilieve (1994-12-04), - # The original six [EU members]: Belgium, France, (West) Germany, Italy, -@@ -128,7 +143,7 @@ - # along the towpath within a few yards of it.' - # - # I have a one inch to one mile map of London and my estimate of the stone's --# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should -+# position is 51 degrees 28' 30" N, 0 degrees 18' 45" W. The longitude should - # be within about +-2". The Ordnance Survey grid reference is TQ172761. - # - # [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.] -@@ -160,8 +175,22 @@ - # transition date for London, namely 1847-12-01. We don't know as much - # about Dublin, so we use 1880-08-02, the legal transition time. - --# From Paul Eggert (2003-09-27): --# Summer Time was first seriously proposed by William Willett (1857-1915), -+# From Paul Eggert (2014-07-19): -+# The ancients had no need for daylight saving, as they kept time -+# informally or via hours whose length depended on the time of year. -+# Daylight saving time in its modern sense was invented by the -+# New Zealand entomologist George Vernon Hudson (1867-1946), -+# whose day job as a postal clerk led him to value -+# after-hours daylight in which to pursue his research. -+# In 1895 he presented a paper to the Wellington Philosophical Society -+# that proposed a two-hour daylight-saving shift. See: -+# Hudson GV. On seasonal time-adjustment in countries south of lat. 30 deg. -+# Transactions and Proceedings of the New Zealand Institute. 1895;28:734 -+# http://rsnz.natlib.govt.nz/volume/rsnz_28/rsnz_28_00_006110.html -+# Although some interest was expressed in New Zealand, his proposal -+# did not find its way into law and eventually it was almost forgotten. -+# -+# In England, DST was independently reinvented by William Willett (1857-1915), - # a London builder and member of the Royal Astronomical Society - # who circulated a pamphlet "The Waste of Daylight" (1907) - # that proposed advancing clocks 20 minutes on each of four Sundays in April, -@@ -174,7 +203,7 @@ - # A monument to Willett was unveiled on 1927-05-21, in an open space in - # a 45-acre wood near Chislehurst, Kent that was purchased by popular - # subscription and open to the public. On the south face of the monolith, --# designed by G. W. Miller, is the...William Willett Memorial Sundial, -+# designed by G. W. Miller, is the William Willett Memorial Sundial, - # which is permanently set to Summer Time. - - # From Winston Churchill (1934-04-28): -@@ -183,9 +212,9 @@ - # between 160 and 170 hours more daylight leisure, to a war which - # plunged Europe into darkness for four years, and shook the - # foundations of civilization throughout the world. --# -- <a href="http://www.winstonchurchill.org/fh114willett.htm"> --# "A Silent Toast to William Willett", Pictorial Weekly --# </a> -+# -- "A Silent Toast to William Willett", Pictorial Weekly; -+# republished in Finest Hour (Spring 2002) 1(114):26 -+# http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf - - # From Paul Eggert (1996-09-03): - # The OED Supplement says that the English originally said "Daylight Saving" -@@ -194,7 +223,6 @@ - # proponents (who eventually won the argument) are quoted as using "Summer". - - # From Arthur David Olson (1989-01-19): --# - # A source at the British Information Office in New York avers that it's - # known as "British" Summer Time in all parts of the United Kingdom. - -@@ -221,8 +249,8 @@ - # official designation; the reply of the 21st was that there wasn't - # but he couldn't think of anything better than the "Double British - # Summer Time" that the BBC had been using informally. --# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png --# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png -+# http://www.polyomino.org.uk/british-time/bbc-19410418.png -+# http://www.polyomino.org.uk/british-time/ho-19410421.png - - # From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21): - # [N]o official designation has as far as I know been adopted for the time -@@ -239,23 +267,14 @@ - # the history of summer time legislation in the United Kingdom. - # Since 1998 Joseph S. Myers has been updating - # and extending this list, which can be found in --# http://student.cusu.cam.ac.uk/~jsm28/british-time/ --# <a href="http://www.polyomino.org.uk/british-time/"> --# History of legal time in Britain --# </a> --# Rob Crowther (2012-01-04) reports that that URL no longer --# exists, and the article can now be found at: --# <a href="http://www.polyomino.org.uk/british-time/"> - # http://www.polyomino.org.uk/british-time/ --# </a> - - # From Joseph S. Myers (1998-01-06): - # - # The legal time in the UK outside of summer time is definitely GMT, not UTC; - # see Lord Tanlaw's speech --# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0"> --# (Lords Hansard 11 June 1997 columns 964 to 976) --# </a>. -+# http://www.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0 -+# (Lords Hansard 11 June 1997 columns 964 to 976). - - # From Paul Eggert (2006-03-22): - # -@@ -294,9 +313,17 @@ - # "Timeball on the ballast office is down. Dunsink time." - # -- James Joyce, Ulysses - -+# "Countess Markievicz ... claimed that the [1916] abolition of Dublin Mean Time -+# was among various actions undertaken by the 'English' government that -+# would 'put the whole country into the SF (Sinn Féin) camp'. She claimed -+# Irish 'public feeling (was) outraged by forcing of English time on us'." -+# -- Parsons M. Dublin lost its time zone - and 25 minutes - after 1916 Rising. -+# Irish Times 2014-10-27. -+# http://www.irishtimes.com/news/politics/dublin-lost-its-time-zone-and-25-minutes-after-1916-rising-1.1977411 -+ - # From Joseph S. Myers (2005-01-26): --# Irish laws are available online at www.irishstatutebook.ie. These include --# various relating to legal time, for example: -+# Irish laws are available online at <http://www.irishstatutebook.ie>. -+# These include various relating to legal time, for example: - # - # ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html - # -@@ -458,25 +485,27 @@ - # Use Europe/London for Jersey, Guernsey, and the Isle of Man. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s -+Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s - 0:00 GB-Eire %s 1968 Oct 27 -- 1:00 - BST 1971 Oct 31 2:00u -+ 1:00 - BST 1971 Oct 31 2:00u - 0:00 GB-Eire %s 1996 - 0:00 EU GMT/BST - Link Europe/London Europe/Jersey - Link Europe/London Europe/Guernsey - 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 1:00 IST 1916 Oct 1 2:00s -+ -0:25:21 - DMT 1916 May 21 2:00 -+ -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 -- 0:00 1:00 IST 1946 Oct 6 2:00 -- 0:00 - GMT 1947 Mar 16 2:00 -- 0:00 1:00 IST 1947 Nov 2 2:00 -- 0:00 - GMT 1948 Apr 18 2:00 -+ 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00 -+ 0:00 1:00 IST 1946 Oct 6 2:00 -+ 0:00 - GMT 1947 Mar 16 2:00 -+ 0:00 1:00 IST 1947 Nov 2 2:00 -+ 0:00 - GMT 1948 Apr 18 2:00 - 0:00 GB-Eire GMT/IST 1968 Oct 27 -- 1:00 - IST 1971 Oct 31 2:00u -+ 1:00 - IST 1971 Oct 31 2:00u - 0:00 GB-Eire GMT/IST 1996 - 0:00 EU GMT/IST - -@@ -495,10 +524,9 @@ - Rule EU 1981 max - Mar lastSun 1:00u 1:00 S - Rule EU 1996 max - Oct lastSun 1:00u 0 - - # The most recent directive covers the years starting in 2002. See: --# <a="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT"> - # Directive 2000/84/EC of the European Parliament and of the Council - # of 19 January 2001 on summer-time arrangements. --# </a> -+# http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT - - # W-Eur differs from EU only in that W-Eur uses standard time. - Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S -@@ -521,18 +549,18 @@ - Rule C-Eur 1944 1945 - Apr Mon>=1 2:00s 1:00 S - # Whitman gives 1944 Oct 7; go with Shanks & Pottenger. - Rule C-Eur 1944 only - Oct 2 2:00s 0 - --# From Jesper Norgaard Welen (2008-07-13): -+# From Jesper Nørgaard Welen (2008-07-13): - # - # I found what is probably a typo of 2:00 which should perhaps be 2:00s - # in the C-Eur rule from tz database version 2008d (this part was --# corrected in version 2008d). The circumstancial evidence is simply the -+# corrected in version 2008d). The circumstantial evidence is simply the - # tz database itself, as seen below: - # - # Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01 - # 0:00 France WE%sT 1945 Sep 16 3:00 - # - # Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15 --# 0:00 France WE%sT 1945 Sep 16 3:00 -+# 0:00 France WE%sT 1945 Sep 16 3:00 - # - # Zone Europe/Belgrade 1:22:00 - LMT 1884 - # 1:00 1:00 CEST 1945 Sep 16 2:00s -@@ -576,16 +604,16 @@ - Rule E-Eur 1996 max - Oct lastSun 0:00 0 - - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time --Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time --Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time -+Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time -+Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time -+Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time - Rule Russia 1918 only - Sep 16 1:00 1:00 MST - Rule Russia 1919 only - May 31 23:00 2:00 MDST --Rule Russia 1919 only - Jul 1 2:00 1:00 S --Rule Russia 1919 only - Aug 16 0:00 0 - --Rule Russia 1921 only - Feb 14 23:00 1:00 S --Rule Russia 1921 only - Mar 20 23:00 2:00 M # Midsummer --Rule Russia 1921 only - Sep 1 0:00 1:00 S -+Rule Russia 1919 only - Jul 1 2:00 1:00 MSD -+Rule Russia 1919 only - Aug 16 0:00 0 MSK -+Rule Russia 1921 only - Feb 14 23:00 1:00 MSD -+Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer -+Rule Russia 1921 only - Sep 1 0:00 1:00 MSD - Rule Russia 1921 only - Oct 1 0:00 0 - - # Act No.925 of the Council of Ministers of the USSR (1980-10-24): - Rule Russia 1981 1984 - Apr 1 0:00 1:00 S -@@ -600,6 +628,7 @@ - Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S - Rule Russia 1993 1995 - Sep lastSun 2:00s 0 - - Rule Russia 1996 2010 - Oct lastSun 2:00s 0 - -+# As described below, Russia's 2014 change affects Zone data, not Rule data. - - # From Alexander Krivenyshev (2011-06-14): - # According to Kremlin press service, Russian President Dmitry Medvedev -@@ -607,14 +636,10 @@ - # According to the law Russia is abolishing daylight saving time. - # - # Medvedev signed a law "On the Calculation of Time" (in russian): --# <a href="http://bmockbe.ru/events/?ID=7583"> - # http://bmockbe.ru/events/?ID=7583 --# </a> - # - # Medvedev signed a law on the calculation of the time (in russian): --# <a href="http://www.regnum.ru/news/polit/1413906.html"> - # http://www.regnum.ru/news/polit/1413906.html --# </a> - - # From Arthur David Olson (2011-06-15): - # Take "abolishing daylight saving time" to mean that time is now considered -@@ -634,10 +659,10 @@ - # From Markus Kuhn (1996-07-12): - # The official German names ... are - # --# Mitteleuropaeische Zeit (MEZ) = UTC+01:00 --# Mitteleuropaeische Sommerzeit (MESZ) = UTC+02:00 -+# Mitteleuropäische Zeit (MEZ) = UTC+01:00 -+# Mitteleuropäische Sommerzeit (MESZ) = UTC+02:00 - # --# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG), -+# as defined in the German Time Act (Gesetz über die Zeitbestimmung (ZeitG), - # 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111).... - # I wrote ... to the German Federal Physical-Technical Institution - # -@@ -692,7 +717,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Andorra 0:06:04 - LMT 1901 - 0:00 - WET 1946 Sep 30 -- 1:00 - CET 1985 Mar 31 2:00 -+ 1:00 - CET 1985 Mar 31 2:00 - 1:00 EU CE%sT - - # Austria -@@ -718,9 +743,9 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Vienna 1:05:21 - LMT 1893 Apr - 1:00 C-Eur CE%sT 1920 -- 1:00 Austria CE%sT 1940 Apr 1 2:00s -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s -- 1:00 1:00 CEST 1945 Apr 12 2:00s -+ 1:00 Austria CE%sT 1940 Apr 1 2:00s -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s -+ 1:00 1:00 CEST 1945 Apr 12 2:00s - 1:00 - CET 1946 - 1:00 Austria CE%sT 1981 - 1:00 EU CE%sT -@@ -731,38 +756,37 @@ - # GMT+3 without DST (was GMT+2 with DST). - # - # Sources (Russian language): --# 1. --# <a href="http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html"> - # http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html --# </a> --# 2. --# <a href="http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/"> - # http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/ --# </a> --# 3. --# <a href="http://news.tut.by/society/250578.html"> - # http://news.tut.by/society/250578.html --# </a> -+# -+# From Alexander Bokovoy (2014-10-09): -+# Belarussian government decided against changing to winter time.... -+# http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html -+# From Paul Eggert (2014-10-08): -+# Hence Belarus can share time zone abbreviations with Moscow again. -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Minsk 1:50:16 - LMT 1880 -- 1:50 - MMT 1924 May 2 # Minsk Mean Time -+ 1:50 - MMT 1924 May 2 # Minsk Mean Time - 2:00 - EET 1930 Jun 21 - 3:00 - MSK 1941 Jun 28 - 1:00 C-Eur CE%sT 1944 Jul 3 - 3:00 Russia MSK/MSD 1990 -- 3:00 - MSK 1991 Mar 31 2:00s -- 2:00 1:00 EEST 1991 Sep 29 2:00s -- 2:00 - EET 1992 Mar 29 0:00s -- 2:00 1:00 EEST 1992 Sep 27 0:00s -- 2:00 Russia EE%sT 2011 Mar 27 2:00s -- 3:00 - FET # Further-eastern European Time -+ 3:00 - MSK 1991 Mar 31 2:00s -+ 2:00 1:00 EEST 1991 Sep 29 2:00s -+ 2:00 - EET 1992 Mar 29 0:00s -+ 2:00 1:00 EEST 1992 Sep 27 0:00s -+ 2:00 Russia EE%sT 2011 Mar 27 2:00s -+ 3:00 - FET 2014 Oct 26 1:00s -+ 3:00 - MSK - - # Belgium - # - # From Paul Eggert (1997-07-02): - # Entries from 1918 through 1991 are taken from: - # Annuaire de L'Observatoire Royal de Belgique, --# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991 -+# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe année, 1991 - # (Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC), - # pp 8-9. - # LMT before 1892 was 0:17:30, according to the official journal of Belgium: -@@ -812,7 +836,7 @@ - Rule Belgium 1946 only - Oct 7 2:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Brussels 0:17:30 - LMT 1880 -- 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT -+ 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT - 0:00 - WET 1914 Nov 8 - 1:00 - CET 1916 May 1 0:00 - 1:00 C-Eur CE%sT 1918 Nov 11 11:00u -@@ -828,8 +852,8 @@ - # - # From Plamen Simenov via Steffen Thorsen (1999-09-09): - # A document of Government of Bulgaria (No.94/1997) says: --# EET --> EETDST is in 03:00 Local time in last Sunday of March ... --# EETDST --> EET is in 04:00 Local time in last Sunday of October -+# EET -> EETDST is in 03:00 Local time in last Sunday of March ... -+# EETDST -> EET is in 04:00 Local time in last Sunday of October - # - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Bulg 1979 only - Mar 31 23:00 1:00 S -@@ -842,7 +866,7 @@ - 1:56:56 - IMT 1894 Nov 30 # Istanbul MT? - 2:00 - EET 1942 Nov 2 3:00 - 1:00 C-Eur CE%sT 1945 -- 1:00 - CET 1945 Apr 2 3:00 -+ 1:00 - CET 1945 Apr 2 3:00 - 2:00 - EET 1979 Mar 31 23:00 - 2:00 Bulg EE%sT 1982 Sep 26 2:00 - 2:00 C-Eur EE%sT 1991 -@@ -866,15 +890,15 @@ - Rule Czech 1949 only - Apr 9 2:00s 1:00 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Prague 0:57:44 - LMT 1850 -- 0:57:44 - PMT 1891 Oct # Prague Mean Time -- 1:00 C-Eur CE%sT 1944 Sep 17 2:00s -+ 0:57:44 - PMT 1891 Oct # Prague Mean Time -+ 1:00 C-Eur CE%sT 1944 Sep 17 2:00s - 1:00 Czech CE%sT 1979 - 1:00 EU CE%sT - # Use Europe/Prague also for Slovakia. - - # Denmark, Faroe Islands, and Greenland - --# From Jesper Norgaard Welen (2005-04-26): -+# From Jesper Nørgaard Welen (2005-04-26): - # http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law - # [introducing standard time] was in effect from 1894-01-01.... - # The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL -@@ -884,7 +908,7 @@ - # http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL - # - # This provoked a new law from 1974 to make possible summer time changes --# in subsequenet decrees with the law -+# in subsequent decrees with the law - # http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL - # - # It seems however that no decree was set forward until 1980. I have -@@ -899,7 +923,7 @@ - # was suspended on that night): - # http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL - --# From Jesper Norgaard Welen (2005-06-11): -+# From Jesper Nørgaard Welen (2005-06-11): - # The Herning Folkeblad (1980-09-26) reported that the night between - # Saturday and Sunday the clock is set back from three to two. - -@@ -923,11 +947,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Copenhagen 0:50:20 - LMT 1890 - 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT -- 1:00 Denmark CE%sT 1942 Nov 2 2:00s -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00 -+ 1:00 Denmark CE%sT 1942 Nov 2 2:00s -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00 - 1:00 Denmark CE%sT 1980 - 1:00 EU CE%sT --Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Torshavn -+Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Tórshavn - 0:00 - WET 1981 - 0:00 EU WE%sT - # -@@ -939,11 +963,11 @@ - # From Paul Eggert (2006-03-22): - # Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01, - # and left the EU on 1985-02-01. It therefore should have been using EU --# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthab -+# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthåb - # used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU - # rules since at least 1991. Assume EU rules since 1980. - --# From Gwillin Law (2001-06-06), citing -+# From Gwillim Law (2001-06-06), citing - # <http://www.statkart.no/efs/efshefter/2001/efs5-2001.pdf> (2001-03-15), - # and with translations corrected by Steffen Thorsen: - # -@@ -978,16 +1002,16 @@ - # DPC research station at Zackenberg. - # - # Scoresbysund and two small villages nearby keep time UTC-1 and use --# the same daylight savings time period as in West Greenland (Godthab). -+# the same daylight savings time period as in West Greenland (Godthåb). - # --# The rest of Greenland, including Godthab (this area, although it -+# The rest of Greenland, including Godthåb (this area, although it - # includes central Greenland, is known as west Greenland), keeps time - # UTC-3, with daylight savings methods according to European rules. - # - # It is common procedure to use UTC 0 in the wilderness of East and - # North Greenland, because it is mainly Icelandic aircraft operators - # maintaining traffic in these areas. However, the official status of --# this area is that it sticks with Godthab time. This area might be -+# this area is that it sticks with Godthåb time. This area might be - # considered a dual time zone in some respects because of this. - - # From Rives McDow (2001-11-19): -@@ -996,8 +1020,8 @@ - - # From Paul Eggert (2006-03-22): - # From 1997 on the CIA map shows Danmarkshavn on GMT; --# the 1995 map as like Godthab. --# For lack of better info, assume they were like Godthab before 1996. -+# the 1995 map as like Godthåb. -+# For lack of better info, assume they were like Godthåb before 1996. - # startkart.no says Thule does not observe DST, but this is clearly an error, - # so go with Shanks & Pottenger for Thule transitions until this year. - # For 2007 on assume Thule will stay in sync with US DST rules. -@@ -1012,15 +1036,15 @@ - # - # 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 - WGT 1980 Apr 6 2:00 - -3:00 EU WG%sT 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 - CGT 1980 Apr 6 2:00 - -2:00 C-Eur CG%sT 1981 Mar 29 - -1:00 EU EG%sT - Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk -- -3:00 - WGT 1980 Apr 6 2:00 -+ -3:00 - WGT 1980 Apr 6 2:00 - -3:00 EU WG%sT - Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base - -4:00 Thule A%sT -@@ -1042,17 +1066,16 @@ - # summer time next spring." - - # From Peter Ilieve (1998-11-04), heavily edited: --# <a href="http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390"> - # The 1998-09-22 Estonian time law --# </a> -+# http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390 - # refers to the Eighth Directive and cites the association agreement between --# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120). -+# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22-27, 120). - # - # I also asked [my relative] whether they use any standard abbreviation - # for their standard and summer times. He says no, they use "suveaeg" - # (summer time) and "talveaeg" (winter time). - --# From <a href="http://www.baltictimes.com/">The Baltic Times</a> (1999-09-09) -+# From The Baltic Times <http://www.baltictimes.com/> (1999-09-09) - # via Steffen Thorsen: - # This year will mark the last time Estonia shifts to summer time, - # a council of the ruling coalition announced Sept. 6.... -@@ -1070,19 +1093,19 @@ - # The Estonian government has changed once again timezone politics. - # Now we are using again EU rules. - # --# From Urmet Jaanes (2002-03-28): -+# From Urmet Jänes (2002-03-28): - # The legislative reference is Government decree No. 84 on 2002-02-21. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Tallinn 1:39:00 - LMT 1880 -- 1:39:00 - TMT 1918 Feb # Tallinn Mean Time -+ 1:39:00 - TMT 1918 Feb # Tallinn Mean Time - 1:00 C-Eur CE%sT 1919 Jul - 1:39:00 - TMT 1921 May - 2:00 - EET 1940 Aug 6 - 3:00 - MSK 1941 Sep 15 - 1:00 C-Eur CE%sT 1944 Sep 22 -- 3:00 Russia MSK/MSD 1989 Mar 26 2:00s -- 2:00 1:00 EEST 1989 Sep 24 2:00s -+ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s -+ 2:00 1:00 EEST 1989 Sep 24 2:00s - 2:00 C-Eur EE%sT 1998 Sep 22 - 2:00 EU EE%sT 1999 Nov 1 - 2:00 - EET 2002 Feb 21 -@@ -1104,35 +1127,45 @@ - # This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac - # Office of University of Helsinki, ISBN 952-10-3221-9, available online (in - # Finnish) at --# --# <a href="http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf"> - # http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf --# </a> - # - # Page 105 (56 in PDF version) has a handy table of all past daylight savings - # transitions. It is easy enough to interpret without Finnish skills. - # - # This is also confirmed by Finnish Broadcasting Company's archive at: --# --# <a href="http://www.yle.fi/elavaarkisto/?s=s&g=1&ag=5&t=&a=3401"> - # http://www.yle.fi/elavaarkisto/?s=s&g=1&ag=5&t=&a=3401 --# </a> - # - # The news clip from 1981 says that "the time between 2 and 3 o'clock does not - # exist tonight." - -+# From Konstantin Hyppönen (2014-06-13): -+# [Heikki Oja's book Aikakirja 2013] -+# http://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf -+# pages 104-105, including a scan from a newspaper published on Apr 2 1942 -+# say that ... [o]n Apr 2 1942, 24 o'clock (which means Apr 3 1942, -+# 00:00), clocks were moved one hour forward. The newspaper -+# mentions "on the night from Thursday to Friday".... -+# On Oct 4 1942, clocks were moved at 1:00 one hour backwards. -+# -+# From Paul Eggert (2014-06-14): -+# Go with Oja over Shanks. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule Finland 1942 only - Apr 3 0:00 1:00 S --Rule Finland 1942 only - Oct 3 0:00 0 - -+Rule Finland 1942 only - Apr 2 24:00 1:00 S -+Rule Finland 1942 only - Oct 4 1:00 0 - - Rule Finland 1981 1982 - Mar lastSun 2:00 1:00 S - Rule Finland 1981 1982 - Sep lastSun 3:00 0 - -+ -+# Milne says Helsinki (Helsingfors) time was 1:39:49.2 (official document); -+# round to nearest. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31 -- 1:39:52 - HMT 1921 May # Helsinki Mean Time -+Zone Europe/Helsinki 1:39:49 - LMT 1878 May 31 -+ 1:39:49 - HMT 1921 May # Helsinki Mean Time - 2:00 Finland EE%sT 1983 - 2:00 EU EE%sT - --# Aaland Is -+# Åland Is - Link Europe/Helsinki Europe/Mariehamn - - -@@ -1140,14 +1173,14 @@ - - # From Ciro Discepolo (2000-12-20): - # --# Henri Le Corre, Regimes Horaires pour le monde entier, Editions -+# Henri Le Corre, Régimes horaires pour le monde entier, Éditions - # Traditionnelles - Paris 2 books, 1993 - # --# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur, -+# Gabriel, Traité de l'heure dans le monde, Guy Trédaniel, - # Paris, 1991 - # --# Francoise Gauquelin, Problemes de l'heure resolus en astrologie, --# Guy tredaniel, Paris 1987 -+# Françoise Gauquelin, Problèmes de l'heure résolus en astrologie, -+# Guy Trédaniel, Paris 1987 - - - # -@@ -1188,16 +1221,16 @@ - Rule France 1940 only - Feb 25 2:00 1:00 S - # The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger - # write that they were used in Monaco and in many French locations. --# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez, --# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La --# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Descartes, -+# Le Corre writes that the upper limit of the free zone was Arnéguy, Orthez, -+# Mont-de-Marsan, Bazas, Langon, Lamothe-Montravel, Marœuil, La -+# Rochefoucauld, Champagne-Mouton, La Roche-Posay, La Haye-Descartes, - # Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin, --# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois, -+# Paray-le-Monial, Montceau-les-Mines, Chalon-sur-Saône, Arbois, - # Dole, Morez, St-Claude, and Collonges (Haute-Savoie). - Rule France 1941 only - May 5 0:00 2:00 M # Midsummer - # Shanks & Pottenger say this transition occurred at Oct 6 1:00, - # but go with Denis Excoffier (1997-12-12), --# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes -+# who quotes the Ephémérides astronomiques for 1998 from Bureau des Longitudes - # as saying 5/10/41 22hUT. - Rule France 1941 only - Oct 6 0:00 1:00 S - Rule France 1942 only - Mar 9 0:00 2:00 M -@@ -1218,7 +1251,7 @@ - # on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01 -- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT -+ 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT - # Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre. - 0:00 France WE%sT 1940 Jun 14 23:00 - # Le Corre says Paris stuck with occupied-France time after the liberation; -@@ -1235,15 +1268,13 @@ - # Bundesanstalt contains DST information back to 1916. - # [See tz-link.htm for the URL.] - --# From Joerg Schilling (2002-10-23): -+# From Jörg Schilling (2002-10-23): - # In 1945, Berlin was switched to Moscow Summer time (GMT+4) by --# <a href="http://www.dhm.de/lemo/html/biografien/BersarinNikolai/"> --# General [Nikolai] Bersarin</a>. -+# http://www.dhm.de/lemo/html/biografien/BersarinNikolai/ -+# General [Nikolai] Bersarin. - - # From Paul Eggert (2003-03-08): --# <a href="http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf"> - # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf --# </a> - # says that Bersarin issued an order to use Moscow time on May 20. - # However, Moscow did not observe daylight saving in 1945, so - # this was equivalent to CEMT (GMT+3), not GMT+4. -@@ -1268,23 +1299,23 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Berlin 0:53:28 - LMT 1893 Apr -- 1:00 C-Eur CE%sT 1945 May 24 2:00 -+ 1:00 C-Eur CE%sT 1945 May 24 2:00 - 1:00 SovietZone CE%sT 1946 - 1:00 Germany CE%sT 1980 - 1:00 EU CE%sT - - # From Tobias Conradi (2011-09-12): --# Busingen <http://www.buesingen.de>, surrounded by the Swiss canton -+# Büsingen <http://www.buesingen.de>, surrounded by the Swiss canton - # Schaffhausen, did not start observing DST in 1980 as the rest of DE - # (West Germany at that time) and DD (East Germany at that time) did. - # DD merged into DE, the area is currently covered by code DE in ISO 3166-1, - # which in turn is covered by the zone Europe/Berlin. - # --# Source for the time in Busingen 1980: -+# Source for the time in Büsingen 1980: - # http://www.srf.ch/player/video?id=c012c029-03b7-4c2b-9164-aa5902cd58d3 - - # From Arthur David Olson (2012-03-03): --# Busingen and Zurich have shared clocks since 1970. -+# Büsingen and Zurich have shared clocks since 1970. - - Link Europe/Zurich Europe/Busingen - -@@ -1295,8 +1326,8 @@ - - # Gibraltar - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s -- 0:00 GB-Eire %s 1957 Apr 14 2:00 -+Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s -+ 0:00 GB-Eire %s 1957 Apr 14 2:00 - 1:00 - CET 1982 - 1:00 EU CE%sT - -@@ -1327,7 +1358,7 @@ - Rule Greece 1980 only - Sep 28 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14 -- 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT -+ 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT - 2:00 Greece EE%sT 1941 Apr 30 - 1:00 Greece CE%sT 1944 Apr 4 - 2:00 Greece EE%sT 1981 -@@ -1336,15 +1367,20 @@ - 2:00 EU EE%sT - - # Hungary -+# From Paul Eggert (2014-07-15): -+# Dates for 1916-1945 are taken from: -+# Oross A. Jelen a múlt jövője: a nyári időszámítás Magyarországon 1916-1945. -+# National Archives of Hungary (2012-10-29). -+# http://mnl.gov.hu/a_het_dokumentuma/a_nyari_idoszamitas_magyarorszagon_19161945.html -+# This source does not always give times, which are taken from Shanks -+# & Pottenger (which disagree about the dates). - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Hungary 1918 only - Apr 1 3:00 1:00 S --Rule Hungary 1918 only - Sep 29 3:00 0 - -+Rule Hungary 1918 only - Sep 16 3:00 0 - - Rule Hungary 1919 only - Apr 15 3:00 1:00 S --Rule Hungary 1919 only - Sep 15 3:00 0 - --Rule Hungary 1920 only - Apr 5 3:00 1:00 S --Rule Hungary 1920 only - Sep 30 3:00 0 - -+Rule Hungary 1919 only - Nov 24 3:00 0 - - Rule Hungary 1945 only - May 1 23:00 1:00 S --Rule Hungary 1945 only - Nov 3 0:00 0 - -+Rule Hungary 1945 only - Nov 1 0:00 0 - - Rule Hungary 1946 only - Mar 31 2:00s 1:00 S - Rule Hungary 1946 1949 - Oct Sun>=1 2:00s 0 - - Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S -@@ -1360,7 +1396,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Budapest 1:16:20 - LMT 1890 Oct - 1:00 C-Eur CE%sT 1918 -- 1:00 Hungary CE%sT 1941 Apr 6 2:00 -+ 1:00 Hungary CE%sT 1941 Apr 8 - 1:00 C-Eur CE%sT 1945 - 1:00 Hungary CE%sT 1980 Sep 28 2:00s - 1:00 EU CE%sT -@@ -1423,7 +1459,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Atlantic/Reykjavik -1:27:24 - LMT 1837 - -1:27:48 - RMT 1908 # Reykjavik Mean Time? -- -1:00 Iceland IS%sT 1968 Apr 7 1:00s -+ -1:00 Iceland IS%sT 1968 Apr 7 1:00s - 0:00 - GMT - - # Italy -@@ -1438,9 +1474,8 @@ - # From Paul Eggert (2006-03-22): - # For Italian DST we have three sources: Shanks & Pottenger, Whitman, and - # F. Pollastri --# <a href="http://toi.iriti.cnr.it/uk/ienitlt.html"> - # Day-light Saving Time in Italy (2006-02-03) --# </a> -+# http://toi.iriti.cnr.it/uk/ienitlt.html - # ('FP' below), taken from an Italian National Electrotechnical Institute - # publication. When the three sources disagree, guess who's right, as follows: - # -@@ -1500,8 +1535,8 @@ - Rule Italy 1979 only - Sep 30 0:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22 -- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean -- 1:00 Italy CE%sT 1942 Nov 2 2:00s -+ 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean -+ 1:00 Italy CE%sT 1942 Nov 2 2:00s - 1:00 C-Eur CE%sT 1944 Jul - 1:00 Italy CE%sT 1980 - 1:00 EU CE%sT -@@ -1548,18 +1583,18 @@ - - # From Andrei Ivanov (2000-03-06): - # This year Latvia will not switch to Daylight Savings Time (as specified in --# <a href="http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm"> - # The Regulations of the Cabinet of Ministers of the Rep. of Latvia of --# 29-Feb-2000 (#79)</a>, in Latvian for subscribers only). -+# 29-Feb-2000 (#79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>, -+# in Latvian for subscribers only). - --# <a href="http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html"> --# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow: --# </a> -+# From RFE/RL Newsline -+# http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html -+# (2001-01-03), noted after a heads-up by Rives McDow: - # The Latvian government on 2 January decided that the country will - # institute daylight-saving time this spring, LETA reported. - # Last February the three Baltic states decided not to turn back their - # clocks one hour in the spring.... --# Minister of Economy Aigars Kalvitis noted that Latvia had too few -+# Minister of Economy Aigars Kalvītis noted that Latvia had too few - # daylight hours and thus decided to comply with a draft European - # Commission directive that provides for instituting daylight-saving - # time in EU countries between 2002 and 2006. The Latvian government -@@ -1569,18 +1604,23 @@ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S - Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 - -+ -+# Milne 1899 says Riga was 1:36:28 (Polytechnique House time). -+# Byalokoz 1919 says Latvia was 1:36:34. -+# Go with Byalokoz. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Riga 1:36:24 - LMT 1880 -- 1:36:24 - RMT 1918 Apr 15 2:00 #Riga Mean Time -- 1:36:24 1:00 LST 1918 Sep 16 3:00 #Latvian Summer -- 1:36:24 - RMT 1919 Apr 1 2:00 -- 1:36:24 1:00 LST 1919 May 22 3:00 -- 1:36:24 - RMT 1926 May 11 -+Zone Europe/Riga 1:36:34 - LMT 1880 -+ 1:36:34 - RMT 1918 Apr 15 2:00 # Riga MT -+ 1:36:34 1:00 LST 1918 Sep 16 3:00 # Latvian ST -+ 1:36:34 - RMT 1919 Apr 1 2:00 -+ 1:36:34 1:00 LST 1919 May 22 3:00 -+ 1:36:34 - RMT 1926 May 11 - 2:00 - EET 1940 Aug 5 - 3:00 - MSK 1941 Jul - 1:00 C-Eur CE%sT 1944 Oct 13 -- 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s -- 2:00 1:00 EEST 1989 Sep lastSun 2:00s -+ 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s -+ 2:00 1:00 EEST 1989 Sep lastSun 2:00s - 2:00 Latvia EE%sT 1997 Jan 21 - 2:00 EU EE%sT 2000 Feb 29 - 2:00 - EET 2001 Jan 2 -@@ -1614,7 +1654,7 @@ - # I would like to inform that in this year Lithuanian time zone - # (Europe/Vilnius) was changed. - --# From <a href="http://www.elta.lt/">ELTA</a> No. 972 (2582) (1999-09-29), -+# From ELTA No. 972 (2582) (1999-09-29) <http://www.elta.lt/>, - # via Steffen Thorsen: - # Lithuania has shifted back to the second time zone (GMT plus two hours) - # to be valid here starting from October 31, -@@ -1623,9 +1663,9 @@ - # motion to give up shifting to summer time in spring, as it was - # already done by Estonia. - --# From the <a href="http://www.tourism.lt/informa/ff.htm"> --# Fact File, Lithuanian State Department of Tourism --# </a> (2000-03-27): Local time is GMT+2 hours ..., no daylight saving. -+# From the Fact File, Lithuanian State Department of Tourism -+# <http://www.tourism.lt/informa/ff.htm> (2000-03-27): -+# Local time is GMT+2 hours ..., no daylight saving. - - # From a user via Klaus Marten (2003-02-07): - # As a candidate for membership of the European Union, Lithuania will -@@ -1638,18 +1678,18 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Vilnius 1:41:16 - LMT 1880 -- 1:24:00 - WMT 1917 # Warsaw Mean Time -+ 1:24:00 - WMT 1917 # Warsaw Mean Time - 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time - 1:00 - CET 1920 Jul 12 - 2:00 - EET 1920 Oct 9 - 1:00 - CET 1940 Aug 3 - 3:00 - MSK 1941 Jun 24 - 1:00 C-Eur CE%sT 1944 Aug -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -- 2:00 1:00 EEST 1991 Sep 29 2:00s -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 1:00 EEST 1991 Sep 29 2:00s - 2:00 C-Eur EE%sT 1998 -- 2:00 - EET 1998 Mar 29 1:00u -- 1:00 EU CE%sT 1999 Oct 31 1:00u -+ 2:00 - EET 1998 Mar 29 1:00u -+ 1:00 EU CE%sT 1999 Oct 31 1:00u - 2:00 - EET 2003 Jan 1 - 2:00 EU EE%sT - -@@ -1683,9 +1723,9 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun - 1:00 Lux CE%sT 1918 Nov 25 -- 0:00 Lux WE%sT 1929 Oct 6 2:00s -- 0:00 Belgium WE%sT 1940 May 14 3:00 -- 1:00 C-Eur WE%sT 1944 Sep 18 3:00 -+ 0:00 Lux WE%sT 1929 Oct 6 2:00s -+ 0:00 Belgium WE%sT 1940 May 14 3:00 -+ 1:00 C-Eur WE%sT 1944 Sep 18 3:00 - 1:00 Belgium CE%sT 1977 - 1:00 EU CE%sT - -@@ -1702,9 +1742,9 @@ - Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 - - Rule Malta 1980 only - Mar 31 2:00 1:00 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta -- 1:00 Italy CE%sT 1942 Nov 2 2:00s -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s -+Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta -+ 1:00 Italy CE%sT 1942 Nov 2 2:00s -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s - 1:00 Italy CE%sT 1973 Mar 31 - 1:00 Malta CE%sT 1981 - 1:00 EU CE%sT -@@ -1719,7 +1759,7 @@ - # In early 1992 there was large-scale interethnic violence in the area - # and it's possible that some Russophones continued to observe Moscow time. - # But [two people] separately reported via --# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau. -+# Jesper Nørgaard that as of 2001-01-24 Tiraspol was like Chisinau. - # The Tiraspol entry has therefore been removed for now. - # - # From Alexander Krivenyshev (2011-10-17): -@@ -1728,13 +1768,8 @@ - # to the Winter Time). - # - # News (in Russian): --# <a href="http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html"> - # http://www.kyivpost.ua/russia/news/pridnestrove-otkazalos-ot-perehoda-na-zimnee-vremya-30954.html --# </a> --# --# <a href="http://www.allmoldova.com/moldova-news/1249064116.html"> - # http://www.allmoldova.com/moldova-news/1249064116.html --# </a> - # - # The substance of this change (reinstatement of the Tiraspol entry) - # is from a patch from Petr Machata (2011-10-17) -@@ -1752,9 +1787,7 @@ - # Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)- - # Tiraspol will go back to winter time on October 30, 2011. - # News from Moldova (in russian): --# <a href="http://ru.publika.md/link_317061.html"> - # http://ru.publika.md/link_317061.html --# </a> - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] -@@ -1777,8 +1810,8 @@ - # more precise 0:09:21. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15 -- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -- 0:00 France WE%sT 1945 Sep 16 3:00 -+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time -+ 0:00 France WE%sT 1945 Sep 16 3:00 - 1:00 France CE%sT 1977 - 1:00 EU CE%sT - -@@ -1822,8 +1855,8 @@ - # was not until 1866 when they were all required by law to observe - # Amsterdam mean time. - --# The data before 1945 are taken from --# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>. -+# The data entries before 1945 are taken from -+# http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time -@@ -1854,8 +1887,8 @@ - # 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 -- 1:00 C-Eur CE%sT 1945 Apr 2 2:00 -+ 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time -+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00 - 1:00 Neth CE%sT 1977 - 1:00 EU CE%sT - -@@ -1885,14 +1918,14 @@ - # time they were declared as parts of Norway. Svalbard was declared - # as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan - # Mayen by law of 1930-02-27 no 2, section 2. (From --# http://www.lovdata.no/all/nl-19250717-011.html and --# http://www.lovdata.no/all/nl-19300227-002.html). The law/regulation -+# <http://www.lovdata.no/all/nl-19250717-011.html> and -+# <http://www.lovdata.no/all/nl-19300227-002.html>). The law/regulation - # for normal/standard time in Norway is from 1894-06-29 no 1 (came - # into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a - # part of this law since 1925/1930. (From --# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been -+# <http://www.lovdata.no/all/nl-18940629-001.html>) I have not been - # able to find if Jan Mayen used a different time zone (e.g. -0100) --# before 1930. Jan Mayen has only been "inhabitated" since 1921 by -+# before 1930. Jan Mayen has only been "inhabited" since 1921 by - # Norwegian meteorologists and maybe used the same time as Norway ever - # since 1921. Svalbard (Arctic/Longyearbyen) has been inhabited since - # before 1895, and therefore probably changed the local time somewhere -@@ -1907,7 +1940,7 @@ - # <http://home.no.net/janmayen/history.htm> says that the meteorologists - # burned down their station in 1940 and left the island, but returned in - # 1941 with a small Norwegian garrison and continued operations despite --# frequent air ttacks from Germans. In 1943 the Americans established a -+# frequent air attacks from Germans. In 1943 the Americans established a - # radiolocating station on the island, called "Atlantic City". Possibly - # the UT offset changed during the war, but I think it unlikely that - # Jan Mayen used German daylight-saving rules. -@@ -1918,7 +1951,7 @@ - # <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were - # expelled on 1942-05-14. However, small parties of Germans did return, - # and according to Wilhelm Dege's book "War North of 80" (1954) --# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html> -+# http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html - # the German armed forces at the Svalbard weather station code-named - # Haudegen did not surrender to the Allies until September 1945. - # -@@ -1927,6 +1960,10 @@ - Link Europe/Oslo Arctic/Longyearbyen - - # Poland -+ -+# The 1919 dates and times can be found in Tygodnik Urzędowy nr 1 (1919-03-20), -+# <http://www.wbc.poznan.pl/publication/32156> pp 1-2. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Poland 1918 1919 - Sep 16 2:00s 0 - - Rule Poland 1919 only - Apr 15 2:00s 1:00 S -@@ -1937,9 +1974,9 @@ - Rule Poland 1945 only - Apr 29 0:00 1:00 S - Rule Poland 1945 only - Nov 1 0:00 0 - - # For 1946 on the source is Kazimierz Borkowski, --# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U., --# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1> --# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference. -+# Toruń Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U., -+# http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1 -+# Thanks to Przemysław Augustyniak (2005-05-28) for this reference. - # He also gives these further references: - # Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm> - # Druk nr 2180 (2003) <http://www.senat.gov.pl/k5/dok/sejm/053/2180.pdf> -@@ -1959,10 +1996,10 @@ - Rule Poland 1962 1964 - Sep lastSun 1:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Warsaw 1:24:00 - LMT 1880 -- 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time -- 1:00 C-Eur CE%sT 1918 Sep 16 3:00 -+ 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time -+ 1:00 C-Eur CE%sT 1918 Sep 16 3:00 - 2:00 Poland EE%sT 1922 Jun -- 1:00 Poland CE%sT 1940 Jun 23 2:00 -+ 1:00 Poland CE%sT 1940 Jun 23 2:00 - 1:00 C-Eur CE%sT 1944 Oct - 1:00 Poland CE%sT 1977 - 1:00 W-Eur CE%sT 1988 -@@ -1970,6 +2007,14 @@ - - # Portugal - # -+# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne: -+# According to a Portuguese decree (1911-05-26) -+# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf -+# Lisbon was at -0:36:44.68, but switched to GMT on 1912-01-01 at 00:00. -+# Round the old offset to -0:36:45. This agrees with Willett but disagrees -+# with Shanks, who says the transition occurred on 1911-05-24 at 00:00 for -+# Europe/Lisbon, Atlantic/Azores, and Atlantic/Madeira. -+# - # From Rui Pedro Salgueiro (1992-11-12): - # Portugal has recently (September, 27) changed timezone - # (from WET to MET or CET) to harmonize with EEC. -@@ -2049,35 +2094,34 @@ - Rule Port 1980 only - Mar lastSun 0:00s 1:00 S - Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S - Rule Port 1983 only - Mar lastSun 2:00s 1:00 S -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24; --# Willett says 1912-01-01. Go with Willett. --Zone Europe/Lisbon -0:36:32 - LMT 1884 -- -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time -- 0:00 Port WE%sT 1966 Apr 3 2:00 -- 1:00 - CET 1976 Sep 26 1:00 -- 0:00 Port WE%sT 1983 Sep 25 1:00s -- 0:00 W-Eur WE%sT 1992 Sep 27 1:00s -- 1:00 EU CE%sT 1996 Mar 31 1:00u -+Zone Europe/Lisbon -0:36:45 - LMT 1884 -+ -0:36:45 - LMT 1912 Jan 1 # Lisbon Mean Time -+ 0:00 Port WE%sT 1966 Apr 3 2:00 -+ 1:00 - CET 1976 Sep 26 1:00 -+ 0:00 Port WE%sT 1983 Sep 25 1:00s -+ 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 --Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada -- -1:54:32 - HMT 1911 May 24 # 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 -- 0:00 EU WE%sT 1993 Mar 28 1:00u -+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 -+ 0:00 EU WE%sT 1993 Mar 28 1:00u - -1:00 EU AZO%sT --Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal -- -1:07:36 - FMT 1911 May 24 # Funchal Mean Time -- -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time -- 0:00 Port WE%sT 1983 Sep 25 1:00s -+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 -+ 0:00 Port WE%sT 1983 Sep 25 1:00s - 0:00 EU WE%sT - - # Romania - # - # From Paul Eggert (1999-10-07): --# <a href="http://www.nineoclock.ro/POL/1778pol.html"> --# Nine O'clock</a> (1998-10-23) reports that the switch occurred at -+# Nine O'clock <http://www.nineoclock.ro/POL/1778pol.html> -+# (1998-10-23) reports that the switch occurred at - # 04:00 local time in fall 1998. For lack of better info, - # assume that Romania and Moldova switched to EU rules in 1997, - # the same year as Bulgaria. -@@ -2094,32 +2138,28 @@ - Rule Romania 1991 1993 - Sep lastSun 0:00s 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct -- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT -- 2:00 Romania EE%sT 1981 Mar 29 2:00s -+ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT -+ 2:00 Romania EE%sT 1981 Mar 29 2:00s - 2:00 C-Eur EE%sT 1991 - 2:00 Romania EE%sT 1994 - 2:00 E-Eur EE%sT 1997 - 2:00 EU EE%sT - -+ - # Russia - - # From Alexander Krivenyshev (2011-09-15): - # Based on last Russian Government Decree # 725 on August 31, 2011 - # (Government document --# <a href="http://www.government.ru/gov/results/16355/print/"> - # http://www.government.ru/gov/results/16355/print/ --# </a> - # in Russian) - # there are few corrections have to be made for some Russian time zones... - # All updated Russian Time Zones were placed in table and translated to English - # by WorldTimeZone.com at the link below: --# <a href="http://www.worldtimezone.com/dst_news/dst_news_russia36.htm"> - # http://www.worldtimezone.com/dst_news/dst_news_russia36.htm --# </a> - - # From Sanjeev Gupta (2011-09-27): - # Scans of [Decree #23 of January 8, 1992] are available at: --# <a href="http://government.consultant.ru/page.aspx?1223966"> - # http://government.consultant.ru/page.aspx?1223966 - # They are in Cyrillic letters (presumably Russian). - -@@ -2128,16 +2168,12 @@ - # changed in September 2011: - # - # One source is --# < a href="http://government.ru/gov/results/16355/> - # http://government.ru/gov/results/16355/ --# </a> - # which, according to translate.google.com, begins "Decree of August 31, - # 2011 No 725" and contains no other dates or "effective date" information. - # - # Another source is --# <a href="http://www.rg.ru/2011/09/06/chas-zona-dok.html"> - # http://www.rg.ru/2011/09/06/chas-zona-dok.html --# </a> - # which, according to translate.google.com, begins "Resolution of the - # Government of the Russian Federation on August 31, 2011 N 725" and also - # contains "Date first official publication: September 6, 2011 Posted on: -@@ -2145,28 +2181,45 @@ - # does not contain any "effective date" information. - # - # Another source is --# <a href="http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7"> - # http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7 --# </a> - # which, in note 8, contains "Resolution #725 of August 31, 2011... - # Effective as of after 7 days following the day of the official publication" - # but which does not contain any reference to September 6, 2011. - # - # The Wikipedia article refers to --# <a href="http://base.consultant.ru/cons/cgi/online.cgi?req=doc;base=LAW;n=118896"> - # http://base.consultant.ru/cons/cgi/online.cgi?req=doc;base=LAW;n=118896 --# </a> - # which seems to copy the text of the government.ru page. - # - # Tobias Conradi combines Wikipedia's - # "as of after 7 days following the day of the official publication" --# with www.rg.ru's "Date of first official publication: September 6, 2011" to get --# September 13, 2011 as the cutover date (unusually, a Tuesday, as Tobias Conradi notes). -+# with www.rg.ru's "Date of first official publication: September 6, 2011" to -+# get September 13, 2011 as the cutover date (unusually, a Tuesday, as Tobias -+# Conradi notes). - # - # None of the sources indicates a time of day for changing clocks. - # - # Go with 2011-09-13 0:00s. - -+# From Alexander Krivenyshev (2014-07-01): -+# According to the Russian news (ITAR-TASS News Agency) -+# http://en.itar-tass.com/russia/738562 -+# the State Duma has approved ... the draft bill on returning to -+# winter time standard and return Russia 11 time zones. The new -+# regulations will come into effect on October 26, 2014 at 02:00 ... -+# http://asozd2.duma.gov.ru/main.nsf/%28Spravka%29?OpenAgent&RN=431985-6&02 -+# Here is a link where we put together table (based on approved Bill N -+# 431985-6) with proposed 11 Russian time zones and corresponding -+# areas/cities/administrative centers in the Russian Federation (in English): -+# http://www.worldtimezone.com/dst_news/dst_news_russia65.html -+# -+# From Alexander Krivenyshev (2014-07-22): -+# Putin signed the Federal Law 431985-6 ... (in Russian) -+# http://itar-tass.com/obschestvo/1333711 -+# http://www.pravo.gov.ru:8080/page.aspx?111660 -+# http://www.kremlin.ru/acts/46279 -+# From October 26, 2014 the new Russian time zone map will looks like this: -+# http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html -+ - # From Paul Eggert (2006-03-22): - # Except for Moscow after 1919-07-01, I invented the time zone abbreviations. - # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991, -@@ -2193,9 +2246,9 @@ - # - # For Grozny, Chechnya, we have the following story from - # John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07): --# News--often false--is spread by word of mouth. A rumor that it was -+# News - often false - is spread by word of mouth. A rumor that it was - # time to move the clocks back put this whole city out of sync with --# the rest of Russia for two weeks--even soldiers stationed here began -+# the rest of Russia for two weeks - even soldiers stationed here began - # enforcing curfew at the wrong time. - # - # From Gwillim Law (2001-06-05): -@@ -2206,107 +2259,265 @@ - # since September 1997.... Although the Kuril Islands are - # administratively part of Sakhalin oblast', they appear to have - # remained on UTC+11 along with Magadan. --# -+ -+# From Tim Parenti (2014-07-06): -+# The comments detailing the coverage of each Russian zone are meant to assist -+# with maintenance only and represent our best guesses as to which regions -+# are covered by each zone. They are not meant to be taken as an authoritative -+# listing. The region codes listed come from -+# http://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498 -+# and are used for convenience only; no guarantees are made regarding their -+# future stability. ISO 3166-2:RU codes are also listed for first-level -+# divisions where available. -+ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# --# Kaliningradskaya oblast'. -+ -+ -+# From Tim Parenti (2014-07-03): -+# Europe/Kaliningrad covers... -+# 39 RU-KGD Kaliningrad Oblast -+ - Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr - 1:00 C-Eur CE%sT 1945 - 2:00 Poland CE%sT 1946 -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -- 2:00 Russia EE%sT 2011 Mar 27 2:00s -- 3:00 - FET # Further-eastern European Time -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 Russia EE%sT 2011 Mar 27 2:00s -+ 3:00 - FET 2014 Oct 26 2:00s -+ 2:00 - EET -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Europe/Moscow covers... -+# 01 RU-AD Adygea, Republic of -+# 05 RU-DA Dagestan, Republic of -+# 06 RU-IN Ingushetia, Republic of -+# 07 RU-KB Kabardino-Balkar Republic -+# 08 RU-KL Kalmykia, Republic of -+# 09 RU-KC Karachay-Cherkess Republic -+# 10 RU-KR Karelia, Republic of -+# 11 RU-KO Komi Republic -+# 12 RU-ME Mari El Republic -+# 13 RU-MO Mordovia, Republic of -+# 15 RU-SE North Ossetia-Alania, Republic of -+# 16 RU-TA Tatarstan, Republic of -+# 20 RU-CE Chechen Republic -+# 21 RU-CU Chuvash Republic -+# 23 RU-KDA Krasnodar Krai -+# 26 RU-STA Stavropol Krai -+# 29 RU-ARK Arkhangelsk Oblast -+# 31 RU-BEL Belgorod Oblast -+# 32 RU-BRY Bryansk Oblast -+# 33 RU-VLA Vladimir Oblast -+# 35 RU-VLG Vologda Oblast -+# 36 RU-VOR Voronezh Oblast -+# 37 RU-IVA Ivanovo Oblast -+# 40 RU-KLU Kaluga Oblast -+# 44 RU-KOS Kostroma Oblast -+# 46 RU-KRS Kursk Oblast -+# 47 RU-LEN Leningrad Oblast -+# 48 RU-LIP Lipetsk Oblast -+# 50 RU-MOS Moscow Oblast -+# 51 RU-MUR Murmansk Oblast -+# 52 RU-NIZ Nizhny Novgorod Oblast -+# 53 RU-NGR Novgorod Oblast -+# 57 RU-ORL Oryol Oblast -+# 58 RU-PNZ Penza Oblast -+# 60 RU-PSK Pskov Oblast -+# 61 RU-ROS Rostov Oblast -+# 62 RU-RYA Ryazan Oblast -+# 67 RU-SMO Smolensk Oblast -+# 68 RU-TAM Tambov Oblast -+# 69 RU-TVE Tver Oblast -+# 71 RU-TUL Tula Oblast -+# 73 RU-ULY Ulyanovsk Oblast -+# 76 RU-YAR Yaroslavl Oblast -+# 77 RU-MOW Moscow -+# 78 RU-SPE Saint Petersburg -+# 83 RU-NEN Nenets Autonomous Okrug -+ -+# From Vladimir Karpinsky (2014-07-08): -+# LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow -+# Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30").... -+# LMT in Moscow since Jul 3, 1916 is 2:31:01 as a result of new standard. -+# (The info is from the book by Byalokoz ... p. 18.) -+# The time in St. Petersburg as capital of Russia was defined by -+# Pulkov observatory, near St. Petersburg. In 1916 LMT Moscow -+# was synchronized with LMT St. Petersburg (+30 minutes), (Pulkov observatory -+# coordinates: 59 deg. 46'18.70", 30 deg. 19'40.70") so 30 deg. 19'40.70" > -+# 2h01m18.7s = 2:01:19. LMT Moscow = LMT St.Petersburg + 30m 2:01:19 + 0:30 = -+# 2:31:19 ... - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Adygeya, Arkhangel'skaya oblast', --# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast', --# Vologodskaya oblast', Voronezhskaya oblast', --# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya, --# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya, --# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya, --# Respublika Kareliya, Respublika Komi, --# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast', --# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El, --# Respublika Mordoviya, Moskva, Moskovskaya oblast', --# Murmanskaya oblast', Nenetskij avtonomnyj okrug, --# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast', --# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast', --# Ryazanskaya oblast', Sankt-Peterburg, --# Respublika Severnaya Osetiya, Smolenskaya oblast', --# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan, --# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast', --# Chechenskaya Respublika, Chuvashskaya oblast', --# Yaroslavskaya oblast' --Zone Europe/Moscow 2:30:20 - LMT 1880 -- 2:30 - MMT 1916 Jul 3 # Moscow Mean Time -- 2:30:48 Russia %s 1919 Jul 1 2:00 -+# From Paul Eggert (2014-07-08): -+# Milne does not list Moscow, but suggests that its time might be listed in -+# Résumés mensuels et annuels des observations météorologiques (1895). -+# Presumably this is OCLC 85825704, a journal published with parallel text in -+# Russian and French. This source has not been located; go with Karpinsky. -+ -+Zone Europe/Moscow 2:30:17 - LMT 1880 -+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time -+ 2:31:19 Russia %s 1919 Jul 1 2:00 -+ 3:00 Russia %s 1921 Oct - 3:00 Russia MSK/MSD 1922 Oct - 2:00 - EET 1930 Jun 21 -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -- 2:00 Russia EE%sT 1992 Jan 19 2:00s -- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s -- 4:00 - MSK -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 Russia EE%sT 1992 Jan 19 2:00s -+ 3:00 Russia MSK/MSD 2011 Mar 27 2:00s -+ 4:00 - MSK 2014 Oct 26 2:00s -+ 3:00 - MSK -+ -+ -+# From Tim Parenti (2014-07-03): -+# Europe/Simferopol covers... -+# ** **** Crimea, Republic of -+# ** **** Sevastopol -+ -+Zone Europe/Simferopol 2:16:24 - LMT 1880 -+ 2:16 - SMT 1924 May 2 # Simferopol Mean T -+ 2:00 - EET 1930 Jun 21 -+ 3:00 - MSK 1941 Nov -+ 1:00 C-Eur CE%sT 1944 Apr 13 -+ 3:00 Russia MSK/MSD 1990 -+ 3:00 - MSK 1990 Jul 1 2:00 -+ 2:00 - EET 1992 -+# Central Crimea used Moscow time 1994/1997. - # --# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast', --# Volgogradskaya oblast'. Shanks & Pottenger say Kirov is still at +0400 --# but Wikipedia (2006-05-09) says +0300. Perhaps it switched after the --# others? But we have no data. -+# From Paul Eggert (2006-03-22): -+# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched -+# from Kiev to Moscow time sometime after the January 1994 elections. -+# Shanks (1999) says "date of change uncertain", but implies that it happened -+# sometime between the 1994 DST switches. Shanks & Pottenger simply say -+# 1994-09-25 03:00, but that can't be right. For now, guess it -+# changed in May. -+ 2:00 E-Eur EE%sT 1994 May -+# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev. -+ 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s -+ 3:00 1:00 MSD 1996 Oct 27 3:00s -+# IATA SSIM (1997-09) says Crimea switched to EET/EEST. -+# Assume it happened in March by not changing the clocks. -+ 3:00 Russia MSK/MSD 1997 -+ 3:00 - MSK 1997 Mar lastSun 1:00u -+# From Alexander Krivenyshev (2014-03-17): -+# time change at 2:00 (2am) on March 30, 2014 -+# http://vz.ru/news/2014/3/17/677464.html -+# From Paul Eggert (2014-03-30): -+# Simferopol and Sevastopol reportedly changed their central town clocks -+# late the previous day, but this appears to have been ceremonial -+# and the discrepancies are small enough to not worry about. -+ 2:00 EU EE%sT 2014 Mar 30 2:00 -+ 4:00 - MSK 2014 Oct 26 2:00s -+ 3:00 - MSK -+ -+ -+# From Tim Parenti (2014-07-03): -+# Europe/Volgograd covers... -+# 30 RU-AST Astrakhan Oblast -+# 34 RU-VGG Volgograd Oblast -+# 43 RU-KIR Kirov Oblast -+# 64 RU-SAR Saratov Oblast -+ -+# From Paul Eggert (2006-05-09): -+# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300. -+# Perhaps it switched after the others? But we have no data. -+ - Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3 - 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time - 3:00 - STAT 1930 Jun 21 # Stalingrad Time - 4:00 - STAT 1961 Nov 11 -- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T -- 3:00 Russia VOL%sT 1991 Mar 31 2:00s -- 4:00 - VOLT 1992 Mar 29 2:00s -- 3:00 Russia VOL%sT 2011 Mar 27 2:00s -- 4:00 - VOLT --# --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Samarskaya oblast', Udmyrtskaya respublika --Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00 -+ 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T -+ 3:00 Russia VOL%sT 1991 Mar 31 2:00s -+ 4:00 - VOLT 1992 Mar 29 2:00s -+ 3:00 Russia MSK 2011 Mar 27 2:00s -+ 4:00 - MSK 2014 Oct 26 2:00s -+ 3:00 - MSK -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Europe/Samara covers... -+# 18 RU-UD Udmurt Republic -+# 63 RU-SAM Samara Oblast -+ -+# Byalokoz 1919 says Samara was 3:20:20. -+ -+Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 2:00 - 3:00 - SAMT 1930 Jun 21 - 4:00 - SAMT 1935 Jan 27 -- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev -- 3:00 Russia KUY%sT 1991 Mar 31 2:00s -- 2:00 Russia KUY%sT 1991 Sep 29 2:00s -- 3:00 - KUYT 1991 Oct 20 3:00 -- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time -- 3:00 Russia SAM%sT 2011 Mar 27 2:00s -+ 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s -+ 2:00 Russia EE%sT 1991 Sep 29 2:00s -+ 3:00 - KUYT 1991 Oct 20 3:00 -+ 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time -+ 3:00 Russia SAM%sT 2011 Mar 27 2:00s - 4:00 - SAMT - -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Yekaterinburg covers... -+# 02 RU-BA Bashkortostan, Republic of -+# 90 RU-PER Perm Krai -+# 45 RU-KGN Kurgan Oblast -+# 56 RU-ORE Orenburg Oblast -+# 66 RU-SVE Sverdlovsk Oblast -+# 72 RU-TYU Tyumen Oblast -+# 74 RU-CHE Chelyabinsk Oblast -+# 86 RU-KHM Khanty-Mansi Autonomous Okrug - Yugra -+# 89 RU-YAN Yamalo-Nenets Autonomous Okrug - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug, --# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast', --# Sverdlovskaya oblast', Tyumenskaya oblast', --# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast', --# Yamalo-Nenetskij avtonomnyj okrug. --Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00 -+# Note: Effective 2005-12-01, (59) Perm Oblast and (81) Komi-Permyak -+# Autonomous Okrug merged to form (90, RU-PER) Perm Krai. -+ -+# Milne says Yekaterinburg was 4:02:32.9; round to nearest. -+# Byalokoz 1919 says its provincial time was based on Perm, at 3:45:05. -+# Assume it switched on 1916-07-03, the time of the new standard. -+# The 1919 and 1930 transitions are from Shanks. -+ -+Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3 -+ 3:45:05 - PMT 1919 Jul 15 4:00 - 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time -- 5:00 Russia SVE%sT 1991 Mar 31 2:00s -- 4:00 Russia SVE%sT 1992 Jan 19 2:00s -- 5:00 Russia YEK%sT 2011 Mar 27 2:00s -- 6:00 - YEKT # Yekaterinburg Time --# --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Altaj, Altajskij kraj, Omskaya oblast'. --Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14 -- 5:00 - OMST 1930 Jun 21 # Omsk TIme -- 6:00 Russia OMS%sT 1991 Mar 31 2:00s -- 5:00 Russia OMS%sT 1992 Jan 19 2:00s -- 6:00 Russia OMS%sT 2011 Mar 27 2:00s -- 7:00 - OMST --# -+ 5:00 Russia SVE%sT 1991 Mar 31 2:00s -+ 4:00 Russia SVE%sT 1992 Jan 19 2:00s -+ 5:00 Russia YEK%sT 2011 Mar 27 2:00s -+ 6:00 - YEKT 2014 Oct 26 2:00s -+ 5:00 - YEKT -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Omsk covers... -+# 04 RU-AL Altai Republic -+# 22 RU-ALT Altai Krai -+# 55 RU-OMS Omsk Oblast -+ -+# Byalokoz 1919 says Omsk was 4:53:30. -+ -+Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14 -+ 5:00 - OMST 1930 Jun 21 # Omsk Time -+ 6:00 Russia OMS%sT 1991 Mar 31 2:00s -+ 5:00 Russia OMS%sT 1992 Jan 19 2:00s -+ 6:00 Russia OMS%sT 2011 Mar 27 2:00s -+ 7:00 - OMST 2014 Oct 26 2:00s -+ 6:00 - OMST -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Novosibirsk covers... -+# 54 RU-NVS Novosibirsk Oblast -+# 70 RU-TOM Tomsk Oblast -+ - # From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's - # not clear when it switched from +7 to +6. --# Novosibirskaya oblast', Tomskaya oblast'. --Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00 -+ -+Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00 - 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time -- 7:00 Russia NOV%sT 1991 Mar 31 2:00s -- 6:00 Russia NOV%sT 1992 Jan 19 2:00s -+ 7:00 Russia NOV%sT 1991 Mar 31 2:00s -+ 6:00 Russia NOV%sT 1992 Jan 19 2:00s - 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P. -- 6:00 Russia NOV%sT 2011 Mar 27 2:00s -- 7:00 - NOVT -+ 6:00 Russia NOV%sT 2011 Mar 27 2:00s -+ 7:00 - NOVT 2014 Oct 26 2:00s -+ 6:00 - NOVT -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Novokuznetsk covers... -+# 42 RU-KEM Kemerovo Oblast - - # From Alexander Krivenyshev (2009-10-13): - # Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on -@@ -2319,14 +2530,10 @@ - # time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600) - # - # Russian Government web site (Russian language) --# <a href="http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archiv"> - # http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archive/2009/09/14/991633.htm --# </a> - # or Russian-English translation by WorldTimeZone.com with reference - # map to local region and new Russia Time Zone map after March 28, 2010 --# <a href="http://www.worldtimezone.com/dst_news/dst_news_russia03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_russia03.html --# </a> - # - # Thus, when Russia will switch to DST on the night of March 28, 2010 - # Kemerovo region (Kemerovo oblast') will not change the clock. -@@ -2334,152 +2541,319 @@ - # As a result, Kemerovo oblast' will be in the same time zone as - # Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic. - --Zone Asia/Novokuznetsk 5:48:48 - NMT 1920 Jan 6 -+# From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02): -+# The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus -+# realigning itself with KRAT. -+ -+Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1 - 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time -- 7:00 Russia KRA%sT 1991 Mar 31 2:00s -- 6:00 Russia KRA%sT 1992 Jan 19 2:00s -- 7:00 Russia KRA%sT 2010 Mar 28 2:00s -- 6:00 Russia NOV%sT 2011 Mar 27 2:00s -- 7:00 - NOVT # Novosibirsk/Novokuznetsk Time -+ 7:00 Russia KRA%sT 1991 Mar 31 2:00s -+ 6:00 Russia KRA%sT 1992 Jan 19 2:00s -+ 7:00 Russia KRA%sT 2010 Mar 28 2:00s -+ 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk -+ 7:00 - NOVT 2014 Oct 26 2:00s -+ 7:00 - KRAT # Krasnoyarsk Time - -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Krasnoyarsk covers... -+# 17 RU-TY Tuva Republic -+# 19 RU-KK Khakassia, Republic of -+# 24 RU-KYA Krasnoyarsk Krai - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Krasnoyarskij kraj, --# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug, --# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug. --Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6 -+# Note: Effective 2007-01-01, (88) Evenk Autonomous Okrug and (84) Taymyr -+# Autonomous Okrug were merged into (24, RU-KYA) Krasnoyarsk Krai. -+ -+# Byalokoz 1919 says Krasnoyarsk was 6:11:26. -+ -+Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6 - 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time -- 7:00 Russia KRA%sT 1991 Mar 31 2:00s -- 6:00 Russia KRA%sT 1992 Jan 19 2:00s -- 7:00 Russia KRA%sT 2011 Mar 27 2:00s -- 8:00 - KRAT -+ 7:00 Russia KRA%sT 1991 Mar 31 2:00s -+ 6:00 Russia KRA%sT 1992 Jan 19 2:00s -+ 7:00 Russia KRA%sT 2011 Mar 27 2:00s -+ 8:00 - KRAT 2014 Oct 26 2:00s -+ 7:00 - KRAT -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Irkutsk covers... -+# 03 RU-BU Buryatia, Republic of -+# 38 RU-IRK Irkutsk Oblast - # --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Respublika Buryatiya, Irkutskaya oblast', --# Ust'-Ordynskij Buryatskij avtonomnyj okrug. --Zone Asia/Irkutsk 6:57:20 - LMT 1880 -- 6:57:20 - IMT 1920 Jan 25 # Irkutsk Mean Time -+# Note: Effective 2008-01-01, (85) Ust-Orda Buryat Autonomous Okrug was -+# merged into (38, RU-IRK) Irkutsk Oblast. -+ -+# Milne 1899 says Irkutsk was 6:57:15. -+# Byalokoz 1919 says Irkutsk was 6:57:05. -+# Go with Byalokoz. -+ -+Zone Asia/Irkutsk 6:57:05 - LMT 1880 -+ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time - 7:00 - IRKT 1930 Jun 21 # Irkutsk Time -- 8:00 Russia IRK%sT 1991 Mar 31 2:00s -- 7:00 Russia IRK%sT 1992 Jan 19 2:00s -- 8:00 Russia IRK%sT 2011 Mar 27 2:00s -- 9:00 - IRKT -+ 8:00 Russia IRK%sT 1991 Mar 31 2:00s -+ 7:00 Russia IRK%sT 1992 Jan 19 2:00s -+ 8:00 Russia IRK%sT 2011 Mar 27 2:00s -+ 9:00 - IRKT 2014 Oct 26 2:00s -+ 8:00 - IRKT -+ -+ -+# From Tim Parenti (2014-07-06): -+# Asia/Chita covers... -+# 92 RU-ZAB Zabaykalsky Krai - # --# From Oscar van Vlijmen (2003-10-18): [This region consists of] --# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast', --# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'. -+# Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat -+# Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai. - --# From Oscar van Vlijmen (2009-11-29): --# ...some regions of [Russia] were merged with others since 2005... --# Some names were changed, no big deal, except for one instance: a new name. --# YAK/YAKST: UTC+9 Zabajkal'skij kraj. -+Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15 -+ 8:00 - YAKT 1930 Jun 21 # Yakutsk Time -+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s -+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s -+ 9:00 Russia YAK%sT 2011 Mar 27 2:00s -+ 10:00 - YAKT 2014 Oct 26 2:00s -+ 8:00 - IRKT - --# From Oscar van Vlijmen (2009-11-29): --# The Sakha districts are: Aldanskij, Amginskij, Anabarskij, --# Verkhnevilyujskij, Vilyujskij, Gornyj, --# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij, --# Namskij, Nyurbinskij, Olenyokskij, Olyokminskij, --# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij, --# Churapchinskij, Eveno-Bytantajskij Natsional'nij. - --Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15 -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29): -+# Asia/Yakutsk covers... -+# 28 RU-AMU Amur Oblast -+# -+# ...and parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-02 **** Aldansky District -+# 14-04 **** Amginsky District -+# 14-05 **** Anabarsky District -+# 14-06 **** Bulunsky District -+# 14-07 **** Verkhnevilyuysky District -+# 14-10 **** Vilyuysky District -+# 14-11 **** Gorny District -+# 14-12 **** Zhigansky District -+# 14-13 **** Kobyaysky District -+# 14-14 **** Lensky District -+# 14-15 **** Megino-Kangalassky District -+# 14-16 **** Mirninsky District -+# 14-18 **** Namsky District -+# 14-19 **** Neryungrinsky District -+# 14-21 **** Nyurbinsky District -+# 14-23 **** Olenyoksky District -+# 14-24 **** Olyokminsky District -+# 14-26 **** Suntarsky District -+# 14-27 **** Tattinsky District -+# 14-29 **** Ust-Aldansky District -+# 14-32 **** Khangalassky District -+# 14-33 **** Churapchinsky District -+# 14-34 **** Eveno-Bytantaysky National District -+ -+# From Tim Parenti (2014-07-03): -+# Our commentary seems to have lost mention of (14-19) Neryungrinsky District. -+# Since the surrounding districts of Sakha are all YAKT, assume this is, too. -+# Also assume its history has been the same as the rest of Asia/Yakutsk. -+ -+# Byalokoz 1919 says Yakutsk was 8:38:58. -+ -+Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15 - 8:00 - YAKT 1930 Jun 21 # Yakutsk Time -- 9:00 Russia YAK%sT 1991 Mar 31 2:00s -- 8:00 Russia YAK%sT 1992 Jan 19 2:00s -- 9:00 Russia YAK%sT 2011 Mar 27 2:00s -- 10:00 - YAKT -+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s -+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s -+ 9:00 Russia YAK%sT 2011 Mar 27 2:00s -+ 10:00 - YAKT 2014 Oct 26 2:00s -+ 9:00 - YAKT -+ -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29): -+# Asia/Vladivostok covers... -+# 25 RU-PRI Primorsky Krai -+# 27 RU-KHA Khabarovsk Krai -+# 79 RU-YEV Jewish Autonomous Oblast - # --# From Oscar van Vlijmen (2003-10-18): [This region consists of] --# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj, --# [parts of] Respublika Sakha (Yakutiya). -+# ...and parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-09 **** Verkhoyansky District -+# 14-31 **** Ust-Yansky District - --# From Oscar van Vlijmen (2009-11-29): --# The Sakha districts are: Bulunskij, Verkhoyanskij, ... Ust'-Yanskij. --Zone Asia/Vladivostok 8:47:44 - LMT 1922 Nov 15 -+# Milne 1899 says Vladivostok was 8:47:33.5. -+# Byalokoz 1919 says Vladivostok was 8:47:31. -+# Go with Byalokoz. -+ -+Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15 - 9:00 - VLAT 1930 Jun 21 # Vladivostok Time -- 10:00 Russia VLA%sT 1991 Mar 31 2:00s -- 9:00 Russia VLA%sST 1992 Jan 19 2:00s -- 10:00 Russia VLA%sT 2011 Mar 27 2:00s -- 11:00 - VLAT -+ 10:00 Russia VLA%sT 1991 Mar 31 2:00s -+ 9:00 Russia VLA%sT 1992 Jan 19 2:00s -+ 10:00 Russia VLA%sT 2011 Mar 27 2:00s -+ 11:00 - VLAT 2014 Oct 26 2:00s -+ 10:00 - VLAT -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Khandyga covers parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-28 **** Tomponsky District -+# 14-30 **** Ust-Maysky District - - # From Arthur David Olson (2012-05-09): - # Tomponskij and Ust'-Majskij switched from Vladivostok time to Yakutsk time - # in 2011. --# -+ - # From Paul Eggert (2012-11-25): - # Shanks and Pottenger (2003) has Khandyga on Yakutsk time. - # Make a wild guess that it switched to Vladivostok time in 2004. - # This transition is no doubt wrong, but we have no better info. --# -+ - Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15 - 8:00 - YAKT 1930 Jun 21 # Yakutsk Time -- 9:00 Russia YAK%sT 1991 Mar 31 2:00s -- 8:00 Russia YAK%sT 1992 Jan 19 2:00s -+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s -+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s - 9:00 Russia YAK%sT 2004 -- 10:00 Russia VLA%sT 2011 Mar 27 2:00s -- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725? -- 10:00 - YAKT -+ 10:00 Russia VLA%sT 2011 Mar 27 2:00s -+ 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725? -+ 10:00 - YAKT 2014 Oct 26 2:00s -+ 9:00 - YAKT - --# --# Sakhalinskaya oblast'. --# The Zone name should be Yuzhno-Sakhalinsk, but that's too long. -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Sakhalin covers... -+# 65 RU-SAK Sakhalin Oblast -+# ...with the exception of: -+# 65-11 **** Severo-Kurilsky District (North Kuril Islands) -+ -+# The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long. - Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23 -- 9:00 - CJT 1938 -+ 9:00 - JCST 1937 Oct 1 - 9:00 - JST 1945 Aug 25 -- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T. -- 10:00 Russia SAK%sT 1992 Jan 19 2:00s -- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s -- 10:00 Russia SAK%sT 2011 Mar 27 2:00s -- 11:00 - SAKT --# --# From Oscar van Vlijmen (2003-10-18): [This region consists of] --# Magadanskaya oblast', Respublika Sakha (Yakutiya). --# Probably also: Kuril Islands. -+ 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T -+ 10:00 Russia SAK%sT 1992 Jan 19 2:00s -+ 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s -+ 10:00 Russia SAK%sT 2011 Mar 27 2:00s -+ 11:00 - SAKT 2014 Oct 26 2:00s -+ 10:00 - SAKT - --# From Oscar van Vlijmen (2009-11-29): --# The Sakha districts are: Abyjskij, Allaikhovskij, Verkhhhnekolymskij, Momskij, --# Nizhnekolymskij, ... Srednekolymskij. -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29): -+# Asia/Magadan covers... -+# 49 RU-MAG Magadan Oblast -+ -+# From Tim Parenti (2014-07-06), per Alexander Krivenyshev (2014-07-02): -+# Magadan Oblast is moving from UTC+12 to UTC+10 on 2014-10-26; however, -+# several districts of Sakha Republic as well as Severo-Kurilsky District of -+# the Sakhalin Oblast (also known as the North Kuril Islands), represented -+# until now by Asia/Magadan, will instead move to UTC+11. These regions will -+# need their own zone. -+ - Zone Asia/Magadan 10:03:12 - LMT 1924 May 2 - 10:00 - MAGT 1930 Jun 21 # Magadan Time -- 11:00 Russia MAG%sT 1991 Mar 31 2:00s -- 10:00 Russia MAG%sT 1992 Jan 19 2:00s -- 11:00 Russia MAG%sT 2011 Mar 27 2:00s -- 12:00 - MAGT -+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s -+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s -+ 11:00 Russia MAG%sT 2011 Mar 27 2:00s -+ 12:00 - MAGT 2014 Oct 26 2:00s -+ 10:00 - MAGT -+ -+ -+# From Tim Parenti (2014-07-06): -+# Asia/Srednekolymsk covers parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-01 **** Abyysky District -+# 14-03 **** Allaikhovsky District -+# 14-08 **** Verkhnekolymsky District -+# 14-17 **** Momsky District -+# 14-20 **** Nizhnekolymsky District -+# 14-25 **** Srednekolymsky District -+# -+# ...and parts of (65, RU-SAK) Sakhalin Oblast: -+# 65-11 **** Severo-Kurilsky District (North Kuril Islands) -+ -+# From Tim Parenti (2014-07-02): -+# Oymyakonsky District of Sakha Republic (represented by Ust-Nera), along with -+# most of Sakhalin Oblast (represented by Sakhalin) will be moving to UTC+10 on -+# 2014-10-26 to stay aligned with VLAT/SAKT; however, Severo-Kurilsky District -+# of the Sakhalin Oblast (also known as the North Kuril Islands, represented by -+# Severo-Kurilsk) will remain on UTC+11. -+ -+# From Tim Parenti (2014-07-06): -+# Assume North Kuril Islands have history like Magadan before 2011-03-27. -+# There is a decent chance this is wrong, in which case a new zone -+# Asia/Severo-Kurilsk would become necessary. -+# -+# Srednekolymsk and Zyryanka are the most populous places amongst these -+# districts, but have very similar populations. In fact, Wikipedia currently -+# lists them both as having 3528 people, exactly 1668 males and 1860 females -+# each! (Yikes!) -+# http://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276 -+# http://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493 -+# Assume this is a mistake, albeit an amusing one. -+# -+# Looking at censuses, the populations of the two municipalities seem to have -+# fluctuated recently. Zyryanka was more populous than Srednekolymsk in the -+# 1989 and 2002 censuses, but Srednekolymsk was more populous in the most -+# recent (2010) census, 3525 to 3170. (See pages 195 and 197 of -+# http://www.gks.ru/free_doc/new_site/perepis2010/croc/Documents/Vol1/pub-01-05.pdf -+# in Russian.) In addition, Srednekolymsk appears to be a much older -+# settlement and the population of Zyryanka seems to be declining. -+# Go with Srednekolymsk. -+# -+# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT -+# as the abbreviation. Use SRET instead. -+ -+Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2 -+ 10:00 - MAGT 1930 Jun 21 # Magadan Time -+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s -+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s -+ 11:00 Russia MAG%sT 2011 Mar 27 2:00s -+ 12:00 - MAGT 2014 Oct 26 2:00s -+ 11:00 - SRET # Srednekolymsk Time -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Ust-Nera covers parts of (14, RU-SA) Sakha (Yakutia) Republic: -+# 14-22 **** Oymyakonsky District - - # From Arthur David Olson (2012-05-09): --# Ojmyakonskij and the Kuril Islands switched from -+# Ojmyakonskij [and the Kuril Islands] switched from - # Magadan time to Vladivostok time in 2011. -+# -+# From Tim Parenti (2014-07-06), per Alexander Krivenyshev (2014-07-02): -+# It's unlikely that any of the Kuril Islands were involved in such a switch, -+# as the South and Middle Kurils have been on UTC+11 (SAKT) with the rest of -+# Sakhalin Oblast since at least 2011-09, and the North Kurils have been on -+# UTC+12 since at least then, too. -+ - Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15 - 8:00 - YAKT 1930 Jun 21 # Yakutsk Time - 9:00 Russia YAKT 1981 Apr 1 -- 11:00 Russia MAG%sT 1991 Mar 31 2:00s -- 10:00 Russia MAG%sT 1992 Jan 19 2:00s -- 11:00 Russia MAG%sT 2011 Mar 27 2:00s -- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725? -- 11:00 - VLAT -+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s -+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s -+ 11:00 Russia MAG%sT 2011 Mar 27 2:00s -+ 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725? -+ 11:00 - VLAT 2014 Oct 26 2:00s -+ 10:00 - VLAT - --# From Oscar van Vlijmen (2001-08-25): [This region consists of] --# Kamchatskaya oblast', Koryakskij avtonomnyj okrug. -+ -+# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25): -+# Asia/Kamchatka covers... -+# 91 RU-KAM Kamchatka Krai - # --# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long. -+# Note: Effective 2007-07-01, (41) Kamchatka Oblast and (82) Koryak -+# Autonomous Okrug merged to form (91, RU-KAM) Kamchatka Krai. -+ -+# The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps -+# Asia/Petropavlovsk-Kamchatsky, but these are too long. - Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10 - 11:00 - PETT 1930 Jun 21 # P-K Time -- 12:00 Russia PET%sT 1991 Mar 31 2:00s -- 11:00 Russia PET%sT 1992 Jan 19 2:00s -- 12:00 Russia PET%sT 2010 Mar 28 2:00s -- 11:00 Russia PET%sT 2011 Mar 27 2:00s -+ 12:00 Russia PET%sT 1991 Mar 31 2:00s -+ 11:00 Russia PET%sT 1992 Jan 19 2:00s -+ 12:00 Russia PET%sT 2010 Mar 28 2:00s -+ 11:00 Russia PET%sT 2011 Mar 27 2:00s - 12:00 - PETT --# --# Chukotskij avtonomnyj okrug -+ -+ -+# From Tim Parenti (2014-07-03): -+# Asia/Anadyr covers... -+# 87 RU-CHU Chukotka Autonomous Okrug -+ - Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2 - 12:00 - ANAT 1930 Jun 21 # Anadyr Time -- 13:00 Russia ANA%sT 1982 Apr 1 0:00s -- 12:00 Russia ANA%sT 1991 Mar 31 2:00s -- 11:00 Russia ANA%sT 1992 Jan 19 2:00s -- 12:00 Russia ANA%sT 2010 Mar 28 2:00s -- 11:00 Russia ANA%sT 2011 Mar 27 2:00s -+ 13:00 Russia ANA%sT 1982 Apr 1 0:00s -+ 12:00 Russia ANA%sT 1991 Mar 31 2:00s -+ 11:00 Russia ANA%sT 1992 Jan 19 2:00s -+ 12:00 Russia ANA%sT 2010 Mar 28 2:00s -+ 11:00 Russia ANA%sT 2011 Mar 27 2:00s - 12:00 - ANAT - -+ - # San Marino - # See Europe/Rome. - -@@ -2488,11 +2862,11 @@ - Zone Europe/Belgrade 1:22:00 - LMT 1884 - 1:00 - CET 1941 Apr 18 23:00 - 1:00 C-Eur CE%sT 1945 -- 1:00 - CET 1945 May 8 2:00s -+ 1:00 - CET 1945 May 8 2:00s - 1:00 1:00 CEST 1945 Sep 16 2:00s --# Metod Kozelj reports that the legal date of -+# Metod Koželj reports that the legal date of - # transition to EU rules was 1982-11-27, for all of Yugoslavia at the time. --# Shanks & Pottenger don't give as much detail, so go with Kozelj. -+# Shanks & Pottenger don't give as much detail, so go with Koželj. - 1:00 - CET 1982 Nov 27 - 1:00 EU CE%sT - Link Europe/Belgrade Europe/Ljubljana # Slovenia -@@ -2568,13 +2942,13 @@ - 0:00 1:00 WEST 1918 Oct 7 23:00 - 0:00 - WET 1924 - 0:00 Spain WE%sT 1929 -- 0:00 SpainAfrica WE%sT 1984 Mar 16 -+ 0:00 SpainAfrica WE%sT 1984 Mar 16 - 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 Time -- 0:00 - WET 1980 Apr 6 0:00s -- 0:00 1:00 WEST 1980 Sep 28 0:00s -+ -1:00 - CANT 1946 Sep 30 1:00 # Canaries T -+ 0:00 - WET 1980 Apr 6 0:00s -+ 0:00 1:00 WEST 1980 Sep 28 0:00s - 0:00 EU WE%sT - # IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u. - # Ignore this for now, as the Canaries are part of the EU. -@@ -2583,7 +2957,7 @@ - - # From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger: - # --# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879: -+# The law "Svensk författningssamling 1878, no 14" about standard time in 1879: - # From the beginning of 1879 (that is 01-01 00:00) the time for all - # places in the country is "the mean solar time for the meridian at - # three degrees, or twelve minutes of time, to the west of the -@@ -2594,7 +2968,7 @@ - # national standard time as 01:00:14 ahead of GMT.... - # - # About the beginning of CET in Sweden. The lawtext ("Svensk --# forfattningssamling 1899, no 44") states, that "from the beginning -+# författningssamling 1899, no 44") states, that "from the beginning - # of 1900... ... the same as the mean solar time for the meridian at - # the distance of one hour of time from the meridian of the English - # observatory at Greenwich, or at 12 minutes 14 seconds to the west -@@ -2602,7 +2976,7 @@ - # 1899-06-16. In short: At 1900-01-01 00:00:00 the new standard time - # in Sweden is 01:00:00 ahead of GMT. - # --# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states -+# 1916: The lawtext ("Svensk författningssamling 1916, no 124") states - # that "1916-05-15 is considered to begin one hour earlier". It is - # pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00.... - # Further the law says, that "1916-09-30 is considered to end one hour later". -@@ -2612,7 +2986,7 @@ - # not available on the site (to my knowledge they are only available - # in Swedish): <http://www.riksdagen.se/english/work/sfst.asp> (type - # "sommartid" without the quotes in the field "Fritext" and then click --# the Sok-button). -+# the Sök-button). - # - # (2001-05-13): - # -@@ -2627,9 +3001,9 @@ - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1 -- 1:00:14 - SET 1900 Jan 1 # Swedish Time -+ 1:00:14 - SET 1900 Jan 1 # Swedish Time - 1:00 - CET 1916 May 14 23:00 -- 1:00 1:00 CEST 1916 Oct 1 01:00 -+ 1:00 1:00 CEST 1916 Oct 1 1:00 - 1:00 - CET 1980 - 1:00 EU CE%sT - -@@ -2637,7 +3011,7 @@ - # From Howse: - # By the end of the 18th century clocks and watches became commonplace - # and their performance improved enormously. Communities began to keep --# mean time in preference to apparent time -- Geneva from 1780 .... -+# mean time in preference to apparent time - Geneva from 1780 .... - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - # From Whitman (who writes "Midnight?"): - # Rule Swiss 1940 only - Nov 2 0:00 1:00 S -@@ -2653,7 +3027,7 @@ - # to be wrong. This is now verified. - # - # I have found copies of the original ruling by the Swiss Federal --# government, in 'Eidgen[o]ssische Gesetzessammlung 1941 and 1942' (Swiss -+# government, in 'Eidgenössische Gesetzessammlung 1941 and 1942' (Swiss - # federal law collection)... - # - # DST began on Monday 5 May 1941, 1:00 am by shifting the clocks to 2:00 am -@@ -2672,7 +3046,7 @@ - # night as an absolute novelty, because this was the first time that such - # a thing had happened in Switzerland. - # --# I have also checked 1916, because one book source (Gabriel, Traite de -+# I have also checked 1916, because one book source (Gabriel, Traité de - # l'heure dans le monde) claims that Switzerland had DST in 1916. This is - # false, no official document could be found. Probably Gabriel got misled - # by references to Germany, which introduced DST in 1916 for the first time. -@@ -2686,19 +3060,19 @@ - # One further detail for Switzerland, which is probably out of scope for - # most users of tzdata: The [Europe/Zurich zone] ... - # describes all of Switzerland correctly, with the exception of --# the Cantone Geneve (Geneva, Genf). Between 1848 and 1894 Geneve did not -+# the Canton de Genève (Geneva, Genf). Between 1848 and 1894 Geneva did not - # follow Bern Mean Time but kept its own local mean time. - # To represent this, an extra zone would be needed. - # - # From Alois Treindl (2013-09-11): - # The Federal regulations say - # http://www.admin.ch/opc/de/classified-compilation/20071096/index.html --# ... the meridian for Bern mean time ... is 7 degrees 26'22.50". -+# ... the meridian for Bern mean time ... is 7 degrees 26' 22.50". - # Expressed in time, it is 0h29m45.5s. - - # From Pierre-Yves Berger (2013-09-11): --# the "Circulaire du conseil federal" (December 11 1893) --# <http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353> ... -+# the "Circulaire du conseil fédéral" (December 11 1893) -+# http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353 - # clearly states that the [1894-06-01] change should be done at midnight - # but if no one is present after 11 at night, could be postponed until one - # hour before the beginning of service. -@@ -2709,14 +3083,14 @@ - # We can find no reliable source for Shanks's assertion that all of Switzerland - # except Geneva switched to Bern Mean Time at 00:00 on 1848-09-12. This book: - # --# Jakob Messerli. Gleichmassig, punktlich, schnell: Zeiteinteilung und -+# Jakob Messerli. Gleichmässig, pünktlich, schnell. Zeiteinteilung und - # Zeitgebrauch in der Schweiz im 19. Jahrhundert. Chronos, Zurich 1995, - # ISBN 3-905311-68-2, OCLC 717570797. - # - # suggests that the transition was more gradual, and that the Swiss did not - # agree about civil time during the transition. The timekeeping it gives the - # most detail for is postal and telegraph time: here, federal legislation (the --# "Bundesgesetz uber die Erstellung von elektrischen Telegraphen") passed on -+# "Bundesgesetz über die Erstellung von elektrischen Telegraphen") passed on - # 1851-11-23, and an official implementation notice was published 1853-07-16 - # (Bundesblatt 1853, Bd. II, S. 859). On p 72 Messerli writes that in - # practice since July 1853 Bernese time was used in "all postal and telegraph -@@ -2730,7 +3104,7 @@ - Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See above comment. -- 0:29:46 - BMT 1894 Jun # Bern Mean Time -+ 0:29:46 - BMT 1894 Jun # Bern Mean Time - 1:00 Swiss CE%sT 1981 - 1:00 EU CE%sT - -@@ -2738,7 +3112,7 @@ - - # From Amar Devegowda (2007-01-03): - # The time zone rules for Istanbul, Turkey have not been changed for years now. --# ... The latest rules are available at - -+# ... The latest rules are available at: - # http://www.timeanddate.com/worldclock/timezone.html?n=107 - # From Steffen Thorsen (2007-01-03): - # I have been able to find press records back to 1996 which all say that -@@ -2763,8 +3137,7 @@ - # (on a non-government server though) describing dates between 2002 and 2006: - # http://www.alomaliye.com/bkk_2002_3769.htm - --# From Gökdeniz Karadağ (2011-03-10): --# -+# From Gökdeniz Karadağ (2011-03-10): - # According to the articles linked below, Turkey will change into summer - # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27. - # This change is due to a nationwide exam on 27th. -@@ -2777,9 +3150,16 @@ - # Turkish Local election.... - # http://www.sabah.com.tr/Ekonomi/2014/02/12/yaz-saatinde-onemli-degisiklik - # ... so Turkey will move clocks forward one hour on March 31 at 3:00 a.m. --# From Paul Eggert (2014-02-17): --# Here is an English-language source: --# http://www.worldbulletin.net/turkey/129016/turkey-switches-to-daylight-saving-time-march-31 -+# From Randal L. Schwartz (2014-04-15): -+# Having landed on a flight from the states to Istanbul (via AMS) on March 31, -+# I can tell you that NOBODY (even the airlines) respected this timezone DST -+# change delay. Maybe the word just didn't get out in time. -+# From Paul Eggert (2014-06-15): -+# The press reported massive confusion, as election officials obeyed the rule -+# change but cell phones (and airline baggage systems) did not. See: -+# Kostidis M. Eventful elections in Turkey. Balkan News Agency -+# http://www.balkaneu.com/eventful-elections-turkey/ 2014-03-30. -+# I guess the best we can do is document the official time. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Turkey 1916 only - May 1 0:00 1:00 S -@@ -2846,10 +3226,10 @@ - 2:00 Turkey EE%sT 1978 Oct 15 - 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time - 2:00 Turkey EE%sT 2007 -- 2:00 EU EE%sT 2011 Mar 27 1:00u -- 2:00 - EET 2011 Mar 28 1:00u -- 2:00 EU EE%sT 2014 Mar 30 1:00u -- 2:00 - EET 2014 Mar 31 1:00u -+ 2:00 EU EE%sT 2011 Mar 27 1:00u -+ 2:00 - EET 2011 Mar 28 1:00u -+ 2:00 EU EE%sT 2014 Mar 30 1:00u -+ 2:00 - EET 2014 Mar 31 1:00u - 2:00 EU EE%sT - Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents. - -@@ -2870,7 +3250,7 @@ - # Bill number 8330 of MP from the Party of Regions Oleg Nadoshi got - # approval from 266 deputies. - # --# Ukraine abolishes transter back to the winter time (in Russian) -+# Ukraine abolishes transfer back to the winter time (in Russian) - # http://news.mail.ru/politics/6861560/ - # - # The Ukrainians will no longer change the clock (in Russian) -@@ -2931,12 +3311,12 @@ - 2:00 - EET 1930 Jun 21 - 3:00 - MSK 1941 Sep 20 - 1:00 C-Eur CE%sT 1943 Nov 6 -- 3:00 Russia MSK/MSD 1990 Jul 1 2:00 -- 2:00 1:00 EEST 1991 Sep 29 3:00 -+ 3:00 Russia MSK/MSD 1990 Jul 1 2:00 -+ 2:00 1:00 EEST 1991 Sep 29 3:00 - 2:00 E-Eur EE%sT 1995 - 2:00 EU EE%sT - # Ruthenia used CET 1990/1991. --# "Uzhhorod" is the transliteration of the Ukrainian name, but -+# "Uzhhorod" is the transliteration of the Rusyn/Ukrainian pronunciation, but - # "Uzhgorod" is more common in English. - Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct - 1:00 - CET 1940 -@@ -2944,8 +3324,8 @@ - 1:00 1:00 CEST 1944 Oct 26 - 1:00 - CET 1945 Jun 29 - 3:00 Russia MSK/MSD 1990 -- 3:00 - MSK 1990 Jul 1 2:00 -- 1:00 - CET 1991 Mar 31 3:00 -+ 3:00 - MSK 1990 Jul 1 2:00 -+ 1:00 - CET 1991 Mar 31 3:00 - 2:00 - EET 1992 - 2:00 E-Eur EE%sT 1995 - 2:00 EU EE%sT -@@ -2959,42 +3339,9 @@ - 2:00 - EET 1930 Jun 21 - 3:00 - MSK 1941 Aug 25 - 1:00 C-Eur CE%sT 1943 Oct 25 -- 3:00 Russia MSK/MSD 1991 Mar 31 2:00 -+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00 - 2:00 E-Eur EE%sT 1995 - 2:00 EU EE%sT --# Central Crimea used Moscow time 1994/1997. --Zone Europe/Simferopol 2:16:24 - LMT 1880 -- 2:16 - SMT 1924 May 2 # Simferopol Mean T -- 2:00 - EET 1930 Jun 21 -- 3:00 - MSK 1941 Nov -- 1:00 C-Eur CE%sT 1944 Apr 13 -- 3:00 Russia MSK/MSD 1990 -- 3:00 - MSK 1990 Jul 1 2:00 -- 2:00 - EET 1992 --# From Paul Eggert (2006-03-22): --# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched --# from Kiev to Moscow time sometime after the January 1994 elections. --# Shanks (1999) says "date of change uncertain", but implies that it happened --# sometime between the 1994 DST switches. Shanks & Pottenger simply say --# 1994-09-25 03:00, but that can't be right. For now, guess it --# changed in May. -- 2:00 E-Eur EE%sT 1994 May --# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev. -- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s -- 3:00 1:00 MSD 1996 Oct 27 3:00s --# IATA SSIM (1997-09) says Crimea switched to EET/EEST. --# Assume it happened in March by not changing the clocks. -- 3:00 Russia MSK/MSD 1997 -- 3:00 - MSK 1997 Mar lastSun 1:00u --# From Alexander Krivenyshev (2014-03-17): --# time change at 2:00 (2am) on March 30, 2014 --# http://vz.ru/news/2014/3/17/677464.html --# From Paul Eggert (2014-03-30): --# Simferopol and Sevastopol reportedly changed their central town clocks --# late the previous day, but this appears to have been ceremonial --# and the discrepancies are small enough to not worry about. -- 2:00 EU EE%sT 2014 Mar 30 2:00 -- 4:00 - MSK - - # Vatican City - # See Europe/Rome. -@@ -3018,7 +3365,7 @@ - # ... - # - # ...the European time rules are...standardized since 1981, when --# most European coun[tr]ies started DST. Before that year, only -+# most European countries started DST. Before that year, only - # a few countries (UK, France, Italy) had DST, each according - # to own national rules. In 1981, however, DST started on - # 'Apr firstSun', and not on 'Mar lastSun' as in the following -@@ -3026,7 +3373,7 @@ - # But also since 1981 there are some more national exceptions - # than listed in 'europe': Switzerland, for example, joined DST - # one year later, Denmark ended DST on 'Oct 1' instead of 'Sep --# lastSun' in 1981---I don't know how they handle now. -+# lastSun' in 1981 - I don't know how they handle now. - # - # Finally, DST ist always from 'Apr 1' to 'Oct 1' in the - # Soviet Union (as far as I know). ---- ./jdk/test/sun/util/calendar/zi/tzdata/factory Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/factory Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - ---- ./jdk/test/sun/util/calendar/zi/tzdata/iso3166.tab Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/iso3166.tab Mon Dec 08 12:29:42 2014 -0800 -@@ -26,21 +26,21 @@ - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - # --# From Paul Eggert (2013-05-27): -+# From Paul Eggert (2014-07-18): -+# This file contains a table of two-letter country codes. Columns are -+# separated by a single tab. Lines beginning with '#' are comments. -+# Although all text currently uses ASCII encoding, this is planned to -+# change to UTF-8 soon. The columns of the table are as follows: - # --# This file contains a table with the following columns: - # 1. ISO 3166-1 alpha-2 country code, current as of --# ISO 3166-1 Newsletter VI-15 (2013-05-10). See: Updates on ISO 3166 -+# ISO 3166-1 Newsletter VI-16 (2013-07-11). See: Updates on ISO 3166 - # http://www.iso.org/iso/home/standards/country_codes/updates_on_iso_3166.htm - # 2. The usual English name for the coded region, - # chosen so that alphabetic sorting of subsets produces helpful lists. - # This is not the same as the English name in the ISO 3166 tables. - # --# Columns are separated by a single tab. - # The table is sorted by country code. - # --# Lines beginning with `#' are comments. --# - # This table is intended as an aid for users, to help them select time - # zone data appropriate for their practical needs. It is not intended - # to take or endorse any position on legal or territorial claims. ---- ./jdk/test/sun/util/calendar/zi/tzdata/leapseconds Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/leapseconds Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,7 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# Allowance for leapseconds added to each timezone file. -+# Allowance for leap seconds added to each time zone file. - - # This file is in the public domain. - -@@ -31,10 +31,10 @@ - # you should be able to pick up leap-seconds.list from a secondary NIST server. - # For more about leap-seconds.list, please see - # The NTP Timescale and Leap Seconds --# <http://www.eecis.udel.edu/~mills/leap.html>. -+# http://www.eecis.udel.edu/~mills/leap.html - --# The International Earth Rotation Service periodically uses leap seconds --# to keep UTC to within 0.9 s of UT1 -+# The International Earth Rotation and Reference Systems Service -+# periodically uses leap seconds to keep UTC to within 0.9 s of UT1 - # (which measures the true angular orientation of the earth in space); see - # Terry J Quinn, The BIPM and the accurate measure of time, - # Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>. ---- ./jdk/test/sun/util/calendar/zi/tzdata/northamerica Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/northamerica Mon Dec 08 12:29:42 2014 -0800 -@@ -21,15 +21,15 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - - # also includes Central America and the Caribbean - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - - # From Paul Eggert (1999-03-22): - # A reliable and entertaining source about time zones is -@@ -78,13 +78,13 @@ - # to push people into bed earlier, and get them up earlier, to make - # them healthy, wealthy and wise in spite of themselves. - # --# -- Robertson Davies, The diary of Samuel Marchbanks, -+# -- Robertson Davies, The diary of Samuel Marchbanks, - # Clarke, Irwin (1947), XIX, Sunday - # - # For more about the first ten years of DST in the United States, see --# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html"> --# Ten years of daylight saving from the Pittsburgh standpoint --# (Carnegie Library of Pittsburgh, 1927)</a>. -+# Robert Garland, Ten years of daylight saving from the Pittsburgh standpoint -+# (Carnegie Library of Pittsburgh, 1927). -+# http://www.clpgh.org/exhibit/dst.html - # - # Shanks says that DST was called "War Time" in the US in 1918 and 1919. - # However, DST was imposed by the Standard Time Act of 1918, which -@@ -103,11 +103,11 @@ - # From Arthur David Olson (2000-09-25): - # Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama. - # In the introduction, Oboler spoke of "Eastern Peace Time." --# An AltaVista search turned up --# <a href="http://rowayton.org/rhs/hstaug45.html">: -+# An AltaVista search turned up: -+# http://rowayton.org/rhs/hstaug45.html - # "When the time is announced over the radio now, it is 'Eastern Peace - # Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful." --# </a> (August 1945) by way of confirmation. -+# (August 1945) by way of confirmation. - - # From Joseph Gallant citing - # George H. Douglas, _The Early Days of Radio Broadcasting_ (1987): -@@ -205,7 +205,7 @@ - # USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST) - # USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT) - # USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W --# USA - " - 9 H BEHIND UTC APR 3 - OCT 30 -+# USA " 9 H BEHIND UTC APR 3 - OCT 30 - # USA HAWAII 10 H BEHIND UTC - # USA BERING 11 H BEHIND UTC SAMOA, MIDWAY - -@@ -258,19 +258,19 @@ - # The following was signed into law on 2005-08-08. - # - # H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS. --# (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15 -+# (a) Amendment.--Section 3(a) of the Uniform Time Act of 1966 (15 - # U.S.C. 260a(a)) is amended-- --# (1) by striking 'first Sunday of April' and inserting 'second --# Sunday of March'; and --# (2) by striking 'last Sunday of October' and inserting 'first -+# (1) by striking "first Sunday of April" and inserting "second -+# Sunday of March"; and -+# (2) by striking "last Sunday of October" and inserting "first - # Sunday of November'. --# (b) Effective Date- Subsection (a) shall take effect 1 year after the -+# (b) Effective Date.--Subsection (a) shall take effect 1 year after the - # date of enactment of this Act or March 1, 2007, whichever is later. --# (c) Report to Congress- Not later than 9 months after the effective -+# (c) Report to Congress.--Not later than 9 months after the effective - # date stated in subsection (b), the Secretary shall report to Congress - # on the impact of this section on energy consumption in the United - # States. --# (d) Right to Revert- Congress retains the right to revert the -+# (d) Right to Revert.--Congress retains the right to revert the - # Daylight Saving Time back to the 2005 time schedules once the - # Department study is complete. - -@@ -292,7 +292,7 @@ - - # From Paul Eggert (2005-08-26): - # According to today's Huntsville Times --# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1> -+# http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1 - # a few towns on Alabama's "eastern border with Georgia, such as Phenix City - # in Russell County, Lanett in Chambers County and some towns in Lee County, - # set their watches and clocks on Eastern time." It quotes H.H. "Bubba" -@@ -300,6 +300,12 @@ - # time zone, but we do go by the Eastern time zone because so many people work - # in Columbus." - -+# From Paul Eggert (2014-09-06): -+# Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208 -+# says that New York City Hall time was 3 minutes 58.4 seconds fast of -+# Eastern time (i.e., -4:56:01.6) just before the 1883 switch. Round to the -+# nearest second. -+ - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER - Rule NYC 1920 only - Mar lastSun 2:00 1:00 D - Rule NYC 1920 only - Oct lastSun 2:00 0 S -@@ -347,15 +353,15 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24 - -6:00 US C%sT 1920 -- -6:00 Chicago C%sT 1936 Mar 1 2:00 -- -5:00 - EST 1936 Nov 15 2:00 -+ -6:00 Chicago C%sT 1936 Mar 1 2:00 -+ -5:00 - EST 1936 Nov 15 2:00 - -6:00 Chicago C%sT 1942 - -6:00 US C%sT 1946 - -6:00 Chicago C%sT 1967 - -6:00 US C%sT - # Oliver County, ND switched from mountain to central time on 1992-10-25. - Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48 -- -7:00 US M%sT 1992 Oct 25 02:00 -+ -7:00 US M%sT 1992 Oct 25 2:00 - -6:00 US C%sT - # Morton County, ND, switched from mountain to central time on - # 2003-10-26, except for the area around Mandan which was already central time. -@@ -364,29 +370,26 @@ - # Jones, Mellette, and Todd Counties in South Dakota; - # but in practice these other counties were already observing central time. - # See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>. --Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21 -- -7:00 US M%sT 2003 Oct 26 02:00 -+Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21 -+ -7:00 US M%sT 2003 Oct 26 2:00 - -6:00 US C%sT - - # From Josh Findley (2011-01-21): - # ...it appears that Mercer County, North Dakota, changed from the - # mountain time zone to the central time zone at the last transition from - # daylight-saving to standard time (on Nov. 7, 2010): --# <a href="http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm"> - # http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm --# </a> --# <a href="http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html"> - # http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html --# </a> - - # From Andy Lipscomb (2011-01-24): - # ...according to the Census Bureau, the largest city is Beulah (although - # it's commonly referred to as Beulah-Hazen, with Hazen being the next - # largest city in Mercer County). Google Maps places Beulah's city hall --# at 4715'51" north, 10146'40" west, which yields an offset of 6h47'07". -+# at 47 degrees 15' 51" N, 101 degrees 46' 40" W, which yields an offset -+# of 6h47'07". - --Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53 -- -7:00 US M%sT 2010 Nov 7 2:00 -+Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53 -+ -7:00 US M%sT 2010 Nov 7 2:00 - -6:00 US C%sT - - # US mountain time, represented by Denver -@@ -448,15 +451,18 @@ - # was destroyed in 1805 by a Yakutat-kon war party.) However, there - # were nearby inhabitants in some cases and for our purposes perhaps - # it's best to simply use the official transition. -+ -+# From Paul Eggert (2014-07-18): -+# One opinion of the early-1980s turmoil in Alaska over time zones and -+# daylight saving time appeared as graffiti on a Juneau airport wall: -+# "Welcome to Juneau. Please turn your watch back to the 19th century." -+# See: Turner W. Alaska's four time zones now two. NY Times 1983-11-01. -+# http://www.nytimes.com/1983/11/01/us/alaska-s-four-time-zones-now-two.html - # -- --# From Steve Ferguson (2011-01-31): --# The author lives in Alaska and many of the references listed are only --# available to Alaskan residents. --# --# <a href="http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98"> --# http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98 --# </a> -+# Steve Ferguson (2011-01-31) referred to the following source: -+# Norris F. Keeping time in Alaska: national directives, local response. -+# Alaska History 2001;16(1-2). -+# http://alaskahistoricalsociety.org/discover-alaska/glimpses-of-the-past/keeping-time-in-alaska/ - - # From Arthur David Olson (2011-02-01): - # Here's database-relevant material from the 2001 "Alaska History" article: -@@ -482,12 +488,10 @@ - # From Arthur David Olson (2011-02-09): - # I just spoke by phone with a staff member at the Metlakatla Indian - # Community office (using contact information available at --# <a href="http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla"> - # http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla --# </a>). - # It's shortly after 1:00 here on the east coast of the United States; - # the staffer said it was shortly after 10:00 there. When I asked whether --# that meant they were on Pacific time, they said no--they were on their -+# that meant they were on Pacific time, they said no - they were on their - # own time. I asked about daylight saving; they said it wasn't used. I - # did not inquire about practices in the past. - -@@ -501,9 +505,9 @@ - -8:00 - PST 1942 - -8:00 US P%sT 1946 - -8:00 - PST 1969 -- -8:00 US P%sT 1980 Apr 27 2:00 -- -9:00 US Y%sT 1980 Oct 26 2:00 -- -8:00 US P%sT 1983 Oct 30 2:00 -+ -8:00 US P%sT 1980 Apr 27 2:00 -+ -9:00 US Y%sT 1980 Oct 26 2:00 -+ -8:00 US P%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Sitka 14:58:47 - LMT 1867 Oct 18 -@@ -511,7 +515,7 @@ - -8:00 - PST 1942 - -8:00 US P%sT 1946 - -8:00 - PST 1969 -- -8:00 US P%sT 1983 Oct 30 2:00 -+ -8:00 US P%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 18 -@@ -519,8 +523,8 @@ - -8:00 - PST 1942 - -8:00 US P%sT 1946 - -8:00 - PST 1969 -- -8:00 US P%sT 1983 Oct 30 2:00 -- -8:00 - MeST -+ -8:00 US P%sT 1983 Oct 30 2:00 -+ -8:00 - PST - Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18 - -9:18:55 - LMT 1900 Aug 20 12:00 - -9:00 - YST 1942 -@@ -535,7 +539,7 @@ - -10:00 US CAT/CAPT 1946 # Peace - -10:00 - CAT 1967 Apr - -10:00 - AHST 1969 -- -10:00 US AH%sT 1983 Oct 30 2:00 -+ -10:00 US AH%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Nome 12:58:21 - LMT 1867 Oct 18 -@@ -544,7 +548,7 @@ - -11:00 US N%sT 1946 - -11:00 - NST 1967 Apr - -11:00 - BST 1969 -- -11:00 US B%sT 1983 Oct 30 2:00 -+ -11:00 US B%sT 1983 Oct 30 2:00 - -9:00 US Y%sT 1983 Nov 30 - -9:00 US AK%sT - Zone America/Adak 12:13:21 - LMT 1867 Oct 18 -@@ -553,7 +557,7 @@ - -11:00 US N%sT 1946 - -11:00 - NST 1967 Apr - -11:00 - BST 1969 -- -11:00 US B%sT 1983 Oct 30 2:00 -+ -11:00 US B%sT 1983 Oct 30 2:00 - -10:00 US AH%sT 1983 Nov 30 - -10:00 US HA%sT - # The following switches don't quite make our 1970 cutoff. -@@ -571,7 +575,7 @@ - # Minutes of the Unalaska City Council Meeting, January 10, 1967: - # "Except for St. Paul and Akutan, Unalaska is the only important - # location not on Alaska Standard Time. The following resolution was --# made by William Robinson and seconded by Henry Swanson: Be it -+# made by William Robinson and seconded by Henry Swanson: Be it - # resolved that the City of Unalaska hereby goes to Alaska Standard - # Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday, - # January 14, Alaska Standard Time.) This resolution was passed with -@@ -583,9 +587,7 @@ - # "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225 - # of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09, - # the article is available at --# <a href="http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf"> - # http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf --# </a> - # and indicates that standard time was adopted effective noon, January - # 13, 1896 (page 218), that in "1933, the Legislature decreed daylight - # saving for the period between the last Sunday of each April and the -@@ -606,7 +608,7 @@ - # year, the standard time of this Territory shall be advanced one - # hour...This Act shall take effect upon its approval. Approved this 26th - # day of April, A. D. 1933. LAWRENCE M JUDD, Governor of the Territory of --# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is -+# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is - # hereby repealed...This Act shall take effect upon its approval, upon - # which date the standard time of this Territory shall be restored to - # that existing immediately prior to the taking effect of said Act 90. -@@ -616,14 +618,14 @@ - # Note that 1933-05-21 was a Sunday. - # We're left to guess the time of day when Act 163 was approved; guess noon. - --Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 #Schmitt&Cox -- -10:30 - HST 1933 Apr 30 2:00 #Laws 1933 -- -10:30 1:00 HDT 1933 May 21 12:00 #Laws 1933+12 -- -10:30 - HST 1942 Feb 09 2:00 #Schmitt&Cox+2 -- -10:30 1:00 HDT 1945 Sep 30 2:00 #Schmitt&Cox+2 -- -10:30 - HST 1947 Jun 8 2:00 #Schmitt&Cox+2 -+# Zone NAME GMTOFF RULES FORMAT [UNTIL] -+Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 -+ -10:30 - HST 1933 Apr 30 2:00 -+ -10:30 1:00 HDT 1933 May 21 12:00 -+ -10:30 - HST 1942 Feb 9 2: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. -@@ -633,9 +635,9 @@ - # From Paul Eggert (2002-10-20): - # - # The information in the rest of this paragraph is derived from the --# <a href="http://www.dlapr.lib.az.us/links/daylight.htm"> --# Daylight Saving Time web page (2002-01-23)</a> maintained by the --# Arizona State Library, Archives and Public Records. -+# Daylight Saving Time web page -+# <http://www.dlapr.lib.az.us/links/daylight.htm> (2002-01-23) -+# maintained by the Arizona State Library, Archives and Public Records. - # Between 1944-01-01 and 1944-04-01 the State of Arizona used standard - # time, but by federal law railroads, airlines, bus lines, military - # personnel, and some engaged in interstate commerce continued to -@@ -649,10 +651,11 @@ - # Shanks says the 1944 experiment came to an end on 1944-03-17. - # Go with the Arizona State Library instead. - -+# Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42 -- -7:00 US M%sT 1944 Jan 1 00:01 -- -7:00 - MST 1944 Apr 1 00:01 -- -7:00 US M%sT 1944 Oct 1 00:01 -+ -7:00 US M%sT 1944 Jan 1 0:01 -+ -7:00 - MST 1944 Apr 1 0:01 -+ -7:00 US M%sT 1944 Oct 1 0:01 - -7:00 - MST 1967 - -7:00 US M%sT 1968 Mar 21 - -7:00 - MST -@@ -676,24 +679,22 @@ - # - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11 -- -8:00 US P%sT 1923 May 13 2:00 -+ -8:00 US P%sT 1923 May 13 2:00 - -7:00 US M%sT 1974 -- -7:00 - MST 1974 Feb 3 2:00 -+ -7:00 - MST 1974 Feb 3 2:00 - -7:00 US M%sT - - # Indiana - # - # For a map of Indiana's time zone regions, see: --# <a href="http://www.mccsc.edu/time.html"> --# What time is it in Indiana? --# </a> (2006-03-01) -+# http://en.wikipedia.org/wiki/Time_in_Indiana - # - # From Paul Eggert (2007-08-17): - # Since 1970, most of Indiana has been like America/Indiana/Indianapolis, - # with the following exceptions: - # - # - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer, --# Vandenburgh, and Warrick counties have been like America/Chicago. -+# Vanderburgh, and Warrick counties have been like America/Chicago. - # - # - Dearborn and Ohio counties have been like America/New_York. - # -@@ -712,22 +713,16 @@ - # that they would be ambiguous if we left them at the 'America' level. - # So we reluctantly put them all in a subdirectory 'America/Indiana'. - --# From Paul Eggert (2005-08-16): --# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006. -- --# From Nathan Stratton Treadway (2006-03-30): --# http://www.dot.gov/affairs/dot0406.htm [3705 B] --# From Deborah Goldsmith (2006-01-18): --# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB] --# From Paul Eggert (2006-01-20): --# It says "DOT is relocating the time zone boundary in Indiana to move Starke, -+# From Paul Eggert (2014-06-26): -+# https://www.federalregister.gov/articles/2006/01/20/06-563/standard-time-zone-boundary-in-the-state-of-indiana -+# says "DOT is relocating the time zone boundary in Indiana to move Starke, - # Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the - # Eastern Time Zone to the Central Time Zone.... The effective date of --# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the -+# this rule is 2 a.m. EST Sunday, April 2, 2006, which is the - # changeover date from standard time to Daylight Saving Time." --# Strictly speaking, this means the affected counties will change their --# clocks twice that night, but this obviously is in error. The intent --# is that 01:59:59 EST be followed by 02:00:00 CDT. -+# Strictly speaking, this meant the affected counties changed their -+# clocks twice that night, but this obviously was in error. The intent -+# was that 01:59:59 EST be followed by 02:00:00 CDT. - - # From Gwillim Law (2007-02-10): - # The Associated Press has been reporting that Pulaski County, Indiana is -@@ -739,13 +734,13 @@ - Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S - Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22 -+Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22 - -6:00 US C%sT 1920 - -6:00 Indianapolis C%sT 1942 - -6:00 US C%sT 1946 -- -6:00 Indianapolis C%sT 1955 Apr 24 2:00 -- -5:00 - EST 1957 Sep 29 2:00 -- -6:00 - CST 1958 Apr 27 2:00 -+ -6:00 Indianapolis C%sT 1955 Apr 24 2:00 -+ -5:00 - EST 1957 Sep 29 2:00 -+ -6:00 - CST 1958 Apr 27 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 - -5:00 - EST 2006 -@@ -761,10 +756,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37 - -6:00 US C%sT 1951 -- -6:00 Marengo C%sT 1961 Apr 30 2:00 -+ -6:00 Marengo C%sT 1961 Apr 30 2:00 - -5:00 - EST 1969 -- -5:00 US E%sT 1974 Jan 6 2:00 -- -6:00 1:00 CDT 1974 Oct 27 2:00 -+ -5:00 US E%sT 1974 Jan 6 2:00 -+ -6:00 1:00 CDT 1974 Oct 27 2:00 - -5:00 US E%sT 1976 - -5:00 - EST 2006 - -5:00 US E%sT -@@ -785,11 +780,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53 - -6:00 US C%sT 1946 -- -6:00 Vincennes C%sT 1964 Apr 26 2:00 -+ -6:00 Vincennes C%sT 1964 Apr 26 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 -- -5:00 - EST 2006 Apr 2 2:00 -- -6:00 US C%sT 2007 Nov 4 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 US C%sT 2007 Nov 4 2:00 - -5:00 US E%sT - # - # Perry County, Indiana, switched from eastern to central time in April 2006. -@@ -806,10 +801,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57 - -6:00 US C%sT 1946 -- -6:00 Perry C%sT 1964 Apr 26 2:00 -+ -6:00 Perry C%sT 1964 Apr 26 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 -- -5:00 - EST 2006 Apr 2 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 - -6:00 US C%sT - # - # Pike County, Indiana moved from central to eastern time in 1977, -@@ -822,11 +817,11 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53 - -6:00 US C%sT 1955 -- -6:00 Pike C%sT 1965 Apr 25 2:00 -- -5:00 - EST 1966 Oct 30 2:00 -- -6:00 US C%sT 1977 Oct 30 2:00 -- -5:00 - EST 2006 Apr 2 2:00 -- -6:00 US C%sT 2007 Nov 4 2:00 -+ -6:00 Pike C%sT 1965 Apr 25 2:00 -+ -5:00 - EST 1966 Oct 30 2:00 -+ -6:00 US C%sT 1977 Oct 30 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 US C%sT 2007 Nov 4 2:00 - -5:00 US E%sT - # - # Starke County, Indiana moved from central to eastern time in 1991, -@@ -844,10 +839,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30 - -6:00 US C%sT 1947 -- -6:00 Starke C%sT 1962 Apr 29 2:00 -- -5:00 - EST 1963 Oct 27 2:00 -- -6:00 US C%sT 1991 Oct 27 2:00 -- -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 Starke C%sT 1962 Apr 29 2:00 -+ -5:00 - EST 1963 Oct 27 2:00 -+ -6:00 US C%sT 1991 Oct 27 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 - -6:00 US C%sT - # - # Pulaski County, Indiana, switched from eastern to central time in -@@ -860,17 +855,17 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35 - -6:00 US C%sT 1946 -- -6:00 Pulaski C%sT 1961 Apr 30 2:00 -+ -6:00 Pulaski C%sT 1961 Apr 30 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1971 -- -5:00 - EST 2006 Apr 2 2:00 -- -6:00 US C%sT 2007 Mar 11 2:00 -+ -5:00 - EST 2006 Apr 2 2:00 -+ -6:00 US C%sT 2007 Mar 11 2:00 - -5:00 US E%sT - # - # Switzerland County, Indiana, did not observe DST from 1973 through 2005. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44 -- -6:00 US C%sT 1954 Apr 25 2:00 -+ -6:00 US C%sT 1954 Apr 25 2:00 - -5:00 - EST 1969 - -5:00 US E%sT 1973 - -5:00 - EST 2006 -@@ -891,18 +886,17 @@ - -6:00 US C%sT 1921 - -6:00 Louisville C%sT 1942 - -6:00 US C%sT 1946 -- -6:00 Louisville C%sT 1961 Jul 23 2:00 -+ -6:00 Louisville C%sT 1961 Jul 23 2:00 - -5:00 - EST 1968 -- -5:00 US E%sT 1974 Jan 6 2:00 -- -6:00 1:00 CDT 1974 Oct 27 2:00 -+ -5:00 US E%sT 1974 Jan 6 2:00 -+ -6:00 1:00 CDT 1974 Oct 27 2:00 - -5:00 US E%sT - # - # Wayne County, Kentucky - # --# From --# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml"> --# Lake Cumberland LIFE --# </a> (1999-01-29) via WKYM-101.7: -+# From Lake Cumberland LIFE -+# http://www.lake-cumberland.com/life/archive/news990129time.shtml -+# (1999-01-29) via WKYM-101.7: - # Clinton County has joined Wayne County in asking the DoT to change from - # the Central to the Eastern time zone.... The Wayne County government made - # the same request in December. And while Russell County officials have not -@@ -919,9 +913,8 @@ - # - # From Paul Eggert (2001-07-16): - # The final rule was published in the --# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22"> --# Federal Register 65, 160 (2000-08-17), page 50154-50158. --# </a> -+# Federal Register 65, 160 (2000-08-17), pp 50154-50158. -+# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22 - # - Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36 - -6:00 US C%sT 1946 -@@ -946,9 +939,8 @@ - # See America/North_Dakota/Center for the Oliver County, ND change. - # West Wendover, NV officially switched from Pacific to mountain time on - # 1999-10-31. See the --# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15"> --# Federal Register 64, 203 (1999-10-21), page 56705-56707. --# </a> -+# Federal Register 64, 203 (1999-10-21), pp 56705-56707. -+# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15 - # However, the Federal Register says that West Wendover already operated - # on mountain time, and the rule merely made this official; - # hence a separate tz entry is not needed. -@@ -986,12 +978,12 @@ - Rule Detroit 1967 only - Oct lastSun 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Detroit -5:32:11 - LMT 1905 -- -6:00 - CST 1915 May 15 2:00 -+ -6:00 - CST 1915 May 15 2:00 - -5:00 - EST 1942 - -5:00 US E%sT 1946 - -5:00 Detroit E%sT 1973 - -5:00 US E%sT 1975 -- -5:00 - EST 1975 Apr 27 2:00 -+ -5:00 - EST 1975 Apr 27 2:00 - -5:00 US E%sT - # - # Dickinson, Gogebic, Iron, and Menominee Counties, Michigan, -@@ -1004,8 +996,8 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00 - -6:00 US C%sT 1946 -- -6:00 Menominee C%sT 1969 Apr 27 2:00 -- -5:00 - EST 1973 Apr 29 2:00 -+ -6:00 Menominee C%sT 1969 Apr 27 2:00 -+ -5:00 - EST 1973 Apr 29 2:00 - -6:00 US C%sT - - # Navassa -@@ -1022,19 +1014,19 @@ - ################################################################################ - - --# From Paul Eggert (2006-03-22): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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 - # 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, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # - # Other sources occasionally used include: - # -@@ -1042,9 +1034,9 @@ - # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), - # which I found in the UCLA library. - # --# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf"> - # William Willett, The Waste of Daylight, 19th edition --# </a> (1914-03) -+# <http://cs.ucla.edu/~eggert/The-Waste-of-Daylight-19th.pdf> -+# [PDF] (1914-03) - # - # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 - # <http://www.jstor.org/stable/1774359>. -@@ -1053,11 +1045,11 @@ - - # Canada - --# From Alain LaBont<e'> (1994-11-14): -+# From Alain LaBonté (1994-11-14): - # I post here the time zone abbreviations standardized in Canada - # for both English and French in the CAN/CSA-Z234.4-89 standard.... - # --# UTC Standard time Daylight savings time -+# UTC Standard time Daylight saving time - # offset French English French English - # -2:30 - - HAT NDT - # -3 - - HAA ADT -@@ -1070,7 +1062,7 @@ - # -9 HNY YST - - - # - # HN: Heure Normale ST: Standard Time --# HA: Heure Avanc<e'>e DT: Daylight saving Time -+# HA: Heure Avancée DT: Daylight saving Time - # - # A: de l'Atlantique Atlantic - # C: du Centre Central -@@ -1085,7 +1077,7 @@ - # From Paul Eggert (1994-11-22): - # Alas, this sort of thing must be handled by localization software. - --# Unless otherwise specified, the data for Canada are all from Shanks -+# Unless otherwise specified, the data entries for Canada are all from Shanks - # & Pottenger. - - # From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31, -@@ -1132,17 +1124,16 @@ - # An amendment to the Interpretation Act was registered on February 19/2007.... - # http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf - --# From Paul Eggert (2006-04-25): -+# From Paul Eggert (2014-10-18): - # H. David Matthews and Mary Vincent's map --# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp"> - # "It's about TIME", _Canadian Geographic_ (September-October 1998) --# </a> contains detailed boundaries for regions observing nonstandard -+# http://www.canadiangeographic.ca/Magazine/SO98/alacarte.asp -+# contains detailed boundaries for regions observing nonstandard - # time and daylight saving time arrangements in Canada circa 1998. - # --# INMS, the Institute for National Measurement Standards in Ottawa, has <a --# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php"> --# information about standard and daylight saving time zones in Canada. --# </a> (updated periodically). -+# National Research Council Canada maintains info about time zones and DST. -+# http://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html -+# http://www.nrc-cnrc.gc.ca/eng/services/time/faq/index.html#Q5 - # Its unofficial information is often taken from Matthews and Vincent. - - # From Paul Eggert (2006-06-27): -@@ -1151,9 +1142,7 @@ - - # From Chris Walton (2011-12-01) - # In the first of Tammy Hardwick's articles --# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260"> - # http://www.ilovecreston.com/?p=articles&t=spec&ar=260 --# </a> - # she quotes the Friday November 1/1918 edition of the Creston Review. - # The quote includes these two statements: - # 'Sunday the CPR went back to the old system of time...' -@@ -1221,9 +1210,7 @@ - # Time to Standard Time and from Standard Time to Daylight Savings Time - # now occurs at 2:00AM. - # ... --# <a href="http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm"> - # http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm --# </a> - # ... - # MICHAEL PELLEY | Manager of Enterprise Architecture - Solution Delivery - # Office of the Chief Information Officer -@@ -1259,7 +1246,7 @@ - -3:30 - NST 1936 - -3:30 StJohns N%sT 1942 May 11 - -3:30 Canada N%sT 1946 -- -3:30 StJohns N%sT 1966 Mar 15 2:00 -+ -3:30 StJohns N%sT 1966 Mar 15 2:00 - -4:00 StJohns A%sT 2011 Nov - -4:00 Canada A%sT - -@@ -1320,7 +1307,7 @@ - Zone America/Halifax -4:14:24 - LMT 1902 Jun 15 - -4:00 Halifax A%sT 1918 - -4:00 Canada A%sT 1919 -- -4:00 Halifax A%sT 1942 Feb 9 2:00s -+ -4:00 Halifax A%sT 1942 Feb 9 2:00s - -4:00 Canada A%sT 1946 - -4:00 Halifax A%sT 1974 - -4:00 Canada A%sT -@@ -1379,7 +1366,7 @@ - # meridian is supposed to observe AST, but residents as far east as - # Natashquan use EST/EDT, and residents east of Natashquan use AST. - # The Quebec department of justice writes in --# "The situation in Minganie and Basse-Cote-Nord" -+# "The situation in Minganie and Basse-Côte-Nord" - # http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm - # that the coastal strip from just east of Natashquan to Blanc-Sablon - # observes Atlantic standard time all year round. -@@ -1387,7 +1374,6 @@ - # says this common practice was codified into law as of 2007. - # For lack of better info, guess this practice began around 1970, contra to - # Shanks & Pottenger who have this region observing AST/ADT. --# for post-1970 data America/Puerto_Rico. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Mont 1917 only - Mar 25 2:00 1:00 D -@@ -1401,18 +1387,10 @@ - Rule Mont 1924 only - May 17 2:00 1:00 D - Rule Mont 1924 1926 - Sep lastSun 2:30 0 S - Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D --# The 1927-to-1937 rules can be expressed more simply as --# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D --# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S --# The rules below avoid use of 24:00 --# (which pre-1998 versions of zic cannot handle). --Rule Mont 1927 only - May 1 0:00 1:00 D --Rule Mont 1927 1932 - Sep lastSun 0:00 0 S --Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D --Rule Mont 1932 only - May 1 0:00 1:00 D --Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D --Rule Mont 1933 only - Oct 1 0:00 0 S --Rule Mont 1934 1939 - Sep lastSun 0:00 0 S -+Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D -+Rule Mont 1927 1937 - Sep lastSat 24:00 0 S -+Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D -+Rule Mont 1938 1939 - Sep lastSun 0:00 0 S - Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D - Rule Mont 1945 1948 - Sep lastSun 2:00 0 S - Rule Mont 1949 1950 - Oct lastSun 2:00 0 S -@@ -1426,7 +1404,7 @@ - Zone America/Montreal -4:54:16 - LMT 1884 - -5:00 Mont E%sT 1918 - -5:00 Canada E%sT 1919 -- -5:00 Mont E%sT 1942 Feb 9 2:00s -+ -5:00 Mont E%sT 1942 Feb 9 2:00s - -5:00 Canada E%sT 1946 - -5:00 Mont E%sT 1974 - -5:00 Canada E%sT -@@ -1448,7 +1426,7 @@ - # have already done so. In Orillia DST was to run until Saturday, - # 1912-08-31 (no time mentioned), but it was met with considerable - # hostility from certain segments of the public, and was revoked after --# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but -+# only two weeks - I copied it as Saturday, 1912-07-07, 22:00, but - # presumably that should be -07-06. (1912-06-19, -07-12; also letters - # earlier in June). - # -@@ -1458,10 +1436,8 @@ - # Mark Brader writes that an article in the 1997-10-14 Toronto Star - # says that Atikokan, Ontario currently does not observe DST, - # but will vote on 11-10 whether to use EST/EDT. --# He also writes that the --# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html"> --# Ontario Time Act (1990, Chapter T.9) --# </a> -+# He also writes that the Ontario Time Act (1990, Chapter T.9) -+# http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html - # says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT. - # Officially Atikokan is therefore on CST/CDT, and most likely this report - # concerns a non-official time observed as a matter of local practice. -@@ -1540,9 +1516,7 @@ - # The Journal of The Royal Astronomical Society of Canada, - # volume 26, number 2 (February 1932) and, as of 2010-07-17, - # was available at --# <a href="http://adsabs.harvard.edu/full/1932JRASC..26...49S"> - # http://adsabs.harvard.edu/full/1932JRASC..26...49S --# </a> - # - # It includes the text below (starting on page 57): - # -@@ -1553,26 +1527,26 @@ - # ing in 1930. The information for the province of Quebec is definite, - # for the other provinces only approximate: - # --# Province Daylight saving time used -+# Province Daylight saving time used - # Prince Edward Island Not used. - # Nova Scotia In Halifax only. - # New Brunswick In St. John only. - # Quebec In the following places: --# Montreal Lachine --# Quebec Mont-Royal --# Levis Iberville --# St. Lambert Cap de la Madeleine --# Verdun Loretteville --# Westmount Richmond --# Outremont St. Jerome --# Longueuil Greenfield Park --# Arvida Waterloo --# Chambly-Canton Beaulieu --# Melbourne La Tuque --# St. Theophile Buckingham -+# Montreal Lachine -+# Quebec Mont-Royal -+# Lévis Iberville -+# St. Lambert Cap de la Madelèine -+# Verdun Loretteville -+# Westmount Richmond -+# Outremont St. Jérôme -+# Longueuil Greenfield Park -+# Arvida Waterloo -+# Chambly-Canton Beaulieu -+# Melbourne La Tuque -+# St. Théophile Buckingham - # Ontario Used generally in the cities and towns along --# the southerly part of the province. Not --# used in the northwesterlhy part. -+# the southerly part of the province. Not -+# used in the northwesterly part. - # Manitoba Not used. - # Saskatchewan In Regina only. - # Alberta Not used. -@@ -1641,7 +1615,7 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Toronto -5:17:32 - LMT 1895 - -5:00 Canada E%sT 1919 -- -5:00 Toronto E%sT 1942 Feb 9 2:00s -+ -5:00 Toronto E%sT 1942 Feb 9 2:00s - -5:00 Canada E%sT 1946 - -5:00 Toronto E%sT 1974 - -5:00 Canada E%sT -@@ -1654,16 +1628,16 @@ - -5:00 Canada E%sT - Zone America/Nipigon -5:53:04 - LMT 1895 - -5:00 Canada E%sT 1940 Sep 29 -- -5:00 1:00 EDT 1942 Feb 9 2:00s -+ -5:00 1:00 EDT 1942 Feb 9 2:00s - -5:00 Canada E%sT - Zone America/Rainy_River -6:18:16 - LMT 1895 - -6:00 Canada C%sT 1940 Sep 29 -- -6:00 1:00 CDT 1942 Feb 9 2:00s -+ -6:00 1:00 CDT 1942 Feb 9 2:00s - -6:00 Canada C%sT - Zone America/Atikokan -6:06:28 - LMT 1895 - -6:00 Canada C%sT 1940 Sep 29 -- -6:00 1:00 CDT 1942 Feb 9 2:00s -- -6:00 Canada C%sT 1945 Sep 30 2:00 -+ -6:00 1:00 CDT 1942 Feb 9 2:00s -+ -6:00 Canada C%sT 1945 Sep 30 2:00 - -5:00 - EST - - -@@ -1676,7 +1650,7 @@ - # the first Sunday of April of each year and two o'clock Central - # Standard Time in the morning of the last Sunday of October next - # following, one hour in advance of Central Standard Time."... --# I believe that the English legislation [of the old time act] had = -+# I believe that the English legislation [of the old time act] had - # been assented to (March 22, 1967).... - # Also, as far as I can tell, there was no order-in-council varying - # the time of Daylight Saving Time for 2005 and so the provisions of -@@ -1799,12 +1773,12 @@ - Rule Swift 1960 1961 - Sep lastSun 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Regina -6:58:36 - LMT 1905 Sep -- -7:00 Regina M%sT 1960 Apr lastSun 2:00 -+ -7:00 Regina M%sT 1960 Apr lastSun 2:00 - -6:00 - CST - Zone America/Swift_Current -7:11:20 - LMT 1905 Sep -- -7:00 Canada M%sT 1946 Apr lastSun 2:00 -+ -7:00 Canada M%sT 1946 Apr lastSun 2:00 - -7:00 Regina M%sT 1950 -- -7:00 Swift M%sT 1972 Apr lastSun 2:00 -+ -7:00 Swift M%sT 1972 Apr lastSun 2:00 - -6:00 - CST - - -@@ -1854,9 +1828,7 @@ - # Earlier this year I stumbled across a detailed article about the time - # keeping history of Creston; it was written by Tammy Hardwick who is the - # manager of the Creston & District Museum. The article was written in May 2009. --# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260"> - # http://www.ilovecreston.com/?p=articles&t=spec&ar=260 --# </a> - # According to the article, Creston has not changed its clocks since June 1918. - # i.e. Creston has been stuck on UTC-7 for 93 years. - # Dawson Creek, on the other hand, changed its clocks as recently as April 1972. -@@ -1864,18 +1836,16 @@ - # Unfortunately the exact date for the time change in June 1918 remains - # unknown and will be difficult to ascertain. I e-mailed Tammy a few months - # ago to ask if Sunday June 2 was a reasonable guess. She said it was just --# as plausible as any other date (in June). She also said that after writing the --# article she had discovered another time change in 1916; this is the subject --# of another article which she wrote in October 2010. --# <a href="http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56"> -+# as plausible as any other date (in June). She also said that after writing -+# the article she had discovered another time change in 1916; this is the -+# subject of another article which she wrote in October 2010. - # http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56 --# </a> - - # Here is a summary of the three clock change events in Creston's history: - # 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7) - # Exact date unknown - # 2. Oct 1916: switch to Pacific Standard Time (GMT-8) --# Exact date in October unknown; Sunday October 1 is a reasonable guess. -+# Exact date in October unknown; Sunday October 1 is a reasonable guess. - # 3. June 1918: switch to Pacific Daylight Time (GMT-7) - # Exact date in June unknown; Sunday June 2 is a reasonable guess. - # note#1: -@@ -1888,9 +1858,7 @@ - # There is no guarantee that Creston will remain on Mountain Standard Time - # (UTC-7) forever. - # The subject was debated at least once this year by the town Council. --# <a href="http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html"> - # http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html --# </a> - - # During a period WWII, summer time (Daylight saying) was mandatory in Canada. - # In Creston, that was handled by shifting the area to PST (-8:00) then applying -@@ -1917,7 +1885,7 @@ - -8:00 Canada P%sT - Zone America/Dawson_Creek -8:00:56 - LMT 1884 - -8:00 Canada P%sT 1947 -- -8:00 Vanc P%sT 1972 Aug 30 2:00 -+ -8:00 Vanc P%sT 1972 Aug 30 2:00 - -7:00 - MST - Zone America/Creston -7:46:04 - LMT 1884 - -7:00 - MST 1916 Oct 1 -@@ -1944,18 +1912,17 @@ - - # From Rives McDow (1999-09-04): - # Nunavut ... moved ... to incorporate the whole territory into one time zone. --# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html"> - # Nunavut moves to single time zone Oct. 31 --# </a> -+# http://www.nunatsiaq.com/nunavut/nvt90903_13.html - # - # From Antoine Leca (1999-09-06): - # We then need to create a new timezone for the Kitikmeot region of Nunavut - # to differentiate it from the Yellowknife region. - - # From Paul Eggert (1999-09-20): --# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html"> - # Basic Facts: The New Territory --# </a> (1999) reports that Pangnirtung operates on eastern time, -+# http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html -+# (1999) reports that Pangnirtung operates on eastern time, - # and that Coral Harbour does not observe DST. We don't know when - # Pangnirtung switched to eastern time; we'll guess 1995. - -@@ -1983,8 +1950,8 @@ - # the current state of affairs. - - # From Michaela Rodrigue, writing in the --# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html"> --# Nunatsiaq News (1999-11-19)</a>: -+# Nunatsiaq News (1999-11-19): -+# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html - # Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones, - # central - or Nunavut time - for government offices, and eastern time - # for municipal offices and schools.... Igloolik [was similar but then] -@@ -2002,10 +1969,8 @@ - # Central Time and Southampton Island [in the Central zone] is not - # required to use daylight savings. - --# From --# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html"> --# Nunavut now has two time zones --# </a> (2000-11-10): -+# From <http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html> -+# Nunavut now has two time zones (2000-11-10): - # The Nunavut government would allow its employees in Kugluktuk and - # Cambridge Bay to operate on central time year-round, putting them - # one hour behind the rest of Nunavut for six months during the winter. -@@ -2033,10 +1998,7 @@ - # [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).] - - # From Gwillim Law (2005-05-21): --# According to maps at --# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg --# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg --# (both dated 2003), and -+# According to ... - # http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp - # (from a 1998 Canadian Geographic article), the de facto and de jure time - # for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year -@@ -2045,9 +2007,11 @@ - # predates the creation of Nunavut, it probably goes back many years.... - # The Inuktitut name of Coral Harbour is Sallit, but it's rarely used. - # --# From Paul Eggert (2005-07-26): -+# From Paul Eggert (2014-10-17): - # For lack of better information, assume that Southampton Island observed --# daylight saving only during wartime. -+# daylight saving only during wartime. Gwillim Law's email also -+# mentioned maps now maintained by National Research Council Canada; -+# see above for an up-to-date link. - - # From Chris Walton (2007-03-01): - # ... the community of Resolute (located on Cornwallis Island in -@@ -2096,9 +2060,7 @@ - # used to be the mayor of Resolute Bay and he apparently owns half the - # businesses including "South Camp Inn." This website has some info on - # Aziz: --# <a href="http://www.uphere.ca/node/493"> - # http://www.uphere.ca/node/493 --# </a> - # - # I sent Aziz an e-mail asking when Resolute Bay had stopped using - # Eastern Standard Time. -@@ -2136,47 +2098,47 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # aka Panniqtuuq - Zone America/Pangnirtung 0 - zzz 1921 # trading post est. -- -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00 -- -5:00 Canada E%sT 1999 Oct 31 2:00 -- -6:00 Canada C%sT 2000 Oct 29 2:00 -+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00 -+ -5:00 Canada E%sT 1999 Oct 31 2:00 -+ -6:00 Canada C%sT 2000 Oct 29 2:00 - -5:00 Canada E%sT - # formerly Frobisher Bay - Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est. -- -5:00 NT_YK E%sT 1999 Oct 31 2:00 -- -6:00 Canada C%sT 2000 Oct 29 2:00 -+ -5:00 NT_YK E%sT 1999 Oct 31 2:00 -+ -6:00 Canada C%sT 2000 Oct 29 2:00 - -5:00 Canada E%sT - # aka Qausuittuq - Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded -- -6:00 NT_YK C%sT 2000 Oct 29 2:00 -- -5:00 - EST 2001 Apr 1 3:00 -- -6:00 Canada C%sT 2006 Oct 29 2:00 -- -5:00 - EST 2007 Mar 11 3:00 -+ -6:00 NT_YK C%sT 2000 Oct 29 2:00 -+ -5:00 - EST 2001 Apr 1 3:00 -+ -6:00 Canada C%sT 2006 Oct 29 2:00 -+ -5:00 - EST 2007 Mar 11 3:00 - -6:00 Canada C%sT - # aka Kangiqiniq - Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded -- -6:00 NT_YK C%sT 2000 Oct 29 2:00 -- -5:00 - EST 2001 Apr 1 3:00 -+ -6:00 NT_YK C%sT 2000 Oct 29 2:00 -+ -5:00 - EST 2001 Apr 1 3:00 - -6:00 Canada C%sT - # aka Iqaluktuuttiaq - Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.? -- -7:00 NT_YK M%sT 1999 Oct 31 2:00 -- -6:00 Canada C%sT 2000 Oct 29 2:00 -- -5:00 - EST 2000 Nov 5 0:00 -- -6:00 - CST 2001 Apr 1 3:00 -+ -7:00 NT_YK M%sT 1999 Oct 31 2:00 -+ -6:00 Canada C%sT 2000 Oct 29 2:00 -+ -5:00 - EST 2000 Nov 5 0:00 -+ -6:00 - CST 2001 Apr 1 3:00 - -7:00 Canada M%sT - Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded? - -7:00 NT_YK M%sT 1980 - -7:00 Canada M%sT - Zone America/Inuvik 0 - zzz 1953 # Inuvik founded -- -8:00 NT_YK P%sT 1979 Apr lastSun 2:00 -+ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00 - -7:00 NT_YK M%sT 1980 - -7:00 Canada M%sT - Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20 -- -9:00 NT_YK Y%sT 1966 Jul 1 2:00 -+ -9:00 NT_YK Y%sT 1966 Jul 1 2:00 - -8:00 NT_YK P%sT 1980 - -8:00 Canada P%sT - Zone America/Dawson -9:17:40 - LMT 1900 Aug 20 -- -9:00 NT_YK Y%sT 1973 Oct 28 0:00 -+ -9:00 NT_YK Y%sT 1973 Oct 28 0:00 - -8:00 NT_YK P%sT 1980 - -8:00 Canada P%sT - -@@ -2188,9 +2150,8 @@ - # From Paul Eggert (2001-03-05): - # The Investigation and Analysis Service of the - # Mexican Library of Congress (MLoC) has published a --# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/"> - # history of Mexican local time (in Spanish) --# </a>. -+# http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/ - # - # Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC. - # (In all cases we go with the MLoC.) -@@ -2235,9 +2196,8 @@ - # -------------- End Forwarded Message -------------- - # From Paul Eggert (1996-06-12): - # For an English translation of the decree, see --# <a href="http://mexico-travel.com/extra/timezone_eng.html"> - # "Diario Oficial: Time Zone Changeover" (1996-01-04). --# </a> -+# http://mexico-travel.com/extra/timezone_eng.html - - # From Rives McDow (1998-10-08): - # The State of Quintana Roo has reverted back to central STD and DST times -@@ -2249,7 +2209,7 @@ - # savings time so as to stay on the same time zone as the southern part of - # Arizona year round. - --# From Jesper Norgaard, translating -+# From Jesper Nørgaard, translating - # <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17): - # In Oaxaca, the 55.000 teachers from the Section 22 of the National - # Syndicate of Education Workers, refuse to apply daylight saving each -@@ -2262,7 +2222,7 @@ - # January 17, 2000 - The Energy Secretary, Ernesto Martens, announced - # that Summer Time will be reduced from seven to five months, starting - # this year.... --# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001> -+# http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001 - # [translated], says "summer time will ... take effect on the first Sunday - # in May, and end on the last Sunday of September. - -@@ -2270,23 +2230,22 @@ - # The 2001-01-24 traditional Washington Post contained the page one - # story "Timely Issue Divides Mexicans."... - # http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html --# ... Mexico City Mayor Lopez Obrador "...is threatening to keep -+# ... Mexico City Mayor López Obrador "...is threatening to keep - # Mexico City and its 20 million residents on a different time than --# the rest of the country..." In particular, Lopez Obrador would abolish -+# the rest of the country..." In particular, López Obrador would abolish - # observation of Daylight Saving Time. - --# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre"> - # Official statute published by the Energy Department --# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules, --# and Sonora with no DST. This was reported by Jesper Norgaard (2001-02-03). -+# http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre -+# (2001-02-01) shows Baja and Chihauhua as still using US DST rules, -+# and Sonora with no DST. This was reported by Jesper Nørgaard (2001-02-03). - - # From Paul Eggert (2001-03-03): - # --# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html"> -+# http://www.latimes.com/news/nation/20010303/t000018766.html - # James F. Smith writes in today's LA Times --# </a> - # * Sonora will continue to observe standard time. --# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that -+# * Last week Mexico City's mayor Andrés Manuel López Obrador decreed that - # the Federal District will not adopt DST. - # * 4 of 16 district leaders announced they'll ignore the decree. - # * The decree does not affect federal-controlled facilities including -@@ -2294,7 +2253,7 @@ - # - # For now we'll assume that the Federal District will bow to federal rules. - --# From Jesper Norgaard (2001-04-01): -+# From Jesper Nørgaard (2001-04-01): - # I found some references to the Mexican application of daylight - # saving, which modifies what I had already sent you, stating earlier - # that a number of northern Mexican states would go on daylight -@@ -2303,7 +2262,7 @@ - # saving all year) will follow the original decree of president - # Vicente Fox, starting daylight saving May 6, 2001 and ending - # September 30, 2001. --# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp> -+# References: "Diario de Monterrey" <http://www.diariodemonterrey.com/index.asp> - # Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31) - - # From Reuters (2001-09-04): -@@ -2315,7 +2274,7 @@ - # standard time. "This is so residents of the Federal District are not - # subject to unexpected time changes," a statement from the court said. - --# From Jesper Norgaard Welen (2002-03-12): -+# From Jesper Nørgaard Welen (2002-03-12): - # ... consulting my local grocery store(!) and my coworkers, they all insisted - # that a new decision had been made to reinstate US style DST in Mexico.... - # http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20) -@@ -2329,48 +2288,36 @@ - # > the United States. - # Now this has passed both the Congress and the Senate, so starting from - # 2010, some border regions will be the same: --# <a href="http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/"> - # http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/ --# </a> --# <a href="http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939"> - # http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939 --# </a> - # (Spanish) - # - # Could not find the new law text, but the proposed law text changes are here: --# <a href="http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf"> - # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf --# </a> - # (Gaceta Parlamentaria) - # - # There is also a list of the votes here: --# <a href="http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html"> - # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html --# </a> - # - # Our page: --# <a href="http://www.timeanddate.com/news/time/north-mexico-dst-change.html"> - # http://www.timeanddate.com/news/time/north-mexico-dst-change.html --# </a> - - # From Arthur David Olson (2010-01-20): - # The page --# <a href="http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010"> - # http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010 --# </a> - # includes this text: - # En los municipios fronterizos de Tijuana y Mexicali en Baja California; --# Juárez y Ojinaga en Chihuahua; Acuña y Piedras Negras en Coahuila; --# Anáhuac en Nuevo León; y Nuevo Laredo, Reynosa y Matamoros en --# Tamaulipas, la aplicación de este horario estacional surtirá efecto --# desde las dos horas del segundo domingo de marzo y concluirá a las dos -+# Juárez y Ojinaga en Chihuahua; Acuña y Piedras Negras en Coahuila; -+# Anáhuac en Nuevo León; y Nuevo Laredo, Reynosa y Matamoros en -+# Tamaulipas, la aplicación de este horario estacional surtirá efecto -+# desde las dos horas del segundo domingo de marzo y concluirá a las dos - # horas del primer domingo de noviembre. - # En los municipios fronterizos que se encuentren ubicados en la franja --# fronteriza norte en el territorio comprendido entre la línea --# internacional y la línea paralela ubicada a una distancia de veinte --# kilómetros, así como la Ciudad de Ensenada, Baja California, hacia el --# interior del país, la aplicación de este horario estacional surtirá --# efecto desde las dos horas del segundo domingo de marzo y concluirá a -+# fronteriza norte en el territorio comprendido entre la línea -+# internacional y la línea paralela ubicada a una distancia de veinte -+# kilómetros, así como la Ciudad de Ensenada, Baja California, hacia el -+# interior del país, la aplicación de este horario estacional surtirá -+# efecto desde las dos horas del segundo domingo de marzo y concluirá a - # las dos horas del primer domingo de noviembre. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -2389,39 +2336,39 @@ - Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D - Rule Mexico 2002 max - Oct lastSun 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --# Quintana Roo -+# Quintana Roo; represented by Cancún - Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56 - -6:00 - CST 1981 Dec 23 - -5:00 Mexico E%sT 1998 Aug 2 2:00 - -6:00 Mexico C%sT --# Campeche, Yucatan -+# Campeche, Yucatán; represented by Mérida - Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32 - -6:00 - CST 1981 Dec 23 - -5:00 - EST 1982 Dec 2 - -6:00 Mexico C%sT --# Coahuila, Durango, Nuevo Leon, Tamaulipas (near US border) -+# Coahuila, Durango, Nuevo León, Tamaulipas (near US border) - Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00 - -6:00 - CST 1988 - -6:00 US C%sT 1989 - -6:00 Mexico C%sT 2010 - -6:00 US C%sT --# Coahuila, Durango, Nuevo Leon, Tamaulipas (away from US border) -+# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border) - Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44 - -6:00 - CST 1988 - -6:00 US C%sT 1989 - -6:00 Mexico C%sT - # Central Mexico --Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24 -+Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 - -7:00 - MST 1931 May 1 23:00 - -6:00 - CST 1931 Oct - -7:00 - MST 1932 Apr 1 -- -6:00 Mexico C%sT 2001 Sep 30 02:00 -+ -6:00 Mexico C%sT 2001 Sep 30 2:00 - -6:00 - CST 2002 Feb 20 - -6:00 Mexico C%sT - # Chihuahua (near US border) --Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20 -+Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 - -7:00 - MST 1931 May 1 23:00 -@@ -2429,7 +2376,7 @@ - -7:00 - MST 1932 Apr 1 - -6:00 - CST 1996 - -6:00 Mexico C%sT 1998 -- -6:00 - CST 1998 Apr Sun>=1 3:00 -+ -6:00 - CST 1998 Apr Sun>=1 3:00 - -7:00 Mexico M%sT 2010 - -7:00 US M%sT - # Chihuahua (away from US border) -@@ -2441,7 +2388,7 @@ - -7:00 - MST 1932 Apr 1 - -6:00 - CST 1996 - -6:00 Mexico C%sT 1998 -- -6:00 - CST 1998 Apr Sun>=1 3:00 -+ -6:00 - CST 1998 Apr Sun>=1 3:00 - -7:00 Mexico M%sT - # Sonora - Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08 -@@ -2457,42 +2404,33 @@ - -7:00 - MST - - # From Alexander Krivenyshev (2010-04-21): --# According to news, Bahía de Banderas (Mexican state of Nayarit) -+# According to news, Bahía de Banderas (Mexican state of Nayarit) - # changed time zone UTC-7 to new time zone UTC-6 on April 4, 2010 (to - # share the same time zone as nearby city Puerto Vallarta, Jalisco). - # - # (Spanish) --# Bahía de Banderas homologa su horario al del centro del --# país, a partir de este domingo --# <a href="http://www.nayarit.gob.mx/notes.asp?id=20748"> -+# Bahía de Banderas homologa su horario al del centro del -+# país, a partir de este domingo - # http://www.nayarit.gob.mx/notes.asp?id=20748 --# </a> - # --# Bahía de Banderas homologa su horario con el del Centro del --# País --# <a href="http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50"> --# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50" --# </a> -+# Bahía de Banderas homologa su horario con el del Centro del -+# País -+# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50 - # - # (English) --# Puerto Vallarta and Bahía de Banderas: One Time Zone --# <a href="http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml"> -+# Puerto Vallarta and Bahía de Banderas: One Time Zone - # http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml --# </a> --# --# or --# <a href="http://www.worldtimezone.com/dst_news/dst_news_mexico08.html"> - # http://www.worldtimezone.com/dst_news/dst_news_mexico08.html --# </a> - # - # "Mexico's Senate approved the amendments to the Mexican Schedule System that --# will allow Bahía de Banderas and Puerto Vallarta to share the same time -+# will allow Bahía de Banderas and Puerto Vallarta to share the same time - # zone ..." - # Baja California Sur, Nayarit, Sinaloa - - # From Arthur David Olson (2010-05-01): - # Use "Bahia_Banderas" to keep the name to fourteen characters. - -+# Mazatlán - Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 -@@ -2504,6 +2442,7 @@ - -8:00 - PST 1970 - -7:00 Mexico M%sT - -+# Bahía de Banderas - Zone America/Bahia_Banderas -7:01:00 - LMT 1921 Dec 31 23:59:00 - -7:00 - MST 1927 Jun 10 23:00 - -6:00 - CST 1930 Nov 15 -@@ -2513,7 +2452,7 @@ - -6:00 - CST 1942 Apr 24 - -7:00 - MST 1949 Jan 14 - -8:00 - PST 1970 -- -7:00 Mexico M%sT 2010 Apr 4 2:00 -+ -7:00 Mexico M%sT 2010 Apr 4 2:00 - -6:00 Mexico C%sT - - # Baja California (near US border) -@@ -2560,7 +2499,7 @@ - # America/Tijuana only in that it did not observe DST from 1976 - # through 1995. This was as per Shanks (1999). But Shanks & Pottenger say - # Ensenada did not observe DST from 1948 through 1975. Guy Harris reports --# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and -+# that the 1987 OAG says "Only Ensenada, Mexicali, San Felipe and - # Tijuana observe DST," which agrees with Shanks & Pottenger but implies that - # DST-observance was a town-by-town matter back then. This concerns - # data after 1970 so most likely there should be at least one Zone -@@ -2573,7 +2512,7 @@ - ############################################################################### - - # Anguilla --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Antigua and Barbuda - # Zone NAME GMTOFF RULES FORMAT [UNTIL] -@@ -2609,8 +2548,8 @@ - Rule Barb 1979 only - Sep 30 2:00 0 S - Rule Barb 1980 only - Sep 25 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown -- -3:58:29 - BMT 1932 # Bridgetown Mean Time -+Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown -+ -3:58:29 - BMT 1932 # Bridgetown Mean Time - -4:00 Barb A%sT - - # Belize -@@ -2640,20 +2579,20 @@ - # http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton -- -4:00 - AST 1974 Apr 28 2:00 -+Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton -+ -4:00 - AST 1974 Apr 28 2:00 - -4:00 Canada A%sT 1976 - -4:00 US A%sT - - # Cayman Is - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown -- -5:07:11 - KMT 1912 Feb # Kingston Mean Time -+Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown -+ -5:07:11 - KMT 1912 Feb # Kingston Mean Time - -5:00 - EST - - # Costa Rica - --# Milne gives -5:36:13.3 as San Jose mean time; round to nearest. -+# Milne gives -5:36:13.3 as San José mean time; round to nearest. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule CR 1979 1980 - Feb lastSun 0:00 1:00 D -@@ -2663,10 +2602,10 @@ - # go with Shanks & Pottenger. - Rule CR 1991 only - Jul 1 0:00 0 S - Rule CR 1992 only - Mar 15 0:00 0 S --# There are too many San Joses elsewhere, so we'll use 'Costa Rica'. -+# There are too many San Josés elsewhere, so we'll use 'Costa Rica'. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose -- -5:36:13 - SJMT 1921 Jan 15 # San Jose Mean Time -+Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José -+ -5:36:13 - SJMT 1921 Jan 15 # San José Mean Time - -6:00 CR C%sT - # Coco - # no information; probably like America/Costa_Rica -@@ -2685,8 +2624,8 @@ - # During the game, play-by-play announcer Jim Hunter noted that - # "We'll be losing two hours of sleep...Cuba switched to Daylight Saving - # Time today." (The "two hour" remark referred to losing one hour of --# sleep on 1999-03-28--when the announcers were in Cuba as it switched --# to DST--and one more hour on 1999-04-04--when the announcers will have -+# sleep on 1999-03-28 - when the announcers were in Cuba as it switched -+# to DST - and one more hour on 1999-04-04 - when the announcers will have - # returned to Baltimore, which switches on that date.) - - # From Steffen Thorsen (2013-11-11): -@@ -2708,16 +2647,16 @@ - # adjustment in Cuba. We will stay in daylight saving time: - # http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html - --# From Jesper Norgaard Welen (2006-10-21): -+# From Jesper Nørgaard Welen (2006-10-21): - # An article in GRANMA INTERNACIONAL claims that Cuba will end - # the 3 years of permanent DST next weekend, see - # http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html - # "On Saturday night, October 28 going into Sunday, October 29, at 01:00, --# watches should be set back one hour -- going back to 00:00 hours -- returning -+# watches should be set back one hour - going back to 00:00 hours - returning - # to the normal schedule.... - - # From Paul Eggert (2007-03-02): --# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday, -+# <http://www.granma.cubaweb.cu/english/news/art89.html>, dated yesterday, - # says Cuban clocks will advance at midnight on March 10. - # For lack of better information, assume Cuba will use US rules, - # except that it switches at midnight standard time as usual. -@@ -2731,10 +2670,10 @@ - # http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES - # http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm - # --# From Alex Kryvenishev (2007-10-25): -+# From Alex Krivenyshev (2007-10-25): - # Here is also article from Granma (Cuba): - # --# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre -+# Regirá el Horario Normal desde el próximo domingo 28 de octubre - # http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html - # - # http://www.worldtimezone.com/dst_news/dst_news_cuba03.html -@@ -2742,23 +2681,18 @@ - # From Arthur David Olson (2008-03-09): - # I'm in Maryland which is now observing United States Eastern Daylight - # Time. At 9:44 local time I used RealPlayer to listen to --# <a href="http://media.enet.cu/radioreloj"> - # http://media.enet.cu/radioreloj --# </a>, a Cuban information station, and heard -+# a Cuban information station, and heard - # the time announced as "ocho cuarenta y cuatro" ("eight forty-four"), - # indicating that Cuba is still on standard time. - - # From Steffen Thorsen (2008-03-12): - # It seems that Cuba will start DST on Sunday, 2007-03-16... - # It was announced yesterday, according to this source (in Spanish): --# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm"> - # http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm --# </a> - # - # Some more background information is posted here: --# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html"> - # http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html --# </a> - # - # The article also says that Cuba has been observing DST since 1963, - # while Shanks (and tzdata) has 1965 as the first date (except in the -@@ -2768,18 +2702,14 @@ - # change some historic records as well. - # - # One example: --# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm"> - # http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm --# </a> - --# From Jesper Norgaard Welen (2008-03-13): -+# From Jesper Nørgaard Welen (2008-03-13): - # The Cuban time change has just been confirmed on the most authoritative - # web site, the Granma. Please check out --# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html"> - # http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html --# </a> - # --# Basically as expected after Steffen Thorsens information, the change -+# Basically as expected after Steffen Thorsen's information, the change - # will take place midnight between Saturday and Sunday. - - # From Arthur David Olson (2008-03-12): -@@ -2790,18 +2720,14 @@ - # midnight between Saturday, March 07, 2009 and Sunday, March 08, 2009- - # not on midnight March 14 / March 15 as previously thought. - # --# <a href="http://www.worldtimezone.com/dst_news/dst_news_cuba05.html"> - # http://www.worldtimezone.com/dst_news/dst_news_cuba05.html - # (in Spanish) --# </a> - - # From Arthur David Olson (2009-03-09) - # I listened over the Internet to --# <a href="http://media.enet.cu/readioreloj"> - # http://media.enet.cu/readioreloj --# </a> - # this morning; when it was 10:05 a. m. here in Bethesda, Maryland the --# the time was announced as "diez cinco"--the same time as here, indicating -+# the time was announced as "diez cinco" - the same time as here, indicating - # that has indeed switched to DST. Assume second Sunday from 2009 forward. - - # From Steffen Thorsen (2011-03-08): -@@ -2810,42 +2736,30 @@ - # changed at all). - # - # Source: --# <a href="http://granma.co.cu/2011/03/08/nacional/artic01.html"> - # http://granma.co.cu/2011/03/08/nacional/artic01.html --# </a> - # - # Our info: --# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html"> - # http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html --# </a> - # - # From Steffen Thorsen (2011-10-30) - # Cuba will end DST two weeks later this year. Instead of going back - # tonight, it has been delayed to 2011-11-13 at 01:00. - # - # One source (Spanish) --# <a href="http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html"> - # http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html --# </a> - # - # Our page: --# <a href="http://www.timeanddate.com/news/time/cuba-time-changes-2011.html"> - # http://www.timeanddate.com/news/time/cuba-time-changes-2011.html --# </a> - # - # From Steffen Thorsen (2012-03-01) - # According to Radio Reloj, Cuba will start DST on Midnight between March - # 31 and April 1. - # - # Radio Reloj has the following info (Spanish): --# <a href="http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril"> - # http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril --# </a> - # - # Our info on it: --# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html"> - # http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html --# </a> - - # From Steffen Thorsen (2012-11-03): - # Radio Reloj and many other sources report that Cuba is changing back -@@ -2901,7 +2815,7 @@ - -5:00 Cuba C%sT - - # Dominica --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Dominican Republic - -@@ -2934,8 +2848,8 @@ - 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 -- -4:00 - AST 2000 Oct 29 02:00 -- -5:00 US E%sT 2000 Dec 3 01:00 -+ -4:00 - AST 2000 Oct 29 2:00 -+ -5:00 US E%sT 2000 Dec 3 1:00 - -4:00 - AST - - # El Salvador -@@ -2946,20 +2860,20 @@ - # There are too many San Salvadors elsewhere, so use America/El_Salvador - # instead of America/San_Salvador. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador -+Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador - -6:00 Salv C%sT - - # Grenada - # Guadeloupe --# St Barthelemy -+# St Barthélemy - # St Martin (French part) --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Guatemala - # - # From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen: - # Diario Co Latino, at --# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079, -+# <http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079>, - # says in an article dated 2006-04-19 that the Guatemalan government had - # decided on that date to advance official time by 60 minutes, to lessen the - # impact of the elevated cost of oil.... Daylight saving time will last from -@@ -2967,7 +2881,7 @@ - # From Paul Eggert (2006-06-22): - # The Ministry of Energy and Mines, press release CP-15/2006 - # (2006-04-19), says DST ends at 24:00. See --# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>. -+# http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S - Rule Guat 1973 only - Nov 25 0:00 1:00 D -@@ -2984,11 +2898,10 @@ - - # Haiti - # From Gwillim Law (2005-04-15): --# Risto O. Nykanen wrote me that Haiti is now on DST. --# I searched for confirmation, and I found a --# <a href="http://www.haitianconsulate.org/time.doc"> press release -+# Risto O. Nykänen wrote me that Haiti is now on DST. -+# I searched for confirmation, and I found a press release - # on the Web page of the Haitian Consulate in Chicago (2005-03-31), --# </a>. Translated from French, it says: -+# <http://www.haitianconsulate.org/time.doc>. Translated from French, it says: - # - # "The Prime Minister's Communication Office notifies the public in general - # and the press in particular that, following a decision of the Interior -@@ -3065,14 +2978,14 @@ - # <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president - # of Honduras, refused to back down on this. - --# From Jesper Norgaard Welen (2006-08-08): -+# From Jesper Nørgaard Welen (2006-08-08): - # It seems that Honduras has returned from DST to standard time this Monday at - # 00:00 hours (prolonging Sunday to 25 hours duration). - # http://www.worldtimezone.com/dst_news/dst_news_honduras04.html - - # From Paul Eggert (2006-08-08): --# Also see Diario El Heraldo, The country returns to standard time (2006-08-08) --# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>. -+# Also see Diario El Heraldo, The country returns to standard time (2006-08-08). -+# http://www.elheraldo.hn/nota.php?nid=54941&sec=12 - # It mentions executive decree 18-2006. - - # From Steffen Thorsen (2006-08-17): -@@ -3099,23 +3012,34 @@ - # Shanks & Pottenger give -5:07:12, but Milne records -5:07:10.41 from an - # unspecified official document, and says "This time is used throughout the - # island". Go with Milne. Round to the nearest second as required by zic. -+# -+# Shanks & Pottenger give April 28 for the 1974 spring-forward transition, but -+# Lance Neita writes that Prime Minister Michael Manley decreed it January 5. -+# Assume Neita meant Jan 6 02:00, the same as the US. Neita also writes that -+# Manley's supporters associated this act with Manley's nickname "Joshua" -+# (recall that in the Bible the sun stood still at Joshua's request), -+# and with the Rod of Correction which Manley said he had received from -+# Haile Selassie, Emperor of Ethiopia. See: -+# Neita L. The politician in all of us. Jamaica Observer 2014-09-20 -+# http://www.jamaicaobserver.com/columns/The-politician-in-all-of-us_17573647 -+# - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston -+Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston - -5:07:11 - KMT 1912 Feb # Kingston Mean Time -- -5:00 - EST 1974 Apr 28 2:00 -+ -5:00 - EST 1974 - -5:00 US E%sT 1984 - -5:00 - EST - - # Martinique - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France -- -4:04:20 - FFMT 1911 May # Fort-de-France MT -+Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France -+ -4:04:20 - FFMT 1911 May # Fort-de-France MT - -4:00 - AST 1980 Apr 6 - -4:00 1:00 ADT 1980 Sep 28 - -4:00 - AST - - # Montserrat --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Nicaragua - # -@@ -3138,27 +3062,27 @@ - # From Gwillim Law (2005-04-21): - # The Associated Press story on the time change, which can be found at - # http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html --# and elsewhere, says (fifth paragraph, translated from Spanish): "The last -+# and elsewhere, says (fifth paragraph, translated from Spanish): "The last - # time that a change of clocks was applied to save energy was in the year 2000 --# during the Arnoldo Aleman administration."... -+# during the Arnoldo Alemán administration."... - # The northamerica file says that Nicaragua has been on UTC-6 continuously - # since December 1998. I wasn't able to find any details of Nicaraguan time - # changes in 2000. Perhaps a note could be added to the northamerica file, to - # the effect that we have indirect evidence that DST was observed in 2000. - # --# From Jesper Norgaard Welen (2005-11-02): -+# From Jesper Nørgaard Welen (2005-11-02): - # Nicaragua left DST the 2005-10-02 at 00:00 (local time). - # http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm - # (2005-09-26) - # --# From Jesper Norgaard Welen (2006-05-05): -+# From Jesper Nørgaard Welen (2006-05-05): - # http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410 - # (my informal translation) --# By order of the president of the republic, Enrique Bolanos, Nicaragua -+# By order of the president of the republic, Enrique Bolaños, Nicaragua - # advanced by sixty minutes their official time, yesterday at 2 in the --# morning, and will stay that way until 30.th. of september. -+# morning, and will stay that way until 30th of September. - # --# From Jesper Norgaard Welen (2006-09-30): -+# From Jesper Nørgaard Welen (2006-09-30): - # http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf - # My informal translation runs: - # The natural sun time is restored in all the national territory, in that the -@@ -3176,7 +3100,7 @@ - -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time? - -6:00 - CST 1973 May - -5:00 - EST 1975 Feb 16 -- -6:00 Nic C%sT 1992 Jan 1 4:00 -+ -6:00 Nic C%sT 1992 Jan 1 4:00 - -5:00 - EST 1992 Sep 24 - -6:00 - CST 1993 - -5:00 - EST 1997 -@@ -3185,36 +3109,36 @@ - # Panama - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Panama -5:18:08 - LMT 1890 -- -5:19:36 - CMT 1908 Apr 22 # Colon Mean Time -+ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time - -5:00 - EST - - # Puerto Rico - # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan -+Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan - -4:00 - AST 1942 May 3 - -4:00 US A%sT 1946 - -4:00 - AST - - # St Kitts-Nevis - # St Lucia --# See 'southamerica'. -+# See America/Port_of_Spain. - - # St Pierre and Miquelon - # There are too many St Pierres elsewhere, so we'll use 'Miquelon'. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre -+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 - - # St Vincent and the Grenadines --# See 'southamerica'. -+# See America/Port_of_Spain. - - # Turks and Caicos - # - # From Chris Dunn in --# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007> -+# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007 - # (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the - # daylight saving dates for time changes have been adjusted to match - # the recent U.S. change of dates. -@@ -3227,21 +3151,27 @@ - # Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time" - # indicating that the normal ET rules are followed. - # --# From Paul Eggert (2006-05-01): --# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998) --# says they switch at midnight. Go with Shanks & Pottenger. -+# From Paul Eggert (2014-08-19): -+# The 2014-08-13 Cabinet meeting decided to stay on UTC-4 year-round. See: -+# http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm -+# Model this as a switch from EST/EDT to AST ... -+# From Chris Walton (2014-11-04): -+# ... the TCI government appears to have delayed the switch to -+# "permanent daylight saving time" by one year.... -+# http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm - # --# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D --Rule TC 1979 2006 - Oct lastSun 2:00 0 S --Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D --Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D --Rule TC 2007 max - Nov Sun>=1 2:00 0 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Grand_Turk -4:44:32 - LMT 1890 -- -5:07:11 - KMT 1912 Feb # Kingston Mean Time -- -5:00 TC E%sT -+ -5:07:11 - KMT 1912 Feb # Kingston Mean Time -+ -5:00 - EST 1979 -+ -5:00 US E%sT 2015 Nov Sun>=1 2:00 -+ -4:00 - AST - - # British Virgin Is - # Virgin Is --# See 'southamerica'. -+# See America/Port_of_Spain. -+ -+ -+# Local Variables: -+# coding: utf-8 -+# End: ---- ./jdk/test/sun/util/calendar/zi/tzdata/pacificnew Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/pacificnew Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - ---- ./jdk/test/sun/util/calendar/zi/tzdata/southamerica Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/southamerica Mon Dec 08 12:29:42 2014 -0800 -@@ -21,31 +21,31 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - --# This data is by no means authoritative; if you think you know better, -+# This file is by no means authoritative; if you think you know better, - # go ahead and edit the file (and please send any changes to --# tz@iana.org for general use in the future). -+# tz@iana.org for general use in the future). For more, please see -+# the file CONTRIBUTING in the tz distribution. - --# From Paul Eggert (2006-03-22): --# A good source for time zone historical data outside the U.S. is -+# From Paul Eggert (2014-10-31): -+# -+# 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). --# --# For data circa 1899, a common source is: --# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94 --# <http://www.jstor.org/stable/1774359>. -+# 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 - # Association's Standard Schedules Information Manual (IATA SSIM), - # published semiannually. Law sent in several helpful summaries --# of the IATA's data after 1990. -+# of the IATA's data after 1990. Except where otherwise noted, -+# IATA SSIM is the source for entries after 1990. - # --# Except where otherwise noted, Shanks & Pottenger is the source for --# entries through 1990, and IATA SSIM is the source for entries afterwards. -+# For data circa 1899, a common source is: -+# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94. -+# http://www.jstor.org/stable/1774359 - # - # Earlier editions of these tables used the North American style (e.g. ARST and - # ARDT for Argentine Standard and Daylight Time), but the following quote -@@ -53,24 +53,24 @@ - # I suggest the use of _Summer time_ instead of the more cumbersome - # _daylight-saving time_. _Summer time_ seems to be in general use - # in Europe and South America. --# -- E O Cutler, _New York Times_ (1937-02-14), quoted in -+# -- E O Cutler, _New York Times_ (1937-02-14), quoted in - # H L Mencken, _The American Language: Supplement I_ (1960), p 466 - # - # Earlier editions of these tables also used the North American style - # for time zones in Brazil, but this was incorrect, as Brazilians say --# "summer time". Reinaldo Goulart, a Sao Paulo businessman active in -+# "summer time". Reinaldo Goulart, a São Paulo businessman active in - # the railroad sector, writes (1999-07-06): - # The subject of time zones is currently a matter of discussion/debate in --# Brazil. Let's say that "the Brasilia time" is considered the --# "official time" because Brasilia is the capital city. --# The other three time zones are called "Brasilia time "minus one" or -+# Brazil. Let's say that "the Brasília time" is considered the -+# "official time" because Brasília is the capital city. -+# The other three time zones are called "Brasília time "minus one" or - # "plus one" or "plus two". As far as I know there is no such - # name/designation as "Eastern Time" or "Central Time". - # So I invented the following (English-language) abbreviations for now. - # Corrections are welcome! - # std dst - # -2:00 FNT FNST Fernando de Noronha --# -3:00 BRT BRST Brasilia -+# -3:00 BRT BRST Brasília - # -4:00 AMT AMST Amazon - # -5:00 ACT ACST Acre - -@@ -84,7 +84,7 @@ - # Argentina: first Sunday in October to first Sunday in April since 1976. - # Double Summer time from 1969 to 1974. Switches at midnight. - --# From U. S. Naval Observatory (1988-01-199): -+# From U. S. Naval Observatory (1988-01-19): - # ARGENTINA 3 H BEHIND UTC - - # From Hernan G. Otero (1995-06-26): -@@ -118,7 +118,7 @@ - # From Hernan G. Otero (1995-06-26): - # These corrections were contributed by InterSoft Argentina S.A., - # obtaining the data from the: --# Talleres de Hidrografia Naval Argentina -+# Talleres de Hidrografía Naval Argentina - # (Argentine Naval Hydrography Institute) - Rule Arg 1989 1993 - Mar Sun>=1 0:00 0 - - Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S -@@ -140,13 +140,13 @@ - Rule Arg 2000 only - Mar 3 0:00 0 - - # - # From Peter Gradelski via Steffen Thorsen (2000-03-01): --# We just checked with our Sao Paulo office and they say the government of -+# We just checked with our São Paulo office and they say the government of - # Argentina decided not to become one of the countries that go on or off DST. - # So Buenos Aires should be -3 hours from GMT at all times. - # --# From Fabian L. Arce Jofre (2000-04-04): -+# From Fabián L. Arce Jofré (2000-04-04): - # The law that claimed DST for Argentina was derogated by President Fernando --# de la Rua on March 2, 2000, because it would make people spend more energy -+# de la Rúa on March 2, 2000, because it would make people spend more energy - # in the winter time, rather than less. The change took effect on March 3. - # - # From Mariano Absatz (2001-06-06): -@@ -179,15 +179,13 @@ - # that Argentina will use DST next year as well, from October to - # March, although exact rules are not given. - # --# From Jesper Norgaard Welen (2007-12-26) -+# From Jesper Nørgaard Welen (2007-12-26) - # The last hurdle of Argentina DST is over, the proposal was approved in --# the lower chamber too (Deputados) with a vote 192 for and 2 against. -+# the lower chamber too (Diputados) with a vote 192 for and 2 against. - # By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to - # the original scanned proposal, where the dates and the zero hours are - # clear and unambiguous...This is the article about final approval: --# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996"> - # http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996 --# </a> - # - # From Paul Eggert (2007-12-22): - # For dates after mid-2008, the following rules are my guesses and -@@ -197,13 +195,8 @@ - # As per message from Carlos Alberto Fonseca Arauz (Nicaragua), - # Argentina will start DST on Sunday October 19, 2008. - # --# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html"> - # http://www.worldtimezone.com/dst_news/dst_news_argentina03.html --# </a> --# OR --# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)"> - # http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish) --# </a> - - # From Rodrigo Severo (2008-10-06): - # Here is some info available at a Gentoo bug related to TZ on Argentina's DST: -@@ -212,48 +205,39 @@ - # Hi, there is a problem with timezone-data-2008e and maybe with - # timezone-data-2008f - # Argentinian law [Number] 25.155 is no longer valid. --# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm"> - # http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm --# </a> - # The new one is law [Number] 26.350 --# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm"> - # http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm --# </a> - # So there is no summer time in Argentina for now. - - # From Mariano Absatz (2008-10-20): --# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina --# From 2008-10-19 until 2009-03-15 --# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01"> -+# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST -+# in Argentina from 2008-10-19 until 2009-03-15. - # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01 --# </a> - # --# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer 2008/2009: --# Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La Pampa, Neuquen, Rio Negro, Chubut, Santa Cruz --# and Tierra del Fuego --# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01"> -+ -+# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer -+# 2008/2009: Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La -+# Pampa, Neuquén, Rio Negro, Chubut, Santa Cruz and Tierra del Fuego - # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01 --# </a> - # --# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying --# it will not apply DST either (even when it was not included in Decree 1705/2008) --# <a href="http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc"> -+# Press release 235 dated Saturday October 18th, from the Government of the -+# Province of Jujuy saying it will not apply DST either (even when it was not -+# included in Decree 1705/2008). - # http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc --# </a> - - # From fullinet (2009-10-18): - # As announced in --# <a hef="http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356"> - # http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356 --# </a> --# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change") -+# (an official .gob.ar) under title: "Sin Cambio de Hora" -+# (English: "No hour change"). - # --# "Por el momento, el Gobierno Nacional resolvio no modificar la hora --# oficial, decision que estaba en estudio para su implementacion el --# domingo 18 de octubre. Desde el Ministerio de Planificacion se anuncio --# que la Argentina hoy, en estas condiciones meteorologicas, no necesita --# la modificacion del huso horario, ya que 2009 nos encuentra con --# crecimiento en la produccion y distribucion energetica." -+# "Por el momento, el Gobierno Nacional resolvió no modificar la hora -+# oficial, decisión que estaba en estudio para su implementación el -+# domingo 18 de octubre. Desde el Ministerio de Planificación se anunció -+# que la Argentina hoy, en estas condiciones meteorológicas, no necesita -+# la modificación del huso horario, ya que 2009 nos encuentra con -+# crecimiento en la producción y distribución energética." - - Rule Arg 2007 only - Dec 30 0:00 1:00 S - Rule Arg 2008 2009 - Mar Sun>=15 0:00 0 - -@@ -267,10 +251,10 @@ - # It's Law No. 7,210. This change is due to a public power emergency, so for - # now we'll assume it's for this year only. - # --# From Paul Eggert (2006-03-22): --# <a href="http://www.spicasc.net/horvera.html"> --# Hora de verano para la Republica Argentina (2003-06-08) --# </a> says that standard time in Argentina from 1894-10-31 -+# From Paul Eggert (2014-08-09): -+# Hora de verano para la República Argentina -+# http://buenasiembra.com.ar/esoterismo/astrologia/hora-de-verano-de-la-republica-argentina-27.html -+# says that standard time in Argentina from 1894-10-31 - # to 1920-05-01 was -4:16:48.25. Go with this more-precise value - # over Shanks & Pottenger. - # -@@ -285,10 +269,10 @@ - # time in October 17th. - # - # Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz, --# Tierra del Fuego, Tucuman. -+# Tierra del Fuego, Tucumán. - # - # From Mariano Absatz (2004-06-14): --# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00 -+# ... this weekend, the Province of Tucumán decided it'd go back to UTC-03:00 - # yesterday midnight (that is, at 24:00 Saturday 12th), since the people's - # annoyance with the change is much higher than the power savings obtained.... - # -@@ -323,49 +307,38 @@ - # Here are articles that Argentina Province San Luis is planning to end DST - # as earlier as upcoming Monday January 21, 2008 or February 2008: - # --# Provincia argentina retrasa reloj y marca diferencia con resto del pais -+# Provincia argentina retrasa reloj y marca diferencia con resto del país - # (Argentine Province delayed clock and mark difference with the rest of the - # country) --# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel"> - # http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel --# </a> - # - # Es inminente que en San Luis atrasen una hora los relojes - # (It is imminent in San Luis clocks one hour delay) --# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414"> --# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414 --# </a> --# --# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html"> -+# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html - # http://www.worldtimezone.net/dst_news/dst_news_argentina02.html --# </a> - --# From Jesper Norgaard Welen (2008-01-18): -+# From Jesper Nørgaard Welen (2008-01-18): - # The page of the San Luis provincial government --# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812"> - # http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812 --# </a> - # confirms what Alex Krivenyshev has earlier sent to the tz - # emailing list about that San Luis plans to return to standard - # time much earlier than the rest of the country. It also - # confirms that upon request the provinces San Juan and Mendoza - # refused to follow San Luis in this change. - # --# The change is supposed to take place Monday the 21.st at 0:00 -+# The change is supposed to take place Monday the 21st at 0:00 - # hours. As far as I understand it if this goes ahead, we need - # a new timezone for San Luis (although there are also documented - # independent changes in the southamerica file of San Luis in - # 1990 and 1991 which has not been confirmed). - --# From Jesper Norgaard Welen (2008-01-25): -+# From Jesper Nørgaard Welen (2008-01-25): - # Unfortunately the below page has become defunct, about the San Luis - # time change. Perhaps because it now is part of a group of pages "Most - # important pages of 2008." - # - # You can use --# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834"> - # http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834 --# </a> - # instead it seems. Or use "Buscador" from the main page of the San Luis - # government, and fill in "huso" and click OK, and you will get 3 pages - # from which the first one is identical to the above. -@@ -385,9 +358,9 @@ - # back in 2004, when these provinces changed to UTC-4 for a few days, I - # mailed them personally and never got an answer). - --# From Paul Eggert (2008-06-30): --# Unless otherwise specified, data are from Shanks & Pottenger through 1992, --# from the IATA otherwise. As noted below, Shanks & Pottenger say that -+# From Paul Eggert (2014-08-12): -+# Unless otherwise specified, data entries are from Shanks & Pottenger through -+# 1992, from the IATA otherwise. As noted below, Shanks & Pottenger say that - # America/Cordoba split into 6 subregions during 1991/1992, one of which - # was America/San_Luis, but we haven't verified this yet so for now we'll - # keep America/Cordoba a single region rather than splitting it into the -@@ -399,14 +372,9 @@ - # to utc-04:00 until the second Saturday in October... - # - # The press release is at --# <a href="http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102"> - # http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102 --# </a> --# (I couldn't find the decree, but --# <a href="http://www.sanluis.gov.ar"> --# www.sanluis.gov.ar --# <a/> --# is the official page for the Province Government). -+# (I couldn't find the decree, but www.sanluis.gov.ar -+# is the official page for the Province Government.) - # - # There's also a note in only one of the major national papers ... - # http://www.lanacion.com.ar/nota.asp?nota_id=1107912 -@@ -423,9 +391,7 @@ - # ...the Province of San Luis is a case in itself. - # - # The Law at --# <a href="http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276>" - # http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276 --# </a> - # is ambiguous because establishes a calendar from the 2nd Sunday in - # October at 0:00 thru the 2nd Saturday in March at 24:00 and the - # complement of that starting on the 2nd Sunday of March at 0:00 and -@@ -454,19 +420,15 @@ - # ... - - # From Alexander Krivenyshev (2010-04-09): --# According to news reports from El Diario de la Republica Province San -+# According to news reports from El Diario de la República Province San - # Luis, Argentina (standard time UTC-04) will keep Daylight Saving Time --# after April 11, 2010--will continue to have same time as rest of -+# after April 11, 2010 - will continue to have same time as rest of - # Argentina (UTC-3) (no DST). - # --# Confirmaron la prórroga del huso horario de verano (Spanish) --# <a href="http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9"> -+# Confirmaron la prórroga del huso horario de verano (Spanish) - # http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9 --# </a> - # or (some English translation): --# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina08.html"> - # http://www.worldtimezone.com/dst_news/dst_news_argentina08.html --# </a> - - # From Mariano Absatz (2010-04-12): - # yes...I can confirm this...and given that San Luis keeps calling -@@ -478,7 +440,7 @@ - # Perhaps San Luis operates on the legal fiction that it is at UTC-4 - # with perpetual summer time, but ordinary usage typically seems to - # just say it's at UTC-3; see, for example, --# <http://es.wikipedia.org/wiki/Hora_oficial_argentina>. -+# http://es.wikipedia.org/wiki/Hora_oficial_argentina - # We've documented similar situations as being plain changes to - # standard time, so let's do that here too. This does not change UTC - # offsets, only tm_isdst and the time zone abbreviations. One minor -@@ -486,20 +448,20 @@ - # setting for time stamps past 2038. - - # From Paul Eggert (2013-02-21): --# Milne says Cordoba time was -4:16:48.2. Round to the nearest second. -+# Milne says Córdoba time was -4:16:48.2. Round to the nearest second. - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - # - # Buenos Aires (BA), Capital Federal (CF), --Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31 -- -4:16:48 - CMT 1920 May # Cordoba Mean Time -+Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31 -+ -4:16:48 - CMT 1920 May # Córdoba Mean Time - -4:00 - ART 1930 Dec - -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT 1999 Oct 3 - -4:00 Arg AR%sT 2000 Mar 3 - -3:00 Arg AR%sT - # --# Cordoba (CB), Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN), -+# Córdoba (CB), Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), - # Chaco (CC), Formosa (FM), Santiago del Estero (SE) - # - # Shanks & Pottenger also make the following claims, which we haven't verified: -@@ -519,7 +481,7 @@ - -4:00 Arg AR%sT 2000 Mar 3 - -3:00 Arg AR%sT - # --# Salta (SA), La Pampa (LP), Neuquen (NQ), Rio Negro (RN) -+# Salta (SA), La Pampa (LP), Neuquén (NQ), Rio Negro (RN) - Zone America/Argentina/Salta -4:21:40 - LMT 1894 Oct 31 - -4:16:48 - CMT 1920 May - -4:00 - ART 1930 Dec -@@ -531,7 +493,7 @@ - -3:00 Arg AR%sT 2008 Oct 18 - -3:00 - ART - # --# Tucuman (TM) -+# Tucumán (TM) - Zone America/Argentina/Tucuman -4:20:52 - LMT 1894 Oct 31 - -4:16:48 - CMT 1920 May - -4:00 - ART 1930 Dec -@@ -642,8 +604,8 @@ - -3:00 - ART - # - # Santa Cruz (SC) --Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31 -- -4:16:48 - CMT 1920 May # Cordoba Mean Time -+Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31 -+ -4:16:48 - CMT 1920 May # Córdoba Mean Time - -4:00 - ART 1930 Dec - -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT 1999 Oct 3 -@@ -653,9 +615,9 @@ - -3:00 Arg AR%sT 2008 Oct 18 - -3:00 - ART - # --# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF) --Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31 -- -4:16:48 - CMT 1920 May # Cordoba Mean Time -+# Tierra del Fuego, Antártida e Islas del Atlántico Sur (TF) -+Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31 -+ -4:16:48 - CMT 1920 May # Córdoba Mean Time - -4:00 - ART 1930 Dec - -4:00 Arg AR%sT 1969 Oct 5 - -3:00 Arg AR%sT 1999 Oct 3 -@@ -686,13 +648,13 @@ - - # From IATA SSIM (1996-02): - # _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS), --# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ), --# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO), -+# Santa Catarina (SC), Paraná (PR), São Paulo (SP), Rio de Janeiro (RJ), -+# Espírito Santo (ES), Minas Gerais (MG), Bahia (BA), Goiás (GO), - # Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL]. - # [The last three states are new to this issue of the IATA SSIM.] - - # From Gwillim Law (1996-10-07): --# Geography, history (Tocantins was part of Goias until 1989), and other -+# Geography, history (Tocantins was part of Goiás until 1989), and other - # sources of time zone information lead me to believe that AL, SE, and TO were - # always in BR1, and so the only change was whether or not they observed DST.... - # The earliest issue of the SSIM I have is 2/91. Each issue from then until -@@ -706,16 +668,14 @@ - # However, some conclusions can be drawn from another IATA manual: the Airline - # Coding Directory, which lists close to 400 airports in Brazil. For each - # airport it gives a time zone which is coded to the SSIM. From that --# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE), --# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do --# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST. -+# information, I'm led to conclude that the states of Amapá (AP), Ceará (CE), -+# Maranhão (MA), Paraíba (PR), Pernambuco (PE), Piauí (PI), and Rio Grande do -+# Norte (RN), and the eastern part of Pará (PA) are all in BR1 without DST. - - # From Marcos Tadeu (1998-09-27): --# <a href="http://pcdsh01.on.br/verao1.html"> --# Brazilian official page --# </a> -+# Brazilian official page <http://pcdsh01.on.br/verao1.html> - --# From Jesper Norgaard (2000-11-03): -+# From Jesper Nørgaard (2000-11-03): - # [For an official list of which regions in Brazil use which time zones, see:] - # http://pcdsh01.on.br/Fusbr.htm - # http://pcdsh01.on.br/Fusbrhv.htm -@@ -748,13 +708,13 @@ - - # From Paul Schulze (2008-06-24): - # ...by law number 11.662 of April 24, 2008 (published in the "Diario --# Oficial da Uniao"...) in Brazil there are changes in the timezones, -+# Oficial da União"...) in Brazil there are changes in the timezones, - # effective today (00:00am at June 24, 2008) as follows: - # --# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the -+# a) The timezone UTC+5 is extinguished, with all the Acre state and the - # part of the Amazonas state that had this timezone now being put to the - # timezone UTC+4 --# b) The whole Para state now is put at timezone UTC+3, instead of just -+# b) The whole Pará state now is put at timezone UTC+3, instead of just - # part of it, as was before. - # - # This change follows a proposal of senator Tiao Viana of Acre state, that -@@ -767,13 +727,11 @@ - - # From Rodrigo Severo (2008-06-24): - # Just correcting the URL: --# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008"> - # https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008 --# </a> - # - # As a result of the above Decree I believe the America/Rio_Branco - # timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall --# be created to represent the...west side of the Para State. I -+# be created to represent the...west side of the Pará State. I - # suggest this new timezone be called Santarem as the most - # important/populated city in the affected area. - # -@@ -782,19 +740,16 @@ - - # From Alex Krivenyshev (2008-06-24): - # This is a quick reference page for New and Old Brazil Time Zones map. --# <a href="http://www.worldtimezone.com/brazil-time-new-old.php"> - # http://www.worldtimezone.com/brazil-time-new-old.php --# </a> - # --# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05 --# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western --# part of Par state is moving to one timezone UTC- 03 (from UTC -04). -+# - 4 time zones replaced by 3 time zones - eliminating time zone UTC-05 -+# (state Acre and the part of the Amazonas will be UTC/GMT-04) - western -+# part of Par state is moving to one timezone UTC-03 (from UTC-04). - - # From Paul Eggert (2002-10-10): - # The official decrees referenced below are mostly taken from --# <a href="http://pcdsh01.on.br/DecHV.html"> --# Decretos sobre o Horario de Verao no Brasil --# </a>. -+# Decretos sobre o Horário de Verão no Brasil. -+# http://pcdsh01.on.br/DecHV.html - - # From Steffen Thorsen (2008-08-29): - # As announced by the government and many newspapers in Brazil late -@@ -806,25 +761,17 @@ - # It has not yet been posted to http://pcdsh01.on.br/DecHV.html - # - # An official page about it: --# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722"> - # http://www.mme.gov.br/site/news/detail.do?newsId=16722 --# </a> - # Note that this link does not always work directly, but must be accessed - # by going to --# <a href="http://www.mme.gov.br/first"> - # http://www.mme.gov.br/first --# </a> - # - # One example link that works directly: --# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54"> - # http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54 - # (Portuguese) --# </a> - # - # We have a written a short article about it as well: --# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html"> - # http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html --# </a> - # - # From Alexander Krivenyshev (2011-10-04): - # State Bahia will return to Daylight savings time this year after 8 years off. -@@ -832,17 +779,12 @@ - # television station in Salvador. - - # In Portuguese: --# <a href="http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html"> - # http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html --# </a> and --# <a href="http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html"> - # http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html --# </a> - - # From Guilherme Bernardes Rodrigues (2011-10-07): - # There is news in the media, however there is still no decree about it. --# I just send a e-mail to Zulmira Brandao at --# <a href="http://pcdsh01.on.br/">http://pcdsh01.on.br/</a> the -+# I just send a e-mail to Zulmira Brandao at http://pcdsh01.on.br/ the - # official agency about time in Brazil, and she confirmed that the old rule is - # still in force. - -@@ -854,9 +796,7 @@ - # - # DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011 - # Link : --# <a href="http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6"> - # http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6 --# </a> - - # From Kelley Cook (2012-10-16): - # The governor of state of Bahia in Brazil announced on Thursday that -@@ -884,42 +824,42 @@ - # For now, assume western Amazonas will change as well. - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S --# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01) --# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10) -+# Decree 20,466 <http://pcdsh01.on.br/HV20466.htm> (1931-10-01) -+# Decree 21,896 <http://pcdsh01.on.br/HV21896.htm> (1932-01-10) - Rule Brazil 1931 only - Oct 3 11:00 1:00 S - Rule Brazil 1932 1933 - Apr 1 0:00 0 - - Rule Brazil 1932 only - Oct 3 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10) -+# Decree 23,195 <http://pcdsh01.on.br/HV23195.htm> (1933-10-10) - # revoked DST. --# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24) --# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13) -+# Decree 27,496 <http://pcdsh01.on.br/HV27496.htm> (1949-11-24) -+# Decree 27,998 <http://pcdsh01.on.br/HV27998.htm> (1950-04-13) - Rule Brazil 1949 1952 - Dec 1 0:00 1:00 S - Rule Brazil 1950 only - Apr 16 1:00 0 - - Rule Brazil 1951 1952 - Apr 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24) -+# Decree 32,308 <http://pcdsh01.on.br/HV32308.htm> (1953-02-24) - Rule Brazil 1953 only - Mar 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30) -+# Decree 34,724 <http://pcdsh01.on.br/HV34724.htm> (1953-11-30) - # revoked DST. --# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18) -+# Decree 52,700 <http://pcdsh01.on.br/HV52700.htm> (1963-10-18) - # established DST from 1963-10-23 00:00 to 1964-02-29 00:00 - # in SP, RJ, GB, MG, ES, due to the prolongation of the drought. --# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03) -+# Decree 53,071 <http://pcdsh01.on.br/HV53071.htm> (1963-12-03) - # extended the above decree to all of the national territory on 12-09. - Rule Brazil 1963 only - Dec 9 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25) -+# Decree 53,604 <http://pcdsh01.on.br/HV53604.htm> (1964-02-25) - # extended summer time by one day to 1964-03-01 00:00 (start of school). - Rule Brazil 1964 only - Mar 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27) -+# Decree 55,639 <http://pcdsh01.on.br/HV55639.htm> (1965-01-27) - Rule Brazil 1965 only - Jan 31 0:00 1:00 S - Rule Brazil 1965 only - Mar 31 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22) -+# Decree 57,303 <http://pcdsh01.on.br/HV57303.htm> (1965-11-22) - Rule Brazil 1965 only - Dec 1 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18) -+# Decree 57,843 <http://pcdsh01.on.br/HV57843.htm> (1966-02-18) - Rule Brazil 1966 1968 - Mar 1 0:00 0 - - Rule Brazil 1966 1967 - Nov 1 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15) -+# Decree 63,429 <http://pcdsh01.on.br/HV63429.htm> (1968-10-15) - # revoked DST. --# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27) -+# Decree 91,698 <http://pcdsh01.on.br/HV91698.htm> (1985-09-27) - Rule Brazil 1985 only - Nov 2 0:00 1:00 S - # Decree 92,310 (1986-01-21) - # Decree 92,463 (1986-03-13) -@@ -927,42 +867,42 @@ - # Decree 93,316 (1986-10-01) - Rule Brazil 1986 only - Oct 25 0:00 1:00 S - Rule Brazil 1987 only - Feb 14 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22) -+# Decree 94,922 <http://pcdsh01.on.br/HV94922.htm> (1987-09-22) - Rule Brazil 1987 only - Oct 25 0:00 1:00 S - Rule Brazil 1988 only - Feb 7 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12) -+# Decree 96,676 <http://pcdsh01.on.br/HV96676.htm> (1988-09-12) - # except for the states of AC, AM, PA, RR, RO, and AP (then a territory) - Rule Brazil 1988 only - Oct 16 0:00 1:00 S - Rule Brazil 1989 only - Jan 29 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21) -+# Decree 98,077 <http://pcdsh01.on.br/HV98077.htm> (1989-08-21) - # with the same exceptions - Rule Brazil 1989 only - Oct 15 0:00 1:00 S - Rule Brazil 1990 only - Feb 11 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17) -+# Decree 99,530 <http://pcdsh01.on.br/HV99530.htm> (1990-09-17) - # adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF. - # Decree 99,629 (1990-10-19) adds BA, MT. - Rule Brazil 1990 only - Oct 21 0:00 1:00 S - Rule Brazil 1991 only - Feb 17 0:00 0 - --# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25) -+# Unnumbered decree <http://pcdsh01.on.br/HV1991.htm> (1991-09-25) - # adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF. - Rule Brazil 1991 only - Oct 20 0:00 1:00 S - Rule Brazil 1992 only - Feb 9 0:00 0 - --# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16) -+# Unnumbered decree <http://pcdsh01.on.br/HV1992.htm> (1992-10-16) - # adopted by same states. - Rule Brazil 1992 only - Oct 25 0:00 1:00 S - Rule Brazil 1993 only - Jan 31 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28) -+# Decree 942 <http://pcdsh01.on.br/HV942.htm> (1993-09-28) - # adopted by same states, plus AM. --# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22; -+# Decree 1,252 <http://pcdsh01.on.br/HV1252.htm> (1994-09-22; - # web page corrected 2004-01-07) adopted by same states, minus AM. --# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14) -+# Decree 1,636 <http://pcdsh01.on.br/HV1636.htm> (1995-09-14) - # adopted by same states, plus MT and TO. --# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13) -+# Decree 1,674 <http://pcdsh01.on.br/HV1674.htm> (1995-10-13) - # adds AL, SE. - Rule Brazil 1993 1995 - Oct Sun>=11 0:00 1:00 S - Rule Brazil 1994 1995 - Feb Sun>=15 0:00 0 - - Rule Brazil 1996 only - Feb 11 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04) -+# Decree 2,000 <http://pcdsh01.on.br/HV2000.htm> (1996-09-04) - # adopted by same states, minus AL, SE. - Rule Brazil 1996 only - Oct 6 0:00 1:00 S - Rule Brazil 1997 only - Feb 16 0:00 0 - -@@ -975,53 +915,51 @@ - # - # Decree 2,317 (1997-09-04), adopted by same states. - Rule Brazil 1997 only - Oct 6 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a> -+# Decree 2,495 <http://pcdsh01.on.br/figuras/HV2495.JPG> - # (1998-02-10) - Rule Brazil 1998 only - Mar 1 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11) -+# Decree 2,780 <http://pcdsh01.on.br/figuras/Hv98.jpg> (1998-09-11) - # adopted by the same states as before. - Rule Brazil 1998 only - Oct 11 0:00 1:00 S - Rule Brazil 1999 only - Feb 21 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a> -+# Decree 3,150 <http://pcdsh01.on.br/figuras/HV3150.gif> - # (1999-08-23) adopted by same states. --# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30) -+# Decree 3,188 <http://pcdsh01.on.br/DecHV99.gif> (1999-09-30) - # adds SE, AL, PB, PE, RN, CE, PI, MA and RR. - Rule Brazil 1999 only - Oct 3 0:00 1:00 S - Rule Brazil 2000 only - Feb 27 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06) -+# Decree 3,592 <http://pcdsh01.on.br/DEC3592.htm> (2000-09-06) - # adopted by the same states as before. --# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13) -+# Decree 3,630 <http://pcdsh01.on.br/Dec3630.jpg> (2000-10-13) - # repeals DST in PE and RR, effective 2000-10-15 00:00. --# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17) -+# Decree 3,632 <http://pcdsh01.on.br/Dec3632.jpg> (2000-10-17) - # repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00. --# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a> -+# Decree 3,916 <http://pcdsh01.on.br/figuras/HV3916.gif> - # (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE. - Rule Brazil 2000 2001 - Oct Sun>=8 0:00 1:00 S - Rule Brazil 2001 2006 - Feb Sun>=15 0:00 0 - - # Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE. --# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a> -+# 4,399 <http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm> - Rule Brazil 2002 only - Nov 3 0:00 1:00 S - # Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO. --# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a> -+# 4,844 <http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm> - Rule Brazil 2003 only - Oct 19 0:00 1:00 S - # Decree 5,223 (2004-10-01) reestablishes DST in MT. --# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a> -+# 5,223 <http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm> - Rule Brazil 2004 only - Nov 2 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19), -+# Decree 5,539 <http://pcdsh01.on.br/DecHV5539.gif> (2005-09-19), - # adopted by the same states as before. - Rule Brazil 2005 only - Oct 16 0:00 1:00 S --# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03), -+# Decree 5,920 <http://pcdsh01.on.br/DecHV5920.gif> (2006-10-03), - # adopted by the same states as before. - Rule Brazil 2006 only - Nov 5 0:00 1:00 S - Rule Brazil 2007 only - Feb 25 0:00 0 - --# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26), -+# Decree 6,212 <http://pcdsh01.on.br/DecHV6212.gif> (2007-09-26), - # adopted by the same states as before. - Rule Brazil 2007 only - Oct Sun>=8 0:00 1:00 S - # From Frederico A. C. Neves (2008-09-10): - # According to this decree --# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm"> - # http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm --# </a> - # [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the - # 3rd Feb Sunday. There is an exception on the return date when this is - # the Carnival Sunday then the return date will be the next Sunday... -@@ -1056,29 +994,29 @@ - -2:00 Brazil FN%sT 2002 Oct 1 - -2:00 - FNT - # Other Atlantic islands have no permanent settlement. --# These include Trindade and Martin Vaz (administratively part of ES), --# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE). -+# These include Trindade and Martim Vaz (administratively part of ES), -+# Rocas Atoll (RN), and the St Peter and St Paul Archipelago (PE). - # Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01; - # it also included the Penedos. - # --# Amapa (AP), east Para (PA) --# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu. --# The division between east and west Para is the river Xingu. -+# Amapá (AP), east Pará (PA) -+# East Pará includes Belém, Marabá, Serra Norte, and São Félix do Xingu. -+# The division between east and west Pará is the river Xingu. - # In the north a very small part from the river Javary (now Jari I guess, --# the border with Amapa) to the Amazon, then to the Xingu. -+# the border with Amapá) to the Amazon, then to the Xingu. - Zone America/Belem -3:13:56 - LMT 1914 - -3:00 Brazil BR%sT 1988 Sep 12 - -3:00 - BRT - # --# west Para (PA) --# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem. -+# west Pará (PA) -+# West Pará includes Altamira, Óbidos, Prainha, Oriximiná, and Santarém. - Zone America/Santarem -3:38:48 - LMT 1914 - -4:00 Brazil AM%sT 1988 Sep 12 -- -4:00 - AMT 2008 Jun 24 00:00 -+ -4:00 - AMT 2008 Jun 24 0:00 - -3:00 - BRT - # --# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN), --# Paraiba (PB) -+# Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN), -+# Paraíba (PB) - Zone America/Fortaleza -2:34:00 - LMT 1914 - -3:00 Brazil BR%sT 1990 Sep 17 - -3:00 - BRT 1999 Sep 30 -@@ -1125,11 +1063,11 @@ - -3:00 Brazil BR%sT 2012 Oct 21 - -3:00 - BRT - # --# Goias (GO), Distrito Federal (DF), Minas Gerais (MG), --# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR), -+# Goiás (GO), Distrito Federal (DF), Minas Gerais (MG), -+# Espírito Santo (ES), Rio de Janeiro (RJ), São Paulo (SP), Paraná (PR), - # Santa Catarina (SC), Rio Grande do Sul (RS) - Zone America/Sao_Paulo -3:06:28 - LMT 1914 -- -3:00 Brazil BR%sT 1963 Oct 23 00:00 -+ -3:00 Brazil BR%sT 1963 Oct 23 0:00 - -3:00 1:00 BRST 1964 - -3:00 Brazil BR%sT - # -@@ -1143,7 +1081,7 @@ - -4:00 - AMT 2004 Oct 1 - -4:00 Brazil AM%sT - # --# Rondonia (RO) -+# Rondônia (RO) - Zone America/Porto_Velho -4:15:36 - LMT 1914 - -4:00 Brazil AM%sT 1988 Sep 12 - -4:00 - AMT -@@ -1155,7 +1093,7 @@ - -4:00 Brazil AM%sT 2000 Oct 15 - -4:00 - AMT - # --# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto -+# east Amazonas (AM): Boca do Acre, Jutaí, Manaus, Floriano Peixoto - # The great circle line from Tabatinga to Porto Acre divides - # east from west Amazonas. - Zone America/Manaus -4:00:04 - LMT 1914 -@@ -1165,19 +1103,19 @@ - -4:00 - AMT - # - # west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant, --# Eirunepe, Envira, Ipixuna -+# Eirunepé, Envira, Ipixuna - Zone America/Eirunepe -4:39:28 - LMT 1914 - -5:00 Brazil AC%sT 1988 Sep 12 - -5:00 - ACT 1993 Sep 28 - -5:00 Brazil AC%sT 1994 Sep 22 -- -5:00 - ACT 2008 Jun 24 00:00 -+ -5:00 - ACT 2008 Jun 24 0:00 - -4:00 - AMT 2013 Nov 10 - -5:00 - ACT - # - # Acre (AC) - Zone America/Rio_Branco -4:31:12 - LMT 1914 - -5:00 Brazil AC%sT 1988 Sep 12 -- -5:00 - ACT 2008 Jun 24 00:00 -+ -5:00 - ACT 2008 Jun 24 0:00 - -4:00 - AMT 2013 Nov 10 - -5:00 - ACT - -@@ -1198,66 +1136,54 @@ - # From Oscar van Vlijmen (2006-10-08): - # http://www.horaoficial.cl/cambio.htm - --# From Jesper Norgaard Welen (2006-10-08): -+# From Jesper Nørgaard Welen (2006-10-08): - # I think that there are some obvious mistakes in the suggested link - # from Oscar van Vlijmen,... for instance entry 66 says that GMT-4 - # ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15 - # (they should have been 1990-09-15 and 1990-09-16 respectively), but - # anyhow it clears up some doubts too. - --# From Paul Eggert (2006-12-27): --# The following data for Chile and America/Santiago are from -+# From Paul Eggert (2014-08-12): -+# The following data entries for Chile and America/Santiago are from - # <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by --# Jesper Norgaard Welen. The data for Pacific/Easter are from Shanks -+# Jesper Nørgaard Welen. The data entries for Pacific/Easter are from Shanks - # & Pottenger, except with DST transitions after 1932 cloned from --# America/Santiago. The pre-1980 Pacific/Easter data are dubious, -+# America/Santiago. The pre-1980 Pacific/Easter data entries are dubious, - # but we have no other source. - --# From German Poo-Caaman~o (2008-03-03): -+# From Germán Poo-Caamaño (2008-03-03): - # Due to drought, Chile extends Daylight Time in three weeks. This - # is one-time change (Saturday 3/29 at 24:00 for America/Santiago - # and Saturday 3/29 at 22:00 for Pacific/Easter) - # The Supreme Decree is located at --# <a href="http://www.shoa.cl/servicios/supremo316.pdf"> - # http://www.shoa.cl/servicios/supremo316.pdf --# </a> - # and the instructions for 2008 are located in: --# <a href="http://www.horaoficial.cl/cambio.htm"> - # http://www.horaoficial.cl/cambio.htm --# </a>. - --# From Jose Miguel Garrido (2008-03-05): -+# From José Miguel Garrido (2008-03-05): - # ... - # You could see the announces of the change on --# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm"> - # http://www.shoa.cl/noticias/2008/04hora/hora.htm --# </a>. - - # From Angel Chiang (2010-03-04): - # Subject: DST in Chile exceptionally extended to 3 April due to earthquake --# <a href="http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098"> - # http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098 --# </a> - # (in Spanish, last paragraph). - # - # This is breaking news. There should be more information available later. - --# From Arthur Daivd Olson (2010-03-06): -+# From Arthur David Olson (2010-03-06): - # Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch. - --# From Glenn Eychaner (2011-03-02): [geychaner@mac.com] -+# From Glenn Eychaner (2011-03-02): - # It appears that the Chilean government has decided to postpone the - # change from summer time to winter time again, by three weeks to April - # 2nd: --# <a href="http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651"> - # http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651 --# </a> - # - # This is not yet reflected in the official "cambio de hora" site, but - # probably will be soon: --# <a href="http://www.horaoficial.cl/cambio.htm"> - # http://www.horaoficial.cl/cambio.htm --# </a> - - # From Arthur David Olson (2011-03-02): - # The emol.com article mentions a water shortage as the cause of the -@@ -1265,9 +1191,7 @@ - - # From Glenn Eychaner (2011-03-28): - # The article: --# <a href="http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}"> - # http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E} --# </a> - # - # In English: - # Chile's clocks will go back an hour this year on the 7th of May instead -@@ -1298,7 +1222,7 @@ - # start date is 2013-09-08 00:00.... - # http://www.gob.cl/informa/2013/02/15/gobierno-anuncia-fechas-de-cambio-de-hora-para-el-ano-2013.htm - --# From Jose Miguel Garrido (2014-02-19): -+# From José Miguel Garrido (2014-02-19): - # Today appeared in the Diario Oficial a decree amending the time change - # dates to 2014. - # DST End: last Saturday of April 2014 (Sun 27 Apr 2014 03:00 UTC) -@@ -1352,7 +1276,7 @@ - # (1996-09) says 1998-03-08. Ignore these. - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Santiago -4:42:46 - LMT 1890 -- -4:42:46 - SMT 1910 # Santiago Mean Time -+ -4:42:46 - SMT 1910 # Santiago Mean Time - -5:00 - CLT 1916 Jul 1 # Chile Time - -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time - -4:00 - CLT 1919 Jul 1 # Chile Time -@@ -1361,16 +1285,16 @@ - -4:00 Chile CL%sT - Zone Pacific/Easter -7:17:44 - LMT 1890 - -7:17:28 - EMT 1932 Sep # Easter Mean Time -- -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time -+ -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter Time - -6:00 Chile EAS%sT - # --# Sala y Gomez Island is like Pacific/Easter. --# Other Chilean locations, including Juan Fernandez Is, San Ambrosio, --# San Felix, and Antarctic bases, are like America/Santiago. -+# Salas y Gómez Island is uninhabited. -+# Other Chilean locations, including Juan Fernández Is, Desventuradas Is, -+# and Antarctic bases, are like America/Santiago. - - # Colombia - --# Milne gives 4:56:16.4 for Bogota time in 1899; round to nearest. He writes, -+# Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest. He writes, - # "A variation of fifteen minutes in the public clocks of Bogota is not rare." - - # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -@@ -1378,37 +1302,37 @@ - Rule CO 1993 only - Apr 4 0:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Bogota -4:56:16 - LMT 1884 Mar 13 -- -4:56:16 - BMT 1914 Nov 23 # Bogota Mean Time -+ -4:56:16 - BMT 1914 Nov 23 # Bogotá Mean Time - -5:00 CO CO%sT # Colombia Time - # Malpelo, Providencia, San Andres - # no information; probably like America/Bogota - --# Curacao -+# Curaçao - --# Milne gives 4:35:46.9 for Curacao mean time; round to nearest. -+# Milne gives 4:35:46.9 for Curaçao mean time; round to nearest. - # - # From Paul Eggert (2006-03-22): - # Shanks & Pottenger say that The Bottom and Philipsburg have been at - # -4:00 since standard time was introduced on 1912-03-02; and that - # Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from - # 1912-02-02 to 1965-01-01. The former is dubious, since S&P also say --# Saba Island has been like Curacao. -+# Saba Island has been like Curaçao. - # This all predates our 1970 cutoff, though. - # --# By July 2007 Curacao and St Maarten are planned to become -+# By July 2007 Curaçao and St Maarten are planned to become - # associated states within the Netherlands, much like Aruba; - # Bonaire, Saba and St Eustatius would become directly part of the - # Netherlands as Kingdom Islands. This won't affect their time zones - # though, as far as we know. - # - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad -+Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad - -4:30 - ANT 1965 # Netherlands Antilles Time - -4:00 - AST - - # From Arthur David Olson (2011-06-15): - # use links for places with new iso3166 codes. --# The name "Lower Prince's Quarter" is both longer than fourteen charaters -+# The name "Lower Prince's Quarter" is both longer than fourteen characters - # and contains an apostrophe; use "Lower_Princes" below. - - Link America/Curacao America/Lower_Princes # Sint Maarten -@@ -1416,7 +1340,7 @@ - - # Ecuador - # --# Milne says the Sentral and South American Telegraph Company used -5:24:15. -+# Milne says the Central and South American Telegraph Company used -5:24:15. - # - # From Paul Eggert (2007-03-04): - # Apparently Ecuador had a failed experiment with DST in 1992. -@@ -1427,10 +1351,10 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Guayaquil -5:19:20 - LMT 1890 - -5:14:00 - QMT 1931 # Quito Mean Time -- -5:00 - ECT # Ecuador Time -+ -5:00 - ECT # Ecuador Time - Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno - -5:00 - ECT 1986 -- -6:00 - GALT # Galapagos Time -+ -6:00 - GALT # Galápagos Time - - # Falklands - -@@ -1439,7 +1363,7 @@ - # the IATA gives 1996-09-08. Go with Shanks & Pottenger. - - # From Falkland Islands Government Office, London (2001-01-22) --# via Jesper Norgaard: -+# via Jesper Nørgaard: - # ... the clocks revert back to Local Mean Time at 2 am on Sunday 15 - # April 2001 and advance one hour to summer time at 2 am on Sunday 2 - # September. It is anticipated that the clocks will revert back at 2 -@@ -1488,9 +1412,7 @@ - # daylight saving time. - # - # One source: --# <a href="http://www.falklandnews.com/public/story.cfm?get=5914&source=3"> - # http://www.falklandnews.com/public/story.cfm?get=5914&source=3 --# </a> - # - # We have gotten this confirmed by a clerk of the legislative assembly: - # Normally the clocks revert to Local Mean Time (UTC/GMT -4 hours) on the -@@ -1531,10 +1453,10 @@ - Rule Falk 2001 2010 - Sep Sun>=1 2:00 1:00 S - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone Atlantic/Stanley -3:51:24 - LMT 1890 -- -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time -- -4:00 Falk FK%sT 1983 May # Falkland Is Time -+ -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time -+ -4:00 Falk FK%sT 1983 May # Falkland Is Time - -3:00 Falk FK%sT 1985 Sep 15 -- -4:00 Falk FK%sT 2010 Sep 5 02:00 -+ -4:00 Falk FK%sT 2010 Sep 5 2:00 - -3:00 - FKST - - # French Guiana -@@ -1545,7 +1467,7 @@ - - # Guyana - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown -+Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown - -3:45 - GBGT 1966 May 26 # Br Guiana Time - -3:45 - GYT 1975 Jul 31 # Guyana Time - -3:00 - GYT 1991 -@@ -1555,8 +1477,8 @@ - # Paraguay - # - # From Paul Eggert (2006-03-22): --# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00, --# and autumn transitions are from 00:00 -> 23:00. Go with pre-1999 -+# Shanks & Pottenger say that spring transitions are 01:00 -> 02:00, -+# and autumn transitions are 00:00 -> 23:00. Go with pre-1999 - # editions of Shanks, and with the IATA, who say transitions occur at 00:00. - # - # From Waldemar Villamayor-Venialbo (2013-09-20): -@@ -1582,9 +1504,8 @@ - # (10-01). - # - # Translated by Gwillim Law (2001-02-27) from --# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm"> --# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01) --# </a>: -+# Noticias, a daily paper in Asunción, Paraguay (2000-10-01): -+# http://www.diarionoticias.com.py/011000/nacional/naciona1.htm - # Starting at 0:00 today, the clock will be set forward 60 minutes, in - # fulfillment of Decree No. 7,273 of the Executive Power.... The time change - # system has been operating for several years. Formerly there was a separate -@@ -1605,21 +1526,18 @@ - Rule Para 2002 2004 - Apr Sun>=1 0:00 0 - - Rule Para 2002 2003 - Sep Sun>=1 0:00 1:00 S - # --# From Jesper Norgaard Welen (2005-01-02): -+# From Jesper Nørgaard Welen (2005-01-02): - # There are several sources that claim that Paraguay made - # a timezone rule change in autumn 2004. - # From Steffen Thorsen (2005-01-05): - # Decree 1,867 (2004-03-05) --# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13) --# <http://www.presidencia.gov.py/decretos/D1867.pdf> -+# From Carlos Raúl Perasso via Jesper Nørgaard Welen (2006-10-13) -+# http://www.presidencia.gov.py/decretos/D1867.pdf - Rule Para 2004 2009 - Oct Sun>=15 0:00 1:00 S - Rule Para 2005 2009 - Mar Sun>=8 0:00 0 - --# From Carlos Raul Perasso (2010-02-18): --# By decree number 3958 issued yesterday ( --# <a href="http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf"> -+# From Carlos Raúl Perasso (2010-02-18): -+# By decree number 3958 issued yesterday - # http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf --# </a> --# ) - # Paraguay changes its DST schedule, postponing the March rule to April and - # modifying the October date. The decree reads: - # ... -@@ -1635,25 +1553,25 @@ - # Paraguay will end DST on 2013-03-24 00:00.... - # http://www.ande.gov.py/interna.php?id=1075 - # --# From Carlos Raul Perasso (2013-03-15): -+# From Carlos Raúl Perasso (2013-03-15): - # The change in Paraguay is now final. Decree number 10780 - # http://www.presidencia.gov.py/uploads/pdf/presidencia-3b86ff4b691c79d4f5927ca964922ec74772ce857c02ca054a52a37b49afc7fb.pdf --# From Carlos Raul Perasso (2014-02-28): -+# From Carlos Raúl Perasso (2014-02-28): - # Decree 1264 can be found at: - # http://www.presidencia.gov.py/archivos/documentos/DECRETO1264_ey9r8zai.pdf - Rule Para 2013 max - Mar Sun>=22 0:00 0 - - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Asuncion -3:50:40 - LMT 1890 -- -3:50:40 - AMT 1931 Oct 10 # Asuncion Mean Time -- -4:00 - PYT 1972 Oct # Paraguay Time -+ -3:50:40 - AMT 1931 Oct 10 # Asunción Mean Time -+ -4:00 - PYT 1972 Oct # Paraguay Time - -3:00 - PYT 1974 Apr - -4:00 Para PY%sT - - # Peru - # --# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net"> --# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a> -+# From Evelyn C. Leeper via Mark Brader (2003-10-26) -+# <news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net>: - # When we were in Peru in 1985-1986, they apparently switched over - # sometime between December 29 and January 3 while we were on the Amazon. - # -@@ -1679,7 +1597,7 @@ - - # South Georgia - # Zone NAME GMTOFF RULES FORMAT [UNTIL] --Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken -+Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken - -2:00 - GST # South Georgia Time - - # South Sandwich Is -@@ -1689,9 +1607,9 @@ - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Paramaribo -3:40:40 - LMT 1911 - -3:40:52 - PMT 1935 # Paramaribo Mean Time -- -3:40:36 - PMT 1945 Oct # The capital moved? -+ -3:40:36 - PMT 1945 Oct # The capital moved? - -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time -- -3:30 - SRT 1984 Oct # Suriname Time -+ -3:30 - SRT 1984 Oct # Suriname Time - -3:00 - SRT - - # Trinidad and Tobago -@@ -1706,7 +1624,7 @@ - Link America/Port_of_Spain America/Guadeloupe - Link America/Port_of_Spain America/Marigot # St Martin (French part) - Link America/Port_of_Spain America/Montserrat --Link America/Port_of_Spain America/St_Barthelemy -+Link America/Port_of_Spain America/St_Barthelemy # St Barthélemy - Link America/Port_of_Spain America/St_Kitts # St Kitts & Nevis - Link America/Port_of_Spain America/St_Lucia - Link America/Port_of_Spain America/St_Thomas # Virgin Islands (US) -@@ -1765,7 +1683,7 @@ - Rule Uruguay 1992 only - Oct 18 0:00 1:00 S - Rule Uruguay 1993 only - Feb 28 0:00 0 - - # From Eduardo Cota (2004-09-20): --# The uruguayan government has decreed a change in the local time.... -+# The Uruguayan government has decreed a change in the local time.... - # http://www.presidencia.gub.uy/decretos/2004091502.htm - Rule Uruguay 2004 only - Sep 19 0:00 1:00 S - # From Steffen Thorsen (2005-03-11): -@@ -1779,14 +1697,14 @@ - # 02:00 local time, official time in Uruguay will be at GMT -2. - Rule Uruguay 2005 only - Oct 9 2:00 1:00 S - Rule Uruguay 2006 only - Mar 12 2:00 0 - --# From Jesper Norgaard Welen (2006-09-06): -+# From Jesper Nørgaard Welen (2006-09-06): - # http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF - Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S - Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28 -- -3:44:44 - MMT 1920 May 1 # Montevideo MT -- -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time -+ -3:44:44 - MMT 1920 May 1 # Montevideo MT -+ -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time - -3:00 Uruguay UY%sT - - # Venezuela -@@ -1794,14 +1712,14 @@ - # From John Stainforth (2007-11-28): - # ... the change for Venezuela originally expected for 2007-12-31 has - # been brought forward to 2007-12-09. The official announcement was --# published today in the "Gaceta Oficial de la Republica Bolivariana --# de Venezuela, numero 38.819" (official document for all laws or -+# published today in the "Gaceta Oficial de la República Bolivariana -+# de Venezuela, número 38.819" (official document for all laws or - # resolution publication) - # http://www.globovision.com/news.php?nid=72208 - - # Zone NAME GMTOFF RULES FORMAT [UNTIL] - Zone America/Caracas -4:27:44 - LMT 1890 - -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time? -- -4:30 - VET 1965 # Venezuela Time -- -4:00 - VET 2007 Dec 9 03:00 -+ -4:30 - VET 1965 # Venezuela Time -+ -4:00 - VET 2007 Dec 9 3:00 - -4:30 - VET ---- ./jdk/test/sun/util/calendar/zi/tzdata/systemv Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/systemv Mon Dec 08 12:29:42 2014 -0800 -@@ -21,7 +21,6 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# <pre> - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - ---- ./jdk/test/sun/util/calendar/zi/tzdata/zone.tab Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/calendar/zi/tzdata/zone.tab Mon Dec 08 12:29:42 2014 -0800 -@@ -21,39 +21,27 @@ - # or visit www.oracle.com if you need additional information or have any - # questions. - # --# TZ zone descriptions -+# tz zone descriptions (deprecated version) - # - # This file is in the public domain, so clarified as of - # 2009-05-17 by Arthur David Olson. - # --# From Paul Eggert (2013-08-14): -+# From Paul Eggert (2014-07-31): -+# This file is intended as a backward-compatibility aid for older programs. -+# New programs should use zone1970.tab. This file is like zone1970.tab (see -+# zone1970.tab's comments), but with the following additional restrictions: - # --# This file contains a table where each row stands for an area that is --# the intersection of a region identified by a country code and of a --# zone where civil clocks have agreed since 1970. The columns of the --# table are as follows: -+# 1. This file contains only ASCII characters. -+# 2. The first data column contains exactly one country code. - # --# 1. ISO 3166 2-character country code. See the file 'iso3166.tab'. --# 2. Latitude and longitude of the area's principal location --# in ISO 6709 sign-degrees-minutes-seconds format, --# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS, --# first latitude (+ is north), then longitude (+ is east). --# 3. Zone name used in value of TZ environment variable. --# Please see the 'Theory' file for how zone names are chosen. --# If multiple zones overlap a country, each has a row in the --# table, with column 1 being duplicated. --# 4. Comments; present if and only if the country has multiple rows. --# --# Columns are separated by a single tab. --# The table is sorted first by country, then an order within the country that --# (1) makes some geographical sense, and --# (2) puts the most populous areas first, where that does not contradict (1). --# --# Lines beginning with '#' are comments. -+# Because of (2), each row stands for an area that is the intersection -+# of a region identified by a country code and of a zone where civil -+# clocks have agreed since 1970; this is a narrower definition than -+# that of zone1970.tab. - # - # This table is intended as an aid for users, to help them select time --# zone data appropriate for their practical needs. It is not intended --# to take or endorse any position on legal or territorial claims. -+# zone data entries appropriate for their practical needs. It is not -+# intended to take or endorse any position on legal or territorial claims. - # - #country- - #code coordinates TZ comments -@@ -72,7 +60,7 @@ - AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills - AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula - AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok --AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie -+AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adelie Land - AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I - AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land - AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF) -@@ -151,7 +139,7 @@ - CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario - CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations - CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut --CA +744144-0944945 America/Resolute Central Standard Time - Resolute, Nunavut -+CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut - CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut - CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut - CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario -@@ -176,13 +164,10 @@ - CI +0519-00402 Africa/Abidjan - CK -2114-15946 Pacific/Rarotonga - CL -3327-07040 America/Santiago most locations --CL -2709-10926 Pacific/Easter Easter Island & Sala y Gomez -+CL -2709-10926 Pacific/Easter Easter Island - CM +0403+00942 Africa/Douala --CN +3114+12128 Asia/Shanghai east China - Beijing, Guangdong, Shanghai, etc. --CN +4545+12641 Asia/Harbin Heilongjiang (except Mohe), Jilin --CN +2934+10635 Asia/Chongqing central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc. --CN +4348+08735 Asia/Urumqi most of Tibet & Xinjiang --CN +3929+07559 Asia/Kashgar west Tibet & Xinjiang -+CN +3114+12128 Asia/Shanghai Beijing Time -+CN +4348+08735 Asia/Urumqi Xinjiang Time - CO +0436-07405 America/Bogota - CR +0956-08405 America/Costa_Rica - CU +2308-08222 America/Havana -@@ -345,7 +330,8 @@ - PF -1732-14934 Pacific/Tahiti Society Islands - PF -0900-13930 Pacific/Marquesas Marquesas Islands - PF -2308-13457 Pacific/Gambier Gambier Islands --PG -0930+14710 Pacific/Port_Moresby -+PG -0930+14710 Pacific/Port_Moresby most locations -+PG -0613+15534 Pacific/Bougainville Bougainville - PH +1435+12100 Asia/Manila - PK +2452+06703 Asia/Karachi - PL +5215+02100 Europe/Warsaw -@@ -364,24 +350,26 @@ - RO +4426+02606 Europe/Bucharest - RS +4450+02030 Europe/Belgrade - RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad --RU +5545+03735 Europe/Moscow Moscow+00 - west Russia -+RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia -+RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea - RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea --RU +5312+05009 Europe/Samara Moscow+00 - Samara, Udmurtia --RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea -+RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia - RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals - RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia - RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk --RU +5345+08707 Asia/Novokuznetsk Moscow+03 - Novokuznetsk -+RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo - RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River - RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal -+RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky - RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River - RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky - RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River - RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island - RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky --RU +5934+15048 Asia/Magadan Moscow+08 - Magadan --RU +5301+15839 Asia/Kamchatka Moscow+08 - Kamchatka --RU +6445+17729 Asia/Anadyr Moscow+08 - Bering Sea -+RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan -+RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is -+RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka -+RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea - RW -0157+03004 Africa/Kigali - SA +2438+04643 Asia/Riyadh - SB -0932+16012 Pacific/Guadalcanal -@@ -448,13 +436,13 @@ - US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon - US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo) - US +340308-1181434 America/Los_Angeles Pacific Time -+US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska - US +611305-1495401 America/Anchorage Alaska Time - US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle - US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle - US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck - US +643004-1652423 America/Nome Alaska Time - west Alaska - US +515248-1763929 America/Adak Aleutian Islands --US +550737-1313435 America/Metlakatla Metlakatla Time - Annette Island - US +211825-1575130 Pacific/Honolulu Hawaii - UY -3453-05611 America/Montevideo - UZ +3940+06648 Asia/Samarkand west Uzbekistan ---- ./jdk/test/sun/util/resources/TimeZone/Bug6317929.java Tue Sep 09 12:00:58 2014 -0700 -+++ ./jdk/test/sun/util/resources/TimeZone/Bug6317929.java Mon Dec 08 12:29:42 2014 -0800 -@@ -122,11 +122,11 @@ - TimeZone Currie = TimeZone.getTimeZone("Australia/Currie"); - tzLocale = locales2Test[0]; - if (!Currie.getDisplayName(false, TimeZone.LONG, tzLocale).equals -- ("Eastern Standard Time (New South Wales)")) -+ ("Australian Eastern Standard Time (New South Wales)")) - throw new RuntimeException("\n" + tzLocale + ": LONG, " + - "non-daylight saving name for " + - "Australia/Currie should be " + -- "\"Eastern Standard Time " + -+ "\"Australian Eastern Standard Time " + - "(New South Wales)\""); - tzLocale = locales2Test[1]; - if (!Currie.getDisplayName(false, TimeZone.LONG, tzLocale).equals ---- ./langtools/.hgtags Mon Sep 08 12:38:00 2014 -0700 -+++ ./langtools/.hgtags Mon Dec 08 12:30:44 2014 -0800 -@@ -312,6 +312,8 @@ - 9239118487dfb47ee850d2cc9b10a0a2e510da3c jdk8u20-b24 - 9239118487dfb47ee850d2cc9b10a0a2e510da3c jdk8u20-b25 - 5e6d409a72327a31b8a8f9aa0b32ef213c8b629c jdk8u20-b26 -+7302299fa9c4fa48af02b6477ff3ccbb01f2d4ea jdk8u20-b31 -+2f9120236904ce5bd8ebfde755c1b2edcc4dfdd6 jdk8u20-b32 - f491f1581f196950c2cb858508dd06601968c417 jdk8u25-b00 - 5bc865e0a2e3c59c1c8bc41e731509e1737ddea1 jdk8u25-b01 - 4dec0c684a9ead80ea2bca6b042682367c1abf90 jdk8u25-b02 -@@ -329,3 +331,19 @@ - a340d68b020585cad7aa6e38d1aafb19ad0e4e07 jdk8u25-b14 - 6e0c19cd42d7c4d307bea26840ee831cbd14e2fc jdk8u25-b15 - 7fa6fa7cc204de988e224c6f8f75e62128fa84cd jdk8u25-b16 -+53ca196be1ae098466976c017b166d4ce180c36f jdk8u25-b17 -+a4f0c6dd8f97d4dd89baf09463c748abea9b3ed7 jdk8u25-b18 -+c4de614efd7affc001715aa5a7040620924ac44a jdk8u25-b31 -+c4bd223559aad3d152968a09d56241175d82c561 jdk8u31-b00 -+6b5e2c190f3023162a33b798e57a0d78e027c843 jdk8u31-b01 -+8b4ea00b438d7f99ecd6a8345cb018d8a0379620 jdk8u31-b02 -+6ce4f2acf83e17d084b9b9bce2ef98438e984064 jdk8u31-b03 -+c271515197807db2f0496945241f0b09885af99b jdk8u31-b04 -+2deb2110e81fc38f5b45842fd478aae168d2d27a jdk8u31-b05 -+fe1980c653be1fa9fb50353c5a5305855dcd7bd4 jdk8u31-b06 -+03b8ef4cf0c00aa040db27c7d8e68fa8b6133afd jdk8u31-b07 -+05824e9d8171e3d50fd5d1a495169cb38b64cf08 jdk8u31-b08 -+26c46688ce4a0909f65dc341df4315bf34a92202 jdk8u31-b09 -+99c3209f228e1f9aa874b6bd0908fd5d9ebf7078 jdk8u31-b10 -+e72be544fa9e247fba3c6bb61e291d80e127a461 jdk8u31-b11 -+c956b12b30ee21a4fc5df1871fa3b01e84310ebe jdk8u31-b12 ---- ./langtools/src/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Sep 08 12:38:00 2014 -0700 -+++ ./langtools/src/share/classes/com/sun/tools/javac/jvm/Gen.java Mon Dec 08 12:30:44 2014 -0800 -@@ -1194,7 +1194,7 @@ - boolean testFirst) { - Env<GenContext> loopEnv = env.dup(loop, new GenContext()); - int startpc = code.entryPoint(); -- if (testFirst) { -+ if (testFirst) { //while or for loop - CondItem c; - if (cond != null) { - code.statBegin(cond.pos); -@@ -1240,6 +1240,9 @@ - code.resolve(c.falseJumps); - } - code.resolve(loopEnv.info.exit); -+ if (loopEnv.info.exit != null) { -+ loopEnv.info.exit.state.defined.excludeFrom(code.nextreg); -+ } - } - - private enum LoopLocalVarRangeEndingPoint { ---- ./langtools/src/share/classes/com/sun/tools/javac/resources/compiler_ja.properties Mon Sep 08 12:38:00 2014 -0700 -+++ ./langtools/src/share/classes/com/sun/tools/javac/resources/compiler_ja.properties Mon Dec 08 12:30:44 2014 -0800 -@@ -1534,7 +1534,7 @@ - compiler.warn.override.unchecked.thrown={0}\n\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3055\u308C\u305F\u30E1\u30BD\u30C3\u30C9\u306F{1}\u3092\u30B9\u30ED\u30FC\u3057\u307E\u305B\u3093 - - # 0: symbol --compiler.warn.override.equals.but.not.hashcode=\u30AF\u30E9\u30B9{0}\u306F\u7B49\u53F7\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u307E\u3059\u304C\u3001\u3053\u306E\u30AF\u30E9\u30B9\u3082\u30B9\u30FC\u30D1\u30FC\u30AF\u30E9\u30B9\u3082hashCode\u30E1\u30BD\u30C3\u30C9\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u307E\u305B\u3093 -+compiler.warn.override.equals.but.not.hashcode=\u30AF\u30E9\u30B9{0}\u306Fequals\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u307E\u3059\u304C\u3001\u3053\u306E\u30AF\u30E9\u30B9\u3082\u3001\u307E\u305F\u3001\u3044\u304B\u306A\u308B\u30B9\u30FC\u30D1\u30FC\u30AF\u30E9\u30B9\u3082\u3001hashCode\u30E1\u30BD\u30C3\u30C9\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u307E\u305B\u3093 - - ## The following are all possible strings for the first argument ({0}) of the - ## above strings. ---- ./langtools/src/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties Mon Sep 08 12:38:00 2014 -0700 -+++ ./langtools/src/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties Mon Dec 08 12:30:44 2014 -0800 -@@ -1534,7 +1534,7 @@ - compiler.warn.override.unchecked.thrown={0}\n\u88AB\u8986\u76D6\u7684\u65B9\u6CD5\u672A\u629B\u51FA{1} - - # 0: symbol --compiler.warn.override.equals.but.not.hashcode=\u7C7B{0}\u8986\u76D6\u4E86\u7B49\u53F7, \u4F46\u8BE5\u7C7B\u6216\u4EFB\u4F55\u8D85\u7C7B\u90FD\u672A\u8986\u76D6 hashCode \u65B9\u6CD5 -+compiler.warn.override.equals.but.not.hashcode=\u7C7B{0}\u8986\u76D6\u4E86 equals, \u4F46\u8BE5\u7C7B\u6216\u4EFB\u4F55\u8D85\u7C7B\u90FD\u672A\u8986\u76D6 hashCode \u65B9\u6CD5 - - ## The following are all possible strings for the first argument ({0}) of the - ## above strings. ---- ./langtools/src/share/classes/com/sun/tools/javac/resources/javac_ja.properties Mon Sep 08 12:38:00 2014 -0700 -+++ ./langtools/src/share/classes/com/sun/tools/javac/resources/javac_ja.properties Mon Dec 08 12:30:44 2014 -0800 -@@ -37,7 +37,7 @@ - javac.opt.Xbootclasspath.p=\u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306B\u4ED8\u52A0\u3059\u308B - javac.opt.Xbootclasspath.a=\u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306B\u8FFD\u52A0\u3059\u308B - javac.opt.endorseddirs=\u63A8\u5968\u898F\u683C\u30D1\u30B9\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B --javac.opt.extdirs=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u307F\u62E1\u5F35\u6A5F\u80FD\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B -+javac.opt.extdirs=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u62E1\u5F35\u6A5F\u80FD\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B - javac.opt.processorpath=\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B - javac.opt.processor=\u5B9F\u884C\u3059\u308B\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u306E\u540D\u524D\u3002\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u691C\u51FA\u51E6\u7406\u3092\u30D0\u30A4\u30D1\u30B9 - javac.opt.parameters=\u30E1\u30BD\u30C3\u30C9\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF\u306B\u30EA\u30D5\u30EC\u30AF\u30B7\u30E7\u30F3\u7528\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u3092\u751F\u6210\u3057\u307E\u3059 ---- ./langtools/src/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties Mon Sep 08 12:38:00 2014 -0700 -+++ ./langtools/src/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties Mon Dec 08 12:30:44 2014 -0800 -@@ -17,7 +17,7 @@ - - main.opt.e=\ -e <regex> -regex <regex> \u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u5185\u306E\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\n (-p\u3068-e\u306F\u6392\u4ED6\u7684) - --main.opt.include=\ -include <regex> \u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u30AF\u30E9\u30B9\u306B\u5206\u6790\u3092\u5236\u9650\u3057\u307E\u3059\n \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\u5206\u6790\u5BFE\u8C61\u30AF\u30E9\u30B9\u306E\n \u30EA\u30B9\u30C8\u304C\u30D5\u30A3\u30EB\u30BF\u51E6\u7406\u3055\u308C\u307E\u3059\u3002\u30D1\u30BF\u30FC\u30F3\u3092\u4F9D\u5B58\u6027\u306B\n \u9069\u7528\u3059\u308B-p\u304A\u3088\u3073-e\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059 -+main.opt.include=\ -include <regex> \u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u30AF\u30E9\u30B9\u306B\u5206\u6790\u3092\u5236\u9650\u3057\u307E\u3059\n \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\u5206\u6790\u5BFE\u8C61\u30AF\u30E9\u30B9\u306E\n \u30EA\u30B9\u30C8\u304C\u30D5\u30A3\u30EB\u30BF\u3055\u308C\u307E\u3059\u3002\u30D1\u30BF\u30FC\u30F3\u3092\u4F9D\u5B58\u6027\u306B\n \u9069\u7528\u3059\u308B-p\u304A\u3088\u3073-e\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059 - - main.opt.P=\ -P -profile \u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u3001\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u542B\u3080\u30D5\u30A1\u30A4\u30EB\u3092\u8868\u793A\u3057\u307E\u3059 - ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./langtools/test/tools/javac/T8049305/WrongStackframeGenerationTest1.java Mon Dec 08 12:30:44 2014 -0800 -@@ -0,0 +1,47 @@ -+/* -+ * Copyright (c) 2014, 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 8049305 -+ * @summary Verification error due to a bad stackmap frame generated by javac -+ */ -+ -+public class WrongStackframeGenerationTest1 { -+ public static void main(String[] args) {} -+ -+ static void foo(){ -+ while (true) { -+ int i = 0; -+ break; -+ } -+ switch (1) { -+ case 1: -+ int j = 0; -+ case 2: -+ bar(); -+ } -+ } -+ -+ static void bar() {} -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./langtools/test/tools/javac/T8049305/WrongStackframeGenerationTest2.java Mon Dec 08 12:30:44 2014 -0800 -@@ -0,0 +1,50 @@ -+/* -+ * Copyright (c) 2014, 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 8049305 -+ * @summary Verification error due to a bad stackmap frame generated by javac -+ */ -+ -+public class WrongStackframeGenerationTest2 { -+ public static void main(String[] args) {} -+ -+ static void foo() { -+ int len; -+ for (;;) { -+ try { -+ len = 1; -+ break; -+ } catch (Exception e) { -+ } -+ } -+ -+ try { -+ if (len == -1) { -+ len = 0; -+ } -+ } finally { -+ } -+ } -+} ---- ./nashorn/.hgtags Mon Sep 08 12:38:15 2014 -0700 -+++ ./nashorn/.hgtags Mon Dec 08 12:30:54 2014 -0800 -@@ -300,6 +300,8 @@ - d3da140e179343011017669a6dbfcc52b0e56f52 jdk8u20-b24 - d3da140e179343011017669a6dbfcc52b0e56f52 jdk8u20-b25 - a23ac9db4227d78b3389e01fa94a8cb695a8fb0a jdk8u20-b26 -+aa30541c5f0db0d03ae6625268642ac71f59c4e6 jdk8u20-b31 -+bc4b5edeb8268a75718e65a84864f09c95b3032c jdk8u20-b32 - 7001e9f95b443a75e432205a29974c05b88e0fdc jdk8u25-b00 - a9f77bd14874d5f8fdf935704dd54a0451f2bc69 jdk8u25-b01 - 895e47783e2ee6823496a5ae84039a4f50311c7d jdk8u25-b02 -@@ -317,3 +319,19 @@ - 6a93467eaa36f732b84ecd463e046c4066fef40c jdk8u25-b14 - 71e8403a2f8279315419adf5f4e9d6b232b6835c jdk8u25-b15 - 1500138ce513600457be6bfa10979ecce6515aa6 jdk8u25-b16 -+4b9cc65dd24d398c4f921c0beccfb8caeaaaf584 jdk8u25-b17 -+cdbf34dbef404b47805c8c85b11c65c2afaa6674 jdk8u25-b18 -+4f9e65387c21831d0ea5726641a302c2ce73a4cc jdk8u25-b31 -+9b692a6e5f22228f822973d35610d37cb9dd9693 jdk8u31-b00 -+6bf53bb6c969678488b1c073d56dd55df1a0ea17 jdk8u31-b01 -+809bf97d7e70dcb3873fcbc10f12f62580b1c11d jdk8u31-b02 -+3505d266634ded89bf9617ff6b385ab8a52f78cf jdk8u31-b03 -+96acff2ad9e19aa80c4f7ed60d87a422bca1ea91 jdk8u31-b04 -+5fc3f210872d365c57ed4e8dba3926d9ed5c7e45 jdk8u31-b05 -+99a3333f7f8489bb3c80f0c0643ae19e549a0941 jdk8u31-b06 -+5ed4fa732b26b6d8e37dfc5bbd00047c5352719b jdk8u31-b07 -+b17ecf341ee544cc5507b9b586c14a13c3adc058 jdk8u31-b08 -+762eaacc45cec3f7d593bedd08fb8de478d4415b jdk8u31-b09 -+c68ba913a0eeea6eb94d9568e9985505ec3408a3 jdk8u31-b10 -+599bd596fa549d882aa8fc5104c322a75a3af728 jdk8u31-b11 -+f36c71a03e4ed467f630cc46d076a5bb4c58b6d5 jdk8u31-b12 |