Hello community,

here is the log from the commit of package python-nbxmpp for openSUSE:Factory 
checked in at 2015-01-12 09:49:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-nbxmpp (Old)
 and      /work/SRC/openSUSE:Factory/.python-nbxmpp.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-nbxmpp"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-nbxmpp/python-nbxmpp.changes      
2014-10-18 09:10:25.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-nbxmpp.new/python-nbxmpp.changes 
2015-01-12 09:49:49.000000000 +0100
@@ -1,0 +2,8 @@
+Sat Jan 10 13:20:09 UTC 2015 - sor.ale...@meowr.ru
+
+- Update to 0.5.2:
+  * Fix BOSH HTTP requests.
+  * Fix handling of binary SASL data for mechanism GSSAPI.
+  * Update MAM namespace.
+
+-------------------------------------------------------------------

Old:
----
  nbxmpp-0.5.1.tar.gz

New:
----
  nbxmpp-0.5.2.tar.gz

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

Other differences:
------------------
++++++ python-nbxmpp.spec ++++++
--- /var/tmp/diff_new_pack.NeuvFa/_old  2015-01-12 09:49:50.000000000 +0100
+++ /var/tmp/diff_new_pack.NeuvFa/_new  2015-01-12 09:49:50.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-nbxmpp
 #
-# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %define _name   nbxmpp
 Name:           python-nbxmpp
-Version:        0.5.1
+Version:        0.5.2
 Release:        0
 Summary:        XMPP library by Gajim team
 License:        GPL-3.0+
@@ -64,6 +64,7 @@
 
 %files doc
 %defattr(-,root,root)
-%doc ChangeLog README doc/apidocs doc/examples
+%doc ChangeLog README
+%doc doc/apidocs doc/examples
 
 %changelog

++++++ nbxmpp-0.5.1.tar.gz -> nbxmpp-0.5.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/ChangeLog new/nbxmpp-0.5.2/ChangeLog
--- old/nbxmpp-0.5.1/ChangeLog  2014-10-04 22:02:36.000000000 +0200
+++ new/nbxmpp-0.5.2/ChangeLog  2014-12-29 14:48:29.000000000 +0100
@@ -1,3 +1,9 @@
+python-nbxmpp 0.5.2 (27 December 2014)
+
+  * Fix BOSH HTTP requests
+  * Fix handling of binary SASL data for mechanism GSSAPI
+  * Update MAM namespace
+
 python-nbxmpp 0.5.1 (04 October 2014)
 
   * Fix printing network errors in a non-utf-8 console
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/PKG-INFO new/nbxmpp-0.5.2/PKG-INFO
--- old/nbxmpp-0.5.1/PKG-INFO   2014-10-05 18:58:20.000000000 +0200
+++ new/nbxmpp-0.5.2/PKG-INFO   2014-12-29 14:49:20.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.0
 Name: nbxmpp
-Version: 0.5.1
+Version: 0.5.2
 Summary: Non blocking Jabber/XMPP module
 Home-page: http://python-nbxmpp.gajim.org
 Author: Yann Leboulanger
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/nbxmpp/__init__.py 
new/nbxmpp-0.5.2/nbxmpp/__init__.py
--- old/nbxmpp-0.5.1/nbxmpp/__init__.py 2014-10-04 22:01:23.000000000 +0200
+++ new/nbxmpp-0.5.2/nbxmpp/__init__.py 2014-12-29 14:48:29.000000000 +0100
@@ -17,4 +17,4 @@
 from .plugin import PlugIn
 from .smacks import Smacks
 
-__version__ = "0.5.1"
+__version__ = "0.5.2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/nbxmpp/auth_nb.py 
new/nbxmpp-0.5.2/nbxmpp/auth_nb.py
--- old/nbxmpp-0.5.1/nbxmpp/auth_nb.py  2014-04-24 21:32:10.000000000 +0200
+++ new/nbxmpp-0.5.2/nbxmpp/auth_nb.py  2014-12-29 14:48:29.000000000 +0100
@@ -301,7 +301,11 @@
                 split('\n'))
 
         incoming_data = challenge.getData()
-        data=base64.b64decode(incoming_data.encode('utf-8')).decode('utf-8')
+        data=base64.b64decode(incoming_data.encode('utf-8'))
+
+        if self.mechanism != 'GSSAPI':
+            data=data.decode('utf-8')
+
         ### Handle Auth result
         def on_auth_fail(reason):
             log.info('Failed SASL authentification: %s' % reason)
@@ -352,7 +356,10 @@
             raise NodeProcessed
 
         ### Perform auth step
-        log.info('Got challenge:' + data)
+        if self.mechanism != 'GSSAPI':
+            log.info('Got challenge:' + data)
+        else:
+            log.info('Got challenge')
 
         if self.mechanism == 'GSSAPI':
             if self.gss_step == GSS_STATE_STEP:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/nbxmpp/protocol.py 
new/nbxmpp-0.5.2/nbxmpp/protocol.py
--- old/nbxmpp-0.5.1/nbxmpp/protocol.py 2014-04-24 21:27:35.000000000 +0200
+++ new/nbxmpp-0.5.2/nbxmpp/protocol.py 2014-12-29 14:48:29.000000000 +0100
@@ -100,7 +100,7 @@
 NS_JINGLE_IBB     = 'urn:xmpp:jingle:transports:ibb:1'                # 
XEP-0261
 NS_LAST           = 'jabber:iq:last'
 NS_LOCATION       = 'http://jabber.org/protocol/geoloc'               # 
XEP-0080
-NS_MAM            = 'urn:xmpp:mam:tmp'                                # 
XEP-0313
+NS_MAM            = 'urn:xmpp:mam:0'                                  # 
XEP-0313
 NS_MESSAGE        = 'message'                                         # 
Jabberd2
 NS_MOOD           = 'http://jabber.org/protocol/mood'                 # 
XEP-0107
 NS_MUC            = 'http://jabber.org/protocol/muc'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/nbxmpp/transports_nb.py 
new/nbxmpp-0.5.2/nbxmpp/transports_nb.py
--- old/nbxmpp-0.5.1/nbxmpp/transports_nb.py    2014-10-04 22:18:57.000000000 
+0200
+++ new/nbxmpp-0.5.2/nbxmpp/transports_nb.py    2014-11-08 22:21:04.000000000 
+0100
@@ -37,7 +37,6 @@
 import time
 import traceback
 import base64
-import locale
 
 try:
     from urllib.parse import urlparse
@@ -370,8 +369,7 @@
             self._sock.setblocking(False)
             self._sock.connect((self.server, self.port))
         except Exception as exc:
-            errnum, errstr = exc.errno,\
-                exc.strerror.decode(locale.getpreferredencoding())
+            errnum, errstr = exc.errno, exc.strerror
 
         if errnum in (errno.EINPROGRESS, errno.EALREADY, errno.EWOULDBLOCK):
             # connecting in progress
@@ -474,7 +472,7 @@
             self._sock.shutdown(socket.SHUT_RDWR)
             self._sock.close()
         except socket.error as e:
-            errstr = e.strerror.decode(locale.getpreferredencoding())
+            errstr = e.strerror
             log.info('Error while disconnecting socket: %s' % errstr)
         self.fd = -1
         NonBlockingTransport.disconnect(self, do_callback)
@@ -558,7 +556,7 @@
                 return None
             self.sendbuff = self.sendqueue.pop(0)
         try:
-            send_count = self._send(self.sendbuff.encode("utf-8"))
+            send_count = self._send(self.sendbuff)
             if send_count:
                 sent_data = self.sendbuff[:send_count]
                 self.sendbuff = self.sendbuff[send_count:]
@@ -602,8 +600,7 @@
         except tls_nb.SSLWrapper.Error as e:
             log.info("_do_receive, caught SSL error, got %s:" % received,
                     exc_info=True)
-            errnum, errstr = e.errno,\
-                e.strerror.decode(locale.getpreferredencoding())
+            errnum, errstr = e.errno, e.strerror
 
         if received == '':
             errstr = 'zero bytes on recv'
@@ -766,9 +763,7 @@
         Builds http message with given body. Values for headers and status line
         fields are taken from class variables
         """
-        absolute_uri = '%s://%s:%s%s' % (self.http_protocol, self.http_host,
-                self.http_port, self.http_path)
-        headers = ['%s %s %s' % (method, absolute_uri, self.http_version),
+        headers = ['%s %s %s' % (method, self.http_path, self.http_version),
                 'Host: %s:%s' % (self.http_host, self.http_port),
                 'User-Agent: Gajim',
                 'Content-Type: text/xml; charset=utf-8',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/nbxmpp/xmpp_stringprep.py 
new/nbxmpp-0.5.2/nbxmpp/xmpp_stringprep.py
--- old/nbxmpp-0.5.1/nbxmpp/xmpp_stringprep.py  2014-09-26 22:58:40.000000000 
+0200
+++ new/nbxmpp-0.5.2/nbxmpp/xmpp_stringprep.py  1970-01-01 01:00:00.000000000 
+0100
@@ -1,246 +0,0 @@
-# -*- test-case-name: twisted.words.test.test_jabberxmppstringprep -*-
-#
-# Copyright (c) Twisted Matrix Laboratories.
-# See LICENSE for details.
-
-import stringprep
-from encodings import idna
-
-# We require Unicode version 3.2.
-from unicodedata import ucd_3_2_0 as unicodedata
-
-from twisted.python.versions import Version
-from twisted.python.deprecate import deprecatedModuleAttribute
-
-from zope.interface import Interface, implements
-
-
-crippled = False
-deprecatedModuleAttribute(
-    Version("Twisted", 13, 1, 0),
-    "crippled is always False",
-    __name__,
-    "crippled")
-
-
-
-class ILookupTable(Interface):
-    """
-    Interface for character lookup classes.
-    """
-
-    def lookup(c):
-        """
-        Return whether character is in this table.
-        """
-
-
-
-class IMappingTable(Interface):
-    """
-    Interface for character mapping classes.
-    """
-
-    def map(c):
-        """
-        Return mapping for character.
-        """
-
-
-
-class LookupTableFromFunction:
-
-    implements(ILookupTable)
-
-    def __init__(self, in_table_function):
-        self.lookup = in_table_function
-
-
-
-class LookupTable:
-
-    implements(ILookupTable)
-
-    def __init__(self, table):
-        self._table = table
-
-    def lookup(self, c):
-        return c in self._table
-
-
-
-class MappingTableFromFunction:
-
-    implements(IMappingTable)
-
-    def __init__(self, map_table_function):
-        self.map = map_table_function
-
-
-
-class EmptyMappingTable:
-
-    implements(IMappingTable)
-
-    def __init__(self, in_table_function):
-        self._in_table_function = in_table_function
-
-    def map(self, c):
-        if self._in_table_function(c):
-            return None
-        else:
-            return c
-
-
-
-class Profile:
-    def __init__(self, mappings=[],  normalize=True, prohibiteds=[],
-                       check_unassigneds=True, check_bidi=True):
-        self.mappings = mappings
-        self.normalize = normalize
-        self.prohibiteds = prohibiteds
-        self.do_check_unassigneds = check_unassigneds
-        self.do_check_bidi = check_bidi
-
-    def prepare(self, string):
-        result = self.map(string)
-        if self.normalize:
-            result = unicodedata.normalize("NFKC", result)
-        self.check_prohibiteds(result)
-        if self.do_check_unassigneds:
-            self.check_unassigneds(result)
-        if self.do_check_bidi:
-            self.check_bidirectionals(result)
-        return result
-
-    def map(self, string):
-        result = []
-
-        for c in string:
-            result_c = c
-
-            for mapping in self.mappings:
-                result_c = mapping.map(c)
-                if result_c != c:
-                    break
-
-            if result_c is not None:
-                result.append(result_c)
-
-        return u"".join(result)
-
-    def check_prohibiteds(self, string):
-        for c in string:
-            for table in self.prohibiteds:
-                if table.lookup(c):
-                    raise UnicodeError, "Invalid character %s" % repr(c)
-
-    def check_unassigneds(self, string):
-        for c in string:
-            if stringprep.in_table_a1(c):
-                raise UnicodeError, "Unassigned code point %s" % repr(c)
-
-    def check_bidirectionals(self, string):
-        found_LCat = False
-        found_RandALCat = False
-
-        for c in string:
-            if stringprep.in_table_d1(c):
-                found_RandALCat = True
-            if stringprep.in_table_d2(c):
-                found_LCat = True
-
-        if found_LCat and found_RandALCat:
-            raise UnicodeError, "Violation of BIDI Requirement 2"
-
-        if found_RandALCat and not (stringprep.in_table_d1(string[0]) and
-                                    stringprep.in_table_d1(string[-1])):
-            raise UnicodeError, "Violation of BIDI Requirement 3"
-
-
-class NamePrep:
-    """ Implements preparation of internationalized domain names.
-
-    This class implements preparing internationalized domain names using the
-    rules defined in RFC 3491, section 4 (Conversion operations).
-
-    We do not perform step 4 since we deal with unicode representations of
-    domain names and do not convert from or to ASCII representations using
-    punycode encoding. When such a conversion is needed, the C{idna} standard
-    library provides the C{ToUnicode()} and C{ToASCII()} functions. Note that
-    C{idna} itself assumes UseSTD3ASCIIRules to be false.
-
-    The following steps are performed by C{prepare()}:
-
-      - Split the domain name in labels at the dots (RFC 3490, 3.1)
-      - Apply nameprep proper on each label (RFC 3491)
-      - Enforce the restrictions on ASCII characters in host names by
-        assuming STD3ASCIIRules to be true. (STD 3)
-      - Rejoin the labels using the label separator U+002E (full stop).
-
-    """
-
-    # Prohibited characters.
-    prohibiteds = [unichr(n) for n in range(0x00, 0x2c + 1) +
-                                       range(0x2e, 0x2f + 1) +
-                                       range(0x3a, 0x40 + 1) +
-                                       range(0x5b, 0x60 + 1) +
-                                       range(0x7b, 0x7f + 1) ]
-
-    def prepare(self, string):
-        result = []
-
-        labels = idna.dots.split(string)
-
-        if labels and len(labels[-1]) == 0:
-            trailing_dot = '.'
-            del labels[-1]
-        else:
-            trailing_dot = ''
-
-        for label in labels:
-            result.append(self.nameprep(label))
-
-        return ".".join(result) + trailing_dot
-
-    def check_prohibiteds(self, string):
-        for c in string:
-           if c in self.prohibiteds:
-               raise UnicodeError, "Invalid character %s" % repr(c)
-
-    def nameprep(self, label):
-        label = idna.nameprep(label)
-        self.check_prohibiteds(label)
-        if label[0] == '-':
-            raise UnicodeError, "Invalid leading hyphen-minus"
-        if label[-1] == '-':
-            raise UnicodeError, "Invalid trailing hyphen-minus"
-        return label
-
-
-C_11 = LookupTableFromFunction(stringprep.in_table_c11)
-C_12 = LookupTableFromFunction(stringprep.in_table_c12)
-C_21 = LookupTableFromFunction(stringprep.in_table_c21)
-C_22 = LookupTableFromFunction(stringprep.in_table_c22)
-C_3 = LookupTableFromFunction(stringprep.in_table_c3)
-C_4 = LookupTableFromFunction(stringprep.in_table_c4)
-C_5 = LookupTableFromFunction(stringprep.in_table_c5)
-C_6 = LookupTableFromFunction(stringprep.in_table_c6)
-C_7 = LookupTableFromFunction(stringprep.in_table_c7)
-C_8 = LookupTableFromFunction(stringprep.in_table_c8)
-C_9 = LookupTableFromFunction(stringprep.in_table_c9)
-
-B_1 = EmptyMappingTable(stringprep.in_table_b1)
-B_2 = MappingTableFromFunction(stringprep.map_table_b2)
-
-nodeprep = Profile(mappings=[B_1, B_2],
-                   prohibiteds=[C_11, C_12, C_21, C_22,
-                                C_3, C_4, C_5, C_6, C_7, C_8, C_9,
-                                LookupTable([u'"', u'&', u"'", u'/',
-                                             u':', u'<', u'>', u'@'])])
-
-resourceprep = Profile(mappings=[B_1,],
-                       prohibiteds=[C_12, C_21, C_22,
-                                    C_3, C_4, C_5, C_6, C_7, C_8, C_9])
-
-nameprep = NamePrep()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nbxmpp-0.5.1/setup.py new/nbxmpp-0.5.2/setup.py
--- old/nbxmpp-0.5.1/setup.py   2014-10-04 22:03:57.000000000 +0200
+++ new/nbxmpp-0.5.2/setup.py   2014-12-29 14:48:29.000000000 +0100
@@ -3,7 +3,7 @@
 from distutils.core import setup
 
 setup(name='nbxmpp',
-      version='0.5.1',
+      version='0.5.2',
       description='Non blocking Jabber/XMPP module',
       author='Yann Leboulanger',
       author_email='aste...@lagaule.org',

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

Reply via email to