Repository: censusdis/censusdis (language: python)

Issue:
Python 3.12
Add support for Python 3.12 after verifying that all dependencies support it.

Add it to the test matrix as well.

Consider making it the default for new poetry envs.


Discussion / hints:

Fix patch:
diff --git a/.github/workflows/coverage-report.yml b/.github/workflows/coverage-report.yml
index e1cb3fdcc..ad81db60c 100644
--- a/.github/workflows/coverage-report.yml
+++ b/.github/workflows/coverage-report.yml
@@ -34,7 +34,7 @@ jobs:
         id: setup-python
         uses: actions/setup-python@v4
         with:
-          python-version: 3.9
+          python-version: 3.12
       #----------------------------------------------
       #      install & configure poetry
       #----------------------------------------------
diff --git a/.github/workflows/generate-dataset.yml b/.github/workflows/generate-dataset.yml
index 30f642937..e2e032e6e 100644
--- a/.github/workflows/generate-dataset.yml
+++ b/.github/workflows/generate-dataset.yml
@@ -32,7 +32,7 @@ jobs:
         id: setup-python
         uses: actions/setup-python@v4
         with:
-          python-version: 3.9
+          python-version: 3.12
       #----------------------------------------------
       #      install & configure poetry
       #----------------------------------------------
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index cb949160b..dd07a719d 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -21,7 +21,7 @@ jobs:
       - uses: actions/checkout@v3
       - uses: actions/setup-python@v4
         with:
-          python-version: 3.9
+          python-version: 3.12
       #----------------------------------------------
       #        load pip cache if cache exists
       #----------------------------------------------
diff --git a/.github/workflows/nbmake.yml b/.github/workflows/nbmake.yml
index e03a878bf..5e3ebe483 100644
--- a/.github/workflows/nbmake.yml
+++ b/.github/workflows/nbmake.yml
@@ -36,7 +36,7 @@ jobs:
         id: setup-python
         uses: actions/setup-python@v4
         with:
-          python-version: 3.9
+          python-version: 3.12
       #----------------------------------------------
       #  -----  install & configure poetry  -----
       #----------------------------------------------
diff --git a/.readthedocs.yaml b/.readthedocs.yaml
index f46aae308..543c6daa7 100644
--- a/.readthedocs.yaml
+++ b/.readthedocs.yaml
@@ -3,7 +3,7 @@ version: 2
 build:
   os: ubuntu-20.04
   tools:
-    python: "3.9"
+    python: "3.12"
 
 python:
   install:
diff --git a/pyproject.toml b/pyproject.toml
index 15cdc2a44..c23ab4055 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -8,7 +8,13 @@ readme = "README.md"
 repository = "https://github.com/vengroff/censusdis"
 keywords = ["census", "demographics"]
 classifiers = [
+    "Operating System :: POSIX :: Linux",
+    "Operating System :: MacOS :: MacOS X",
+    "Operating System :: Microsoft :: Windows",
     "Programming Language :: Python :: 3.9",
+    "Programming Language :: Python :: 3.10",
+    "Programming Language :: Python :: 3.11",
+    "Programming Language :: Python :: 3.12",
     "Development Status :: 4 - Beta",
     "Intended Audience :: Science/Research"
 ]


Test patch:
diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml
index 58a2b0471..28941f8e1 100644
--- a/.github/workflows/test-matrix.yml
+++ b/.github/workflows/test-matrix.yml
@@ -16,7 +16,7 @@ jobs:
   test-matrix:
     strategy:
       matrix:
-        python-version: ["3.9", "3.10", "3.11"]
+        python-version: ["3.9", "3.10", "3.11", "3.12"]
         os: [ "ubuntu-latest", "macos-latest", "windows-latest" ]
       fail-fast: false
     defaults:
diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index 5c2eec807..1803d7cbc 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -34,7 +34,7 @@ jobs:
         id: setup-python
         uses: actions/setup-python@v4
         with:
-          python-version: 3.9
+          python-version: 3.12
       #----------------------------------------------
       #  -----  install & configure poetry  -----
       #----------------------------------------------