Hello community,

here is the log from the commit of package python-multidict for 
openSUSE:Factory checked in at 2018-02-14 09:44:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-multidict (Old)
 and      /work/SRC/openSUSE:Factory/.python-multidict.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-multidict"

Wed Feb 14 09:44:49 2018 rev:6 rq:575267 version:4.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-multidict/python-multidict.changes        
2018-01-20 11:26:50.731999219 +0100
+++ /work/SRC/openSUSE:Factory/.python-multidict.new/python-multidict.changes   
2018-02-14 09:45:11.373880864 +0100
@@ -1,0 +2,7 @@
+Sat Feb 10 17:43:52 UTC 2018 - a...@gmx.de
+
+- update to version 4.1.0:
+  * Fix key casing in Pure Python implementation of CIMultiDict (PR
+    #202)
+
+-------------------------------------------------------------------

Old:
----
  multidict-4.0.0.tar.gz

New:
----
  multidict-4.1.0.tar.gz

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

Other differences:
------------------
++++++ python-multidict.spec ++++++
--- /var/tmp/diff_new_pack.v43Do5/_old  2018-02-14 09:45:13.461804769 +0100
+++ /var/tmp/diff_new_pack.v43Do5/_new  2018-02-14 09:45:13.465804624 +0100
@@ -20,7 +20,7 @@
 %define skip_python2 1
 %bcond_without test
 Name:           python-multidict
-Version:        4.0.0
+Version:        4.1.0
 Release:        0
 Summary:        Multidict implementation
 License:        Apache-2.0

++++++ multidict-4.0.0.tar.gz -> multidict-4.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/PKG-INFO new/multidict-4.1.0/PKG-INFO
--- old/multidict-4.0.0/PKG-INFO        2018-01-14 22:10:59.000000000 +0100
+++ new/multidict-4.1.0/PKG-INFO        2018-01-28 08:54:50.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.2
 Name: multidict
-Version: 4.0.0
+Version: 4.1.0
 Summary: multidict implementation
 Home-page: https://github.com/aio-libs/multidict/
 Author: Andrew Svetlov
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/docs/changes.rst 
new/multidict-4.1.0/docs/changes.rst
--- old/multidict-4.0.0/docs/changes.rst        2018-01-14 22:10:20.000000000 
+0100
+++ new/multidict-4.1.0/docs/changes.rst        2018-01-28 08:54:05.000000000 
+0100
@@ -1,5 +1,11 @@
 .. _changes:
 
+4.1.0 (2018-01-28)
+------------------
+
+* Fix key casing in Pure Python impmenetation of
+  :py:class:`CIMultiDict` (:pr:`202`)
+
 4.0.0 (2018-01-14)
 ------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/multidict/__init__.py 
new/multidict-4.1.0/multidict/__init__.py
--- old/multidict-4.0.0/multidict/__init__.py   2018-01-14 22:10:20.000000000 
+0100
+++ new/multidict-4.1.0/multidict/__init__.py   2018-01-28 08:54:05.000000000 
+0100
@@ -12,7 +12,7 @@
            'MultiDictProxy', 'CIMultiDictProxy',
            'MultiDict', 'CIMultiDict', 'upstr', 'istr')
 
-__version__ = '4.0.0'
+__version__ = '4.1.0'
 
 
 from ._abc import MultiMapping, MutableMultiMapping
Binary files old/multidict-4.0.0/multidict/_istr.pyd and 
new/multidict-4.1.0/multidict/_istr.pyd differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/multidict/_multidict_py.py 
new/multidict-4.1.0/multidict/_multidict_py.py
--- old/multidict-4.0.0/multidict/_multidict_py.py      2018-01-14 
22:10:20.000000000 +0100
+++ new/multidict-4.1.0/multidict/_multidict_py.py      2018-01-28 
08:54:05.000000000 +0100
@@ -243,7 +243,7 @@
 
             method(items)
 
-        method([(self._title(key), key, value)
+        method([(self._title(key), self._key(key), value)
                for key, value in kwargs.items()])
 
     def _extend_items(self, items):
@@ -258,15 +258,14 @@
     # Mapping interface #
 
     def __setitem__(self, key, value):
-        key = self._title(key)
         self._replace(key, value)
 
     def __delitem__(self, key):
-        key = self._title(key)
+        identity = self._title(key)
         items = self._impl._items
         found = False
         for i in range(len(items) - 1, -1, -1):
-            if items[i][0] == key:
+            if items[i][0] == identity:
                 del items[i]
                 found = True
         if not found:
@@ -276,9 +275,9 @@
 
     def setdefault(self, key, default=None):
         """Return value for key, set value to default if key is not present."""
-        key = self._title(key)
+        identity = self._title(key)
         for i, k, v in self._impl._items:
-            if i == key:
+            if i == identity:
                 return v
         self.add(key, default)
         return default
@@ -290,9 +289,9 @@
         KeyError is raised.
 
         """
-        key = self._title(key)
+        identity = self._title(key)
         for i in range(len(self._impl._items)):
-            if self._impl._items[i][0] == key:
+            if self._impl._items[i][0] == identity:
                 value = self._impl._items[i][2]
                 del self._impl._items[i]
                 self._impl.incr_version()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/multidict.egg-info/PKG-INFO 
new/multidict-4.1.0/multidict.egg-info/PKG-INFO
--- old/multidict-4.0.0/multidict.egg-info/PKG-INFO     2018-01-14 
22:10:59.000000000 +0100
+++ new/multidict-4.1.0/multidict.egg-info/PKG-INFO     2018-01-28 
08:54:50.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.2
 Name: multidict
-Version: 4.0.0
+Version: 4.1.0
 Summary: multidict implementation
 Home-page: https://github.com/aio-libs/multidict/
 Author: Andrew Svetlov
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/tests/test_multidict.py 
new/multidict-4.1.0/tests/test_multidict.py
--- old/multidict-4.0.0/tests/test_multidict.py 2018-01-14 22:10:20.000000000 
+0100
+++ new/multidict-4.1.0/tests/test_multidict.py 2018-01-28 08:54:05.000000000 
+0100
@@ -118,9 +118,9 @@
         assert d.get('key') == 'value1'
         assert d['key'] == 'value1'
 
-        with pytest.raises(KeyError, matches='key2'):
+        with pytest.raises(KeyError, match='key2'):
             d['key2']
-        with pytest.raises(KeyError, matches='key2'):
+        with pytest.raises(KeyError, match='key2'):
             d.getone('key2')
 
         assert d.getone('key2', 'default') == 'default'
@@ -326,7 +326,7 @@
 
         assert d.getall('key') == ['value1', 'value2']
 
-        with pytest.raises(KeyError, matches='some_key'):
+        with pytest.raises(KeyError, match='some_key'):
             d.getall('some_key')
 
         default = object()
@@ -374,9 +374,9 @@
         assert d['key'] == 'value1'
         assert 'key' in d
 
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match='key2'):
             d['key2']
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match='key2'):
             d.getone('key2')
 
     def test_getall(self, cls):
@@ -387,9 +387,8 @@
 
         assert d.getall('key') == ['value1', 'value2']
 
-        with pytest.raises(KeyError) as excinfo:
+        with pytest.raises(KeyError, match='some_key'):
             d.getall('some_key')
-        assert "some_key" in str(excinfo.value)
 
     def test_get(self, cls):
         d = cls([('A', 1), ('a', 2)])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/multidict-4.0.0/tests/test_mutable_multidict.py 
new/multidict-4.1.0/tests/test_mutable_multidict.py
--- old/multidict-4.0.0/tests/test_mutable_multidict.py 2018-01-14 
22:10:20.000000000 +0100
+++ new/multidict-4.1.0/tests/test_mutable_multidict.py 2018-01-28 
08:54:05.000000000 +0100
@@ -37,9 +37,8 @@
 
         assert d.getall('key') == ['value1', 'value2']
 
-        with pytest.raises(KeyError) as excinfo:
+        with pytest.raises(KeyError, match='some_key'):
             d.getall('some_key')
-        assert 'some_key' in str(excinfo.value)
 
         default = object()
         assert d.getall('some_key', default) is default
@@ -116,7 +115,7 @@
         assert d == {'foo': 'bar'}
         assert list(d.items()) == [('foo', 'bar')]
 
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match='key'):
             del d['key']
 
     def test_set_default(self, cls):
@@ -166,7 +165,7 @@
     def test_pop_raises(self, cls):
         d = cls(other='val')
 
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match='key'):
             d.pop('key')
 
         assert 'other' in d
@@ -218,7 +217,7 @@
 
     def test_popall_key_error(self, cls):
         d = cls()
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match='key'):
             d.popall('key')
 
 
@@ -244,18 +243,19 @@
 
         assert d.getall('key') == ['value1', 'value2']
 
-        with pytest.raises(KeyError) as excinfo:
+        with pytest.raises(KeyError, match='some_key'):
             d.getall('some_key')
-        assert 'some_key' in str(excinfo.value)
 
     def test_ctor(self, cls):
         d = cls(k1='v1')
         assert 'v1' == d['K1']
+        assert ('k1', 'v1') in d.items()
 
     def test_setitem(self, cls):
         d = cls()
         d['k1'] = 'v1'
         assert 'v1' == d['K1']
+        assert ('k1', 'v1') in d.items()
 
     def test_delitem(self, cls):
         d = cls()
@@ -269,6 +269,7 @@
 
         d2 = d1.copy()
         assert d1 == d2
+        assert d1.items() == d2.items()
         assert d1 is not d2
 
     def test__repr__(self, cls):
@@ -285,18 +286,22 @@
 
         assert d == {}
         d['KEY'] = 'one'
+        assert ('KEY', 'one') in d.items()
         assert d == cls({'Key': 'one'})
         assert d.getall('key') == ['one']
 
         d['KEY'] = 'two'
+        assert ('KEY', 'two') in d.items()
         assert d == cls({'Key': 'two'})
         assert d.getall('key') == ['two']
 
         d.add('KEY', 'one')
+        assert ('KEY', 'one') in d.items()
         assert 2 == len(d)
         assert d.getall('key') == ['two', 'one']
 
         d.add('FOO', 'bar')
+        assert ('FOO', 'bar') in d.items()
         assert 3 == len(d)
         assert d.getall('foo') == ['bar']
 
@@ -353,7 +358,7 @@
         assert d == {'foo': 'bar'}
         assert list(d.items()) == [('foo', 'bar')]
 
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match='key'):
             del d['key']
 
     def test_set_default(self, cls):
@@ -361,6 +366,7 @@
         assert 'one' == d.setdefault('key', 'three')
         assert 'three' == d.setdefault('otherkey', 'three')
         assert 'otherkey' in d
+        assert ('otherkey', 'three') in d.items()
         assert 'three' == d['OTHERKEY']
 
     def test_popitem(self, cls):
@@ -404,7 +410,7 @@
     def test_pop_raises(self, cls):
         d = cls(OTHER='val')
 
-        with pytest.raises(KeyError):
+        with pytest.raises(KeyError, match="KEY"):
             d.pop('KEY')
 
         assert 'other' in d


Reply via email to