multidict 6.7.0__cp314-cp314t-macosx_10_13_universal2.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of multidict might be problematic. Click here for more details.
- multidict/__init__.py +60 -0
- multidict/_abc.py +73 -0
- multidict/_compat.py +15 -0
- multidict/_multidict.cpython-314t-darwin.so +0 -0
- multidict/_multidict_py.py +1242 -0
- multidict/py.typed +1 -0
- multidict-6.7.0.dist-info/METADATA +149 -0
- multidict-6.7.0.dist-info/RECORD +11 -0
- multidict-6.7.0.dist-info/WHEEL +6 -0
- multidict-6.7.0.dist-info/licenses/LICENSE +13 -0
- multidict-6.7.0.dist-info/top_level.txt +1 -0
multidict/py.typed
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
PEP-561 marker.
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: multidict
|
|
3
|
+
Version: 6.7.0
|
|
4
|
+
Summary: multidict implementation
|
|
5
|
+
Home-page: https://github.com/aio-libs/multidict
|
|
6
|
+
Author: Andrew Svetlov
|
|
7
|
+
Author-email: andrew.svetlov@gmail.com
|
|
8
|
+
License: Apache License 2.0
|
|
9
|
+
Project-URL: Chat: Matrix, https://matrix.to/#/#aio-libs:matrix.org
|
|
10
|
+
Project-URL: Chat: Matrix Space, https://matrix.to/#/#aio-libs-space:matrix.org
|
|
11
|
+
Project-URL: CI: GitHub, https://github.com/aio-libs/multidict/actions
|
|
12
|
+
Project-URL: Code of Conduct, https://github.com/aio-libs/.github/blob/master/CODE_OF_CONDUCT.md
|
|
13
|
+
Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/multidict
|
|
14
|
+
Project-URL: Docs: Changelog, https://multidict.aio-libs.org/en/latest/changes/
|
|
15
|
+
Project-URL: Docs: RTD, https://multidict.aio-libs.org
|
|
16
|
+
Project-URL: GitHub: issues, https://github.com/aio-libs/multidict/issues
|
|
17
|
+
Project-URL: GitHub: repo, https://github.com/aio-libs/multidict
|
|
18
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
19
|
+
Classifier: Intended Audience :: Developers
|
|
20
|
+
Classifier: Programming Language :: Python
|
|
21
|
+
Classifier: Programming Language :: Python :: 3
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
24
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
25
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
26
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
27
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
28
|
+
Requires-Python: >=3.9
|
|
29
|
+
Description-Content-Type: text/x-rst
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Requires-Dist: typing-extensions>=4.1.0; python_version < "3.11"
|
|
32
|
+
Dynamic: license-file
|
|
33
|
+
|
|
34
|
+
=========
|
|
35
|
+
multidict
|
|
36
|
+
=========
|
|
37
|
+
|
|
38
|
+
.. image:: https://github.com/aio-libs/multidict/actions/workflows/ci-cd.yml/badge.svg
|
|
39
|
+
:target: https://github.com/aio-libs/multidict/actions
|
|
40
|
+
:alt: GitHub status for master branch
|
|
41
|
+
|
|
42
|
+
.. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg?flag=pytest
|
|
43
|
+
:target: https://codecov.io/gh/aio-libs/multidict?flags[]=pytest
|
|
44
|
+
:alt: Coverage metrics
|
|
45
|
+
|
|
46
|
+
.. image:: https://img.shields.io/pypi/v/multidict.svg
|
|
47
|
+
:target: https://pypi.org/project/multidict
|
|
48
|
+
:alt: PyPI
|
|
49
|
+
|
|
50
|
+
.. image:: https://readthedocs.org/projects/multidict/badge/?version=latest
|
|
51
|
+
:target: https://multidict.aio-libs.org
|
|
52
|
+
:alt: Read The Docs build status badge
|
|
53
|
+
|
|
54
|
+
.. image:: https://img.shields.io/endpoint?url=https://codspeed.io/badge.json
|
|
55
|
+
:target: https://codspeed.io/aio-libs/multidict
|
|
56
|
+
:alt: CodSpeed
|
|
57
|
+
|
|
58
|
+
.. image:: https://img.shields.io/pypi/pyversions/multidict.svg
|
|
59
|
+
:target: https://pypi.org/project/multidict
|
|
60
|
+
:alt: Python versions
|
|
61
|
+
|
|
62
|
+
.. image:: https://img.shields.io/matrix/aio-libs:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat
|
|
63
|
+
:target: https://matrix.to/#/%23aio-libs:matrix.org
|
|
64
|
+
:alt: Matrix Room — #aio-libs:matrix.org
|
|
65
|
+
|
|
66
|
+
.. image:: https://img.shields.io/matrix/aio-libs-space:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs-space%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat
|
|
67
|
+
:target: https://matrix.to/#/%23aio-libs-space:matrix.org
|
|
68
|
+
:alt: Matrix Space — #aio-libs-space:matrix.org
|
|
69
|
+
|
|
70
|
+
Multidict is dict-like collection of *key-value pairs* where key
|
|
71
|
+
might occur more than once in the container.
|
|
72
|
+
|
|
73
|
+
Introduction
|
|
74
|
+
------------
|
|
75
|
+
|
|
76
|
+
*HTTP Headers* and *URL query string* require specific data structure:
|
|
77
|
+
*multidict*. It behaves mostly like a regular ``dict`` but it may have
|
|
78
|
+
several *values* for the same *key* and *preserves insertion ordering*.
|
|
79
|
+
|
|
80
|
+
The *key* is ``str`` (or ``istr`` for case-insensitive dictionaries).
|
|
81
|
+
|
|
82
|
+
``multidict`` has four multidict classes:
|
|
83
|
+
``MultiDict``, ``MultiDictProxy``, ``CIMultiDict``
|
|
84
|
+
and ``CIMultiDictProxy``.
|
|
85
|
+
|
|
86
|
+
Immutable proxies (``MultiDictProxy`` and
|
|
87
|
+
``CIMultiDictProxy``) provide a dynamic view for the
|
|
88
|
+
proxied multidict, the view reflects underlying collection changes. They
|
|
89
|
+
implement the ``collections.abc.Mapping`` interface.
|
|
90
|
+
|
|
91
|
+
Regular mutable (``MultiDict`` and ``CIMultiDict``) classes
|
|
92
|
+
implement ``collections.abc.MutableMapping`` and allows them to change
|
|
93
|
+
their own content.
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
*Case insensitive* (``CIMultiDict`` and
|
|
97
|
+
``CIMultiDictProxy``) assume the *keys* are case
|
|
98
|
+
insensitive, e.g.::
|
|
99
|
+
|
|
100
|
+
>>> dct = CIMultiDict(key='val')
|
|
101
|
+
>>> 'Key' in dct
|
|
102
|
+
True
|
|
103
|
+
>>> dct['Key']
|
|
104
|
+
'val'
|
|
105
|
+
|
|
106
|
+
*Keys* should be ``str`` or ``istr`` instances.
|
|
107
|
+
|
|
108
|
+
The library has optional C Extensions for speed.
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
License
|
|
112
|
+
-------
|
|
113
|
+
|
|
114
|
+
Apache 2
|
|
115
|
+
|
|
116
|
+
Library Installation
|
|
117
|
+
--------------------
|
|
118
|
+
|
|
119
|
+
.. code-block:: bash
|
|
120
|
+
|
|
121
|
+
$ pip install multidict
|
|
122
|
+
|
|
123
|
+
The library is Python 3 only!
|
|
124
|
+
|
|
125
|
+
PyPI contains binary wheels for Linux, Windows and MacOS. If you want to install
|
|
126
|
+
``multidict`` on another operating system (or *Alpine Linux* inside a Docker) the
|
|
127
|
+
tarball will be used to compile the library from source. It requires a C compiler and
|
|
128
|
+
Python headers to be installed.
|
|
129
|
+
|
|
130
|
+
To skip the compilation, please use the `MULTIDICT_NO_EXTENSIONS` environment variable,
|
|
131
|
+
e.g.:
|
|
132
|
+
|
|
133
|
+
.. code-block:: bash
|
|
134
|
+
|
|
135
|
+
$ MULTIDICT_NO_EXTENSIONS=1 pip install multidict
|
|
136
|
+
|
|
137
|
+
Please note, the pure Python (uncompiled) version is about 20-50 times slower depending on
|
|
138
|
+
the usage scenario!!!
|
|
139
|
+
|
|
140
|
+
For extension development, set the ``MULTIDICT_DEBUG_BUILD`` environment variable to compile
|
|
141
|
+
the extensions in debug mode:
|
|
142
|
+
|
|
143
|
+
.. code-block:: console
|
|
144
|
+
|
|
145
|
+
$ MULTIDICT_DEBUG_BUILD=1 pip install multidict
|
|
146
|
+
|
|
147
|
+
Changelog
|
|
148
|
+
---------
|
|
149
|
+
See `RTD page <http://multidict.aio-libs.org/en/latest/changes>`_.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
multidict-6.7.0.dist-info/RECORD,,
|
|
2
|
+
multidict-6.7.0.dist-info/WHEEL,sha256=ERcDdRDi5tXqNjUI3Zpgr5_CkfUS0k_e9FvQ5FQhNCU,143
|
|
3
|
+
multidict-6.7.0.dist-info/top_level.txt,sha256=-euDElkk5_qkmfIJ7WiqCab02ZlSFZWynejKg59qZQQ,10
|
|
4
|
+
multidict-6.7.0.dist-info/METADATA,sha256=q_zO5zLDpLVGLHpjw8BHBRhNX7yuB6_RlehDOZPYrZQ,5321
|
|
5
|
+
multidict-6.7.0.dist-info/licenses/LICENSE,sha256=k9Ealo4vDzY3PECBH_bSDhc_WMPKtYhM1mF7v9eVSSo,611
|
|
6
|
+
multidict/_multidict_py.py,sha256=VGQ58P7VOd6lRf3WVAinb62aD16DPdAWRt68qmiJMXE,39955
|
|
7
|
+
multidict/_abc.py,sha256=e_0JDJi7E6LWS0A3gUJ17SkgDLlmg8ffjfylTu_vboc,2402
|
|
8
|
+
multidict/__init__.py,sha256=vrqM7ruZH18zqUQumAaWtGekJFYb_oWvThnAdNuAxg4,1228
|
|
9
|
+
multidict/_multidict.cpython-314t-darwin.so,sha256=-tEZ28SiT5JBTfK6dkiWto47lnHBB0-ANXR-XZp4J1U,252592
|
|
10
|
+
multidict/py.typed,sha256=e9bmbH3UFxsabQrnNFPG9qxIXztwbcM6IKDYnvZwprY,15
|
|
11
|
+
multidict/_compat.py,sha256=TcRjCStk2iIY1_DwDNj8kNpJRQ9rtLj92Xvk1z2G_ak,422
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Copyright 2016 Andrew Svetlov and aio-libs contributors
|
|
2
|
+
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
you may not use this file except in compliance with the License.
|
|
5
|
+
You may obtain a copy of the License at
|
|
6
|
+
|
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
|
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
See the License for the specific language governing permissions and
|
|
13
|
+
limitations under the License.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
multidict
|