Hello community,

here is the log from the commit of package python3-six for openSUSE:Factory 
checked in at 2014-05-09 06:58:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-six (Old)
 and      /work/SRC/openSUSE:Factory/.python3-six.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python3-six"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python3-six/python3-six.changes  2014-02-26 
06:55:47.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python3-six.new/python3-six.changes     
2014-05-09 06:58:59.000000000 +0200
@@ -1,0 +2,13 @@
+Thu May  8 11:52:39 UTC 2014 - [email protected]
+
+- update to 1.6.1:
+  - Raise an AttributeError for six.moves.X when X is a module not available in
+    the current interpreter.
+  - Raise an AttributeError for every attribute of unimportable modules.
+  - Issue #56: Make the fake modules six.moves puts into sys.modules appear 
not to
+    have a __path__ unless they are loaded.
+  - Pull request #28: Add support for SplitResult.
+  - Issue #55: Add move mapping for xmlrpc.server.
+  - Pull request #29: Add move for urllib.parse.splitquery.
+
+-------------------------------------------------------------------

Old:
----
  six-1.5.2.tar.gz

New:
----
  six-1.6.1.tar.gz

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

Other differences:
------------------
++++++ python3-six.spec ++++++
--- /var/tmp/diff_new_pack.p0j1oH/_old  2014-05-09 06:58:59.000000000 +0200
+++ /var/tmp/diff_new_pack.p0j1oH/_new  2014-05-09 06:58:59.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           python3-six
-Version:        1.5.2
+Version:        1.6.1
 Release:        0
 Url:            http://pypi.python.org/pypi/six/
 Summary:        Python 2 and 3 compatibility utilities

++++++ six-1.5.2.tar.gz -> six-1.6.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/CHANGES new/six-1.6.1/CHANGES
--- old/six-1.5.2/CHANGES       2014-01-06 16:53:20.000000000 +0100
+++ new/six-1.6.1/CHANGES       2014-03-14 04:36:39.000000000 +0100
@@ -1,8 +1,28 @@
-Changelog for Six
------------------
+Changelog for six
+=================
 
 This file lists the changes in each six version.
 
+1.6.1
+-----
+
+- Raise an AttributeError for six.moves.X when X is a module not available in
+  the current interpreter.
+
+1.6.0
+-----
+
+- Raise an AttributeError for every attribute of unimportable modules.
+
+- Issue #56: Make the fake modules six.moves puts into sys.modules appear not 
to
+  have a __path__ unless they are loaded.
+
+- Pull request #28: Add support for SplitResult.
+
+- Issue #55: Add move mapping for xmlrpc.server.
+
+- Pull request #29: Add move for urllib.parse.splitquery.
+
 1.5.2
 -----
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/PKG-INFO new/six-1.6.1/PKG-INFO
--- old/six-1.5.2/PKG-INFO      2014-01-06 16:57:41.000000000 +0100
+++ new/six-1.6.1/PKG-INFO      2014-03-14 04:39:28.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: six
-Version: 1.5.2
+Version: 1.6.1
 Summary: Python 2 and 3 compatibility utilities
 Home-page: http://pypi.python.org/pypi/six/
 Author: Benjamin Peterson
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/documentation/conf.py 
new/six-1.6.1/documentation/conf.py
--- old/six-1.5.2/documentation/conf.py 2013-09-15 15:52:34.000000000 +0200
+++ new/six-1.6.1/documentation/conf.py 2014-01-10 04:44:36.000000000 +0100
@@ -33,7 +33,7 @@
 
 # General information about the project.
 project = u"six"
-copyright = u"2010, Benjamin Peterson"
+copyright = u"2010-2014, Benjamin Peterson"
 
 sys.path.append(os.path.abspath(os.path.join(".", "..")))
 from six import __version__ as six_version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/documentation/index.rst 
new/six-1.6.1/documentation/index.rst
--- old/six-1.5.2/documentation/index.rst       2014-01-04 19:22:33.000000000 
+0100
+++ new/six-1.6.1/documentation/index.rst       2014-03-14 03:56:36.000000000 
+0100
@@ -438,6 +438,28 @@
 functionality; its structure mimics the structure of the Python 3
 :mod:`py3:urllib` package.
 
+.. note::
+
+   In order to make imports of the form::
+
+     from six.moves.cPickle import loads
+
+   work, six places special proxy objects in in :data:`py3:sys.modules`. These
+   proxies lazily load the underlying module when an attribute is fetched. This
+   will fail if the underlying module is not available in the Python
+   interpreter. For example, ``sys.modules["six.moves.winreg"].LoadKey`` would
+   fail on any non-Windows platform. Unfortunately, some applications try to
+   load attributes on every module in :data:`py3:sys.modules`. six mitigates
+   this problem for some applications by pretending attributes on unimportable
+   modules don't exist. This hack doesn't work in every case, though. If you 
are
+   encountering problems with the lazy modules and don't use any from imports
+   directly from ``six.moves`` modules, you can workaround the issue by 
removing
+   the six proxy modules::
+
+     d = [name for name in sys.modules if name.startswith("six.moves.")]
+     for name in d:
+         del sys.modules[name]
+
 Supported renames:
 
 
+------------------------------+-------------------------------------+-------------------------------------+
@@ -545,7 +567,9 @@
 
+------------------------------+-------------------------------------+-------------------------------------+
 | ``winreg``                   | :mod:`py2:_winreg`                  | 
:mod:`py3:winreg`                   |
 
+------------------------------+-------------------------------------+-------------------------------------+
-| ``xmlrpc_client``            | :mod:`py2:xmlrpclib`                | 
:mod:`py3:xmlrpclib`                |
+| ``xmlrpc_client``            | :mod:`py2:xmlrpclib`                | 
:mod:`py3:xmlrpc.client`            |
++------------------------------+-------------------------------------+-------------------------------------+
+| ``xmlrpc_server``            | :mod:`py2:SimpleXMLRPCServer`       | 
:mod:`py3:xmlrpc.server`            |
 
+------------------------------+-------------------------------------+-------------------------------------+
 | ``xrange``                   | :func:`py2:xrange`                  | 
:func:`py3:range`                   |
 
+------------------------------+-------------------------------------+-------------------------------------+
@@ -565,6 +589,7 @@
 :mod:`py2:urlparse`:
 
 * :func:`py2:urlparse.ParseResult`
+* :func:`py2:urlparse.SplitResult`
 * :func:`py2:urlparse.urlparse`
 * :func:`py2:urlparse.urlunparse`
 * :func:`py2:urlparse.parse_qs`
@@ -573,6 +598,7 @@
 * :func:`py2:urlparse.urldefrag`
 * :func:`py2:urlparse.urlsplit`
 * :func:`py2:urlparse.urlunsplit`
+* :func:`py2:urlparse.splitquery`
 
 and :mod:`py2:urllib`:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/six.egg-info/PKG-INFO 
new/six-1.6.1/six.egg-info/PKG-INFO
--- old/six-1.5.2/six.egg-info/PKG-INFO 2014-01-06 16:57:40.000000000 +0100
+++ new/six-1.6.1/six.egg-info/PKG-INFO 2014-03-14 04:39:28.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: six
-Version: 1.5.2
+Version: 1.6.1
 Summary: Python 2 and 3 compatibility utilities
 Home-page: http://pypi.python.org/pypi/six/
 Author: Benjamin Peterson
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/six.py new/six-1.6.1/six.py
--- old/six-1.5.2/six.py        2014-01-06 16:54:24.000000000 +0100
+++ new/six-1.6.1/six.py        2014-03-14 04:38:01.000000000 +0100
@@ -25,7 +25,7 @@
 import types
 
 __author__ = "Benjamin Peterson <[email protected]>"
-__version__ = "1.5.2"
+__version__ = "1.6.1"
 
 
 # Useful for very coarse version differentiation.
@@ -83,7 +83,11 @@
         self.name = name
 
     def __get__(self, obj, tp):
-        result = self._resolve()
+        try:
+            result = self._resolve()
+        except ImportError:
+            # See the nice big comment in MovedModule.__getattr__.
+            raise AttributeError("%s could not be imported " % self.name)
         setattr(obj, self.name, result) # Invokes __set__.
         # This is a bit ugly, but it avoids running this again.
         delattr(obj.__class__, self.name)
@@ -105,15 +109,22 @@
         return _import_module(self.mod)
 
     def __getattr__(self, attr):
-        # Hack around the Django autoreloader. The reloader tries to get
-        # __file__ or __name__ of every module in sys.modules. This doesn't 
work
-        # well if this MovedModule is for an module that is unavailable on this
-        # machine (like winreg on Unix systems). Thus, we pretend __file__ and
-        # __name__ don't exist if the module hasn't been loaded yet. See issues
-        # #51 and #53.
-        if attr in ("__file__", "__name__") and self.mod not in sys.modules:
-            raise AttributeError
-        _module = self._resolve()
+        # It turns out many Python frameworks like to traverse sys.modules and
+        # try to load various attributes. This causes problems if this is a
+        # platform-specific module on the wrong platform, like _winreg on
+        # Unixes. Therefore, we silently pretend unimportable modules do not
+        # have any attributes. See issues #51, #53, #56, and #63 for the full
+        # tales of woe.
+        #
+        # First, if possible, avoid loading the module just to look at 
__file__,
+        # __name__, or __path__.
+        if (attr in ("__file__", "__name__", "__path__") and
+            self.mod not in sys.modules):
+            raise AttributeError(attr)
+        try:
+            _module = self._resolve()
+        except ImportError:
+            raise AttributeError(attr)
         value = getattr(_module, attr)
         setattr(self, attr, value)
         return value
@@ -222,6 +233,7 @@
     MovedModule("urllib", __name__ + ".moves.urllib", __name__ + 
".moves.urllib"),
     MovedModule("urllib_robotparser", "robotparser", "urllib.robotparser"),
     MovedModule("xmlrpc_client", "xmlrpclib", "xmlrpc.client"),
+    MovedModule("xmlrpc_server", "xmlrpclib", "xmlrpc.server"),
     MovedModule("winreg", "_winreg"),
 ]
 for attr in _moved_attributes:
@@ -241,6 +253,7 @@
 
 _urllib_parse_moved_attributes = [
     MovedAttribute("ParseResult", "urlparse", "urllib.parse"),
+    MovedAttribute("SplitResult", "urlparse", "urllib.parse"),
     MovedAttribute("parse_qs", "urlparse", "urllib.parse"),
     MovedAttribute("parse_qsl", "urlparse", "urllib.parse"),
     MovedAttribute("urldefrag", "urlparse", "urllib.parse"),
@@ -254,6 +267,7 @@
     MovedAttribute("unquote", "urllib", "urllib.parse"),
     MovedAttribute("unquote_plus", "urllib", "urllib.parse"),
     MovedAttribute("urlencode", "urllib", "urllib.parse"),
+    MovedAttribute("splitquery", "urllib", "urllib.parse"),
 ]
 for attr in _urllib_parse_moved_attributes:
     setattr(Module_six_moves_urllib_parse, attr.name, attr)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/six-1.5.2/test_six.py new/six-1.6.1/test_six.py
--- old/six-1.5.2/test_six.py   2014-01-05 17:21:00.000000000 +0100
+++ new/six-1.6.1/test_six.py   2014-03-14 04:30:44.000000000 +0100
@@ -113,7 +113,8 @@
         if item_name.startswith("dbm_gnu") and not have_gdbm:
             py.test.skip("requires gdbm")
         raise
-    assert item_name in dir(six.moves)
+    if sys.version_info[:2] >= (2, 6):
+        assert item_name in dir(six.moves)
 
 
 @py.test.mark.parametrize("item_name",

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to