@@ -15,17 +15,19 @@ jobs:
1515 unittest :
1616 runs-on : ${{ matrix.os }}
1717 strategy :
18+ fail-fast : false
1819 matrix :
1920 os : [windows-latest, ubuntu-22.04, macos-latest]
20- python-version : ["3.8", "3.9", "3.10", "3.11", "3.12"]
21+ # https://devguide.python.org/versions/
22+ python-version : ["3.10", "3.11", "3.12", "3.13"]
2123 exclude :
2224 - os : windows-latest
2325 python-version : " 3.11"
2426 - os : windows-latest
2527 python-version : " 3.12"
2628
2729 steps :
28- - uses : actions/checkout@v2
30+ - uses : actions/checkout@v4
2931 - name : Set up Python ${{ matrix.python-version }}
3032 uses : actions/setup-python@v5
3133 with :
@@ -36,21 +38,30 @@ jobs:
3638 pip install .[dev]
3739 - name : Test with pytest
3840 env :
39- MPLBACKEND : TkAgg
41+ MPLBACKEND : Agg
4042 run : |
41- pytest -s --ignore=W605 --timeout=50 --timeout_method=thread
43+ pytest -s --timeout=50 --timeout_method=thread
44+
45+ all-unittests-passed :
46+ needs : unittest
47+ if : always()
48+ runs-on : ubuntu-latest
49+ steps :
50+ - name : Check unittest status
51+ if : ${{ needs.unittest.result != 'success' }}
52+ run : exit 1
4253
4354 codecov :
4455 # If all tests pass:
4556 # Run coverage and upload to codecov
4657 needs : unittest
4758 runs-on : ubuntu-22.04
4859 steps :
49- - uses : actions/checkout@v2
50- - name : Set up Python 3.8
60+ - uses : actions/checkout@v4
61+ - name : Set up Python 3.12
5162 uses : actions/setup-python@v5
5263 with :
53- python-version : 3.8
64+ python-version : 3.12
5465 - name : Install dependencies
5566 run : |
5667 python -m pip install --upgrade pip
6172 coverage report
6273 coverage xml
6374 - name : upload coverage to Codecov
64- uses : codecov/codecov-action@v3
75+ uses : codecov/codecov-action@v5
6576 with :
6677 file : ./coverage.xml
6778 sphinx :
0 commit comments