From f55bfcd46083745b34866875a22195a768782755 Mon Sep 17 00:00:00 2001 From: James Douglass Date: Fri, 27 Oct 2023 11:23:50 -0700 Subject: [PATCH 1/6] Trying out support for 3.12, dropping testing on 3.8. RE:#95 --- .github/workflows/pythonapp.yml | 2 +- HISTORY.rst | 5 +++++ setup.py | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) 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/setup.py b/setup.py index a83a6d3..1c6c5f6 100644 --- a/setup.py +++ b/setup.py @@ -34,10 +34,10 @@ '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.11', 'License :: OSI Approved :: BSD License' ]) From 708ec7913fa871d47c752f48c71080a7565b398d Mon Sep 17 00:00:00 2001 From: James Douglass Date: Fri, 27 Oct 2023 11:24:37 -0700 Subject: [PATCH 2/6] Adding a pyproject.toml file. RE:#95 --- pyproject.toml | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 pyproject.toml diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..5f03c44 --- /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.11", + "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" From 50ff577349e813b19b98b89b1bfa6d14b0b7c5ca Mon Sep 17 00:00:00 2001 From: James Douglass Date: Fri, 27 Oct 2023 11:26:18 -0700 Subject: [PATCH 3/6] Adding 3.12 to tox.ini. RE:#95 --- tox.ini | 1 + 1 file changed, 1 insertion(+) 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 = From 45e47eb42359ae496f9314938850d91a6c9d69f6 Mon Sep 17 00:00:00 2001 From: James Douglass Date: Fri, 27 Oct 2023 11:32:46 -0700 Subject: [PATCH 4/6] Correcting pyproject.toml syntax. RE:#95 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 5f03c44..3ab9f4e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ license = {file = "LICENSE.txt"} maintainers = [ {name = "Natural Capital Project Software Team"} ] -keywords = "parallel multiprocessing distributed computing" +keywords = ["parallel", "multiprocessing", "distributed", "computing"] classifiers = [ "Intended Audience :: Developers", "Topic :: System :: Distributed Computing", From 6911bbb4e5b2659f58fb4f7ae35fe0fc3f9ec6a7 Mon Sep 17 00:00:00 2001 From: James Douglass Date: Fri, 27 Oct 2023 12:04:26 -0700 Subject: [PATCH 5/6] Update version classifier in setup.py RE:#95 Co-authored-by: Doug --- setup.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 1c6c5f6..041fde9 100644 --- a/setup.py +++ b/setup.py @@ -38,6 +38,7 @@ 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', - 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', + 'License :: OSI Approved :: BSD License' ]) From 560b4326112705f0b85336d04583bc9a54ee8cbf Mon Sep 17 00:00:00 2001 From: James Douglass Date: Fri, 27 Oct 2023 12:08:20 -0700 Subject: [PATCH 6/6] Update pyproject.toml again! RE:#95 Co-authored-by: Doug --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 3ab9f4e..54b724e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,7 +20,7 @@ classifiers = [ "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", "License :: OSI Approved :: BSD License" ] # the version is provided dynamically by setuptools_scm