2121 runs-on : ubuntu-latest
2222 steps :
2323 - name : Checkout source
24- uses : actions/checkout@v4.1.1
24+ uses : actions/checkout@v4.2.2
2525 - name : Set up Python 3.13 for linting
26- uses : actions/setup-python@v5.1.1
26+ uses : actions/setup-python@v5.6.0
2727 with :
2828 python-version : ' 3.13'
2929 - name : Install dependencies
4949 runs-on : ubuntu-latest
5050 steps :
5151 - name : Checkout source
52- uses : actions/checkout@v4.1.1
52+ uses : actions/checkout@v4.2.2
5353 - name : Set up Python 3.13
54- uses : actions/setup-python@v5.1.1
54+ uses : actions/setup-python@v5.6.0
5555 with :
5656 python-version : ' 3.13'
5757 - name : Upgrade pip
7171 ls -al wheelhouse
7272 python -m uv pip install wheelhouse/line_profiler*.tar.gz -v
7373 - name : Test minimal loose sdist
74+ env :
75+ # So far not needed, but once we bump to 3.14 this needs to be
76+ # set whenever `pytest` is run with `coverage`
77+ # (see the `test_binpy_wheels` jobs)
78+ COVERAGE_CORE : ctrace
7479 run : |-
7580 pwd
7681 ls -al
8590 python -m pytest --verbose --cov=line_profiler $MOD_DPATH ../tests
8691 cd ..
8792 - name : Test full loose sdist
93+ env :
94+ COVERAGE_CORE : ctrace
8895 run : |-
8996 pwd
9097 ls -al
@@ -130,7 +137,7 @@ jobs:
130137 - auto
131138 steps :
132139 - name : Checkout source
133- uses : actions/checkout@v4.1.1
140+ uses : actions/checkout@v4.2.2
134141 - name : Enable MSVC 64bit
135142 uses : ilammy/msvc-dev-cmd@v1
136143 if : matrix.os == 'windows-latest' && ${{ contains(matrix.cibw_skip, '*-win32') }}
@@ -140,7 +147,7 @@ jobs:
140147 with :
141148 platforms : all
142149 - name : Build binary wheels
143- uses : pypa/cibuildwheel@v2.21.0
150+ uses : pypa/cibuildwheel@v3.1.2
144151 with :
145152 output-dir : wheelhouse
146153 config-file : pyproject.toml
@@ -153,7 +160,7 @@ jobs:
153160 shell : bash
154161 run : ls -la wheelhouse
155162 - name : Set up Python 3.13 to combine coverage
156- uses : actions/setup-python@v5.1.1
163+ uses : actions/setup-python@v5.6.0
157164 if : runner.os == 'Linux'
158165 with :
159166 python-version : ' 3.13'
@@ -172,7 +179,7 @@ jobs:
172179 echo '### The cwd should now have a coverage.xml'
173180 ls -altr
174181 pwd
175- - uses : codecov/codecov-action@v4.5.0
182+ - uses : codecov/codecov-action@v5.4.3
176183 name : Codecov Upload
177184 env :
178185 HAVE_CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN != '' }}
@@ -181,7 +188,7 @@ jobs:
181188 with :
182189 file : ./coverage.xml
183190 token : ${{ secrets.CODECOV_TOKEN }}
184- - uses : codecov/codecov-action@v4.5.0
191+ - uses : codecov/codecov-action@v5.4.3
185192 name : Codecov Upload
186193 with :
187194 file : ./coverage.xml
@@ -264,6 +271,10 @@ jobs:
264271 install-extras : tests,optional
265272 os : ubuntu-latest
266273 arch : auto
274+ - python-version : 3.14.0-rc.1
275+ install-extras : tests,optional
276+ os : ubuntu-latest
277+ arch : auto
267278 - python-version : ' 3.8'
268279 install-extras : tests,optional
269280 os : macOS-latest
@@ -288,6 +299,10 @@ jobs:
288299 install-extras : tests,optional
289300 os : macOS-latest
290301 arch : auto
302+ - python-version : 3.14.0-rc.1
303+ install-extras : tests,optional
304+ os : macOS-latest
305+ arch : auto
291306 - python-version : ' 3.8'
292307 install-extras : tests,optional
293308 os : windows-latest
@@ -312,9 +327,13 @@ jobs:
312327 install-extras : tests,optional
313328 os : windows-latest
314329 arch : auto
330+ - python-version : 3.14.0-rc.1
331+ install-extras : tests,optional
332+ os : windows-latest
333+ arch : auto
315334 steps :
316335 - name : Checkout source
317- uses : actions/checkout@v4.1.1
336+ uses : actions/checkout@v4.2.2
318337 - name : Enable MSVC 64bit
319338 uses : ilammy/msvc-dev-cmd@v1
320339 if : matrix.os == 'windows-latest'
@@ -324,7 +343,7 @@ jobs:
324343 with :
325344 platforms : all
326345 - name : Setup Python
327- uses : actions/setup-python@v5.1.1
346+ uses : actions/setup-python@v5.6.0
328347 with :
329348 python-version : ${{ matrix.python-version }}
330349 - uses : actions/download-artifact@v4.1.8
@@ -354,9 +373,11 @@ jobs:
354373 ")
355374 export MOD_VERSION=$(python -c "if 1:
356375 from pkginfo import Wheel, SDist
376+ import pathlib
357377 fpath = '$WHEEL_FPATH'
358378 cls = Wheel if fpath.endswith('.whl') else SDist
359- print(cls(fpath).version)
379+ item = cls(fpath)
380+ print(item.version)
360381 ")
361382 echo "WHEEL_FPATH=$WHEEL_FPATH"
362383 echo "INSTALL_EXTRAS=$INSTALL_EXTRAS"
@@ -367,6 +388,7 @@ jobs:
367388 shell : bash
368389 env :
369390 CI_PYTHON_VERSION : py${{ matrix.python-version }}
391+ COVERAGE_CORE : ctrace
370392 run : |-
371393 echo "Creating test sandbox directory"
372394 export WORKSPACE_DNAME="testdir_${CI_PYTHON_VERSION}_${GITHUB_RUN_ID}_${RUNNER_OS}"
@@ -409,7 +431,7 @@ jobs:
409431 echo '### The cwd should now have a coverage.xml'
410432 ls -altr
411433 pwd
412- - uses : codecov/codecov-action@v4.5.0
434+ - uses : codecov/codecov-action@v5.4.3
413435 name : Codecov Upload
414436 with :
415437 file : ./coverage.xml
@@ -423,7 +445,7 @@ jobs:
423445 - build_binpy_wheels
424446 steps :
425447 - name : Checkout source
426- uses : actions/checkout@v4.1.1
448+ uses : actions/checkout@v4.2.2
427449 - uses : actions/download-artifact@v4.1.8
428450 name : Download wheels
429451 with :
@@ -499,7 +521,7 @@ jobs:
499521 - build_binpy_wheels
500522 steps :
501523 - name : Checkout source
502- uses : actions/checkout@v4.1.1
524+ uses : actions/checkout@v4.2.2
503525 - uses : actions/download-artifact@v4.1.8
504526 name : Download wheels
505527 with :
@@ -576,7 +598,7 @@ jobs:
576598 - live_deploy
577599 steps :
578600 - name : Checkout source
579- uses : actions/checkout@v4.1.1
601+ uses : actions/checkout@v4.2.2
580602 - uses : actions/download-artifact@v4.1.8
581603 name : Download artifacts
582604 with :
0 commit comments