Sourced from multidict's releases.
6.4.4
Bug fixes
Fixed a segmentation fault when calling :py:meth:
multidict.MultiDict.setdefaultwith a single argument -- by :user:bdraco.Related issues and pull requests on GitHub: #1160.
Fixed a segmentation fault when attempting to directly instantiate view objects (
multidict._ItemsView,multidict._KeysView,multidict._ValuesView) -- by :user:bdraco.View objects now raise a proper :exc:
TypeErrorwith the message "cannot create '...' instances directly" when direct instantiation is attempted.View objects should only be created through the proper methods: :py:meth:
multidict.MultiDict.items, :py:meth:multidict.MultiDict.keys, and :py:meth:multidict.MultiDict.values.Related issues and pull requests on GitHub: #1164.
Miscellaneous internal changes
:class:
multidict.MultiDictProxywas refactored to rely only on :class:multidict.MultiDictpublic interface and don't touch any implementation details.Related issues and pull requests on GitHub: #1150.
Multidict views were refactored to rely only on :class:
multidict.MultiDictAPI and don't touch any implementation details.Related issues and pull requests on GitHub: #1152.
Dropped internal
_Implclass from pure Python implementation, both pure Python and C Extension follows the same design internally now.Related issues and pull requests on GitHub: #1153.
Sourced from multidict's changelog.
6.4.4
(2025-05-19)
Bug fixes
Fixed a segmentation fault when calling :py:meth:
multidict.MultiDict.setdefaultwith a single argument -- by :user:bdraco.Related issues and pull requests on GitHub: :issue:
1160.Fixed a segmentation fault when attempting to directly instantiate view objects (
multidict._ItemsView,multidict._KeysView,multidict._ValuesView) -- by :user:bdraco.View objects now raise a proper :exc:
TypeErrorwith the message "cannot create '...' instances directly" when direct instantiation is attempted.View objects should only be created through the proper methods: :py:meth:
multidict.MultiDict.items, :py:meth:multidict.MultiDict.keys, and :py:meth:multidict.MultiDict.values.Related issues and pull requests on GitHub: :issue:
1164.Miscellaneous internal changes
:class:
multidict.MultiDictProxywas refactored to rely only on :class:multidict.MultiDictpublic interface and don't touch any implementation details.Related issues and pull requests on GitHub: :issue:
1150.Multidict views were refactored to rely only on :class:
multidict.MultiDictAPI and don't touch any implementation details.Related issues and pull requests on GitHub: :issue:
1152.Dropped internal
_Implclass from pure Python implementation, both pure Python and C Extension follows the same design internally now.Related issues and pull requests on GitHub: :issue:
1153.
... (truncated)
e77793a
Release 6.4.4 (#1164)b5a24b7
Fix segfault creating view objects (#1163)fea968f
Fix segfault when a single arg is passed to setdefault (#1160)7770ff2
Bump dependabot/fetch-metadata from 2.3.0 to 2.4.0 (#1162)af42043
Bump pypa/cibuildwheel from 2.23.2 to 2.23.3 (#1158)df93794
Fix wrong types in tests (#1156)72f3fce
Tune multidict benchmark (#1155)99e3f3b
Drop _Impl helper class, move all logic to MultiDict itself (#1153)d476a03
Views don't rely in _Impl anymore (#1152)1d72435
MultiDictProxy doesn't rely on '_impl' anymore (#1150)