[Pkg-golang-commits] [golang] 01/02: Backport CL 37964 for tzdata 2017a changes (Closes: #859583)

Michael Hudson-Doyle mwhudson-guest at moszumanska.debian.org
Wed Apr 5 00:21:39 UTC 2017


This is an automated email from the git hooks/post-receive script.

mwhudson-guest pushed a commit to branch golang-1.7
in repository golang.

commit 6b22414fb5e2d5bcf14fa45089bb5eb2d45bbe3d
Author: Michael Hudson-Doyle <michael.hudson at canonical.com>
Date:   Wed Apr 5 11:54:27 2017 +1200

    Backport CL 37964 for tzdata 2017a changes (Closes: #859583)
---
 debian/changelog                            |  6 ++
 debian/patches/cl-37964--tzdata-2017a.patch | 89 +++++++++++++++++++++++++++++
 debian/patches/series                       |  1 +
 3 files changed, 96 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 53a0952..6999bd2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+golang-1.7 (1.7.4-2) UNRELEASED; urgency=medium
+
+  * Backport CL 37964 for tzdata 2017a changes (Closes: #859583)
+
+ -- Michael Hudson-Doyle <michael.hudson at ubuntu.com>  Wed, 05 Apr 2017 11:53:49 +1200
+
 golang-1.7 (1.7.4-1) unstable; urgency=medium
 
   * Update to 1.7.4 upstream release (Closes: #846545)
diff --git a/debian/patches/cl-37964--tzdata-2017a.patch b/debian/patches/cl-37964--tzdata-2017a.patch
new file mode 100644
index 0000000..3dd936f
--- /dev/null
+++ b/debian/patches/cl-37964--tzdata-2017a.patch
@@ -0,0 +1,89 @@
+From 91563ced5897faf729a34be7081568efcfedda31 Mon Sep 17 00:00:00 2001
+From: Alberto Donizetti <alb.donizetti at gmail.com>
+Date: Thu, 09 Mar 2017 13:20:54 +0100
+Subject: [PATCH] time: make the ParseInLocation test more robust
+
+The tzdata 2017a update (2017-02-28) changed the abbreviation of the
+Asia/Baghdad time zone (used in TestParseInLocation) from 'AST' to the
+numeric '+03'.
+
+Update the test so that it skips the checks if we're using a recent
+tzdata release.
+
+Fixes #19457
+
+Change-Id: I45d705a5520743a611bdd194dc8f8d618679980c
+Reviewed-on: https://go-review.googlesource.com/37964
+Reviewed-by: Ian Lance Taylor <iant at golang.org>
+Run-TryBot: Ian Lance Taylor <iant at golang.org>
+TryBot-Result: Gobot Gobot <gobot at golang.org>
+---
+
+--- a/src/time/format_test.go
++++ b/src/time/format_test.go
+@@ -244,27 +244,45 @@
+ 	}
+ }
+ 
++// TestParseInLocation checks that the Parse and ParseInLocation
++// functions do not get confused by the fact that AST (Arabia Standard
++// Time) and AST (Atlantic Standard Time) are different time zones,
++// even though they have the same abbreviation.
++//
++// ICANN has been slowly phasing out invented abbreviation in favor of
++// numeric time zones (for example, the Asia/Baghdad time zone
++// abbreviation got changed from AST to +03 in the 2017a tzdata
++// release); but we still want to make sure that the time package does
++// not get confused on systems with slightly older tzdata packages.
+ func TestParseInLocation(t *testing.T) {
+-	// Check that Parse (and ParseInLocation) understand that
+-	// Feb 01 AST (Arabia Standard Time) and Feb 01 AST (Atlantic Standard Time)
+-	// are in different time zones even though both are called AST
+ 
+ 	baghdad, err := LoadLocation("Asia/Baghdad")
+ 	if err != nil {
+ 		t.Fatal(err)
+ 	}
+ 
+-	t1, err := ParseInLocation("Jan 02 2006 MST", "Feb 01 2013 AST", baghdad)
++	var t1, t2 Time
++
++	t1, err = ParseInLocation("Jan 02 2006 MST", "Feb 01 2013 AST", baghdad)
+ 	if err != nil {
+ 		t.Fatal(err)
+ 	}
+-	t2 := Date(2013, February, 1, 00, 00, 00, 0, baghdad)
+-	if t1 != t2 {
+-		t.Fatalf("ParseInLocation(Feb 01 2013 AST, Baghdad) = %v, want %v", t1, t2)
+-	}
++
+ 	_, offset := t1.Zone()
+-	if offset != 3*60*60 {
+-		t.Fatalf("ParseInLocation(Feb 01 2013 AST, Baghdad).Zone = _, %d, want _, %d", offset, 3*60*60)
++
++	// A zero offset means that ParseInLocation did not recognize the
++	// 'AST' abbreviation as matching the current location (Baghdad,
++	// where we'd expect a +03 hrs offset); likely because we're using
++	// a recent tzdata release (2017a or newer).
++	// If it happens, skip the Baghdad test.
++	if offset != 0 {
++		t2 = Date(2013, February, 1, 00, 00, 00, 0, baghdad)
++		if t1 != t2 {
++			t.Fatalf("ParseInLocation(Feb 01 2013 AST, Baghdad) = %v, want %v", t1, t2)
++		}
++		if offset != 3*60*60 {
++			t.Fatalf("ParseInLocation(Feb 01 2013 AST, Baghdad).Zone = _, %d, want _, %d", offset, 3*60*60)
++		}
+ 	}
+ 
+ 	blancSablon, err := LoadLocation("America/Blanc-Sablon")
+@@ -272,6 +290,9 @@
+ 		t.Fatal(err)
+ 	}
+ 
++	// In this case 'AST' means 'Atlantic Standard Time', and we
++	// expect the abbreviation to correctly match the american
++	// location.
+ 	t1, err = ParseInLocation("Jan 02 2006 MST", "Feb 01 2013 AST", blancSablon)
+ 	if err != nil {
+ 		t.Fatal(err)
diff --git a/debian/patches/series b/debian/patches/series
index 14031e5..1d1fde3 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 cl-29995--tzdata-2016g.patch
+cl-37964--tzdata-2017a.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-golang/golang.git



More information about the pkg-golang-commits mailing list