@@ -86,17 +86,36 @@ jobs:
8686 os : [ubuntu-24.04, ubuntu-24.04-arm, windows-2019, macos-13, macos-14]
8787 # This list to be kept in sync with cibuildwheel config
8888 # and python-requires in pyproject.toml.
89- python-version : ['3.11', '3.12', '3.13'] # , 'pypy3.10']
89+ python-version : ['3.11', '3.12', '3.13', '3.13t'] # , 'pypy3.10']
90+
91+ # XXX: Maybe this exclude can be removed when changing from
92+ # Quansight-Labs/setup-python...
93+ exclude :
94+ - os : ubuntu-24.04-arm
95+ python-version : ' 3.13t'
9096
9197 steps :
92- - uses : actions/setup-python@v5
98+ # Quansight-labs/setup-python is needed for 3.13t until a new version of
99+ # actions/setup-python (>5.4.0) is released.
100+ #
101+ # https://github.com/actions/setup-python/pull/973
102+ - uses : Quansight-Labs/setup-python@v5
93103 with :
94104 python-version : ${{ matrix.python-version }}
95105 - uses : actions/download-artifact@v4
96106 with :
97107 name : wheels-${{ matrix.os }}
98108 path : wheelhouse
99109 - run : pip install --no-index --find-links wheelhouse python_flint
110+
111+ # Check if the GIL is disabled in the free-threading build after import.
112+ - run : |
113+ python --version --version
114+ which python
115+ python -c "import sysconfig; print(sysconfig.get_config_var('Py_GIL_DISABLED'))"
116+ python -c "import sys; print(getattr(sys, '_is_gil_enabled', lambda: True)())"
117+ python -c "import sys; import flint; print(getattr(sys, '_is_gil_enabled', lambda: True)())"
118+
100119 - run : python -m flint.test --verbose
101120
102121 # On new enough Ubuntu we can build against the system deb.
@@ -227,37 +246,6 @@ jobs:
227246 - run : pip install -r requirements-dev.txt
228247 - run : bin/coverage.sh
229248
230- # On new enough Ubuntu we can build against the system deb.
231- test_freethreaded :
232- name : Free-threaded ${{ matrix.python-version }} on ${{ matrix.os }}
233- runs-on : ${{ matrix.os }}
234- strategy :
235- fail-fast : false
236- matrix :
237- os : [ubuntu-24.04]
238- python-version : ['3.13', '3.14-dev']
239- steps :
240- - uses : actions/checkout@v4
241- # Can't use actions/setup-python
242- # https://github.com/actions/setup-python/issues/771
243- # deadsnakes only works for Ubuntu...
244- - uses : deadsnakes/action@v3.2.0
245- with :
246- python-version : ${{ matrix.python-version }}
247- nogil : true
248- - run : |
249- python --version --version
250- which python
251- python -c "import sysconfig; print(sysconfig.get_config_var('Py_GIL_DISABLED'))"
252- python -c "import sys; print(sys._is_gil_enabled())"
253- - run : sudo apt-get update
254- - run : sudo apt-get install libflint-dev
255- # Need Cython master until 3.1 is released
256- - run : pip install git+https://github.com/cython/cython.git@master
257- - run : pip install -r requirements-dev.txt
258- - run : pip install --no-build-isolation .
259- - run : python -m flint.test --verbose
260-
261249 # Run SymPy test suite against python-flint master
262250 test_sympy :
263251 name : Test SymPy ${{ matrix.sympy-version }}
0 commit comments