diff --git a/.github/workflows/pythonapp.yml b/.github/workflows/pythonapp.yml index e0e3992..5720cb6 100644 --- a/.github/workflows/pythonapp.yml +++ b/.github/workflows/pythonapp.yml @@ -12,7 +12,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: [3.7, 3.8, 3.9, "3.10", "3.11"] + python-version: [3.8, 3.9, "3.10", "3.11", "3.12"] os: [ubuntu-latest, windows-latest, macos-latest] steps: diff --git a/HISTORY.rst b/HISTORY.rst index 17074ad..0e1f07b 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -6,10 +6,15 @@ TaskGraph Release History Unreleased Changes ------------------ +* Adding ``pyproject.toml`` for our build definitions. * Python 3.6 has reached end-of-life and is no longer maintained, so it has been removed from the automated tests. +* Python 3.7 has reached end-of-life and is no longer maintained, so it has + been removed from automated tests. * Python 3.11 has been released, so ``taskgraph`` is now tested against this new version of the language. +* Python 3.12 has been released, so ``taskgraph`` is now tested against this + new version of the language. 0.11.0 (2021-10-12) ------------------- diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..54b724e --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,39 @@ +[project] +name = "taskgraph" +description = "Parallel task graph framework" +readme = "README.rst" +requires-python = ">=3.6" +license = {file = "LICENSE.txt"} +maintainers = [ + {name = "Natural Capital Project Software Team"} +] +keywords = ["parallel", "multiprocessing", "distributed", "computing"] +classifiers = [ + "Intended Audience :: Developers", + "Topic :: System :: Distributed Computing", + "Development Status :: 5 - Production/Stable", + "Natural Language :: English", + "Operating System :: MacOS :: MacOS X", + "Operating System :: Microsoft", + "Operating System :: POSIX", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "License :: OSI Approved :: BSD License" +] +# the version is provided dynamically by setuptools_scm +# `dependencies` and `optional-dependencies` are provided by setuptools +# using the corresponding setup args `install_requires` and `extras_require` +dynamic = ["version", "dependencies", "optional-dependencies"] + +[build-system] +requires = [ + 'wheel', 'setuptools_scm>=8.0' +] +build-backend = "setuptools.build_meta" + +[tool.setuptools_scm] +version_scheme = "post-release" +local_scheme = "node-and-date" diff --git a/setup.py b/setup.py index a83a6d3..041fde9 100644 --- a/setup.py +++ b/setup.py @@ -34,10 +34,11 @@ 'Operating System :: MacOS :: MacOS X', 'Operating System :: Microsoft', 'Operating System :: POSIX', - 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', + 'License :: OSI Approved :: BSD License' ]) diff --git a/tox.ini b/tox.ini index 196c6e0..e167b86 100644 --- a/tox.ini +++ b/tox.ini @@ -12,6 +12,7 @@ python = 3.9: py39 3.10: py310 3.11: py311 + 3.12: py312 [testenv] commands =