[Python-modules-commits] [python-multidict] 01/04: Import python-multidict_3.3.2.orig.tar.gz
Piotr Ożarowski
piotr at moszumanska.debian.org
Mon Nov 13 20:45:32 UTC 2017
This is an automated email from the git hooks/post-receive script.
piotr pushed a commit to branch master
in repository python-multidict.
commit 8baed15ab076466d1b764fd35865aa33d7ddd1a3
Author: Piotr Ożarowski <piotr at debian.org>
Date: Mon Nov 13 21:39:11 2017 +0100
Import python-multidict_3.3.2.orig.tar.gz
---
CHANGES.rst | 28 +-
PKG-INFO | 516 +-
README.rst | 32 +-
docs/make.bat | 0
docs/multidict.rst | 11 +
multidict.egg-info/PKG-INFO | 516 +-
multidict.egg-info/SOURCES.txt | 8 +
multidict/__init__.py | 33 +-
multidict/_abc.py | 33 +
multidict/_compat.py | 9 +
multidict/_istr.pyd | Bin 0 -> 7168 bytes
multidict/_multidict.c | 22256 ++++++++++++++++++++++++++++++++++++++
multidict/_multidict.pyx | 9 +-
multidict/_multidict_py.py | 7 +-
setup.cfg | 14 +-
setup.py | 16 +-
tests/conftest.py | 16 +
tests/gen_pickles.py | 9 +-
tests/test_abc.py | 159 +
tests/test_copy.py | 73 +-
tests/test_guard.py | 12 +-
tests/test_istr.py | 23 +-
tests/test_multidict.py | 1134 +-
tests/test_mutable_multidict.py | 458 +
tests/test_pickle.py | 85 +-
tests/test_types.py | 55 +
tests/test_version.py | 84 +-
27 files changed, 24127 insertions(+), 1469 deletions(-)
diff --git a/CHANGES.rst b/CHANGES.rst
index a396d30..7e1fe2c 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,3 +1,23 @@
+3.3.2 (2017-11-02)
+------------------
+
+* Fix tarball (again)
+
+
+3.3.1 (2017-11-01)
+------------------
+
+* Include .c files in tarball (#181)
+
+
+3.3.0 (2017-10-15)
+------------------
+
+* Introduce abstract base classes (#102)
+
+* Publish OSX binary wheels (#153)
+
+
3.2.0 (2017-09-17)
------------------
@@ -5,6 +25,8 @@
* Fix equality check when other contains more keys (#124)
+* Fix `CIMultiDict` copy (#107)
+
3.1.3 (2017-07-14)
------------------
@@ -18,12 +40,12 @@
3.1.1 (2017-07-09)
------------------
-* Fix #105: Remove memory leak in `istr` implementation
+* Remove memory leak in `istr` implementation (#105)
3.1.0 (2017-06-25)
------------------
-* Fix #99: raise `RuntimeError` on dict iterations if the dict was changed
+* Raise `RuntimeError` on dict iterations if the dict was changed (#99)
* Update `__init__.pyi` signatures
@@ -33,7 +55,7 @@
* Refactor internal data structures: main dict operations are about
100% faster now.
-* Preserve order on multidict updates #68
+* Preserve order on multidict updates (#68)
Updates are `md[key] = val` and `md.update(...)` calls.
diff --git a/PKG-INFO b/PKG-INFO
index 1b2a1e6..e1a1b82 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,241 +1,275 @@
-Metadata-Version: 1.1
-Name: multidict
-Version: 3.2.0
-Summary: multidict implementation
-Home-page: https://github.com/aio-libs/multidict/
-Author: Andrew Svetlov
-Author-email: andrew.svetlov at gmail.com
-License: Apache 2
-Description: =========
- multidict
- =========
-
- .. image:: https://travis-ci.org/aio-libs/multidict.svg?branch=master
- :target: https://travis-ci.org/aio-libs/multidict
- :align: right
- :alt: Linux build @ Travis CI
- .. image:: https://img.shields.io/appveyor/ci/asvetlov/multidict/master.svg?label=Windows%20build%20%40%20Appveyor
- :target: https://ci.appveyor.com/project/asvetlov/multidict/branch/master
- :align: right
- :alt: Windows build @ Appveyor
- .. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/aio-libs/multidict
- :alt: Coverage metrics
- .. image:: https://badges.gitter.im/Join%20Chat.svg
- :target: https://gitter.im/aio-libs/Lobby
- :alt: Chat on Gitter
-
- Multidict is dict-like collection of *key-value pairs* where key
- might be occurred 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 to change
- their own content.
-
-
- *Case insensitive* (``CIMultiDict`` and
- ``CIMultiDictProxy``) ones 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 Cython_ optimization for sake of speed.
-
-
- License
- -------
-
- Apache 2
-
-
- .. _aiohttp: https://github.com/KeepSafe/aiohttp
- .. _Cython: http://cython.org/
-
- 3.2.0 (2017-09-17)
- ------------------
-
- * Fix pickling (#134)
-
- * Fix equality check when other contains more keys (#124)
-
- 3.1.3 (2017-07-14)
- ------------------
-
- * Fix build
-
- 3.1.2 (2017-07-14)
- ------------------
-
- * Fix type annotations
-
- 3.1.1 (2017-07-09)
- ------------------
-
- * Fix #105: Remove memory leak in `istr` implementation
-
- 3.1.0 (2017-06-25)
- ------------------
-
- * Fix #99: raise `RuntimeError` on dict iterations if the dict was changed
-
- * Update `__init__.pyi` signatures
-
- 3.0.0 (2017-06-21)
- ------------------
-
- * Refactor internal data structures: main dict operations are about
- 100% faster now.
-
- * Preserve order on multidict updates #68
-
- Updates are `md[key] = val` and `md.update(...)` calls.
-
- Now **the last** entry is replaced with new key/value pair, all
- previous occurrences are removed.
-
- If key is not present in dictionary the pair is added to the end
-
- * Force keys to `str` instances (#88)
-
- * Implement `.popall(key[, default])` (#84)
-
- * `.pop()` removes only first occurence, `.popone()` added (#92)
-
- * Implement dict's version (#86)
-
- * Proxies are not pickable anymore (#77)
-
- 2.1.7 (2017-05-29)
- ------------------
-
- * Fix import warning on Python 3.6 (#79)
-
- 2.1.6 (2017-05-27)
- ------------------
-
- * Rebuild the library for fixning missing `__spec__` attribute (#79)
-
- 2.1.5 (2017-05-13)
- ------------------
-
- * Build Python 3.6 binary wheels
-
- 2.1.4 (2016-12-1)
- ------------------
-
- * Remove LICENSE filename extension @ MANIFEST.in file (#31)
-
- 2.1.3 (2016-11-26)
- ------------------
-
- * Add a fastpath for multidict extending by multidict
-
-
- 2.1.2 (2016-09-25)
- ------------------
-
- * Fix `CIMultiDict.update()` for case of accepting `istr`
-
-
- 2.1.1 (2016-09-22)
- ------------------
-
- * Fix `CIMultiDict` constructor for case of accepting `istr` (#11)
-
-
- 2.1.0 (2016-09-18)
- ------------------
-
- * Allow to create proxy from proxy
-
- * Add type hints (PEP-484)
-
-
- 2.0.1 (2016-08-02)
- ------------------
-
- * Don't crash on `{} - MultiDict().keys()` and similar operations (#6)
-
-
- 2.0.0 (2016-07-28)
- ------------------
-
- * Switch from uppercase approach for case-insensitive string to
- `str.title()` (#5)
-
- * Deprecase `upstr` class in favor of `istr` alias.
-
- 1.2.2 (2016-08-02)
- ------------------
-
- * Don't crash on `{} - MultiDict().keys()` and similar operations (#6)
-
- 1.2.1 (2016-07-21)
- ------------------
-
- * Don't expose `multidict.__version__`
-
-
- 1.2.0 (2016-07-16)
- ------------------
-
- * Make `upstr(upstr('abc'))` much faster
-
-
- 1.1.0 (2016-07-06)
- ------------------
-
- * Don't double-iterate during MultiDict initialization (#3)
-
- * Fix CIMultiDict.pop: it is case insensitive now (#1)
-
- * Provide manylinux wheels as well as Windows ones
-
- 1.0.3 (2016-03-24)
- ------------------
-
- * Add missing MANIFEST.in
-
- 1.0.2 (2016-03-24)
- ------------------
-
- * Fix setup build
-
-
- 1.0.0 (2016-02-19)
- ------------------
-
- * Initial implementation
-Platform: UNKNOWN
-Classifier: License :: OSI Approved :: Apache Software License
-Classifier: Intended Audience :: Developers
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.4
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Programming Language :: Python :: 3.6
-Classifier: Development Status :: 5 - Production/Stable
+Metadata-Version: 1.2
+Name: multidict
+Version: 3.3.2
+Summary: multidict implementation
+Home-page: https://github.com/aio-libs/multidict/
+Author: Andrew Svetlov
+Author-email: andrew.svetlov at gmail.com
+License: Apache 2
+Description-Content-Type: UNKNOWN
+Description: =========
+ multidict
+ =========
+
+ .. image:: https://img.shields.io/pypi/v/multidict.svg
+ :target: https://pypi.org/project/multidict
+
+ .. image:: https://readthedocs.org/projects/multidict/badge/?version=latest
+ :target: http://multidict.readthedocs.org/en/latest/?badge=latest
+
+ .. image:: https://img.shields.io/travis/aio-libs/multidict/master.svg?label=Linux%20build%20%40%20Travis%20CI
+ :align: right
+ :target: http://travis-ci.org/aio-libs/multidict
+
+ .. image:: https://img.shields.io/appveyor/ci/asvetlov/multidict/master.svg?label=Windows%20build%20%40%20Appveyor
+ :align: right
+ :target: https://ci.appveyor.com/project/asvetlov/multidict/branch/master
+
+ .. image:: https://img.shields.io/pypi/pyversions/multidict.svg
+ :target: https://pypi.org/project/multidict
+
+ .. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/aio-libs/multidict
+ :alt: Coverage metrics
+
+ .. image:: https://badges.gitter.im/Join%20Chat.svg
+ :target: https://gitter.im/aio-libs/Lobby
+ :alt: Chat on Gitter
+
+ Multidict is dict-like collection of *key-value pairs* where key
+ might be occurred 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 to change
+ their own content.
+
+
+ *Case insensitive* (``CIMultiDict`` and
+ ``CIMultiDictProxy``) ones 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 Cython_ optimization for sake of speed.
+
+
+ License
+ -------
+
+ Apache 2
+
+
+ .. _aiohttp: https://github.com/KeepSafe/aiohttp
+ .. _Cython: http://cython.org/
+
+ 3.3.2 (2017-11-02)
+ ------------------
+
+ * Fix tarball (again)
+
+
+ 3.3.1 (2017-11-01)
+ ------------------
+
+ * Include .c files in tarball (#181)
+
+
+ 3.3.0 (2017-10-15)
+ ------------------
+
+ * Introduce abstract base classes (#102)
+
+ * Publish OSX binary wheels (#153)
+
+
+ 3.2.0 (2017-09-17)
+ ------------------
+
+ * Fix pickling (#134)
+
+ * Fix equality check when other contains more keys (#124)
+
+ * Fix `CIMultiDict` copy (#107)
+
+ 3.1.3 (2017-07-14)
+ ------------------
+
+ * Fix build
+
+ 3.1.2 (2017-07-14)
+ ------------------
+
+ * Fix type annotations
+
+ 3.1.1 (2017-07-09)
+ ------------------
+
+ * Remove memory leak in `istr` implementation (#105)
+
+ 3.1.0 (2017-06-25)
+ ------------------
+
+ * Raise `RuntimeError` on dict iterations if the dict was changed (#99)
+
+ * Update `__init__.pyi` signatures
+
+ 3.0.0 (2017-06-21)
+ ------------------
+
+ * Refactor internal data structures: main dict operations are about
+ 100% faster now.
+
+ * Preserve order on multidict updates (#68)
+
+ Updates are `md[key] = val` and `md.update(...)` calls.
+
+ Now **the last** entry is replaced with new key/value pair, all
+ previous occurrences are removed.
+
+ If key is not present in dictionary the pair is added to the end
+
+ * Force keys to `str` instances (#88)
+
+ * Implement `.popall(key[, default])` (#84)
+
+ * `.pop()` removes only first occurence, `.popone()` added (#92)
+
+ * Implement dict's version (#86)
+
+ * Proxies are not pickable anymore (#77)
+
+ 2.1.7 (2017-05-29)
+ ------------------
+
+ * Fix import warning on Python 3.6 (#79)
+
+ 2.1.6 (2017-05-27)
+ ------------------
+
+ * Rebuild the library for fixning missing `__spec__` attribute (#79)
+
+ 2.1.5 (2017-05-13)
+ ------------------
+
+ * Build Python 3.6 binary wheels
+
+ 2.1.4 (2016-12-1)
+ ------------------
+
+ * Remove LICENSE filename extension @ MANIFEST.in file (#31)
+
+ 2.1.3 (2016-11-26)
+ ------------------
+
+ * Add a fastpath for multidict extending by multidict
+
+
+ 2.1.2 (2016-09-25)
+ ------------------
+
+ * Fix `CIMultiDict.update()` for case of accepting `istr`
+
+
+ 2.1.1 (2016-09-22)
+ ------------------
+
+ * Fix `CIMultiDict` constructor for case of accepting `istr` (#11)
+
+
+ 2.1.0 (2016-09-18)
+ ------------------
+
+ * Allow to create proxy from proxy
+
+ * Add type hints (PEP-484)
+
+
+ 2.0.1 (2016-08-02)
+ ------------------
+
+ * Don't crash on `{} - MultiDict().keys()` and similar operations (#6)
+
+
+ 2.0.0 (2016-07-28)
+ ------------------
+
+ * Switch from uppercase approach for case-insensitive string to
+ `str.title()` (#5)
+
+ * Deprecase `upstr` class in favor of `istr` alias.
+
+ 1.2.2 (2016-08-02)
+ ------------------
+
+ * Don't crash on `{} - MultiDict().keys()` and similar operations (#6)
+
+ 1.2.1 (2016-07-21)
+ ------------------
+
+ * Don't expose `multidict.__version__`
+
+
+ 1.2.0 (2016-07-16)
+ ------------------
+
+ * Make `upstr(upstr('abc'))` much faster
+
+
+ 1.1.0 (2016-07-06)
+ ------------------
+
+ * Don't double-iterate during MultiDict initialization (#3)
+
+ * Fix CIMultiDict.pop: it is case insensitive now (#1)
+
+ * Provide manylinux wheels as well as Windows ones
+
+ 1.0.3 (2016-03-24)
+ ------------------
+
+ * Add missing MANIFEST.in
+
+ 1.0.2 (2016-03-24)
+ ------------------
+
+ * Fix setup build
+
+
+ 1.0.0 (2016-02-19)
+ ------------------
+
+ * Initial implementation
+Platform: UNKNOWN
+Classifier: License :: OSI Approved :: Apache Software License
+Classifier: Intended Audience :: Developers
+Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 3
+Classifier: Programming Language :: Python :: 3.4
+Classifier: Programming Language :: Python :: 3.5
+Classifier: Programming Language :: Python :: 3.6
+Classifier: Development Status :: 5 - Production/Stable
+Requires-Python: >=3.4.1
diff --git a/README.rst b/README.rst
index 23d66af..2ed4429 100644
--- a/README.rst
+++ b/README.rst
@@ -2,20 +2,30 @@
multidict
=========
-.. image:: https://travis-ci.org/aio-libs/multidict.svg?branch=master
- :target: https://travis-ci.org/aio-libs/multidict
- :align: right
- :alt: Linux build @ Travis CI
+.. image:: https://img.shields.io/pypi/v/multidict.svg
+ :target: https://pypi.org/project/multidict
+
+.. image:: https://readthedocs.org/projects/multidict/badge/?version=latest
+ :target: http://multidict.readthedocs.org/en/latest/?badge=latest
+
+.. image:: https://img.shields.io/travis/aio-libs/multidict/master.svg?label=Linux%20build%20%40%20Travis%20CI
+ :align: right
+ :target: http://travis-ci.org/aio-libs/multidict
+
.. image:: https://img.shields.io/appveyor/ci/asvetlov/multidict/master.svg?label=Windows%20build%20%40%20Appveyor
- :target: https://ci.appveyor.com/project/asvetlov/multidict/branch/master
- :align: right
- :alt: Windows build @ Appveyor
+ :align: right
+ :target: https://ci.appveyor.com/project/asvetlov/multidict/branch/master
+
+.. image:: https://img.shields.io/pypi/pyversions/multidict.svg
+ :target: https://pypi.org/project/multidict
+
.. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/aio-libs/multidict
- :alt: Coverage metrics
+ :target: https://codecov.io/gh/aio-libs/multidict
+ :alt: Coverage metrics
+
.. image:: https://badges.gitter.im/Join%20Chat.svg
- :target: https://gitter.im/aio-libs/Lobby
- :alt: Chat on Gitter
+ :target: https://gitter.im/aio-libs/Lobby
+ :alt: Chat on Gitter
Multidict is dict-like collection of *key-value pairs* where key
might be occurred more than once in the container.
diff --git a/docs/make.bat b/docs/make.bat
old mode 100644
new mode 100755
diff --git a/docs/multidict.rst b/docs/multidict.rst
index 11386e4..49f85e8 100644
--- a/docs/multidict.rst
+++ b/docs/multidict.rst
@@ -394,3 +394,14 @@ store them globally, like :mod:`aiohttp.hdrs` does.
The behavior remains the same with the only exception:
``repr('Content-Length')`` and ``str('Content-Length')`` now
returns ``'Content-Length'`` instead of ``'CONTENT-LENGTH'``.
+
+
+Abstract Base Classes
+=====================
+
+The module provides two ABCs: ``MutliMapping`` and
+``MutableMultiMapping``. They are similar to
+:class:`collections.abc.Mapping` and
+:class:`collections.abc.MultiMapping` and inherited from them.
+
+.. versionadded:: 3.3
diff --git a/multidict.egg-info/PKG-INFO b/multidict.egg-info/PKG-INFO
index 1b2a1e6..e1a1b82 100644
--- a/multidict.egg-info/PKG-INFO
+++ b/multidict.egg-info/PKG-INFO
@@ -1,241 +1,275 @@
-Metadata-Version: 1.1
-Name: multidict
-Version: 3.2.0
-Summary: multidict implementation
-Home-page: https://github.com/aio-libs/multidict/
-Author: Andrew Svetlov
-Author-email: andrew.svetlov at gmail.com
-License: Apache 2
-Description: =========
- multidict
- =========
-
- .. image:: https://travis-ci.org/aio-libs/multidict.svg?branch=master
- :target: https://travis-ci.org/aio-libs/multidict
- :align: right
- :alt: Linux build @ Travis CI
- .. image:: https://img.shields.io/appveyor/ci/asvetlov/multidict/master.svg?label=Windows%20build%20%40%20Appveyor
- :target: https://ci.appveyor.com/project/asvetlov/multidict/branch/master
- :align: right
- :alt: Windows build @ Appveyor
- .. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/aio-libs/multidict
- :alt: Coverage metrics
- .. image:: https://badges.gitter.im/Join%20Chat.svg
- :target: https://gitter.im/aio-libs/Lobby
- :alt: Chat on Gitter
-
- Multidict is dict-like collection of *key-value pairs* where key
- might be occurred 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 to change
- their own content.
-
-
- *Case insensitive* (``CIMultiDict`` and
- ``CIMultiDictProxy``) ones 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 Cython_ optimization for sake of speed.
-
-
- License
- -------
-
- Apache 2
-
-
- .. _aiohttp: https://github.com/KeepSafe/aiohttp
- .. _Cython: http://cython.org/
-
- 3.2.0 (2017-09-17)
- ------------------
-
- * Fix pickling (#134)
-
- * Fix equality check when other contains more keys (#124)
-
- 3.1.3 (2017-07-14)
- ------------------
-
- * Fix build
-
- 3.1.2 (2017-07-14)
- ------------------
-
- * Fix type annotations
-
- 3.1.1 (2017-07-09)
- ------------------
-
- * Fix #105: Remove memory leak in `istr` implementation
-
- 3.1.0 (2017-06-25)
- ------------------
-
- * Fix #99: raise `RuntimeError` on dict iterations if the dict was changed
-
- * Update `__init__.pyi` signatures
-
- 3.0.0 (2017-06-21)
- ------------------
-
- * Refactor internal data structures: main dict operations are about
- 100% faster now.
-
- * Preserve order on multidict updates #68
-
- Updates are `md[key] = val` and `md.update(...)` calls.
-
- Now **the last** entry is replaced with new key/value pair, all
- previous occurrences are removed.
-
- If key is not present in dictionary the pair is added to the end
-
- * Force keys to `str` instances (#88)
-
- * Implement `.popall(key[, default])` (#84)
-
- * `.pop()` removes only first occurence, `.popone()` added (#92)
-
- * Implement dict's version (#86)
-
- * Proxies are not pickable anymore (#77)
-
- 2.1.7 (2017-05-29)
- ------------------
-
- * Fix import warning on Python 3.6 (#79)
-
- 2.1.6 (2017-05-27)
- ------------------
-
- * Rebuild the library for fixning missing `__spec__` attribute (#79)
-
- 2.1.5 (2017-05-13)
- ------------------
-
- * Build Python 3.6 binary wheels
-
- 2.1.4 (2016-12-1)
- ------------------
-
- * Remove LICENSE filename extension @ MANIFEST.in file (#31)
-
- 2.1.3 (2016-11-26)
- ------------------
-
- * Add a fastpath for multidict extending by multidict
-
-
- 2.1.2 (2016-09-25)
- ------------------
-
- * Fix `CIMultiDict.update()` for case of accepting `istr`
-
-
- 2.1.1 (2016-09-22)
- ------------------
-
- * Fix `CIMultiDict` constructor for case of accepting `istr` (#11)
-
-
- 2.1.0 (2016-09-18)
- ------------------
-
- * Allow to create proxy from proxy
-
- * Add type hints (PEP-484)
-
-
- 2.0.1 (2016-08-02)
- ------------------
-
- * Don't crash on `{} - MultiDict().keys()` and similar operations (#6)
-
-
- 2.0.0 (2016-07-28)
- ------------------
-
- * Switch from uppercase approach for case-insensitive string to
- `str.title()` (#5)
-
- * Deprecase `upstr` class in favor of `istr` alias.
-
- 1.2.2 (2016-08-02)
- ------------------
-
- * Don't crash on `{} - MultiDict().keys()` and similar operations (#6)
-
- 1.2.1 (2016-07-21)
- ------------------
-
- * Don't expose `multidict.__version__`
-
-
- 1.2.0 (2016-07-16)
- ------------------
-
- * Make `upstr(upstr('abc'))` much faster
-
-
- 1.1.0 (2016-07-06)
- ------------------
-
- * Don't double-iterate during MultiDict initialization (#3)
-
- * Fix CIMultiDict.pop: it is case insensitive now (#1)
-
- * Provide manylinux wheels as well as Windows ones
-
- 1.0.3 (2016-03-24)
- ------------------
-
- * Add missing MANIFEST.in
-
- 1.0.2 (2016-03-24)
- ------------------
-
- * Fix setup build
-
-
- 1.0.0 (2016-02-19)
- ------------------
-
- * Initial implementation
-Platform: UNKNOWN
-Classifier: License :: OSI Approved :: Apache Software License
-Classifier: Intended Audience :: Developers
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.4
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Programming Language :: Python :: 3.6
-Classifier: Development Status :: 5 - Production/Stable
+Metadata-Version: 1.2
+Name: multidict
+Version: 3.3.2
+Summary: multidict implementation
+Home-page: https://github.com/aio-libs/multidict/
+Author: Andrew Svetlov
+Author-email: andrew.svetlov at gmail.com
+License: Apache 2
+Description-Content-Type: UNKNOWN
+Description: =========
+ multidict
+ =========
+
+ .. image:: https://img.shields.io/pypi/v/multidict.svg
+ :target: https://pypi.org/project/multidict
+
+ .. image:: https://readthedocs.org/projects/multidict/badge/?version=latest
+ :target: http://multidict.readthedocs.org/en/latest/?badge=latest
+
+ .. image:: https://img.shields.io/travis/aio-libs/multidict/master.svg?label=Linux%20build%20%40%20Travis%20CI
+ :align: right
+ :target: http://travis-ci.org/aio-libs/multidict
+
+ .. image:: https://img.shields.io/appveyor/ci/asvetlov/multidict/master.svg?label=Windows%20build%20%40%20Appveyor
+ :align: right
+ :target: https://ci.appveyor.com/project/asvetlov/multidict/branch/master
+
+ .. image:: https://img.shields.io/pypi/pyversions/multidict.svg
+ :target: https://pypi.org/project/multidict
+
+ .. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/aio-libs/multidict
+ :alt: Coverage metrics
+
+ .. image:: https://badges.gitter.im/Join%20Chat.svg
+ :target: https://gitter.im/aio-libs/Lobby
+ :alt: Chat on Gitter
+
+ Multidict is dict-like collection of *key-value pairs* where key
+ might be occurred 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 to change
+ their own content.
+
+
+ *Case insensitive* (``CIMultiDict`` and
+ ``CIMultiDictProxy``) ones assume the *keys* are case
+ insensitive, e.g.::
+
+ >>> dct = CIMultiDict(key='val')
... 25272 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-multidict.git
More information about the Python-modules-commits
mailing list