7575 pygobject-ver : ' <3.52.0'
7676 - os : ubuntu-24.04
7777 python-version : ' 3.14'
78+ - name-suffix : " Free-threaded"
79+ os : ubuntu-24.04
80+ python-version : ' 3.15t'
81+ - os : ubuntu-24.04
82+ python-version : ' 3.15'
7883 - os : ubuntu-24.04-arm
7984 python-version : ' 3.12'
8085 - os : macos-15 # This runner is on M1 (arm64) chips.
8994 python-version : ' 3.14'
9095 # https://github.com/matplotlib/matplotlib/issues/29732
9196 pygobject-ver : ' <3.52.0'
97+ - os : macos-15 # This runner is on M1 (arm64) chips.
98+ python-version : ' 3.15'
99+ # https://github.com/matplotlib/matplotlib/issues/29732
100+ pygobject-ver : ' <3.52.0'
92101
93102 steps :
94103 - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
@@ -243,7 +252,7 @@ jobs:
243252 # Sphinx is needed to run sphinxext tests
244253 python -m pip install --upgrade sphinx!=6.1.2
245254
246- if [[ "${{ matrix.python-version }}" != '3.14t' ]]; then
255+ if [[ "${{ matrix.python-version }}" != 3.*t && "${{ matrix.python-version }}" != 3.15 ]]; then
247256 # GUI toolkits are pip-installable only for some versions of Python
248257 # so don't fail if we can't install them. Make it easier to check
249258 # whether the install was successful by trying to import the toolkit
@@ -282,7 +291,7 @@ jobs:
282291 echo 'wxPython is available' ||
283292 echo 'wxPython is not available'
284293
285- fi # Skip backends on Python 3.14t .
294+ fi # Skip backends on Python 3.*t .
286295
287296 - name : Install the nightly dependencies
288297 # Only install the nightly dependencies during the scheduled event
@@ -304,7 +313,7 @@ jobs:
304313 export CPPFLAGS='-fprofile-instr-generate=default.%m.profraw'
305314 export CPPFLAGS="$CPPFLAGS -fcoverage-mapping"
306315 else
307- export CPPFLAGS='--coverage -fprofile-abs-path'
316+ export CPPFLAGS='--coverage -fprofile-abs-path -fprofile-update=prefer-atomic '
308317 fi
309318
310319 python -m pip install --no-deps --no-build-isolation --verbose \
@@ -322,9 +331,12 @@ jobs:
322331
323332 - name : Run pytest
324333 run : |
325- if [[ "${{ matrix.python-version }}" == '3.14t' ]]; then
334+ if [[ "${{ matrix.python-version }}" == 3.*t ]]; then
326335 export PYTHON_GIL=0
327336 fi
337+ if [[ "${{ matrix.python-version }}" == 3.15* ]]; then
338+ export PYTEST_ADDOPTS="-k 'not test_backends_interactive'"
339+ fi
328340 pytest -rfEsXR -n auto \
329341 --maxfail=50 --timeout=300 --durations=25 \
330342 --cov-report=xml --cov=lib --log-level=DEBUG --color=yes
0 commit comments