python-multidict
Port variant v12
Summary Multidict implementation (3.12)
BROKEN
Package version 6.1.0
Homepage https://github.com/aio-libs/multidict
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v13
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 15 NOV 2024, 16:08:50 UTC
Port created 10 DEC 2022, 14:08:04 UTC
Subpackage Descriptions
single ========= multidict ========= :alt: GitHub status for master branch :alt: Coverage metrics :alt: PyPI :alt: Read The Docs build status badge :alt: Python versions :alt: Matrix Room — #aio-libs:matrix.org :alt: Matrix Space — #aio-libs-space:matrix.org Multidict is dict-like collection of *key-value pairs* where key might occur more than once in the container. Introduction ------------ *HTTP Headers* and *URL query string* require specific data structure: *multidict*. It behaves mostly like a regular dict but it may have several *values* for the same *key* and *preserves insertion ordering*. The *key* is str (or istr for case-insensitive dictionaries). multidict has four multidict classes: MultiDict, MultiDictProxy, CIMultiDict and CIMultiDictProxy. Immutable proxies (MultiDictProxy and CIMultiDictProxy) provide a dynamic view for the proxied multidict, the view reflects underlying collection changes. They implement the ``collections.abc.Mapping`` interface. Regular mutable (MultiDict and CIMultiDict) classes implement ``collections.abc.MutableMapping`` and allows them to change their own content. *Case insensitive* (CIMultiDict and CIMultiDictProxy) assume the *keys* are case insensitive, e.g.:: >>> dct = CIMultiDict(key='val') >>> 'Key' in dct True >>> dct['Key'] 'val' *Keys* should be str or istr instances. The library has optional C Extensions for speed. License ------- Apache 2 Library Installation -------------------- .. code-block:: bash $ pip install multidict The library is Python 3 only! PyPI contains binary wheels for Linux, Windows and MacOS. If you want to install multidict on another operating system (or *Alpine Linux* inside a Docker) the tarball will be used to compile the library from source. It requires a C compiler and Python headers to be installed. To skip the compilation, please use the `MULTIDICT_NO_EXTENSIONS` environment variable, e.g.: .. code-block:: bash $ MULTIDICT_NO_EXTENSIONS=1 pip install multidict Please note, the pure Python (uncompiled) version is about 20-50 times slower depending on the usage scenario!!! Changelog --------- See [RTD page].
Configuration Switches (platform-specific settings discarded)
PY312 ON Build using Python 3.12 PY313 OFF Build using Python 3.13
Package Dependencies by Type
Build (only) python312:dev:std
python-pip:single:v12
autoselect-python:single:std
Build and Runtime python312:primary:std
Download groups
main mirror://PYPIWHL/99/b7/b9e70fde2c0f0c9af4cc5277782a89b66d35948ea3369ec9f598358c3ac5
Distribution File Information
48e171e52d1c4d33888e529b999e5900356b9ae588c2f09a52dcefb158b27506 10051 python-src/multidict-6.1.0-py3-none-any.whl
Ports that require python-multidict:v12
python-aiohttp:v12 Async http client/server framework (3.12)
python-yarl:v12 Yet another URL library (3.12)