Hello community,

here is the log from the commit of package python3-msgpack-python for 
openSUSE:Factory checked in at 2015-03-16 07:00:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-msgpack-python (Old)
 and      /work/SRC/openSUSE:Factory/.python3-msgpack-python.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python3-msgpack-python"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python3-msgpack-python/python3-msgpack-python.changes
    2015-01-27 09:09:36.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.python3-msgpack-python.new/python3-msgpack-python.changes
       2015-03-16 07:01:08.000000000 +0100
@@ -1,0 +2,7 @@
+Sat Mar 14 01:17:48 UTC 2015 - [email protected]
+
+- update to version 0.4.6:
+  * fallback.Unpacker: Fix Data corruption when OutOfData. This bug
+    only affects "Streaming unpacking."
+
+-------------------------------------------------------------------

Old:
----
  msgpack-python-0.4.5.tar.gz

New:
----
  msgpack-python-0.4.6.tar.gz

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

Other differences:
------------------
++++++ python3-msgpack-python.spec ++++++
--- /var/tmp/diff_new_pack.k7FJhO/_old  2015-03-16 07:01:09.000000000 +0100
+++ /var/tmp/diff_new_pack.k7FJhO/_new  2015-03-16 07:01:09.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python3-msgpack-python
 #
-# Copyright (c) 2015 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:           python3-msgpack-python
-Version:        0.4.5
+Version:        0.4.6
 Release:        0
 Summary:        MessagePack (de)serializer
 License:        Apache-2.0

++++++ msgpack-python-0.4.5.tar.gz -> msgpack-python-0.4.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/msgpack-python-0.4.5/PKG-INFO 
new/msgpack-python-0.4.6/PKG-INFO
--- old/msgpack-python-0.4.5/PKG-INFO   2015-01-25 16:38:53.000000000 +0100
+++ new/msgpack-python-0.4.6/PKG-INFO   2015-03-12 19:51:33.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: msgpack-python
-Version: 0.4.5
+Version: 0.4.6
 Summary: MessagePack (de)serializer.
 Home-page: http://msgpack.org/
 Author: INADA Naoki
@@ -12,8 +12,8 @@
         =======================
         
         :author: INADA Naoki
-        :version: 0.4.4
-        :date: 2015-01-09
+        :version: 0.4.5
+        :date: 2015-01-25
         
         .. image:: https://secure.travis-ci.org/msgpack/msgpack-python.png
            :target: https://travis-ci.org/#!/msgpack/msgpack-python
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/msgpack-python-0.4.5/README.rst 
new/msgpack-python-0.4.6/README.rst
--- old/msgpack-python-0.4.5/README.rst 2015-01-24 17:41:20.000000000 +0100
+++ new/msgpack-python-0.4.6/README.rst 2015-01-25 16:39:44.000000000 +0100
@@ -3,8 +3,8 @@
 =======================
 
 :author: INADA Naoki
-:version: 0.4.4
-:date: 2015-01-09
+:version: 0.4.5
+:date: 2015-01-25
 
 .. image:: https://secure.travis-ci.org/msgpack/msgpack-python.png
    :target: https://travis-ci.org/#!/msgpack/msgpack-python
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/msgpack-python-0.4.5/msgpack/_version.py 
new/msgpack-python-0.4.6/msgpack/_version.py
--- old/msgpack-python-0.4.5/msgpack/_version.py        2015-01-25 
09:24:04.000000000 +0100
+++ new/msgpack-python-0.4.6/msgpack/_version.py        2015-03-12 
19:50:54.000000000 +0100
@@ -1 +1 @@
-version = (0, 4, 5)
+version = (0, 4, 6)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/msgpack-python-0.4.5/msgpack/fallback.py 
new/msgpack-python-0.4.6/msgpack/fallback.py
--- old/msgpack-python-0.4.5/msgpack/fallback.py        2015-01-24 
19:34:36.000000000 +0100
+++ new/msgpack-python-0.4.6/msgpack/fallback.py        2015-01-27 
06:04:10.000000000 +0100
@@ -187,15 +187,25 @@
                 raise TypeError("`file_like.read` must be callable")
             self.file_like = file_like
             self._fb_feeding = False
+
+        #: array of bytes feeded.
         self._fb_buffers = []
-        self._fb_buf_o = 0
+        #: Which buffer we currently reads
         self._fb_buf_i = 0
+        #: Which position we currently reads
+        self._fb_buf_o = 0
+        #: Total size of _fb_bufferes
         self._fb_buf_n = 0
+
         # When Unpacker is used as an iterable, between the calls to next(),
         # the buffer is not "consumed" completely, for efficiency sake.
         # Instead, it is done sloppily.  To make sure we raise BufferFull at
         # the correct moments, we have to keep track of how sloppy we were.
+        # Furthermore, when the buffer is incomplete (that is: in the case
+        # we raise an OutOfData) we need to rollback the buffer to the correct
+        # state, which _fb_slopiness records.
         self._fb_sloppiness = 0
+
         self._max_buffer_size = max_buffer_size or 2**31-1
         if read_size > self._max_buffer_size:
             raise ValueError("read_size must be smaller than max_buffer_size")
@@ -283,7 +293,7 @@
 
     def _fb_rollback(self):
         self._fb_buf_i = 0
-        self._fb_buf_o = 0
+        self._fb_buf_o = self._fb_sloppiness
 
     def _fb_get_extradata(self):
         bufs = self._fb_buffers[self._fb_buf_i:]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/msgpack-python-0.4.5/test/test_sequnpack.py 
new/msgpack-python-0.4.6/test/test_sequnpack.py
--- old/msgpack-python-0.4.5/test/test_sequnpack.py     2014-02-16 
20:07:12.000000000 +0100
+++ new/msgpack-python-0.4.6/test/test_sequnpack.py     2015-01-27 
06:04:06.000000000 +0100
@@ -84,3 +84,15 @@
     assert unpacker.read_bytes(3) == b'oob'
     assert unpacker.unpack() == ord(b'a')
     assert unpacker.unpack() == ord(b'r')
+
+def test_issue124():
+    unpacker = Unpacker()
+    unpacker.feed(b'\xa1?\xa1!')
+    assert tuple(unpacker) == (b'?', b'!')
+    assert tuple(unpacker) == ()
+    unpacker.feed(b"\xa1?\xa1")
+    assert tuple(unpacker) == (b'?',)
+    assert tuple(unpacker) == ()
+    unpacker.feed(b"!")
+    assert tuple(unpacker) == (b'!',)
+    assert tuple(unpacker) == ()

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

Reply via email to