Hello community,

here is the log from the commit of package python-pytz for openSUSE:Factory 
checked in at 2013-09-17 15:02:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pytz (Old)
 and      /work/SRC/openSUSE:Factory/.python-pytz.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pytz"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pytz/python-pytz.changes  2013-05-02 
11:44:37.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-pytz.new/python-pytz.changes     
2013-09-17 15:02:51.000000000 +0200
@@ -1,0 +2,6 @@
+Tue Sep 17 08:54:44 UTC 2013 - dmuel...@suse.com
+
+- update to 2013d:
+  * sync with timezone 2013d release
+
+-------------------------------------------------------------------

Old:
----
  pytz-2013b.tar.bz2

New:
----
  pytz-2013d.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-pytz.spec ++++++
--- /var/tmp/diff_new_pack.7vadOL/_old  2013-09-17 15:02:52.000000000 +0200
+++ /var/tmp/diff_new_pack.7vadOL/_new  2013-09-17 15:02:52.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           python-pytz
-Version:        2013b
+Version:        2013d
 Release:        0
 Url:            http://pytz.sourceforge.net
 Summary:        World timezone definitions, modern and historical

++++++ pytz-2013b.tar.bz2 -> pytz-2013d.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/PKG-INFO new/pytz-2013d/PKG-INFO
--- old/pytz-2013b/PKG-INFO     2013-03-14 18:51:06.000000000 +0100
+++ new/pytz-2013d/PKG-INFO     2013-09-05 16:15:05.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: pytz
-Version: 2013b
+Version: 2013d
 Summary: World timezone definitions, modern and historical
 Home-page: http://pytz.sourceforge.net
 Author: Stuart Bishop
@@ -542,7 +542,7 @@
           it. pytz is a direct translation of the Olson timezone database, and
           changes to the timezone definitions need to be made to this source.
           If you find errors they should be reported to the time zone mailing
-          list, linked from http://www.twinsun.com/tz/tz-link.htm
+          list, linked from http://www.iana.org/time-zones.
         
         
         Further Reading
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/README.txt new/pytz-2013d/README.txt
--- old/pytz-2013b/README.txt   2013-03-14 18:46:41.000000000 +0100
+++ new/pytz-2013d/README.txt   2013-09-05 15:42:03.000000000 +0200
@@ -533,7 +533,7 @@
   it. pytz is a direct translation of the Olson timezone database, and
   changes to the timezone definitions need to be made to this source.
   If you find errors they should be reported to the time zone mailing
-  list, linked from http://www.twinsun.com/tz/tz-link.htm
+  list, linked from http://www.iana.org/time-zones.
 
 
 Further Reading
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz/__init__.py 
new/pytz-2013d/pytz/__init__.py
--- old/pytz-2013b/pytz/__init__.py     2013-03-14 18:46:41.000000000 +0100
+++ new/pytz-2013d/pytz/__init__.py     2013-09-05 15:42:03.000000000 +0200
@@ -9,7 +9,7 @@
 '''
 
 # The Olson database is updated several times a year.
-OLSON_VERSION = '2013b'
+OLSON_VERSION = '2013d'
 VERSION = OLSON_VERSION
 # Version format for a patch release - only one so far.
 #VERSION = OLSON_VERSION + '.2'
@@ -26,10 +26,6 @@
     ]
 
 import sys, datetime, os.path, gettext
-try:
-    from UserDict import DictMixin
-except ImportError:
-    from collections import Mapping as DictMixin
 
 try:
     from pkg_resources import resource_stream
@@ -40,6 +36,7 @@
 from pytz.exceptions import InvalidTimeError
 from pytz.exceptions import NonExistentTimeError
 from pytz.exceptions import UnknownTimeZoneError
+from pytz.lazy import LazyDict, LazyList, LazySet
 from pytz.tzinfo import unpickler
 from pytz.tzfile import build_tzinfo, _byte_string
 
@@ -292,36 +289,8 @@
 _p.__safe_for_unpickling__ = True
 
 
-class _LazyDict(DictMixin):
-    """Dictionary populated on first use."""
-    data = None
-    def __getitem__(self, key):
-        if self.data is None:
-            self._fill()
-        return self.data[key.upper()]
-
-    def __contains__(self, key):
-        if self.data is None:
-            self._fill()
-        return key in self.data
-
-    def __iter__(self):
-        if self.data is None:
-            self._fill()
-        return iter(self.data)
-
-    def __len__(self):
-        if self.data is None:
-            self._fill()
-        return len(self.data)
-
-    def keys(self):
-        if self.data is None:
-            self._fill()
-        return self.data.keys()
-
 
-class _CountryTimezoneDict(_LazyDict):
+class _CountryTimezoneDict(LazyDict):
     """Map ISO 3166 country code to a list of timezone names commonly used
     in that country.
 
@@ -379,7 +348,7 @@
 country_timezones = _CountryTimezoneDict()
 
 
-class _CountryNameDict(_LazyDict):
+class _CountryNameDict(LazyDict):
     '''Dictionary proving ISO3166 code -> English name.
 
     >>> print(country_names['au'])
@@ -1099,10 +1068,10 @@
  'W-SU',
  'WET',
  'Zulu']
-all_timezones = [
-        tz for tz in all_timezones if resource_exists(tz)]
+all_timezones = LazyList(
+        tz for tz in all_timezones if resource_exists(tz))
         
-all_timezones_set = set(all_timezones)
+all_timezones_set = LazySet(all_timezones)
 common_timezones = \
 ['Africa/Abidjan',
  'Africa/Accra',
@@ -1537,7 +1506,7 @@
  'US/Mountain',
  'US/Pacific',
  'UTC']
-common_timezones = [
-        tz for tz in common_timezones if tz in all_timezones]
+common_timezones = LazyList(
+            tz for tz in common_timezones if tz in all_timezones)
         
-common_timezones_set = set(common_timezones)
+common_timezones_set = LazySet(common_timezones)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz/lazy.py new/pytz-2013d/pytz/lazy.py
--- old/pytz-2013b/pytz/lazy.py 1970-01-01 01:00:00.000000000 +0100
+++ new/pytz-2013d/pytz/lazy.py 2013-09-05 15:42:03.000000000 +0200
@@ -0,0 +1,148 @@
+from threading import RLock
+try:
+    from UserDict import DictMixin
+except ImportError:
+    from collections import Mapping as DictMixin
+
+
+_fill_lock = RLock()
+
+
+class LazyDict(DictMixin):
+    """Dictionary populated on first use."""
+    data = None
+    def __getitem__(self, key):
+        if self.data is None:
+            _fill_lock.acquire()
+            try:
+                if self.data is None:
+                    self._fill()
+            finally:
+                _fill_lock.release()
+        return self.data[key.upper()]
+
+    def __contains__(self, key):
+        if self.data is None:
+            _fill_lock.acquire()
+            try:
+                if self.data is None:
+                    self._fill()
+            finally:
+                _fill_lock_release()
+        return key in self.data
+
+    def __iter__(self):
+        if self.data is None:
+            _fill_lock.acquire()
+            try:
+                if self.data is None:
+                    self._fill()
+            finally:
+                _fill_lock.release()
+        return iter(self.data)
+
+    def __len__(self):
+        if self.data is None:
+            _fill_lock.acquire()
+            try:
+                if self.data is None:
+                    self._fill()
+            finally:
+                _fill_lock.release()
+        return len(self.data)
+
+    def keys(self):
+        if self.data is None:
+            _fill_lock.acquire()
+            try:
+                if self.data is None:
+                    self._fill()
+            finally:
+                _fill_lock.release()
+        return self.data.keys()
+
+
+class LazyList(list):
+    """List populated on first use."""
+    def __new__(cls, fill_iter):
+
+        class LazyList(list):
+            _fill_iter = None
+
+        _props = (
+            '__str__', '__repr__', '__unicode__',
+            '__hash__', '__sizeof__', '__cmp__', '__nonzero__',
+            '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__',
+            'append', 'count', 'index', 'extend', 'insert', 'pop', 'remove',
+            'reverse', 'sort', '__add__', '__radd__', '__iadd__', '__mul__',
+            '__rmul__', '__imul__', '__contains__', '__len__', '__nonzero__',
+            '__getitem__', '__setitem__', '__delitem__', '__iter__',
+            '__reversed__', '__getslice__', '__setslice__', '__delslice__')
+
+        def lazy(name):
+            def _lazy(self, *args, **kw):
+                if self._fill_iter is not None:
+                    _fill_lock.acquire()
+                    try:
+                        if self._fill_iter is not None:
+                            list.extend(self, self._fill_iter)
+                            self._fill_iter = None
+                    finally:
+                        _fill_lock.release()
+                real = getattr(list, name)
+                setattr(self.__class__, name, real)
+                return real(self, *args, **kw)
+            return _lazy
+
+        for name in _props:
+            setattr(LazyList, name, lazy(name))
+
+        new_list = LazyList()
+        new_list._fill_iter = fill_iter
+        return new_list
+
+
+class LazySet(set):
+    """Set populated on first use."""
+    def __new__(cls, fill_iter):
+
+        class LazySet(set):
+            _fill_iter = None
+
+        _props = (
+            '__str__', '__repr__', '__unicode__',
+            '__hash__', '__sizeof__', '__cmp__', '__nonzero__',
+            '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__',
+            '__contains__', '__len__', '__nonzero__',
+            '__getitem__', '__setitem__', '__delitem__', '__iter__',
+            '__sub__', '__and__', '__xor__', '__or__',
+            '__rsub__', '__rand__', '__rxor__', '__ror__',
+            '__isub__', '__iand__', '__ixor__', '__ior__',
+            'add', 'clear', 'copy', 'difference', 'difference_update',
+            'discard', 'intersection', 'intersection_update', 'isdisjoint',
+            'issubset', 'issuperset', 'pop', 'remove',
+            'symmetric_difference', 'symmetric_difference_update',
+            'union', 'update')
+
+        def lazy(name):
+            def _lazy(self, *args, **kw):
+                if self._fill_iter is not None:
+                    _fill_lock.acquire()
+                    try:
+                        if self._fill_iter is not None:
+                            for i in self._fill_iter:
+                                set.add(self, i)
+                            self._fill_iter = None
+                    finally:
+                        _fill_lock.release()
+                real = getattr(set, name)
+                setattr(self.__class__, name, real)
+                return real(self, *args, **kw)
+            return _lazy
+
+        for name in _props:
+            setattr(LazySet, name, lazy(name))
+
+        new_set = LazySet()
+        new_set._fill_iter = fill_iter
+        return new_set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz/tests/test_tzinfo.py 
new/pytz-2013d/pytz/tests/test_tzinfo.py
--- old/pytz-2013b/pytz/tests/test_tzinfo.py    2013-03-14 18:46:41.000000000 
+0100
+++ new/pytz-2013d/pytz/tests/test_tzinfo.py    2013-09-05 15:42:03.000000000 
+0200
@@ -21,7 +21,7 @@
 
 # I test for expected version to ensure the correct version of pytz is
 # actually being tested.
-EXPECTED_VERSION='2013b'
+EXPECTED_VERSION='2013d'
 
 fmt = '%Y-%m-%d %H:%M:%S %Z%z'
 
Files old/pytz-2013b/pytz/zoneinfo/Africa/Casablanca and 
new/pytz-2013d/pytz/zoneinfo/Africa/Casablanca differ
Files old/pytz-2013b/pytz/zoneinfo/America/Asuncion and 
new/pytz-2013d/pytz/zoneinfo/America/Asuncion differ
Files old/pytz-2013b/pytz/zoneinfo/Antarctica/Macquarie and 
new/pytz-2013d/pytz/zoneinfo/Antarctica/Macquarie differ
Files old/pytz-2013b/pytz/zoneinfo/Asia/Gaza and 
new/pytz-2013d/pytz/zoneinfo/Asia/Gaza differ
Files old/pytz-2013b/pytz/zoneinfo/Asia/Hebron and 
new/pytz-2013d/pytz/zoneinfo/Asia/Hebron differ
Files old/pytz-2013b/pytz/zoneinfo/Asia/Jerusalem and 
new/pytz-2013d/pytz/zoneinfo/Asia/Jerusalem differ
Files old/pytz-2013b/pytz/zoneinfo/Asia/Tel_Aviv and 
new/pytz-2013d/pytz/zoneinfo/Asia/Tel_Aviv differ
Files old/pytz-2013b/pytz/zoneinfo/Israel and 
new/pytz-2013d/pytz/zoneinfo/Israel differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz/zoneinfo/iso3166.tab 
new/pytz-2013d/pytz/zoneinfo/iso3166.tab
--- old/pytz-2013b/pytz/zoneinfo/iso3166.tab    2013-03-14 18:46:41.000000000 
+0100
+++ new/pytz-2013d/pytz/zoneinfo/iso3166.tab    2013-09-05 15:42:02.000000000 
+0200
@@ -1,16 +1,14 @@
-# <pre>
+# ISO 3166 alpha-2 country codes
+#
 # This file is in the public domain, so clarified as of
 # 2009-05-17 by Arthur David Olson.
-# ISO 3166 alpha-2 country codes
 #
-# From Paul Eggert (2006-09-27):
+# From Paul Eggert (2013-05-27):
 #
 # 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-1 (2007-09-21).  See:
-#     <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html";>
-#     ISO 3166 Maintenance agency (ISO 3166/MA)
-#     </a>.
+#     ISO 3166-1 Newsletter VI-15 (2013-05-10).  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 country,
 #     chosen so that alphabetic sorting of subsets produces helpful lists.
 #     This is not the same as the English name in the ISO 3166 tables.
@@ -20,8 +18,9 @@
 #
 # Lines beginning with `#' are comments.
 #
-# From Arthur David Olson (2011-08-17):
-# Resynchronized today with the ISO 3166 site (adding SS for South Sudan).
+# 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.
 #
 #country-
 #code  country name
@@ -54,7 +53,7 @@
 BM     Bermuda
 BN     Brunei
 BO     Bolivia
-BQ     Bonaire Sint Eustatius & Saba
+BQ     Bonaire, St Eustatius & Saba
 BR     Brazil
 BS     Bahamas
 BT     Bhutan
@@ -235,7 +234,7 @@
 SS     South Sudan
 ST     Sao Tome & Principe
 SV     El Salvador
-SX     Sint Maarten
+SX     St Maarten (Dutch part)
 SY     Syria
 SZ     Swaziland
 TC     Turks & Caicos Is
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz/zoneinfo/zone.tab 
new/pytz-2013d/pytz/zoneinfo/zone.tab
--- old/pytz-2013b/pytz/zoneinfo/zone.tab       2013-03-14 18:46:41.000000000 
+0100
+++ new/pytz-2013d/pytz/zoneinfo/zone.tab       2013-09-05 15:42:02.000000000 
+0200
@@ -1,18 +1,21 @@
-# <pre>
+# TZ zone descriptions
+#
 # This file is in the public domain, so clarified as of
 # 2009-05-17 by Arthur David Olson.
 #
-# TZ zone descriptions
-#
-# From Paul Eggert (1996-08-05):
+# From Paul Eggert (2013-05-27):
 #
 # This file contains a table with the following columns:
 # 1.  ISO 3166 2-character country code.  See the file `iso3166.tab'.
+#     This identifies a country that overlaps the zone.  The country may
+#     overlap other zones and the zone may overlap other countries.
 # 2.  Latitude and longitude of the zone'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).
+#     This location need not lie within the column-1 country.
 # 3.  Zone name used in value of TZ environment variable.
+#     Please see the 'Theory' file for how zone names are chosen.
 # 4.  Comments; present if and only if the country has multiple rows.
 #
 # Columns are separated by a single tab.
@@ -22,6 +25,10 @@
 #
 # 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.
+#
 #country-
 #code  coordinates     TZ                      comments
 AD     +4230+00131     Europe/Andorra
@@ -42,7 +49,6 @@
 AQ     -7824+10654     Antarctica/Vostok       Vostok Station, Lake Vostok
 AQ     -6640+14001     Antarctica/DumontDUrville       Dumont-d'Urville 
Station, Terre Adelie
 AQ     -690022+0393524 Antarctica/Syowa        Syowa Station, E Ongul I
-AQ     -5430+15857     Antarctica/Macquarie    Macquarie Island Station, 
Macquarie Island
 AR     -3436-05827     America/Argentina/Buenos_Aires  Buenos Aires (BA, CF)
 AR     -3124-06411     America/Argentina/Cordoba       most locations (CB, CC, 
CN, ER, FM, MN, SE, SF)
 AR     -2447-06525     America/Argentina/Salta (SA, LP, NQ, RN)
@@ -58,6 +64,7 @@
 AS     -1416-17042     Pacific/Pago_Pago
 AT     +4813+01620     Europe/Vienna
 AU     -3133+15905     Australia/Lord_Howe     Lord Howe Island
+AU     -5430+15857     Antarctica/Macquarie    Macquarie Island
 AU     -4253+14719     Australia/Hobart        Tasmania - most locations
 AU     -3956+14352     Australia/Currie        Tasmania - King Island
 AU     -3749+14458     Australia/Melbourne     Victoria
@@ -216,7 +223,7 @@
 ID     -0507+11924     Asia/Makassar   east & south Borneo, Sulawesi 
(Celebes), Bali, Nusa Tengarra, west Timor
 ID     -0232+14042     Asia/Jayapura   west New Guinea (Irian Jaya) & Malukus 
(Moluccas)
 IE     +5320-00615     Europe/Dublin
-IL     +3146+03514     Asia/Jerusalem
+IL     +314650+0351326 Asia/Jerusalem
 IM     +5409-00428     Europe/Isle_of_Man
 IN     +2232+08822     Asia/Kolkata
 IO     -0720+07225     Indian/Chagos
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz.egg-info/PKG-INFO 
new/pytz-2013d/pytz.egg-info/PKG-INFO
--- old/pytz-2013b/pytz.egg-info/PKG-INFO       2013-03-14 18:50:59.000000000 
+0100
+++ new/pytz-2013d/pytz.egg-info/PKG-INFO       2013-09-05 16:14:52.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: pytz
-Version: 2013b
+Version: 2013d
 Summary: World timezone definitions, modern and historical
 Home-page: http://pytz.sourceforge.net
 Author: Stuart Bishop
@@ -542,7 +542,7 @@
           it. pytz is a direct translation of the Olson timezone database, and
           changes to the timezone definitions need to be made to this source.
           If you find errors they should be reported to the time zone mailing
-          list, linked from http://www.twinsun.com/tz/tz-link.htm
+          list, linked from http://www.iana.org/time-zones.
         
         
         Further Reading
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/pytz.egg-info/SOURCES.txt 
new/pytz-2013d/pytz.egg-info/SOURCES.txt
--- old/pytz-2013b/pytz.egg-info/SOURCES.txt    2013-03-14 18:50:59.000000000 
+0100
+++ new/pytz-2013d/pytz.egg-info/SOURCES.txt    2013-09-05 16:14:52.000000000 
+0200
@@ -5,6 +5,7 @@
 setup.py
 pytz/__init__.py
 pytz/exceptions.py
+pytz/lazy.py
 pytz/reference.py
 pytz/tzfile.py
 pytz/tzinfo.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytz-2013b/setup.py new/pytz-2013d/setup.py
--- old/pytz-2013b/setup.py     2013-03-14 18:46:41.000000000 +0100
+++ new/pytz-2013d/setup.py     2013-09-05 15:42:03.000000000 +0200
@@ -5,7 +5,6 @@
 import pytz, sys, os, os.path
 
 try:
-    import setuptools.command
     from setuptools import setup
 except ImportError:
     from distutils.core import setup

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to