diff options
| author | robot-piglet <[email protected]> | 2026-02-11 09:20:15 +0300 |
|---|---|---|
| committer | robot-piglet <[email protected]> | 2026-02-11 10:24:33 +0300 |
| commit | 9662901efa290997a5990fe3a98e0f3f572fbbcd (patch) | |
| tree | 09e62600009025a39c18238773edc53d57c69bbb /contrib/python/multidict | |
| parent | 72e2e4fb5634001484795bce3f6ca27e21b24905 (diff) | |
Intermediate changes
commit_hash:7e33eedd3346f1d14784103b125731b0608488a2
Diffstat (limited to 'contrib/python/multidict')
| -rw-r--r-- | contrib/python/multidict/.dist-info/METADATA | 2 | ||||
| -rw-r--r-- | contrib/python/multidict/multidict/__init__.py | 2 | ||||
| -rw-r--r-- | contrib/python/multidict/multidict/_multilib/hashtable.h | 2 | ||||
| -rw-r--r-- | contrib/python/multidict/tests/isolated/multidict_pop.py | 16 | ||||
| -rw-r--r-- | contrib/python/multidict/ya.make | 2 |
5 files changed, 18 insertions, 6 deletions
diff --git a/contrib/python/multidict/.dist-info/METADATA b/contrib/python/multidict/.dist-info/METADATA index 1ab8dd6468c..bb82e714f35 100644 --- a/contrib/python/multidict/.dist-info/METADATA +++ b/contrib/python/multidict/.dist-info/METADATA @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: multidict -Version: 6.7.0 +Version: 6.7.1 Summary: multidict implementation Home-page: https://github.com/aio-libs/multidict Author: Andrew Svetlov diff --git a/contrib/python/multidict/multidict/__init__.py b/contrib/python/multidict/multidict/__init__.py index a688932e52f..e3db9e199b1 100644 --- a/contrib/python/multidict/multidict/__init__.py +++ b/contrib/python/multidict/multidict/__init__.py @@ -23,7 +23,7 @@ __all__ = ( "upstr", ) -__version__ = "6.7.0" +__version__ = "6.7.1" if TYPE_CHECKING or not USE_EXTENSIONS: diff --git a/contrib/python/multidict/multidict/_multilib/hashtable.h b/contrib/python/multidict/multidict/_multilib/hashtable.h index 82019f9ebd9..ece41c43fa8 100644 --- a/contrib/python/multidict/multidict/_multilib/hashtable.h +++ b/contrib/python/multidict/multidict/_multilib/hashtable.h @@ -1019,7 +1019,7 @@ md_pop_one(MultiDictObject *md, PyObject *key, PyObject **ret) goto fail; } } - + Py_DECREF(identity); ASSERT_CONSISTENT(md, false); return 0; fail: diff --git a/contrib/python/multidict/tests/isolated/multidict_pop.py b/contrib/python/multidict/tests/isolated/multidict_pop.py index 89fcce11c7b..7fc9c2db56c 100644 --- a/contrib/python/multidict/tests/isolated/multidict_pop.py +++ b/contrib/python/multidict/tests/isolated/multidict_pop.py @@ -5,8 +5,9 @@ # of memory leaks can be prevented in the future. import gc -import psutil import os + +import psutil from multidict import MultiDict @@ -20,7 +21,7 @@ process = psutil.Process(os.getpid()) def get_memory_usage() -> int: memory_info = process.memory_info() - return memory_info.rss / (1024 * 1024) # type: ignore[no-any-return] + return memory_info.rss // (1024 * 1024) initial_memory_usage = get_memory_usage() @@ -62,6 +63,16 @@ def _test_popone() -> None: check_for_leak() +# SEE: https://github.com/aio-libs/multidict/issues/1273 +def _test_pop_with_default() -> None: + # XXX: mypy wants an annotation so the only + # thing we can do here is pass the headers along. + result = MultiDict(headers) + for i in range(1_000_000): + result.pop(f"missing_key_{i}", None) + check_for_leak() + + def _test_del() -> None: for _ in range(10): for _ in range(100): @@ -75,6 +86,7 @@ def _run_isolated_case() -> None: _test_pop() _test_popall() _test_popone() + _test_pop_with_default() _test_del() diff --git a/contrib/python/multidict/ya.make b/contrib/python/multidict/ya.make index 4e447c884d0..c814f5f2278 100644 --- a/contrib/python/multidict/ya.make +++ b/contrib/python/multidict/ya.make @@ -2,7 +2,7 @@ PY3_LIBRARY() -VERSION(6.7.0) +VERSION(6.7.1) LICENSE(Apache-2.0) |
