contextlib2 is a backport of the standard library's contextlib module to earlier Python versions.
Find a file
2016-07-31 13:40:33 +10:00
docs Updated links for Jazzband move. 2016-07-27 16:42:06 +02:00
.coveragerc Set up coverage.py. Refs #4. 2016-07-26 14:36:15 +02:00
.gitignore Set up coverage.py. Refs #4. 2016-07-26 14:36:15 +02:00
.travis.yml Add PyPI deploy section to Travis config file. 2016-07-27 17:33:07 +02:00
contextlib2.py Issue #7: Backport fix for CPython issue #27122 2016-07-31 13:31:39 +10:00
CONTRIBUTING.md Updated links for Jazzband move. 2016-07-27 16:42:06 +02:00
LICENSE.txt Add support for tox (http://tox.testrun.org/) 2015-09-14 08:34:55 -07:00
MANIFEST.in Updated links for Jazzband move. 2016-07-27 16:42:06 +02:00
NEWS.rst Prepare for 0.5.4 release 2016-07-31 13:34:38 +10:00
README.rst Updated links for Jazzband move. 2016-07-27 16:42:06 +02:00
setup.cfg Issue #6: Publish universal wheels 2016-05-02 16:54:31 +10:00
setup.py Issue #6: Publish universal wheels 2016-05-02 16:54:31 +10:00
test_contextlib2.py Issue #7: Backport fix for CPython issue #27122 2016-07-31 13:31:39 +10:00
tox.ini Set up coverage.py. Refs #4. 2016-07-26 14:36:15 +02:00
VERSION.txt Prepare for 0.5.4 release 2016-07-31 13:34:38 +10:00

.. image:: https://jazzband.co/static/img/badge.svg
   :target: https://jazzband.co/
   :alt: Jazzband

.. image:: https://readthedocs.org/projects/contextlib2/badge/?version=latest
   :target: https://contextlib2.readthedocs.org/
   :alt: Latest Docs

.. image:: https://img.shields.io/travis/jazzband/contextlib2/master.svg
   :target: http://travis-ci.org/jazzband/contextlib2

.. image:: https://coveralls.io/repos/github/jazzband/contextlib2/badge.svg?branch=master
   :target: https://coveralls.io/github/jazzband/contextlib2?branch=master

.. image:: https://landscape.io/github/jazzband/contextlib2/master/landscape.svg
   :target: https://landscape.io/github/jazzband/contextlib2/

contextlib2 is a backport of the `standard library's contextlib
module <https://docs.python.org/3.5/library/contextlib.html>`_ to
earlier Python versions.

It also serves as a real world proving ground for possible future
enhancements to the standard library version.

Development
-----------

contextlib2 has no runtime dependencies, but requires ``unittest2`` for testing
on Python 2.x.

Local testing is just a matter of running ``python test_contextlib2.py``.

You can test against multiple versions of Python with
`tox <https://tox.testrun.org/>`_::

    pip install tox
    tox

Versions currently tested in both tox and Travis CI are:

* CPython 2.6
* CPython 2.7
* CPython 3.4
* CPython 3.5
* CPython 3.6 (CPython development branch)
* PyPy

tox also has a PyPy3 configuration, but it is not configured in Travis
due to a
`known incompatibility <https://bitbucket.org/pypy/pypy/issues/1903>`_.

To install several of the relevant runtimes on Fedora 23::

    sudo dnf install python python3 pypy pypy3
    sudo dnf copr enable -y mstuchli/Python3.5
    sudo dnf install python35-python3