@@ -107,7 +107,9 @@ jobs:
107107 fail-fast : false
108108 matrix :
109109 os : [ubuntu-20.04, windows-2019, macos-13, macos-14]
110- python-version : ['3.9', '3.10', '3.11', '3.12', '3.13-dev']
110+ # This list to be kept in sync with cibuildwheel config
111+ # and python-requires in pyproject.toml.
112+ python-version : ['3.10', '3.11', '3.12', '3.13-dev']
111113
112114 steps :
113115 - uses : actions/setup-python@v5
@@ -209,6 +211,37 @@ jobs:
209211 - run : pip install -r requirements-dev.txt
210212 - run : bin/coverage.sh
211213
214+ # On new enough Ubuntu we can build against the system deb.
215+ test_freethreaded :
216+ name : Free-threaded ${{ matrix.python-version }} on ${{ matrix.os }}
217+ runs-on : ${{ matrix.os }}
218+ strategy :
219+ fail-fast : false
220+ matrix :
221+ os : [ubuntu-24.04]
222+ python-version : ['3.13-dev']
223+ steps :
224+ - uses : actions/checkout@v4
225+ # Can't use actions/setup-python
226+ # https://github.com/actions/setup-python/issues/771
227+ # deadsnakes only works for Ubuntu...
228+ -
uses :
deadsnakes/[email protected] 229+ with :
230+ python-version : ${{ matrix.python-version }}
231+ nogil : true
232+ - run : |
233+ python --version --version
234+ which python
235+ python -c "import sysconfig; print(sysconfig.get_config_var('Py_GIL_DISABLED'))"
236+ python -c "import sys; print(sys._is_gil_enabled())"
237+ - run : sudo apt-get update
238+ - run : sudo apt-get install libflint-dev
239+ # Need Cython master until 3.1 is released
240+ - run : pip install git+https://github.com/cython/cython.git@master
241+ - run : pip install -r requirements-dev.txt
242+ - run : pip install --no-build-isolation .
243+ - run : python -m flint.test --verbose
244+
212245 # Run SymPy test suite against python-flint master
213246 test_sympy :
214247 name : Test SymPy ${{ matrix.sympy-version }}
0 commit comments