Hello community,

here is the log from the commit of package python-enum34 for openSUSE:Factory 
checked in at 2015-05-10 10:52:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-enum34 (Old)
 and      /work/SRC/openSUSE:Factory/.python-enum34.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-enum34"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-enum34/python-enum34.changes      
2015-01-08 23:01:39.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-enum34.new/python-enum34.changes 
2015-05-10 10:52:48.000000000 +0200
@@ -1,0 +2,6 @@
+Mon May  4 14:35:13 UTC 2015 - [email protected]
+
+- update to version 1.0.4:
+  * no upstream changelog
+
+-------------------------------------------------------------------

Old:
----
  enum34-1.0.tar.gz

New:
----
  enum34-1.0.4.tar.gz

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

Other differences:
------------------
++++++ python-enum34.spec ++++++
--- /var/tmp/diff_new_pack.7i56oQ/_old  2015-05-10 10:52:49.000000000 +0200
+++ /var/tmp/diff_new_pack.7i56oQ/_new  2015-05-10 10:52:49.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-enum34
 #
-# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           python-enum34
-Version:        1.0
+Version:        1.0.4
 Release:        0
 Url:            https://pypi.python.org/pypi/enum34
 Summary:        Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7, 2.6, 2.5, 
and 2.4

++++++ enum34-1.0.tar.gz -> enum34-1.0.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enum34-1.0/PKG-INFO new/enum34-1.0.4/PKG-INFO
--- old/enum34-1.0/PKG-INFO     2014-05-05 19:38:46.000000000 +0200
+++ new/enum34-1.0.4/PKG-INFO   2014-11-26 17:56:16.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: enum34
-Version: 1.0
+Version: 1.0.4
 Summary: Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7, 2.6, 2.5, and 2.4
 Home-page: https://pypi.python.org/pypi/enum34
 Author: Ethan Furman
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enum34-1.0/enum/__init__.py 
new/enum34-1.0.4/enum/__init__.py
--- old/enum34-1.0/enum/__init__.py     2014-03-04 09:16:47.000000000 +0100
+++ new/enum34-1.0.4/enum/__init__.py   2014-11-26 17:53:04.000000000 +0100
@@ -4,6 +4,8 @@
 
 __all__ = ['Enum', 'IntEnum', 'unique']
 
+version = 1, 0, 4
+
 pyver = float('%s.%s' % _sys.version_info[:2])
 
 try:
@@ -27,6 +29,12 @@
     # in Python 3 it's just str, but was missing in 3.1
     basestring = str
 
+try:
+    unicode
+except NameError:
+    # In Python 3 unicode no longer exists (it's just str)
+    unicode = str
+
 class _RouteClassAttributeToGetattr(object):
     """Route attribute access on a class to __getattr__.
 
@@ -163,7 +171,10 @@
         __order__ = classdict.get('__order__')
         if __order__ is None:
             if pyver < 3.0:
-                __order__ = [name for (name, value) in sorted(members.items(), 
key=lambda item: item[1])]
+                try:
+                    __order__ = [name for (name, value) in 
sorted(members.items(), key=lambda item: item[1])]
+                except TypeError:
+                    __order__ = [name for name in sorted(members.keys())]
             else:
                 __order__ = classdict._member_names
         else:
@@ -401,6 +412,13 @@
         * A mapping of member name -> value.
 
         """
+        if pyver < 3.0:
+            # if class_name is unicode, attempt a conversion to ASCII
+            if isinstance(class_name, unicode):
+                try:
+                    class_name = class_name.encode('ascii')
+                except UnicodeEncodeError:
+                    raise TypeError('%r is not representable in ASCII' % 
class_name)
         metacls = cls.__class__
         if type is None:
             bases = (cls, )
@@ -637,8 +655,13 @@
 del __str__
 
 def __dir__(self):
-    added_behavior = [m for m in self.__class__.__dict__ if m[0] != '_']
-    return (['__class__', '__doc__', '__module__', 'name', 'value'] + 
added_behavior)
+    added_behavior = [
+            m
+            for cls in self.__class__.mro()
+            for m in cls.__dict__
+            if m[0] != '_'
+            ]
+    return (['__class__', '__doc__', '__module__', ] + added_behavior)
 temp_enum_dict['__dir__'] = __dir__
 del __dir__
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enum34-1.0/enum/enum.py new/enum34-1.0.4/enum/enum.py
--- old/enum34-1.0/enum/enum.py 2014-03-04 09:16:47.000000000 +0100
+++ new/enum34-1.0.4/enum/enum.py       2014-11-26 17:53:04.000000000 +0100
@@ -4,6 +4,8 @@
 
 __all__ = ['Enum', 'IntEnum', 'unique']
 
+version = 1, 0, 4
+
 pyver = float('%s.%s' % _sys.version_info[:2])
 
 try:
@@ -27,6 +29,12 @@
     # in Python 3 it's just str, but was missing in 3.1
     basestring = str
 
+try:
+    unicode
+except NameError:
+    # In Python 3 unicode no longer exists (it's just str)
+    unicode = str
+
 class _RouteClassAttributeToGetattr(object):
     """Route attribute access on a class to __getattr__.
 
@@ -163,7 +171,10 @@
         __order__ = classdict.get('__order__')
         if __order__ is None:
             if pyver < 3.0:
-                __order__ = [name for (name, value) in sorted(members.items(), 
key=lambda item: item[1])]
+                try:
+                    __order__ = [name for (name, value) in 
sorted(members.items(), key=lambda item: item[1])]
+                except TypeError:
+                    __order__ = [name for name in sorted(members.keys())]
             else:
                 __order__ = classdict._member_names
         else:
@@ -401,6 +412,13 @@
         * A mapping of member name -> value.
 
         """
+        if pyver < 3.0:
+            # if class_name is unicode, attempt a conversion to ASCII
+            if isinstance(class_name, unicode):
+                try:
+                    class_name = class_name.encode('ascii')
+                except UnicodeEncodeError:
+                    raise TypeError('%r is not representable in ASCII' % 
class_name)
         metacls = cls.__class__
         if type is None:
             bases = (cls, )
@@ -637,8 +655,13 @@
 del __str__
 
 def __dir__(self):
-    added_behavior = [m for m in self.__class__.__dict__ if m[0] != '_']
-    return (['__class__', '__doc__', '__module__', 'name', 'value'] + 
added_behavior)
+    added_behavior = [
+            m
+            for cls in self.__class__.mro()
+            for m in cls.__dict__
+            if m[0] != '_'
+            ]
+    return (['__class__', '__doc__', '__module__', ] + added_behavior)
 temp_enum_dict['__dir__'] = __dir__
 del __dir__
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enum34-1.0/enum/test_enum.py 
new/enum34-1.0.4/enum/test_enum.py
--- old/enum34-1.0/enum/test_enum.py    2014-04-29 06:04:17.000000000 +0200
+++ new/enum34-1.0.4/enum/test_enum.py  2014-11-26 17:53:14.000000000 +0100
@@ -178,7 +178,7 @@
             IDES_OF_MARCH = 2013, 3, 15
         self.Holiday = Holiday
 
-    if pyver >= 2.6:     # cannot specify custom `dir` on this version
+    if pyver >= 2.6:     # cannot specify custom `dir` on previous versions
         def test_dir_on_class(self):
             Season = self.Season
             self.assertEqual(
@@ -194,6 +194,18 @@
                 set(['__class__', '__doc__', '__module__', 'name', 'value']),
                 )
 
+        def test_dir_on_sub_with_behavior_on_super(self):
+            # see issue22506
+            class SuperEnum(Enum):
+                def invisible(self):
+                    return "did you see me?"
+            class SubEnum(SuperEnum):
+                sample = 5
+            self.assertEqual(
+                    set(dir(SubEnum.sample)),
+                    set(['__class__', '__doc__', '__module__', 'name', 
'value', 'invisible']),
+                    )
+
     if pyver >= 2.7:    # OrderedDict first available here
         def test_members_is_ordereddict_if_ordered(self):
             class Ordered(Enum):
@@ -448,6 +460,7 @@
             with self.assertRaises(TypeError):
                 class Color(Enum):
                     @property
+
                     def red(self):
                         return 'redder'
                     red = 1
@@ -641,6 +654,17 @@
                 [Season.SUMMER, Season.WINTER, Season.AUTUMN, Season.SPRING],
                 )
 
+    def test_iteration_order_with_unorderable_values(self):
+        class Complex(Enum):
+            a = complex(7, 9)
+            b = complex(3.14, 2)
+            c = complex(1, -1)
+            d = complex(-77, 32)
+        self.assertEqual(
+                list(Complex),
+                [Complex.a, Complex.b, Complex.c, Complex.d],
+                )
+
     def test_programatic_function_string(self):
         SummerMonth = Enum('SummerMonth', 'june july august')
         lst = list(SummerMonth)
@@ -867,6 +891,31 @@
             self.assertTrue(e in SummerMonth)
             self.assertTrue(type(e) is SummerMonth)
 
+    def test_programmatic_function_unicode_class(self):
+        if pyver < 3.0:
+            class_names = unicode('SummerMonth'), 
'S\xfcmm\xe9rM\xf6nth'.decode('latin1')
+        else:
+            class_names = 'SummerMonth', 'S\xfcmm\xe9rM\xf6nth'
+        for i, class_name in enumerate(class_names):
+            if pyver < 3.0 and i == 1:
+                self.assertRaises(TypeError, Enum, class_name, unicode('june 
july august'))
+            else:
+                SummerMonth = Enum(class_name, unicode('june july august'))
+                lst = list(SummerMonth)
+                self.assertEqual(len(lst), len(SummerMonth))
+                self.assertEqual(len(SummerMonth), 3, SummerMonth)
+                self.assertEqual(
+                        [SummerMonth.june, SummerMonth.july, 
SummerMonth.august],
+                        lst,
+                        )
+                for i, month in enumerate(unicode('june july august').split()):
+                    i += 1
+                    e = SummerMonth(i)
+                    self.assertEqual(e.value, i)
+                    self.assertEqual(e.name, month)
+                    self.assertTrue(e in SummerMonth)
+                    self.assertTrue(type(e) is SummerMonth)
+
     def test_subclassing(self):
         if isinstance(Name, Exception):
             raise Name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/enum34-1.0/setup.py new/enum34-1.0.4/setup.py
--- old/enum34-1.0/setup.py     2014-05-05 19:38:43.000000000 +0200
+++ new/enum34-1.0.4/setup.py   2014-11-26 17:55:47.000000000 +0100
@@ -10,7 +10,7 @@
 long_desc = open('enum/doc/enum.rst').read()
 
 setup( name='enum34',
-       version='1.0',
+       version='1.0.4',
        url='https://pypi.python.org/pypi/enum34',
        packages=['enum'],
        package_data={


Reply via email to