Hello community,

here is the log from the commit of package python-ldap for openSUSE:Factory 
checked in at 2013-07-01 15:59:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ldap (Old)
 and      /work/SRC/openSUSE:Factory/.python-ldap.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-ldap"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-ldap/python-ldap.changes  2013-06-19 
17:03:42.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-ldap.new/python-ldap.changes     
2013-07-01 15:59:42.000000000 +0200
@@ -1,0 +2,6 @@
+Thu Jun 27 15:50:55 UTC 2013 - [email protected]
+
+- Update to upstream release 2.4.13
+  * mainly important fixes for ReconnectLDAPObject
+
+-------------------------------------------------------------------

Old:
----
  python-ldap-2.4.10.tar.gz

New:
----
  python-ldap-2.4.13.tar.gz

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

Other differences:
------------------
++++++ python-ldap.spec ++++++
--- /var/tmp/diff_new_pack.ftKkIb/_old  2013-07-01 15:59:43.000000000 +0200
+++ /var/tmp/diff_new_pack.ftKkIb/_new  2013-07-01 15:59:43.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           python-ldap
-Version:        2.4.10
+Version:        2.4.13
 Release:        0
 Summary:        Python LDAP interface
 License:        SUSE-Public-Domain

++++++ python-ldap-2.4.10.tar.gz -> python-ldap-2.4.13.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/CHANGES 
new/python-ldap-2.4.13/CHANGES
--- old/python-ldap-2.4.10/CHANGES      2012-06-07 20:39:42.000000000 +0200
+++ new/python-ldap-2.4.13/CHANGES      2013-06-27 10:49:25.000000000 +0200
@@ -1,4 +1,39 @@
 ----------------------------------------------------------------
+Released 2.4.13 2013-06-27
+
+Changes since 2.4.12:
+
+Lib/
+* ldapobject.ReconnectLDAPObject._apply_last_bind() now sends
+  anonymous simple bind request even if the calling application
+  did not to provoke ldap.SERVER_DOWN in method reconnect()
+* ldapobject.ReconnectLDAPObject.reconnect() now also catches
+  ldap.TIMEOUT exception after reconnection attempt
+* Several other fixes for ldapobject.ReconnectLDAPObject
+  (thanks to Jonathan Giannuzzi)
+
+----------------------------------------------------------------
+Released 2.4.12 2013-06-01
+
+Changes since 2.4.11:
+
+Lib/
+* Truly optional import of PyAsn1Error exception which should
+  not fail anymore if pyasn1 is not installed
+
+----------------------------------------------------------------
+Released 2.4.11 2013-05-27
+
+Changes since 2.4.10:
+
+Lib/
+* ldap.controls.DecodeControlTuples() now simply ignores
+  PyAsn1Error exception raised during decoding malformed
+  response control values in case of non-critical controls.
+* ldif.LDIFWriter.unparse() does not simply skip empty
+  records anymore.
+
+----------------------------------------------------------------
 Released 2.4.10 2012-06-07
 
 Changes since 2.4.9:
@@ -1018,4 +1053,4 @@
 ----------------------------------------------------------------
 Released 1.10alpha3 2000-09-19
 
-$Id: CHANGES,v 1.291 2012/06/07 18:38:47 stroeder Exp $
+$Id: CHANGES,v 1.301 2013/06/27 08:49:25 stroeder Exp $
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Demo/paged_search_ext_s.py 
new/python-ldap-2.4.13/Demo/paged_search_ext_s.py
--- old/python-ldap-2.4.10/Demo/paged_search_ext_s.py   2012-01-14 
15:02:17.000000000 +0100
+++ new/python-ldap-2.4.13/Demo/paged_search_ext_s.py   2013-05-27 
10:06:05.000000000 +0200
@@ -82,8 +82,6 @@
         return result_pages,all_results
 
 
-
-
 class MyLDAPObject(ReconnectLDAPObject,PagedResultsSearchObject):
   pass
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Doc/conf.py 
new/python-ldap-2.4.13/Doc/conf.py
--- old/python-ldap-2.4.10/Doc/conf.py  2011-11-15 17:54:09.000000000 +0100
+++ new/python-ldap-2.4.13/Doc/conf.py  2013-03-25 19:17:58.000000000 +0100
@@ -11,7 +11,7 @@
 # All configuration values have a default value; values that are commented out
 # serve to show the default value.
 #
-# $Id: conf.py,v 1.17 2011/10/14 11:48:31 stroeder Exp $
+# $Id: conf.py,v 1.18 2012/08/09 07:19:12 stroeder Exp $
 
 import sys
 
@@ -44,7 +44,7 @@
 # The short X.Y version.
 version = '2.4'
 # The full version, including alpha/beta/rc tags.
-release = '2.4.4.0'
+release = '2.4.10.0'
 
 # There are two options for replacing |today|: either, you set today to some
 # non-false value, then it is used:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Doc/ldap-controls.rst 
new/python-ldap-2.4.13/Doc/ldap-controls.rst
--- old/python-ldap-2.4.10/Doc/ldap-controls.rst        2012-01-19 
20:42:43.000000000 +0100
+++ new/python-ldap-2.4.13/Doc/ldap-controls.rst        2013-03-25 
19:17:58.000000000 +0100
@@ -1,4 +1,4 @@
-.. % $Id: ldap-controls.rst,v 1.10 2011/07/23 08:15:38 stroeder Exp $
+.. % $Id: ldap-controls.rst,v 1.11 2012/08/09 07:19:30 stroeder Exp $
 
 
 *********************************************************************
@@ -100,7 +100,14 @@
 
       :rfc:`4370` - Lightweight Directory Access Protocol (LDAP): Proxied 
Authorization Control
 
-.. autoclass:: ldap.controls.simple.AuthorizationIdentityControl
+.. autoclass:: ldap.controls.simple.AuthorizationIdentityRequestControl
+   :members:
+
+   .. seealso::
+
+      :rfc:`3829` - Lightweight Directory Access Protocol (LDAP): 
Authorization Identity Request and Response Controls
+
+.. autoclass:: ldap.controls.simple.AuthorizationIdentityResponseControl
    :members:
 
    .. seealso::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/dsml.py 
new/python-ldap-2.4.13/Lib/dsml.py
--- old/python-ldap-2.4.10/Lib/dsml.py  2012-06-07 20:41:12.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/dsml.py  2013-06-27 10:48:43.000000000 +0200
@@ -4,13 +4,13 @@
 
 See http://www.python-ldap.org/ for details.
 
-$Id: dsml.py,v 1.27 2012/06/07 18:40:59 stroeder Exp $
+$Id: dsml.py,v 1.30 2013/06/22 18:35:30 stroeder Exp $
 
 Python compability note:
 Tested with Python 2.0+.
 """
 
-__version__ = '2.4.10'
+__version__ = '2.4.13'
 
 import string,base64
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldap/__init__.py 
new/python-ldap-2.4.13/Lib/ldap/__init__.py
--- old/python-ldap-2.4.10/Lib/ldap/__init__.py 2012-06-07 20:41:12.000000000 
+0200
+++ new/python-ldap-2.4.13/Lib/ldap/__init__.py 2013-06-27 10:48:43.000000000 
+0200
@@ -3,12 +3,12 @@
 
 See http://www.python-ldap.org/ for details.
 
-$Id: __init__.py,v 1.83 2012/06/07 18:40:59 stroeder Exp $
+$Id: __init__.py,v 1.86 2013/06/22 18:35:30 stroeder Exp $
 """
 
 # This is also the overall release version number
 
-__version__ = '2.4.10'
+__version__ = '2.4.13'
 
 import sys
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldap/controls/__init__.py 
new/python-ldap-2.4.13/Lib/ldap/controls/__init__.py
--- old/python-ldap-2.4.10/Lib/ldap/controls/__init__.py        2012-06-07 
20:39:43.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/ldap/controls/__init__.py        2013-05-29 
22:28:03.000000000 +0200
@@ -4,7 +4,7 @@
 
 See http://www.python-ldap.org/ for details.
 
-$Id: __init__.py,v 1.7 2012/04/11 13:31:01 stroeder Exp $
+$Id: __init__.py,v 1.9 2013/05/29 20:27:32 stroeder Exp $
 
 Description:
 The ldap.controls module provides LDAPControl classes.
@@ -36,6 +36,11 @@
 
 import _ldap,ldap
 
+try:
+  from pyasn1.error import PyAsn1Error
+except ImportError:
+  PyAsn1Error = None
+
 
 class RequestControl:
   """
@@ -138,8 +143,13 @@
         raise ldap.UNAVAILABLE_CRITICAL_EXTENSION('Received unexpected 
critical response control with controlType %s' % (repr(controlType)))
     else:
       control.controlType,control.criticality = controlType,criticality
-      control.decodeControlValue(encodedControlValue)
-      result.append(control)
+      try:
+        control.decodeControlValue(encodedControlValue)
+      except PyAsn1Error,e:
+        if criticality:
+          raise e
+      else:
+        result.append(control)
   return result
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldap/controls/simple.py 
new/python-ldap-2.4.13/Lib/ldap/controls/simple.py
--- old/python-ldap-2.4.10/Lib/ldap/controls/simple.py  2012-06-07 
20:39:43.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/ldap/controls/simple.py  2013-03-25 
19:17:58.000000000 +0100
@@ -4,7 +4,7 @@
 
 See http://www.python-ldap.org/ for details.
 
-$Id: simple.py,v 1.8 2012/02/21 16:50:36 stroeder Exp $
+$Id: simple.py,v 1.9 2012/08/09 07:01:20 stroeder Exp $
 """
 
 import struct,ldap
@@ -113,11 +113,6 @@
 class AuthorizationIdentityRequestControl(ValueLessRequestControl):
   """
   Authorization Identity Request and Response Controls
-  
-  Class attributes:
-  
-  authzId
-    decoded authorization identity
   """
   controlType = '2.16.840.1.113730.3.4.16'
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldap/ldapobject.py 
new/python-ldap-2.4.13/Lib/ldap/ldapobject.py
--- old/python-ldap-2.4.10/Lib/ldap/ldapobject.py       2012-06-07 
20:39:43.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/ldap/ldapobject.py       2013-06-27 
10:48:43.000000000 +0200
@@ -3,7 +3,7 @@
 
 See http://www.python-ldap.org/ for details.
 
-\$Id: ldapobject.py,v 1.133 2012/06/02 10:23:15 stroeder Exp $
+\$Id: ldapobject.py,v 1.135 2013/06/25 17:36:03 stroeder Exp $
 
 Compability:
 - Tested with Python 2.0+ but should work with Python 1.5.x
@@ -753,7 +753,10 @@
   def _apply_last_bind(self):
     if self._last_bind!=None:
       func,args,kwargs = self._last_bind
-      func(*args,**kwargs)
+      func(self,*args,**kwargs)
+    else:
+      # Send explicit anon simple bind request to provoke ldap.SERVER_DOWN in 
method reconnect()
+      SimpleLDAPObject.simple_bind_s(self,'','')
 
   def _restore_options(self):
     """Restore all recorded options"""
@@ -782,9 +785,7 @@
           self.start_tls_s()
         # Repeat last simple or SASL bind
         self._apply_last_bind()
-      except ldap.SERVER_DOWN,e:
-        SimpleLDAPObject.unbind_s(self)
-        del self._l
+      except (ldap.SERVER_DOWN,ldap.TIMEOUT),e:
         if __debug__ and self._trace_level>=1:
           self._trace_file.write('*** %d. reconnect to %s failed\n' % (
             self._retry_max-reconnect_counter+1,uri
@@ -795,6 +796,8 @@
         if __debug__ and self._trace_level>=1:
           self._trace_file.write('=> delay %s...\n' % (self._retry_delay))
         time.sleep(self._retry_delay)
+        SimpleLDAPObject.unbind_s(self)
+        del self._l
       else:
         if __debug__ and self._trace_level>=1:
           self._trace_file.write('*** %d. reconnect to %s successful, last 
operation will be repeated\n' % (
@@ -829,7 +832,7 @@
 
   def simple_bind_s(self,*args,**kwargs):
     res = self._apply_method_s(SimpleLDAPObject.simple_bind_s,*args,**kwargs)
-    self._last_bind = (self.simple_bind_s,args,kwargs)
+    self._last_bind = (SimpleLDAPObject.simple_bind_s,args,kwargs)
     return res
 
   def start_tls_s(self,*args,**kwargs):
@@ -842,7 +845,7 @@
     sasl_interactive_bind_s(who, auth) -> None
     """
     res = 
self._apply_method_s(SimpleLDAPObject.sasl_interactive_bind_s,*args,**kwargs)
-    self._last_bind = (self.sasl_interactive_bind_s,args,kwargs)
+    self._last_bind = (SimpleLDAPObject.sasl_interactive_bind_s,args,kwargs)
     return res
 
   def add_ext_s(self,*args,**kwargs):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldap/schema/models.py 
new/python-ldap-2.4.13/Lib/ldap/schema/models.py
--- old/python-ldap-2.4.10/Lib/ldap/schema/models.py    2012-06-07 
20:39:43.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/ldap/schema/models.py    2013-03-25 
19:17:59.000000000 +0100
@@ -3,7 +3,7 @@
 
 See http://www.python-ldap.org/ for details.
 
-\$Id: models.py,v 1.45 2012/03/07 19:07:15 stroeder Exp $
+\$Id: models.py,v 1.46 2012/12/13 08:22:48 stroeder Exp $
 """
 
 import UserDict,ldap.cidict
@@ -124,8 +124,8 @@
     an entry of the object class may have
   kind
     Kind of an object class:
-    0 = ABSTRACT,
-    1 = STRUCTURAL,
+    0 = STRUCTURAL,
+    1 = ABSTRACT,
     2 = AUXILIARY
   sup
     This list of strings contains NAMEs or OIDs of object classes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldap/syncrepl.py 
new/python-ldap-2.4.13/Lib/ldap/syncrepl.py
--- old/python-ldap-2.4.10/Lib/ldap/syncrepl.py 2011-10-26 21:40:17.000000000 
+0200
+++ new/python-ldap-2.4.13/Lib/ldap/syncrepl.py 2013-03-25 19:17:58.000000000 
+0100
@@ -4,7 +4,7 @@
 
 See http://www.python-ldap.org/ for project details.
 
-$Id: syncrepl.py,v 1.2 2011/10/26 19:40:17 stroeder Exp $
+$Id: syncrepl.py,v 1.3 2012/08/09 07:18:31 stroeder Exp $
 """
 
 #__all__ = [
@@ -295,14 +295,13 @@
 class SyncreplConsumer:
     """
     SyncreplConsumer - LDAP syncrepl consumer object.
-
     """
 
     def syncrepl_search(self, base, scope, mode='refreshOnly', cookie=None, 
**search_args):
         """
         Starts syncrepl search operation.
 
-        base, scope, and **search_args are passed along to
+        base, scope, and search_args are passed along to
         self.search_ext unmodified (aside from adding a Sync
         Request control to any serverctrls provided).
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldapurl.py 
new/python-ldap-2.4.13/Lib/ldapurl.py
--- old/python-ldap-2.4.10/Lib/ldapurl.py       2012-06-07 20:41:12.000000000 
+0200
+++ new/python-ldap-2.4.13/Lib/ldapurl.py       2013-06-27 10:48:43.000000000 
+0200
@@ -3,7 +3,7 @@
 
 See http://www.python-ldap.org/ for details.
 
-\$Id: ldapurl.py,v 1.58 2012/06/07 18:40:59 stroeder Exp $
+\$Id: ldapurl.py,v 1.61 2013/06/22 18:35:30 stroeder Exp $
 
 Python compability note:
 This module only works with Python 2.0+ since
@@ -11,7 +11,7 @@
 2. list comprehensions are used.
 """
 
-__version__ = '2.4.10'
+__version__ = '2.4.13'
 
 __all__ = [
   # constants
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/ldif.py 
new/python-ldap-2.4.13/Lib/ldif.py
--- old/python-ldap-2.4.10/Lib/ldif.py  2012-06-07 20:41:12.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/ldif.py  2013-06-27 10:48:43.000000000 +0200
@@ -3,13 +3,13 @@
 
 See http://www.python-ldap.org/ for details.
 
-$Id: ldif.py,v 1.67 2012/06/07 18:40:59 stroeder Exp $
+$Id: ldif.py,v 1.72 2013/06/22 18:35:30 stroeder Exp $
 
 Python compability note:
 Tested with Python 2.0+, but should work with Python 1.5.2+.
 """
 
-__version__ = '2.4.10'
+__version__ = '2.4.13'
 
 __all__ = [
   # constants
@@ -189,9 +189,6 @@
           Either a dictionary holding the LDAP entry {attrtype:record}
           or a list with a modify list like for LDAPObject.modify().
     """
-    if not record:
-      # Simply ignore empty records
-      return
     # Start with line containing the distinguished name
     self._unparseAttrTypeandValue('dn',dn)
     # Dispatch to record type specific writers
@@ -238,6 +235,7 @@
   class and override method handle() to implement something meaningful.
 
   Public class attributes:
+
   records_read
         Counter for records processed so far
   """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/Lib/python_ldap.egg-info/PKG-INFO 
new/python-ldap-2.4.13/Lib/python_ldap.egg-info/PKG-INFO
--- old/python-ldap-2.4.10/Lib/python_ldap.egg-info/PKG-INFO    2012-06-07 
20:41:33.000000000 +0200
+++ new/python-ldap-2.4.13/Lib/python_ldap.egg-info/PKG-INFO    2013-06-27 
10:50:01.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: python-ldap
-Version: 2.4.10
+Version: 2.4.13
 Summary: Python modules for implementing LDAP clients
 Home-page: http://www.python-ldap.org/
 Author: python-ldap project
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-ldap-2.4.10/PKG-INFO 
new/python-ldap-2.4.13/PKG-INFO
--- old/python-ldap-2.4.10/PKG-INFO     2012-06-07 20:41:34.000000000 +0200
+++ new/python-ldap-2.4.13/PKG-INFO     2013-06-27 10:50:01.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: python-ldap
-Version: 2.4.10
+Version: 2.4.13
 Summary: Python modules for implementing LDAP clients
 Home-page: http://www.python-ldap.org/
 Author: python-ldap project

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

Reply via email to