Repository: csdms/bmi-topography (language: python)

Issue:
Set minimum Python >= 3.10
In keeping with our informal policy of supporting the latest three minor Python versions, the minimum Python version should be bumped to 3.10.


Discussion / hints:

Fix patch:
diff --git a/environment.yml b/environment.yml
index cb8bdd7..d56d02a 100644
--- a/environment.yml
+++ b/environment.yml
@@ -3,7 +3,7 @@ name: topography
 channels:
   - conda-forge
 dependencies:
-  - python >=3.9
+  - python >=3.10
   - pip
   - requests
   - numpy
diff --git a/noxfile.py b/noxfile.py
index b2e6337..4e94e1c 100644
--- a/noxfile.py
+++ b/noxfile.py
@@ -10,7 +10,7 @@
 HERE = pathlib.Path(__file__)
 ROOT = HERE.parent
 PATHS = [PACKAGE, "docs", "examples", "tests", HERE.name]
-PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12"]
+PYTHON_VERSIONS = ["3.10", "3.11", "3.12"]
 
 
 @nox.session(python=PYTHON_VERSIONS)
@@ -36,15 +36,15 @@ def test(session: nox.Session) -> None:
 @nox.session(name="test-bmi", python=PYTHON_VERSIONS, venv_backend="conda")
 def test_bmi(session: nox.Session) -> None:
     """Test the Basic Model Interface."""
-    session.conda_install("bmi-tester", "pymt>=1.3")
+    session.install("bmi-tester>=0.5.9")
     session.install(".")
     session.run(
         "bmi-test",
-        "bmi_topography:BmiTopography",
+        f"{PACKAGE}:BmiTopography",
         "--config-file",
-        "./examples/config.yaml",
+        f"{ROOT}/examples/config.yaml",
         "--root-dir",
-        "./examples",
+        "examples",
         "-vvv",
     )
 
diff --git a/pyproject.toml b/pyproject.toml
index d96d7ca..327d3d1 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -27,7 +27,6 @@ keywords = [
 license = {text = "MIT License"}
 classifiers = [
   "Programming Language :: Python :: 3",
-  "Programming Language :: Python :: 3.9",
   "Programming Language :: Python :: 3.10",
   "Programming Language :: Python :: 3.11",
   "Programming Language :: Python :: 3.12",
@@ -37,7 +36,7 @@ classifiers = [
   "Intended Audience :: Science/Research",
   "Intended Audience :: Education",
 ]
-requires-python = ">=3.9"
+requires-python = ">=3.10"
 dependencies = [
   "requests",
   "numpy",


Test patch:
diff --git a/.github/workflows/build-test-ci.yml b/.github/workflows/build-test-ci.yml
index 0034a76..2731559 100644
--- a/.github/workflows/build-test-ci.yml
+++ b/.github/workflows/build-test-ci.yml
@@ -17,7 +17,7 @@ jobs:
     strategy:
       matrix:
         os: [ubuntu-latest, macos-latest, windows-latest]
-        python-version: ["3.9", "3.10", "3.11", "3.12"]
+        python-version: ["3.10", "3.11", "3.12"]
 
     steps:
       - uses: actions/checkout@v4
@@ -55,7 +55,7 @@ jobs:
           nox -s test --python ${{ matrix.python-version }}
 
       - name: Test BMI
-        if: ${{ matrix.python-version == '3.9' }}  # stuck at py39 pending pymt update
+        if: ${{ matrix.python-version == '3.12' }}
         run: |
           nox -s test-bmi --python ${{ matrix.python-version }}