@@ -28,17 +28,22 @@ jobs:
2828 strategy :
2929 fail-fast : false
3030 matrix :
31- os : [ubuntu] # , mac, windows] # TODO v4: Re-enable windows and mac
31+ os : [ubuntu, mac, windows]
3232 pixi-environment : [test-latest]
3333 include :
3434 - os : ubuntu
3535 pixi-environment : " test-py311"
36+ - os : ubuntu
37+ pixi-environment : " test-py313"
38+ - os : ubuntu
39+ pixi-environment : " test-minimum"
3640 steps :
37- - uses : actions/checkout@v4
41+ - uses : actions/checkout@v5
3842 - name : Restore cached pixi lockfile
3943 uses : actions/cache/restore@v4
4044 id : restore-pixi-lock
4145 with :
46+ enableCrossOsArchive : true
4247 path : |
4348 pixi.lock
4449 key : ${{ needs.cache-pixi-lock.outputs.cache-id }}
@@ -50,14 +55,14 @@ jobs:
5055 run : |
5156 pixi run -e ${{ matrix.pixi-environment }} tests -v -s --cov=parcels --cov-report=xml --html="${{ env.COVERAGE_REPORT }}" --self-contained-html
5257 - name : Codecov
53- uses : codecov/codecov-action@v5.3 .1
58+ uses : codecov/codecov-action@v5.5 .1
5459 env :
5560 CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
5661 with :
5762 flags : unit-tests
5863 - name : Upload test results
5964 if : ${{ always() }} # Always run this step, even if tests fail
60- uses : actions/upload-artifact@v4
65+ uses : actions/upload-artifact@v5
6166 with :
6267 name : Unittest report ${{ matrix.os }}-${{ matrix.pixi-environment }}
6368 path : ${{ env.COVERAGE_REPORT }}
@@ -78,11 +83,12 @@ jobs:
7883 - os : ubuntu
7984 python-version : " 3.11"
8085 steps :
81- - uses : actions/checkout@v4
86+ - uses : actions/checkout@v5
8287 - name : Restore cached pixi lockfile
8388 uses : actions/cache/restore@v4
8489 id : restore-pixi-lock
8590 with :
91+ enableCrossOsArchive : true
8692 path : |
8793 pixi.lock
8894 key : ${{ needs.cache-pixi-lock.outputs.cache-id }}
@@ -94,14 +100,14 @@ jobs:
94100 run : |
95101 pixi run test-notebooks -v -s --html="${{ env.COVERAGE_REPORT }}" --self-contained-html --cov=parcels --cov-report=xml
96102 - name : Codecov
97- uses : codecov/codecov-action@v5.3 .1
103+ uses : codecov/codecov-action@v5.5 .1
98104 env :
99105 CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
100106 with :
101107 flags : integration-tests
102108 - name : Upload test results
103109 if : ${{ always() }} # Always run this step, even if tests fail
104- uses : actions/upload-artifact@v4
110+ uses : actions/upload-artifact@v5
105111 with :
106112 name : Integration test report ${{ matrix.os }}-${{ matrix.pixi-environment }}
107113 path : ${{ env.COVERAGE_REPORT }}
@@ -113,7 +119,7 @@ jobs:
113119 - typechecking
114120 steps :
115121 - name : Merge Artifacts
116- uses : actions/upload-artifact/merge@v4
122+ uses : actions/upload-artifact/merge@v5
117123 with :
118124 name : Testing reports
119125 pattern : " * report *"
@@ -125,7 +131,7 @@ jobs:
125131 needs : [cache-pixi-lock]
126132 steps :
127133 - name : Checkout
128- uses : actions/checkout@v4
134+ uses : actions/checkout@v5
129135 - name : Restore cached pixi lockfile
130136 uses : actions/cache/restore@v4
131137 id : restore-pixi-lock
@@ -142,7 +148,7 @@ jobs:
142148 pixi run typing --non-interactive --html-report mypy-report
143149 - name : Upload test results
144150 if : ${{ always() }} # Upload even on mypy error
145- uses : actions/upload-artifact@v4
151+ uses : actions/upload-artifact@v5
146152 with :
147153 name : Mypy report
148154 path : mypy-report
0 commit comments