{ "info": { "author": "Nick Coghlan", "author_email": "ncoghlan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Python Software Foundation License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": ".. image:: https://jazzband.co/static/img/badge.svg\n :target: https://jazzband.co/\n :alt: Jazzband\n\n.. image:: https://readthedocs.org/projects/contextlib2/badge/?version=latest\n :target: https://contextlib2.readthedocs.org/\n :alt: Latest Docs\n\n.. image:: https://img.shields.io/travis/jazzband/contextlib2/master.svg\n :target: http://travis-ci.org/jazzband/contextlib2\n\n.. image:: https://coveralls.io/repos/github/jazzband/contextlib2/badge.svg?branch=master\n :target: https://coveralls.io/github/jazzband/contextlib2?branch=master\n\n.. image:: https://landscape.io/github/jazzband/contextlib2/master/landscape.svg\n :target: https://landscape.io/github/jazzband/contextlib2/\n\ncontextlib2 is a backport of the `standard library's contextlib\nmodule `_ to\nearlier Python versions.\n\nIt also serves as a real world proving ground for possible future\nenhancements to the standard library version.\n\nDevelopment\n-----------\n\ncontextlib2 has no runtime dependencies, but requires ``unittest2`` for testing\non Python 2.x, as well as ``setuptools`` and ``wheel`` to generate universal\nwheel archives.\n\nLocal testing is just a matter of running ``python test_contextlib2.py``.\n\nYou can test against multiple versions of Python with\n`tox `_::\n\n pip install tox\n tox\n\nVersions currently tested in both tox and Travis CI are:\n\n* CPython 2.7\n* CPython 3.4\n* CPython 3.5\n* CPython 3.6\n* CPython 3.7\n* PyPy\n* PyPy3\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://contextlib2.readthedocs.org", "keywords": "", "license": "PSF License", "maintainer": "", "maintainer_email": "", "name": "contextlib2", "package_url": "https://pypi.org/project/contextlib2/", "platform": "", "project_url": "https://pypi.org/project/contextlib2/", "project_urls": { "Homepage": "http://contextlib2.readthedocs.org" }, "release_url": "https://pypi.org/project/contextlib2/0.6.0.post1/", "requires_dist": null, "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "summary": "Backports and enhancements for the contextlib module", "version": "0.6.0.post1" }, "last_serial": 5954589, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "fcb487fd858e1c8b3276d9934311f079", "sha256": "eb8a8cd0d4667994ac218a1ed5faca4a634670f1500bbc9401cd212654efeaae" }, "downloads": -1, "filename": "contextlib2-0.1.tar.gz", "has_sig": false, "md5_digest": "fcb487fd858e1c8b3276d9934311f079", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2911, "upload_time": "2011-12-13T13:41:53", "url": "https://files.pythonhosted.org/packages/7d/53/ad64ca371db34da6df81eba75f248e0cdf6c186e970914b7173e47ae163b/contextlib2-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "842104b1e8a59a2d31279b3fb57465f2", "sha256": "6da319e5a055d82bc49a47ee473f8e60c4f0fc61a73e4ad5737623365c03a91a" }, "downloads": -1, "filename": "contextlib2-0.2.tar.gz", "has_sig": false, "md5_digest": "842104b1e8a59a2d31279b3fb57465f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2969, "upload_time": "2011-12-15T12:13:24", "url": "https://files.pythonhosted.org/packages/c2/9f/a93079bbe37fdb2e8a11e6fa7a0746dc9abc5a50ee7ea551487a6f308fa4/contextlib2-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "6fe0baf625ba9f06f2208c554fd9b24c", "sha256": "9d40d28e8f34c38fa7d2730c9c04c49f998222e6fa445f68a67c4b795603082c" }, "downloads": -1, "filename": "contextlib2-0.3.tar.gz", "has_sig": false, "md5_digest": "6fe0baf625ba9f06f2208c554fd9b24c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3275, "upload_time": "2012-01-04T05:33:51", "url": "https://files.pythonhosted.org/packages/2f/4e/07bb8a65a1ac456943bfdebf6e297da9576d0b2a3ac5746ea81afa182698/contextlib2-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "253e7d035b4689391b52a33dbf946bd6", "sha256": "51fdd771d5613541863dc759b3e7056e6c83b355e9fe552fb3df14b43c3951ed" }, "downloads": -1, "filename": "contextlib2-0.3.1.tar.gz", "has_sig": false, "md5_digest": "253e7d035b4689391b52a33dbf946bd6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18254, "upload_time": "2012-01-17T12:58:22", "url": "https://files.pythonhosted.org/packages/04/c8/034dc72330ee9b41631a47409c09d91708ca9d152c8eb6e6a935612ab1aa/contextlib2-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "ea687207db25f65552061db4a2c6727d", "sha256": "55a5dc78f7a742a0e756645134ffb39bbe11da0fea2bc0f7070d40dac208b732" }, "downloads": -1, "filename": "contextlib2-0.4.0.tar.gz", "has_sig": false, "md5_digest": "ea687207db25f65552061db4a2c6727d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18741, "upload_time": "2012-05-05T15:29:31", "url": "https://files.pythonhosted.org/packages/f7/b8/1771dd295299daebff372526543a582b667f3a882ea45e81ec0eb497bc5d/contextlib2-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "713f492563e61898ecbe76b28b0edc80", "sha256": "a9c12c16836d4cdb7a96df77f12964ddbd651b53003ae9e8de31cc56696acc5b" }, "downloads": -1, "filename": "contextlib2-0.5.0.tar.gz", "has_sig": false, "md5_digest": "713f492563e61898ecbe76b28b0edc80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25431, "upload_time": "2016-01-12T11:32:31", "url": "https://files.pythonhosted.org/packages/2c/a4/284a6cb8dcf0dba3f6810d27a12b2b2ecae623352f0c84d78db90815ac6c/contextlib2-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "b7f4c5a2b900c419b11b20f59838de1b", "sha256": "227c79e126e8a8904a81d162750581ed3d49af2395a3100be7067b7296d33d45" }, "downloads": -1, "filename": "contextlib2-0.5.1.tar.gz", "has_sig": false, "md5_digest": "b7f4c5a2b900c419b11b20f59838de1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25186, "upload_time": "2016-01-13T12:51:07", "url": "https://files.pythonhosted.org/packages/1e/82/8fa4e44f849237b13b6631b6a975692c7fd73ad16c0632cccf3df07d06bd/contextlib2-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "c9b6550cf69d2e7dae23d2be216565ac", "sha256": "f446cafc2da6b6bebf2a9adc9779510772f398aa1b24711876652799e9db5984" }, "downloads": -1, "filename": "contextlib2-0.5.2-py2-none-any.whl", "has_sig": false, "md5_digest": "c9b6550cf69d2e7dae23d2be216565ac", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 7846, "upload_time": "2016-05-02T05:15:20", "url": "https://files.pythonhosted.org/packages/d3/4b/38b1d2c7e16842481592fb041e72c57362199532bfb6b43f3cc43f780f5d/contextlib2-0.5.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17fa0e7408c7b3dd30905b7970e29f1f", "sha256": "6271717cdbfbe12e6aa3dde1bb8389f454f58100cb5615a2802ca1ab8e599702" }, "downloads": -1, "filename": "contextlib2-0.5.2-py3-none-any.whl", "has_sig": false, "md5_digest": "17fa0e7408c7b3dd30905b7970e29f1f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7845, "upload_time": "2016-05-02T05:15:26", "url": "https://files.pythonhosted.org/packages/43/33/4cf6eacba5e4f36c3753845b66ce9c6a27b790e9c9a932f9c942d93adbd7/contextlib2-0.5.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e6d057e6d013ee006ab024ba1eaf6b56", "sha256": "83c8d5e75c1b372a5e1fbd267cd37a392cc53f13a0f74933075bff8213dc581e" }, "downloads": -1, "filename": "contextlib2-0.5.2.tar.gz", "has_sig": false, "md5_digest": "e6d057e6d013ee006ab024ba1eaf6b56", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25667, "upload_time": "2016-05-02T05:14:55", "url": "https://files.pythonhosted.org/packages/9d/e1/812f0722bbfcff1ef7a8bb15abefe27a93bab04de00f8ebc93f2fe51fa5a/contextlib2-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "59a03a491b52348958fb4acef52817d8", "sha256": "888a280f24dcff2cc55ac0e51fc764484b284f91ff711a219e459a6d5f76de2b" }, "downloads": -1, "filename": "contextlib2-0.5.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "59a03a491b52348958fb4acef52817d8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8039, "upload_time": "2016-05-02T11:13:57", "url": "https://files.pythonhosted.org/packages/e6/02/0db6f0ed807f7fa9c005cc0e2ebb3d732ce2da7c5467fe26870a2af74155/contextlib2-0.5.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "26ad6b6e4d60aa36cb4ecee4747cddd4", "sha256": "30e500f13921c73c96f49a6dd2adfbdd92bc3fae12183e91b06b2e4583486206" }, "downloads": -1, "filename": "contextlib2-0.5.3.tar.gz", "has_sig": false, "md5_digest": "26ad6b6e4d60aa36cb4ecee4747cddd4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26415, "upload_time": "2016-05-02T11:14:17", "url": "https://files.pythonhosted.org/packages/69/05/72b6adf92157a3d686f04a0a797efc3212808a6abd6aa96fef13358e1b0d/contextlib2-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "cc0e8099a78d6e61cb58e322129137e8", "sha256": "399f659f2a8b5d5d529f132e1136fc404fbbc28e34e4618c5c92bd595be9b162" }, "downloads": -1, "filename": "contextlib2-0.5.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cc0e8099a78d6e61cb58e322129137e8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8113, "upload_time": "2016-07-31T03:43:03", "url": "https://files.pythonhosted.org/packages/8d/04/b7674bf5da1e1c19032b81cbb8d14ec42b588d8a2015c895c60bb414df5f/contextlib2-0.5.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d66215f9902c8b857688d4e3b527b3f", "sha256": "710626cde569f51a87f216ff757fe60f5cd13ae8f8114706590510cd5649ce88" }, "downloads": -1, "filename": "contextlib2-0.5.4.tar.gz", "has_sig": false, "md5_digest": "2d66215f9902c8b857688d4e3b527b3f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28523, "upload_time": "2016-07-31T03:43:05", "url": "https://files.pythonhosted.org/packages/cc/19/0bee3b2ea499f7fb2480b6b3f4ae7951e111d6b73785ba53c6afeba55672/contextlib2-0.5.4.tar.gz" } ], "0.5.5": [ { "comment_text": "", "digests": { "md5": "245e0f6adade50499597fecb660af1e5", "sha256": "f5260a6e679d2ff42ec91ec5252f4eeffdcf21053db9113bd0a8e4d953769c00" }, "downloads": -1, "filename": "contextlib2-0.5.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "245e0f6adade50499597fecb660af1e5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8134, "upload_time": "2017-04-25T03:51:27", "url": "https://files.pythonhosted.org/packages/a2/71/8273a7eeed0aff6a854237ab5453bc9aa67deb49df4832801c21f0ff3782/contextlib2-0.5.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "95fe420941ebc64951cd9d89edc41870", "sha256": "509f9419ee91cdd00ba34443217d5ca51f5a364a404e1dce9e8979cea969ca48" }, "downloads": -1, "filename": "contextlib2-0.5.5.tar.gz", "has_sig": false, "md5_digest": "95fe420941ebc64951cd9d89edc41870", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28755, "upload_time": "2017-04-25T03:51:29", "url": "https://files.pythonhosted.org/packages/6e/db/41233498c210b03ab8b072c8ee49b1cd63b3b0c76f8ea0a0e5d02df06898/contextlib2-0.5.5.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "e5fd80110e7ee1c7e321ed90dd700fd3", "sha256": "9d2c67f18c1f9b6db1b46317f7f784aa82789d2ee5dea5d9c0f0f2a764eb862e" }, "downloads": -1, "filename": "contextlib2-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e5fd80110e7ee1c7e321ed90dd700fd3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 9701, "upload_time": "2019-09-21T13:41:31", "url": "https://files.pythonhosted.org/packages/cf/e5/989798d38831a8505d62687c94b0f2954ff0a40782e25f9add8ed675dc1f/contextlib2-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d03a631073b40073b5c41364ad8f5979", "sha256": "7197aa736777caac513dbd800944c209a49765bf1979b12b037dce0277077ed3" }, "downloads": -1, "filename": "contextlib2-0.6.0.tar.gz", "has_sig": false, "md5_digest": "d03a631073b40073b5c41364ad8f5979", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 29607, "upload_time": "2019-09-21T13:42:38", "url": "https://files.pythonhosted.org/packages/f0/08/ac376929b2c51e2d5fd4b9fa1f72eca0162c990edc526bdd3b16449323ad/contextlib2-0.6.0.tar.gz" } ], "0.6.0.post1": [ { "comment_text": "", "digests": { "md5": "3cbfdffaa11f340df1ea6345013bcbd4", "sha256": "3355078a159fbb44ee60ea80abd0d87b80b78c248643b49aa6d94673b413609b" }, "downloads": -1, "filename": "contextlib2-0.6.0.post1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3cbfdffaa11f340df1ea6345013bcbd4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 9770, "upload_time": "2019-10-10T12:47:48", "url": "https://files.pythonhosted.org/packages/85/60/370352f7ef6aa96c52fb001831622f50f923c1d575427d021b8ab3311236/contextlib2-0.6.0.post1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d634281c2e61e575d8a68b9c56f8303a", "sha256": "01f490098c18b19d2bd5bb5dc445b2054d2fa97f09a4280ba2c5f3c394c8162e" }, "downloads": -1, "filename": "contextlib2-0.6.0.post1.tar.gz", "has_sig": false, "md5_digest": "d634281c2e61e575d8a68b9c56f8303a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 29670, "upload_time": "2019-10-10T12:48:44", "url": "https://files.pythonhosted.org/packages/02/54/669207eb72e3d8ae8b38aa1f0703ee87a0e9f88f30d3c0a47bebdb6de242/contextlib2-0.6.0.post1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3cbfdffaa11f340df1ea6345013bcbd4", "sha256": "3355078a159fbb44ee60ea80abd0d87b80b78c248643b49aa6d94673b413609b" }, "downloads": -1, "filename": "contextlib2-0.6.0.post1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3cbfdffaa11f340df1ea6345013bcbd4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 9770, "upload_time": "2019-10-10T12:47:48", "url": "https://files.pythonhosted.org/packages/85/60/370352f7ef6aa96c52fb001831622f50f923c1d575427d021b8ab3311236/contextlib2-0.6.0.post1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d634281c2e61e575d8a68b9c56f8303a", "sha256": "01f490098c18b19d2bd5bb5dc445b2054d2fa97f09a4280ba2c5f3c394c8162e" }, "downloads": -1, "filename": "contextlib2-0.6.0.post1.tar.gz", "has_sig": false, "md5_digest": "d634281c2e61e575d8a68b9c56f8303a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 29670, "upload_time": "2019-10-10T12:48:44", "url": "https://files.pythonhosted.org/packages/02/54/669207eb72e3d8ae8b38aa1f0703ee87a0e9f88f30d3c0a47bebdb6de242/contextlib2-0.6.0.post1.tar.gz" } ] }