You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Test jobs on Python 3.11 to 3.13 are cancelled at the 90-minute limit #736
The Test matrix job in .github/workflows/pr_code_changes.yaml and the Test job in .github/workflows/push.yaml both run make test, which is pytest tests --cov=policyengine --cov-report=term-missing in one process, and both have timeout-minutes: 90.
On Python 3.11, 3.12 and 3.13, coverage.py 7.13.5 (the version in uv.lock) records coverage with its C trace function, because it switches to sys.monitoring only on Python 3.14 and later. Those jobs now take 65 to 90 minutes, and one of them is often cancelled at the 90-minute limit with no failing test:
Raise timeout-minutes on both Test jobs from 90 to 105. The pull-request and push-to-main Test jobs run the same suite and are kept at the same limit, so a push run is not cancelled before Versioning either.
Possible follow-up
Measure coverage only on 3.14 and run plain pytest on 3.11 to 3.13. That would bring those jobs down to about the 3.14 time and make the higher limit unnecessary.
Activity