- Support
GenericAliases
(MultiDict[str]
) for Python 3.9+ #553
- Synchronize the declared supported Python versions in
setup.py
with actually supported and tested ones. #552
- Provide x86 Windows wheels #550
- Provide wheels for
aarch64
,i686
,ppc64le
,s390x
architectures on Linux as well asx86_64
. #500 - Provide wheels for Python 3.9. #534
- Drop Python 3.5 support; Python 3.6 is the minimal supported Python version.
- Fixed an issue with some versions of the
wheel
dist failing because of being unable to detect the license file. #481
- Fixed creating and updating of MultiDict from a sequence of pairs and keyword arguments. Previously passing a list argument modified it inplace, and other sequences caused an error. #457
- Fixed comparing with mapping: an exception raised in the :py:func:`~object.__len__` method caused raising a SyntaxError. #459
- Fixed comparing with mapping: all exceptions raised in the :py:func:`~object.__getitem__` method were silenced. #460
MultiDict.iter
fix memory leak when used iterator over :py:mod:`multidict` instance. #452
- Implement
__sizeof__
function to correctly calculate all internal structures size. #444 - Expose
getversion()
function. #451
- Fix crashes in
popone
/popall
when default is returned. #450
- Corrected the documentation for
MultiDict.extend()
#446
- Fix crashing when multidict is used pyinstaller #432
- Fix typing for :py:meth:`CIMultiDict.copy` #434
- Fix memory leak in
MultiDict.copy()
#443
- :py:meth:`CIMultiDictProxy.copy` return object type :py:class:`multidict._multidict.CIMultiDict` #427
- Make :py:class:`CIMultiDict` subclassable again #416
- Fix regression, multidict can be constructed from arbitrary iterable of pairs again. #418
- :py:meth:`CIMultiDict.add` may be called with keyword arguments #421
- Mention
MULTIDICT_NO_EXTENSIONS
environment variable in docs. #393 - Document the fact that
istr
preserves the casing of argument untouched but uses internal lower-cased copy for keys comparison. #419
- Replace Cython optimization with pure C #249
- Implement
__length_hint__()
for iterators #310 - Support the MultiDict[str] generic specialization in the runtime. #392
- Embed pair_list_t structure into MultiDict Python object #395
- Embed multidict pairs for small dictionaries to amortize the memory usage. #396
- Support weak references to C Extension classes. #399
- Add docstrings to provided classes. #400
- Merge
multidict._istr
back withmultidict._multidict
. #409
- Explicitly call
tp_free
slot on deallocation. #407 - Return class from __class_getitem__ to simplify subclassing #413
- Fix PyPI link for GitHub Issues badge. #391