contextlib2 is a backport of the standard library's contextlib module to earlier Python versions.
It also serves as a real world proving ground for possible future enhancements to the standard library version.
contextlib2 has no runtime dependencies, but requires
unittest2 for testing
on Python 2.x, as well as
wheel to generate universal
Local testing is just a matter of running
You can test against multiple versions of Python with tox:
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 3.7 (CPython development branch)
Versions currently tested only in tox are:
This is due to an exception chaining compatibility bug that was fixed in the PyPy3 5.5 alpha release, while the version on Travis CI (as of April 2017) is still the older PyPy3 2.4.0 release.