From da569aa7764178c21351c2cd91af9b7e77ad2371 Mon Sep 17 00:00:00 2001 From: Caleigh Runge-Hottman Date: Wed, 11 Nov 2026 14:42:24 -0500 Subject: [PATCH] Various CI fixes - Add pbr to test-requirements.txt. bandit 1.7.5 imports pbr at runtime but does not declare it as a runtime dependency, so a clean resolve omits it and the py3-bandit tox env fails with "ModuleNotFoundError: No module named 'pbr'". - Drop the Python 3.9 CI job and remove py39 from the tox envlist. Python 3.9 is EOL and unavailable on the current ubuntu-latest runner (26.04), so the setup-python step failed before any tests ran. - Add a Python 3.12 CI job (and py312 to the tox envlist). exodus-gw, the only consumer, runs Python >=3.12, which CI was not exercising. Co-Authored-By: Claude Opus 4.8 --- .github/workflows/tox-test.yml | 18 +++++++++--------- test-requirements.txt | 3 +++ tox.ini | 2 +- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/.github/workflows/tox-test.yml b/.github/workflows/tox-test.yml index 384c979..a228b44 100644 --- a/.github/workflows/tox-test.yml +++ b/.github/workflows/tox-test.yml @@ -3,7 +3,7 @@ name: Tox tests on: [push, pull_request] jobs: - py39: + py310: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -12,12 +12,12 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: '3.9' + python-version: '3.10' - name: Install Tox run: pip install tox - name: Run Tox - run: tox -e py39 - py310: + run: tox -e py310 + py311: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -26,12 +26,12 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: '3.10' + python-version: '3.11' - name: Install Tox run: pip install tox - name: Run Tox - run: tox -e py310 - py311: + run: tox -e py311 + py312: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -40,11 +40,11 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: '3.11' + python-version: '3.12' - name: Install Tox run: pip install tox - name: Run Tox - run: tox -e py311 + run: tox -e py312 static: runs-on: ubuntu-latest steps: diff --git a/test-requirements.txt b/test-requirements.txt index 9d8c11c..1310274 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -2,4 +2,7 @@ pytest requests-mock mock bandit==1.7.5;python_version > '3' +# bandit 1.7.5 imports pbr at runtime but doesn't declare it as a dependency, +# so a clean resolve omits it -> "ModuleNotFoundError: No module named 'pbr'". +pbr;python_version > '3' responses \ No newline at end of file diff --git a/tox.ini b/tox.ini index b8f353b..078af7b 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py39,py310,py311,static,docs +envlist = py310,py311,py312,static,docs [testenv] deps=-rtest-requirements.txt