[Python-modules-commits] [python-multidict] 01/06: Import python-multidict_3.1.1.orig.tar.gz
Piotr Ożarowski
piotr at moszumanska.debian.org
Wed Jul 12 17:47:09 UTC 2017
This is an automated email from the git hooks/post-receive script.
piotr pushed a commit to branch master
in repository python-multidict.
commit 09154aa0585c21fb5f967c3e03396219f9ff2ff2
Author: Piotr Ożarowski <piotr at debian.org>
Date: Wed Jul 12 18:30:54 2017 +0200
Import python-multidict_3.1.1.orig.tar.gz
---
CHANGES.rst | 5 +++++
PKG-INFO | 7 ++++++-
multidict.egg-info/PKG-INFO | 7 ++++++-
multidict.egg-info/SOURCES.txt | 2 +-
multidict/__init__.py | 2 +-
multidict/_istr.c | 1 +
multidict/_istr.cpython-34m.so | Bin 0 -> 30786 bytes
multidict/_istr.cpython-35m-x86_64-linux-gnu.so | Bin 30970 -> 0 bytes
tests/test_istr.py | 20 ++++++++++++++++++++
9 files changed, 40 insertions(+), 4 deletions(-)
diff --git a/CHANGES.rst b/CHANGES.rst
index d5976e3..2046d03 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,3 +1,8 @@
+3.1.1 (2017-07-09)
+------------------
+
+* Fix #105: Remove memory leak in `istr` implementation
+
3.1.0 (2017-06-25)
------------------
diff --git a/PKG-INFO b/PKG-INFO
index 59dc24b..e63aa40 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: multidict
-Version: 3.1.0
+Version: 3.1.1
Summary: multidict implementation
Home-page: https://github.com/aio-libs/multidict/
Author: Andrew Svetlov
@@ -62,6 +62,11 @@ Description: =========
.. _aiohttp: https://github.com/KeepSafe/aiohttp
.. _Cython: http://cython.org/
+ 3.1.1 (2017-07-09)
+ ------------------
+
+ * Fix #105: Remove memory leak in `istr` implementation
+
3.1.0 (2017-06-25)
------------------
diff --git a/multidict.egg-info/PKG-INFO b/multidict.egg-info/PKG-INFO
index 59dc24b..e63aa40 100644
--- a/multidict.egg-info/PKG-INFO
+++ b/multidict.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: multidict
-Version: 3.1.0
+Version: 3.1.1
Summary: multidict implementation
Home-page: https://github.com/aio-libs/multidict/
Author: Andrew Svetlov
@@ -62,6 +62,11 @@ Description: =========
.. _aiohttp: https://github.com/KeepSafe/aiohttp
.. _Cython: http://cython.org/
+ 3.1.1 (2017-07-09)
+ ------------------
+
+ * Fix #105: Remove memory leak in `istr` implementation
+
3.1.0 (2017-06-25)
------------------
diff --git a/multidict.egg-info/SOURCES.txt b/multidict.egg-info/SOURCES.txt
index 52674e8..2eef1ea 100644
--- a/multidict.egg-info/SOURCES.txt
+++ b/multidict.egg-info/SOURCES.txt
@@ -13,7 +13,7 @@ docs/spelling_wordlist.txt
multidict/__init__.py
multidict/__init__.pyi
multidict/_istr.c
-multidict/_istr.cpython-35m-x86_64-linux-gnu.so
+multidict/_istr.cpython-34m.so
multidict/_multidict.c
multidict/_multidict.pyx
multidict/_multidict_py.py
diff --git a/multidict/__init__.py b/multidict/__init__.py
index 5d24f42..ee574a0 100644
--- a/multidict/__init__.py
+++ b/multidict/__init__.py
@@ -10,7 +10,7 @@ import os
__all__ = ('MultiDictProxy', 'CIMultiDictProxy',
'MultiDict', 'CIMultiDict', 'upstr', 'istr')
-__version__ = '3.1.0'
+__version__ = '3.1.1'
if bool(os.environ.get('MULTIDICT_NO_EXTENSIONS')):
diff --git a/multidict/_istr.c b/multidict/_istr.c
index 109d433..083cba3 100644
--- a/multidict/_istr.c
+++ b/multidict/_istr.c
@@ -67,6 +67,7 @@ static PyMethodDef istr_methods[] = {
void istr_dealloc(istrobject *self)
{
Py_XDECREF(self->canonical);
+ PyUnicode_Type.tp_dealloc((PyObject*)self);
}
static PyObject *
diff --git a/multidict/_istr.cpython-34m.so b/multidict/_istr.cpython-34m.so
new file mode 100755
index 0000000..cc98e17
Binary files /dev/null and b/multidict/_istr.cpython-34m.so differ
diff --git a/multidict/_istr.cpython-35m-x86_64-linux-gnu.so b/multidict/_istr.cpython-35m-x86_64-linux-gnu.so
deleted file mode 100755
index 2a68b42..0000000
Binary files a/multidict/_istr.cpython-35m-x86_64-linux-gnu.so and /dev/null differ
diff --git a/tests/test_istr.py b/tests/test_istr.py
index 534ef74..e5539c2 100644
--- a/tests/test_istr.py
+++ b/tests/test_istr.py
@@ -1,5 +1,7 @@
from multidict._multidict import istr
from multidict._multidict_py import istr as _istr
+import gc
+import psutil
class IStrMixin:
@@ -52,6 +54,24 @@ class IStrMixin:
class TestPyIStr(IStrMixin):
cls = _istr
+ @staticmethod
+ def _create_strs():
+ _istr('foobarbaz')
+ istr2 = _istr()
+ _istr(istr2)
+
+ def test_leak(self):
+ gc.collect()
+ p = psutil.Process()
+ info = p.memory_info()
+ for _ in range(10000):
+ self._create_strs()
+
+ gc.collect()
+ info2 = p.memory_info()
+ rss_diff = info2.rss - info.rss
+ assert rss_diff == 0
+
class TestIStr(IStrMixin):
cls = istr
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-multidict.git
More information about the Python-modules-commits
mailing list