diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 6d48988..56f1415 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -27,7 +27,8 @@ jobs: - ["3.9", "py39"] - ["3.10", "py310"] - ["3.11", "py311"] - - ["3.12.0-rc.3", "py312"] + - ["3.12", "py312"] + - ["3.13.0-alpha - 3.13.0", "py313"] - ["3.9", "docs"] - ["3.9", "coverage"] - ["3.9", "py39-datetime"] diff --git a/.meta.toml b/.meta.toml index 7bdc04e..9246488 100644 --- a/.meta.toml +++ b/.meta.toml @@ -2,7 +2,7 @@ # https://github.com/zopefoundation/meta/tree/master/config/pure-python [meta] template = "pure-python" -commit-id = "b21fbbf2" +commit-id = "13b9049c" [python] with-pypy = false diff --git a/CHANGES.rst b/CHANGES.rst index 19bed7e..a870d5a 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -12,8 +12,8 @@ Backwards incompatible changes Features ++++++++ -- Allow to use the package with Python 3.12 -- Caution: No security audit has - been done so far. +- Allow to use the package with Python 3.12 and 3.13 -- Caution: No security + audit has been done so far. Fixes +++++ diff --git a/setup.py b/setup.py index 575ccdc..15d3cef 100644 --- a/setup.py +++ b/setup.py @@ -67,7 +67,7 @@ def read(*rnames): package_dir={'': 'src'}, install_requires=[ ], - python_requires=">=3.7, <3.13", + python_requires=">=3.7, <3.14", tests_require=tests_require, extras_require={ 'test': tests_require, diff --git a/tox.ini b/tox.ini index 9c9fcce..1f092e2 100644 --- a/tox.ini +++ b/tox.ini @@ -3,6 +3,7 @@ [tox] minversion = 3.18 envlist = + release-check lint py37 py38 @@ -10,6 +11,7 @@ envlist = py310 py311 py312 + py313 docs coverage py39-datetime @@ -19,7 +21,7 @@ envlist = usedevelop = true package = wheel wheel_build_env = .pkg -pip_pre = py312: true +pip_pre = py313: true deps = datetime: DateTime -cconstraints.txt @@ -53,21 +55,31 @@ commands = coverage html coverage report -m --fail-under=100 depends = py37,py38,py39,py39-datetime,py310,py311,py312coverage - -[testenv:lint] +[testenv:release-check] +description = ensure that the distribution is ready to release basepython = python3 skip_install = true +deps = + twine + build + check-manifest + check-python-versions >= 0.20.0 + wheel commands = - isort --check-only --diff {toxinidir}/src {toxinidir}/setup.py {toxinidir}/tests - flake8 src setup.py tests check-manifest check-python-versions + python -m build --sdist --no-isolation + twine check dist/* + +[testenv:lint] +basepython = python3 +skip_install = true deps = - check-manifest - check-python-versions >= 0.19.1 - wheel - flake8 isort + flake8 +commands = + isort --check-only --diff {toxinidir}/src {toxinidir}/setup.py {toxinidir}/tests + flake8 src setup.py tests [testenv:isort-apply] basepython = python3