Hello community,

here is the log from the commit of package python-pure-sasl for 
openSUSE:Factory checked in at 2019-02-24 17:20:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pure-sasl (Old)
 and      /work/SRC/openSUSE:Factory/.python-pure-sasl.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pure-sasl"

Sun Feb 24 17:20:14 2019 rev:5 rq:678109 version:0.6.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pure-sasl/python-pure-sasl.changes        
2018-12-07 14:34:21.127149153 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-pure-sasl.new.28833/python-pure-sasl.changes 
    2019-02-24 17:20:24.300397063 +0100
@@ -1,0 +2,5 @@
+Fri Feb 22 04:57:47 UTC 2019 - Martin Herkt <9+suse@cirno.systems>
+
+- Update to 0.6.1 (no relevant changes in changelog)
+
+-------------------------------------------------------------------

Old:
----
  pure-sasl-0.5.1.tar.gz

New:
----
  pure-sasl-0.6.1.tar.gz

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

Other differences:
------------------
++++++ python-pure-sasl.spec ++++++
--- /var/tmp/diff_new_pack.IzcvLA/_old  2019-02-24 17:20:26.688396638 +0100
+++ /var/tmp/diff_new_pack.IzcvLA/_new  2019-02-24 17:20:26.716396633 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-pure-sasl
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -19,7 +19,7 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %bcond_without test
 Name:           python-pure-sasl
-Version:        0.5.1
+Version:        0.6.1
 Release:        0
 Summary:        Pure Python client SASL implementation
 License:        MIT

++++++ pure-sasl-0.5.1.tar.gz -> pure-sasl-0.6.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/CHANGES.rst 
new/pure-sasl-0.6.1/CHANGES.rst
--- old/pure-sasl-0.5.1/CHANGES.rst     2018-05-19 01:09:41.000000000 +0200
+++ new/pure-sasl-0.6.1/CHANGES.rst     2019-02-21 22:49:12.000000000 +0100
@@ -1,3 +1,17 @@
+0.6.1
+=====
+February 21st, 2019
+
+* Import platform in setup.py
+
+0.6.0
+=====
+February 21st, 2019
+
+* Add support for Windows via winkerberos (#30)
+
+Thanks to @ryan-pip for this release
+
 0.5.1
 =====
 May 18th, 2018
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/PKG-INFO new/pure-sasl-0.6.1/PKG-INFO
--- old/pure-sasl-0.5.1/PKG-INFO        2018-05-19 01:21:47.000000000 +0200
+++ new/pure-sasl-0.6.1/PKG-INFO        2019-02-21 22:52:32.000000000 +0100
@@ -1,10 +1,12 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: pure-sasl
-Version: 0.5.1
+Version: 0.6.1
 Summary: Pure Python client SASL implementation
 Home-page: http://github.com/thobbs/pure-sasl
-Author: Alex Shafer
-Author-email: ashafe...@gmail.com
+Author: Tyler Hobbs
+Author-email: tylerlho...@gmail.com
+Maintainer: Alex Shafer
+Maintainer-email: ashafe...@gmail.com
 License: MIT
 Description: This package provides a reasonably high-level SASL client written
         in pure Python.  New mechanisms may be integrated easily, but by 
default,
@@ -24,3 +26,4 @@
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Provides-Extra: GSSAPI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/pure_sasl.egg-info/PKG-INFO 
new/pure-sasl-0.6.1/pure_sasl.egg-info/PKG-INFO
--- old/pure-sasl-0.5.1/pure_sasl.egg-info/PKG-INFO     2018-05-19 
01:21:46.000000000 +0200
+++ new/pure-sasl-0.6.1/pure_sasl.egg-info/PKG-INFO     2019-02-21 
22:52:32.000000000 +0100
@@ -1,10 +1,12 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: pure-sasl
-Version: 0.5.1
+Version: 0.6.1
 Summary: Pure Python client SASL implementation
 Home-page: http://github.com/thobbs/pure-sasl
-Author: Alex Shafer
-Author-email: ashafe...@gmail.com
+Author: Tyler Hobbs
+Author-email: tylerlho...@gmail.com
+Maintainer: Alex Shafer
+Maintainer-email: ashafe...@gmail.com
 License: MIT
 Description: This package provides a reasonably high-level SASL client written
         in pure Python.  New mechanisms may be integrated easily, but by 
default,
@@ -24,3 +26,4 @@
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Provides-Extra: GSSAPI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/puresasl/__init__.py 
new/pure-sasl-0.6.1/puresasl/__init__.py
--- old/pure-sasl-0.5.1/puresasl/__init__.py    2018-05-19 01:09:41.000000000 
+0200
+++ new/pure-sasl-0.6.1/puresasl/__init__.py    2019-02-21 22:49:58.000000000 
+0100
@@ -1,5 +1,5 @@
-__version__ = '0.5.1'
-__version_info__ = (0, 5, 1)
+__version__ = '0.6.1'
+__version_info__ = (0, 6, 1)
 
 
 class SASLError(Exception):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/puresasl/mechanisms.py 
new/pure-sasl-0.6.1/puresasl/mechanisms.py
--- old/pure-sasl-0.5.1/puresasl/mechanisms.py  2018-05-19 00:38:40.000000000 
+0200
+++ new/pure-sasl-0.6.1/puresasl/mechanisms.py  2019-02-21 21:11:00.000000000 
+0100
@@ -4,6 +4,7 @@
 import random
 import struct
 import sys
+import platform
 
 from puresasl import SASLError, SASLProtocolException, QOP
 
@@ -13,6 +14,15 @@
 except ImportError:
     have_kerberos = False
 
+if platform.system() == 'Windows':
+    try:
+        import winkerberos as kerberos
+        # Fix for different capitalisation in winkerberos method name
+        kerberos.authGSSClientUserName = kerberos.authGSSClientUsername
+        have_kerberos = True
+    except ImportError:
+        have_kerberos = False
+
 PY3 = sys.version_info[0] == 3
 if PY3:
     def _b(s):
@@ -220,7 +230,7 @@
 # functions used in DigestMD5 which were originally defined in the now-removed
 # util module
 
-def bytes(text):
+def to_bytes(text):
     """
     Convert Unicode text to UTF-8 encoded bytes.
 
@@ -252,7 +262,7 @@
 
     :param text: A Unicode or byte string.
     """
-    text = bytes(text)
+    text = to_bytes(text)
     return b'"' + text.replace(b'\\', b'\\\\').replace(b'"', b'\\"') + b'"'
 
 
@@ -301,16 +311,16 @@
         if getattr(self, 'realm', None) is not None:
             resp['realm'] = quote(self.realm)
 
-        resp['username'] = quote(bytes(self.username))
+        resp['username'] = quote(to_bytes(self.username))
         resp['nonce'] = quote(self.nonce)
         if self.nc == 0:
-            self.cnonce = bytes('%s' % random.random())[2:]
+            self.cnonce = to_bytes('%s' % random.random())[2:]
         resp['cnonce'] = quote(self.cnonce)
         self.nc += 1
-        resp['nc'] = bytes('%08x' % self.nc)
+        resp['nc'] = to_bytes('%08x' % self.nc)
 
         self._digest_uri = (
-            bytes(self.sasl.service) + b'/' + bytes(self.sasl.host))
+                to_bytes(self.sasl.service) + b'/' + to_bytes(self.sasl.host))
         resp['digest-uri'] = quote(self._digest_uri)
 
         a2 = b'AUTHENTICATE:' + self._digest_uri
@@ -320,7 +330,7 @@
         resp['response'] = self.gen_hash(a2)
         return b','.join(
             [
-                bytes(k) + b'=' + bytes(v)
+                to_bytes(k) + b'=' + to_bytes(v)
                 for k, v in resp.items()
             ]
         )
@@ -343,7 +353,7 @@
         escaped = False
         for c in challenge:
             if sys.version_info[0] == 3:
-                c = bytes([c])
+                c = to_bytes([c])
             if in_var:
                 if c.isspace():
                     continue
@@ -386,9 +396,9 @@
     def gen_hash(self, a2):
         if not getattr(self, 'key_hash', None):
             key_hash = hashlib.md5()
-            user = bytes(self.username)
-            password = bytes(self.password)
-            realm = bytes(self.realm)
+            user = to_bytes(self.username)
+            password = to_bytes(self.password)
+            realm = to_bytes(self.realm)
             kh = user + b':' + realm + b':' + password
             key_hash.update(kh)
             self.key_hash = key_hash.digest()
@@ -398,14 +408,14 @@
         a1.update(a1h)
         response = hashlib.md5()
         self._a1 = a1.digest()
-        rv = bytes(a1.hexdigest().lower())
+        rv = to_bytes(a1.hexdigest().lower())
         rv += b':' + self.nonce
-        rv += b':' + bytes('%08x' % self.nc)
+        rv += b':' + to_bytes('%08x' % self.nc)
         rv += b':' + self.cnonce
         rv += b':' + self.qop
-        rv += b':' + bytes(hashlib.md5(a2).hexdigest().lower())
+        rv += b':' + to_bytes(hashlib.md5(a2).hexdigest().lower())
         response.update(rv)
-        return bytes(response.hexdigest().lower())
+        return to_bytes(response.hexdigest().lower())
 
     def authenticate_server(self, cmp_hash):
         a2 = b':' + self._digest_uri
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/setup.cfg 
new/pure-sasl-0.6.1/setup.cfg
--- old/pure-sasl-0.5.1/setup.cfg       2018-05-19 01:21:47.000000000 +0200
+++ new/pure-sasl-0.6.1/setup.cfg       2019-02-21 22:52:32.000000000 +0100
@@ -4,5 +4,4 @@
 [egg_info]
 tag_build = 
 tag_date = 0
-tag_svn_revision = 0
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pure-sasl-0.5.1/setup.py new/pure-sasl-0.6.1/setup.py
--- old/pure-sasl-0.5.1/setup.py        2018-03-09 06:03:17.000000000 +0100
+++ new/pure-sasl-0.6.1/setup.py        2019-02-21 22:47:20.000000000 +0100
@@ -3,7 +3,9 @@
 
 from setuptools import setup
 
+import platform
 import puresasl
+import sys
 
 setup(name='pure-sasl',
       version=puresasl.__version__,
@@ -22,7 +24,7 @@
       keywords='sasl',
       packages=['puresasl'],
       extras_require={
-          'GSSAPI': ['kerberos>=1.3.0']
+          'GSSAPI':  ["winkerberos==0.7.0"] if platform.system() == 'Windows' 
else ['kerberos>=1.3.0']
       },
       classifiers=[
           'Development Status :: 4 - Beta',


Reply via email to