Issue #29: Switch to CalVer, require Python >= 3.6

This commit is contained in:
Nick Coghlan 2021-06-26 15:38:48 +10:00
parent 5f8498c19f
commit a1ea615bb3
4 changed files with 36 additions and 12 deletions

View file

@ -1,6 +1,33 @@
Release History Release History
--------------- ---------------
21.6.0 (2021-06-TBD)
^^^^^^^^^^^^^^^^^^^^^^^^
* Switched to calendar based versioning rather than continuing with pre-1.0
semantic versioning (`#29 <https://github.com/jazzband/contextlib2/issues/29>`__)
* Due to the inclusion of asynchronous features from Python 3.7+, the
minimum supported Python version is now Python 3.6
(`#29 <https://github.com/jazzband/contextlib2/issues/29>`__)
* (WIP) Synchronised with the Python 3.10 version of contextlib, bringing the
following new features to Python 3.6+ (
`#12 <https://github.com/jazzband/contextlib2/issues/12>`__,
`#19 <https://github.com/jazzband/contextlib2/issues/19>`__,
`#27 <https://github.com/jazzband/contextlib2/issues/27>`__):
* ``asyncontextmanager`` (Python 3.7)
* ``aclosing`` (Python 3.10)
* ``AbstractAsyncContextManager`` (Python 3.7)
* ``AsyncContextDecorator`` (Python 3.10)
* ``AsyncExitStack`` (Python 3.7)
* async support in ``nullcontext`` (Python 3.10)
* Updates to the default compatibility testing matrix:
* Added: CPython 3.9, CPython 3.10
* Dropped: CPython 2.7, CPython 3.5, PyPy2
0.6.0.post1 (2019-10-10) 0.6.0.post1 (2019-10-10)
^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^

View file

@ -1 +1 @@
0.6.0.post1 21.6.0

View file

@ -7,7 +7,7 @@ except ImportError:
setup( setup(
name='contextlib2', name='contextlib2',
version=open('VERSION.txt').read().strip(), version=open('VERSION.txt').read().strip(),
python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*', python_requires='>=3.6',
py_modules=['contextlib2'], py_modules=['contextlib2'],
license='PSF License', license='PSF License',
description='Backports and enhancements for the contextlib module', description='Backports and enhancements for the contextlib module',
@ -19,13 +19,13 @@ setup(
'Development Status :: 5 - Production/Stable', 'Development Status :: 5 - Production/Stable',
'License :: OSI Approved :: Python Software Foundation License', 'License :: OSI Approved :: Python Software Foundation License',
# These are the Python versions tested, it may work on others # These are the Python versions tested, it may work on others
'Programming Language :: Python :: 2', # It definitely won't work on versions without native async support
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
], ],
) )

View file

@ -1,5 +1,5 @@
[tox] [tox]
envlist = py{27,35,36,37,py,py3} envlist = py{36,37,38,39,3_10,py3}
skip_missing_interpreters = True skip_missing_interpreters = True
[testenv] [testenv]
@ -9,15 +9,12 @@ commands =
coverage xml coverage xml
deps = deps =
coverage coverage
py27: unittest2
pypy: unittest2
[gh-actions] [gh-actions]
python = python =
2.7: py27
3.5: py35
3.6: py36 3.6: py36
3.7: py37 3.7: py37
3.8: py38 3.8: py38
pypy2: pypy 3.9: py39
3.10: py3_10
pypy3: pypy3 pypy3: pypy3