Skip to content

MAINT: Drop Python 3.7/3.8 from CI matrix#240

Merged
fumitoh merged 1 commit into
mainfrom
drop-py37-py38-ci
Jul 12, 2026
Merged

MAINT: Drop Python 3.7/3.8 from CI matrix#240
fumitoh merged 1 commit into
mainfrom
drop-py37-py38-ci

Conversation

@fumitoh

@fumitoh fumitoh commented Jul 12, 2026

Copy link
Copy Markdown
Owner

What

Removes Python 3.7 and 3.8 (and their paired networkx versions 2.4/2.5) from the CI test matrix, along with the per-OS excludes that only applied to them.

Why

The 3.7/3.8 jobs now fail in the "Install dependencies" step, before any tests run. requirements-travis.txt installs lifelib from its GitHub main branch, and lifelib v0.13.0 (June 28) dropped Python 3.7/3.8 support (python_requires >= 3.9). On those interpreters pip can no longer resolve the requirement set: it backtracks numpy down to 1.16.x sdists on 3.8 (ModuleNotFoundError: No module named 'distutils.msvccompiler') and an old pandas sdist on 3.7 (invalid metadata for modern setuptools).

Both versions are past end of life (3.7 since June 2023, 3.8 since October 2024). This continues the cleanup started in 0f39301, which excluded Python 3.8 on macos-latest.

Notes for review

  • This unblocks TST: Add export test for TradLife_A_EX1 risk margin #239, which currently shows the same three job failures.
  • This changes only what CI tests. If modelx itself should stop claiming 3.7/3.8 support (python_requires, trove classifiers in setup.py), that can be a follow-up.

🤖 Generated with Claude Code

lifelib, installed from its GitHub main branch for the export tests,
dropped Python 3.7/3.8 support in v0.13.0 (requires Python >= 3.9).
On 3.7/3.8 pip can no longer resolve the requirements: it backtracks
to ancient numpy/pandas sdists that fail to build with modern
setuptools, so the Install dependencies step fails before tests run.
Both versions have reached end of life.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@fumitoh fumitoh merged commit baa2eb5 into main Jul 12, 2026
18 checks passed
@fumitoh fumitoh deleted the drop-py37-py38-ci branch July 12, 2026 04:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant