[tz] [PATCH] tzdata: Asia/Ha_Noi: Add new timezone

Paul Eggert eggert at cs.ucla.edu
Sun Oct 5 00:32:06 UTC 2014


Tim Parenti wrote:

> ... ICT referring to different UT offsets for several periods.  Perhaps, prior to
> reunification, NICT and SICT should be used for "North/South Indochina Time"?

It wasn't North vs South.  The new data say that French Indochina mostly used 
UT+7, but sometimes all of French Indochina used UT+8, sometimes just South 
Vietnam, sometimes more of a hodgepodge.  I had independently run into this 
problem and thought of using the abbreviation "IDT" (short for InDochina Time) 
for UT+8 in Indochina to help clear this up.

There's a bigger problem, though.  The new data also tell us that our entries 
for Laos and Cambodia are almost entirely bogus.  We already knew that, and I 
had slated them for 'backzone' anyway, so now's a good time to do that.  As a 
corollary, although we clearly need to fix Asia/Ho_Chi_Minh, we don't need a 
separate Zone for Asia/Hanoi as it is identical to Asia/Bangkok since 1970. 
This will give us a simpler fix and an easier-to-maintain result.

A proposed pair of patches is attached.  The first moves the bogus data for 
Cambodia and Laos to 'backzone'.  The second fixes Asia/Ho_Chi_Minh and adds a 
line to zone1970.tab so that users in Vietnam now have two choices, one for each 
half of the country.

-------------- next part --------------
From 6f7ddecfb036e13a1132181cfaa8ab3e070fc9e8 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert at cs.ucla.edu>
Date: Sat, 4 Oct 2014 16:54:39 -0700
Subject: [PROPOSED PATCH 1/2] Move two out-of-scope Indochina zones to
 'backzone'.

* asia (Asia/Phnom_Penh, Asia/Vientiane):
Change these from zones to links to Asia/Bangkok.
* backzone: Move the old data here.
* checktab.awk (tztab): Remove special cases for these zones.
* NEWS: Document the above.
---
 NEWS         |  7 +++++++
 asia         | 18 ++++++------------
 backzone     | 14 ++++++++++++++
 checktab.awk |  2 --
 4 files changed, 27 insertions(+), 14 deletions(-)

diff --git a/NEWS b/NEWS
index eccb0ed..ceadacd 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,13 @@ News for the tz database
 
 Unreleased, experimental changes
 
+  Changes affecting past time stamps
+
+    Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
+    they differed from existing zones only for older time stamps.  As
+    usual, these changes affect pre-1970 time stamps only.  Their old
+    contents have been moved to the 'backzone' file.
+
   Changes affecting code
 
     If USG_COMPAT is defined and the requested time stamp is standard time,
diff --git a/asia b/asia
index 0be896b..ea03e3f 100644
--- a/asia
+++ b/asia
@@ -271,12 +271,8 @@ Zone	Asia/Rangoon	6:24:40 -	LMT	1880        # or Yangon
 			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
 
@@ -1714,12 +1710,8 @@ 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
@@ -2732,6 +2724,8 @@ Zone	Asia/Dushanbe	4:35:12 -	LMT	1924 May  2
 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.
diff --git a/backzone b/backzone
index f464131..7bb79f3 100644
--- a/backzone
+++ b/backzone
@@ -353,11 +353,25 @@ Zone	Asia/Kashgar	5:03:56	-	LMT	1928     # or Kashi or Kaxgar
 # Portuguese India switched to GMT+5 on 1912-01-01.
 #Zone	Asia/Panaji	[not enough info to complete]
 
+# Cambodia
+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
+
 # Israel
 Zone	Asia/Tel_Aviv	2:19:04 -	LMT	1880
 			2:21	-	JMT	1918
 			2:00	Zion	I%sT
 
+# Laos
+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
+
 # Jan Mayen
 # From Whitman:
 Zone Atlantic/Jan_Mayen	-1:00	-	EGT
diff --git a/checktab.awk b/checktab.awk
index 84c49ff..3da1e9b 100644
--- a/checktab.awk
+++ b/checktab.awk
@@ -28,8 +28,6 @@ BEGIN {
 	  tztab["Asia/Ho_Chi_Minh"] = 1
 	  tztab["Asia/Kuwait"] = 1
 	  tztab["Asia/Muscat"] = 1
-	  tztab["Asia/Phnom_Penh"] = 1
-	  tztab["Asia/Vientiane"] = 1
 	  tztab["Indian/Antananarivo"] = 1
 	  tztab["Indian/Comoro"] = 1
 	  tztab["Indian/Mayotte"] = 1
-- 
1.9.1
-------------- next part --------------
From 03eafae53a8ed5914ea2213a157529c2bd634f23 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert at cs.ucla.edu>
Date: Sat, 4 Oct 2014 17:14:56 -0700
Subject: [PROPOSED PATCH 2/2] Many corrections to data for Vietnam, 1906-1975.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* asia (Asia/Ho_Chi_Minh):
Rewrite the data from 1906 through 1975, using new information
from Trần Tiến Bình's book.  (Thanks to Trần Ngọc Quân.)
New abbreviation IDT for UT+8 in Indochina.
* checktab.awk (tztab): Remove special cases for this zone.
* zone1970.tab: Add Asia/Ho_Chi_Minh, and add Asia/Bangkok commentary.
* NEWS: Document this.
---
 NEWS         |  8 ++++++++
 asia         | 51 +++++++++++++++++++++++++++++++++++++++++++--------
 checktab.awk |  1 -
 zone1970.tab |  3 ++-
 4 files changed, 53 insertions(+), 10 deletions(-)

diff --git a/NEWS b/NEWS
index ceadacd..f4d7942 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,14 @@ Unreleased, experimental changes
 
   Changes affecting past time stamps
 
+    Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976
+    (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
+    authoritative book).  Asia/Ho_Chi_Minh has been added to
+    zone1970.tab, to give tzselect users in Vietnam two choices,
+    since north and south Vietnam disagreed after our 1970 cutoff.
+    The new abbreviation IDT stands for the pre-1976 use of UT+8 in
+    Indochina, to distinguish it better from ICT (UT+7).
+
     Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
     they differed from existing zones only for older time stamps.  As
     usual, these changes affect pre-1970 time stamps only.  Their old
diff --git a/asia b/asia
index ea03e3f..851e6f8 100644
--- a/asia
+++ b/asia
@@ -47,10 +47,11 @@
 #	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
+#	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)
@@ -2763,22 +2764,56 @@ Zone	Asia/Tashkent	4:37:11 -	LMT	1924 May  2
 
 # 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 Minh
 # City"; use Ho_Chi_Minh below to avoid a name of more than 14 characters.
 
-# From Shanks & Pottenger:
+# From Paul Eggert (2014-10-04) after a heads-up from Trần Ngọc Quân:
+# http://www.thoigian.com.vn/?mPage=P80D01
+# lists helpful info, translated by Brian Inglis in:
+# http://mm.icann.org/pipermail/tz/2014-October/021654.html
+# The info cites an authoritative book by Trần Tiến Bình; a 2014 edition is
+# "Lịch Việt Nam: thế kỉ XX-XXI (1901-2100) & niên biểu lịch sử Việt Nam"
+# http://bookaholic.vn/lich-viet-nam-the-ki-xx-xxi-1901-2100-va-bien-bieu-lich-su-viet-nam/
+# I have asked my library for its copy of the book (a 2005 edition)
+# and plan to check that.  In the meantime the summary in Thời gian is much
+# better than Shanks, and is the basis for the following info.
+#
+# 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.
+
 # 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
diff --git a/checktab.awk b/checktab.awk
index 3da1e9b..55baa54 100644
--- a/checktab.awk
+++ b/checktab.awk
@@ -25,7 +25,6 @@ BEGIN {
 	  tztab["America/Cayman"] = 1
 	  tztab["Asia/Aden"] = 1
 	  tztab["Asia/Bahrain"] = 1
-	  tztab["Asia/Ho_Chi_Minh"] = 1
 	  tztab["Asia/Kuwait"] = 1
 	  tztab["Asia/Muscat"] = 1
 	  tztab["Indian/Antananarivo"] = 1
diff --git a/zone1970.tab b/zone1970.tab
index f0e38f1..57c11f1 100644
--- a/zone1970.tab
+++ b/zone1970.tab
@@ -315,7 +315,7 @@ SY	+3330+03618	Asia/Damascus
 TC	+2128-07108	America/Grand_Turk
 TD	+1207+01503	Africa/Ndjamena
 TF	-492110+0701303	Indian/Kerguelen	Kerguelen, St Paul I, Amsterdam I
-TH,KH,LA,VN	+1345+10031	Asia/Bangkok
+TH,KH,LA,VN	+1345+10031	Asia/Bangkok	most of Indochina
 TJ	+3835+06848	Asia/Dushanbe
 TK	-0922-17114	Pacific/Fakaofo
 TL	-0833+12535	Asia/Dili
@@ -363,6 +363,7 @@ UY	-3453-05611	America/Montevideo
 UZ	+3940+06648	Asia/Samarkand	west Uzbekistan
 UZ	+4120+06918	Asia/Tashkent	east Uzbekistan
 VE	+1030-06656	America/Caracas
+VN	+1045+10640	Asia/Ho_Chi_Minh	south Vietnam
 VU	-1740+16825	Pacific/Efate
 WF	-1318-17610	Pacific/Wallis
 WS	-1350-17144	Pacific/Apia
-- 
1.9.1


More information about the tz mailing list