Skip to main content

multidict implementation

Project description

Multidicts are useful for working with HTTP headers, URL query args etc.

The code was extracted from aiohttp library.

Introduction

HTTP Headers and URL query string require specific data structure: multidict. It behaves mostly like a dict but it can have several values for the same key.

multidict has four multidict classes: MultiDict, MultiDictProxy, CIMultiDict and CIMultiDictProxy.

Immutable proxies (MultiDictProxy and CIMultiDictProxy) provide a dynamic view on 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 assumes the keys are case insensitive, e.g.:

>>> dct = CIMultiDict(a='val')
>>> 'A' in dct
True
>>> dct['A']
'val'

Keys should be str instances.

The library has optional Cython optimization for sake of speed.

License

Apache 2

1.2.0 (2016-08-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

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multidict-1.2.0.tar.gz (90.0 kB view details)

Uploaded Source

Built Distributions

multidict-1.2.0-cp35-cp35m-win_amd64.whl (133.3 kB view details)

Uploaded CPython 3.5m Windows x86-64

multidict-1.2.0-cp35-cp35m-win32.whl (123.0 kB view details)

Uploaded CPython 3.5m Windows x86

multidict-1.2.0-cp35-cp35m-manylinux1_x86_64.whl (337.9 kB view details)

Uploaded CPython 3.5m

multidict-1.2.0-cp35-cp35m-manylinux1_i686.whl (311.6 kB view details)

Uploaded CPython 3.5m

multidict-1.2.0-cp34-cp34m-win_amd64.whl (132.5 kB view details)

Uploaded CPython 3.4m Windows x86-64

multidict-1.2.0-cp34-cp34m-win32.whl (124.9 kB view details)

Uploaded CPython 3.4m Windows x86

multidict-1.2.0-cp34-cp34m-manylinux1_x86_64.whl (341.6 kB view details)

Uploaded CPython 3.4m

multidict-1.2.0-cp34-cp34m-manylinux1_i686.whl (315.4 kB view details)

Uploaded CPython 3.4m

File details

Details for the file multidict-1.2.0.tar.gz.

File metadata

  • Download URL: multidict-1.2.0.tar.gz
  • Upload date:
  • Size: 90.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for multidict-1.2.0.tar.gz
Algorithm Hash digest
SHA256 a6c55db0ecb92ef0ddd17b004f866ef608057285292af9f4ee55edbc10a784db
MD5 999fdd9275a9b85581915160d59b4f44
BLAKE2b-256 1b8b2d20d7e568b7f3adb686fad7717f04d198f7914a456ee07758872047706b

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 e27a8249ff038c144698e5f37376c2cfd23c5efb42d5eb9bb08c977ed4a14452
MD5 6ca8b524cc10de21c39adb0279416aa4
BLAKE2b-256 530d9c726f3654d0e62b547c554d40b4898c5101e4019ec71f08aba6e19f8f84

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 e0ad981e15a92021b92650a3d54ca061682a29239e26242c4cf5869115b96ddb
MD5 cf0ea2edb2f1b91daeb15318010a97ed
BLAKE2b-256 21e1470624426a7fff403b40781146c6513ee5e567a48046677dd0c96d0c3d06

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8bad9a59b89f3f30c9ae4a60bfb28ff2765162d47165208209a05680edfd6cd4
MD5 bfa72a3e6ed788379695da6cf97d930c
BLAKE2b-256 cf99f86efc0c8fced0e1e928c1c307d04299e930bb527aa807e686e25b67157f

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp35-cp35m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp35-cp35m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 f98c86ad460888aac51b484870d4a2fa01b5d0714e321fd91ee4f66ab32a1b67
MD5 427d76cfe288d8627d6f315bd22ad913
BLAKE2b-256 74027aaf8a2d97e55bdcc1265ca39547b9fab01c7c9048481f7562af71c88eec

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 64f9a355785f3346242912b9f3e9f624cb5840ae01a14c565331045aad9b90e6
MD5 8a506713d000c12b351a647463783bad
BLAKE2b-256 33ac5982d4387551b2eb09ae83354e3d1e02acad4a38f66690c35b907b7045a2

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 e4a514438d52cd52afa8d7c1b1c7fc4b6f09321a7666b59b5b61e0ef6a201b57
MD5 db1308e15f7e739539b7094f15214b86
BLAKE2b-256 d66c36b789fafe86707cf78ea631310f7ed31423ceb0633d7b4b92d0897909e9

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 f8892af78ada3988d0b60a2363031b572d2391514d8187a2446dcd39faa23b66
MD5 61c74bff446528e76a1fb61d6d6e82db
BLAKE2b-256 8b4f2df9d9d724fd572b8f7af2973c102f0293b0b53ef2faac44a46faa7eb20e

See more details on using hashes here.

Provenance

File details

Details for the file multidict-1.2.0-cp34-cp34m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for multidict-1.2.0-cp34-cp34m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 88bc4d3dd69b399ceca7c34477717a8daadc8046b0051add980a19caa9489dae
MD5 b7bec0376c7e3ce939141321d1158272
BLAKE2b-256 bb2de5ad2db32ae226b63bbbc6b76deabdb8f089d8e3209d06b4abf9f6c6b13d

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page