ci: enforce the python 3.10 floor with vermin and a 3.10 test-collection job

This commit is contained in:
Simon Pinfold
2026-09-13 21:27:10 -07:00
parent 3bb905eb78
commit 681c73262d
+65
View File
@@ -0,0 +1,65 @@
name: Python floor (3.10)
#
# This workflow enforces the requires-python floor declared in pyproject.toml.
# Static analysis covers the production tree; test collection runs on a real 3.10.
#
on:
push:
branches: [ master, release/** ]
pull_request:
jobs:
vermin:
name: Static Floor Check
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.12'
- name: Install Vermin
run: pip install vermin==1.8.0
- name: Check production tree against 3.10
run: |
vermin \
--target=3.10- \
--violations \
--backport typing_extensions \
--eval-annotations \
--exclude long \
--exclude string.rsplit \
--no-tips \
comfy/ \
comfy_extras/ \
comfy_api/ \
comfy_api_nodes/ \
comfy_execution/ \
comfy_config/ \
app/ \
api_server/ \
utils/ \
middleware/ \
*.py
test-collection:
name: Test Collection 3.10
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install requirements
run: |
python -m pip install --upgrade pip
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
pip install -r requirements.txt
pip install -r tests-unit/requirements.txt
- name: Collect unit tests
run: python -m pytest tests-unit --collect-only -q