42
42
if : ${{ matrix.os == 'windows-2019' }}
43
43
44
44
- name : Build wheels
45
- uses : pypa/cibuildwheel@v2.19.2
45
+ uses : pypa/cibuildwheel@v2.20.0
46
46
env :
47
47
# override setting in pyproject.toml to use msys2 instead of msys64 bash
48
48
CIBW_BEFORE_ALL_WINDOWS : msys2 -c bin/cibw_before_all_windows.sh
@@ -107,7 +107,7 @@ jobs:
107
107
fail-fast : false
108
108
matrix :
109
109
os : [ubuntu-20.04, windows-2019, macos-13, macos-14]
110
- python-version : ['3.9', '3.10', '3.11', '3.12']
110
+ python-version : ['3.9', '3.10', '3.11', '3.12', '3.13-dev' ]
111
111
112
112
steps :
113
113
- uses : actions/setup-python@v5
@@ -138,8 +138,62 @@ jobs:
138
138
- run : pip install .
139
139
- run : python -m flint.test --verbose
140
140
141
- # Test that we can still make a coverage build with setuptools.
142
- test_coverage_setuptools :
141
+ # Test build with minimum Cython and meson-python versions.
142
+ test_old_build_requires :
143
+ name : ' Test old Cython/meson-python'
144
+ runs-on : ubuntu-24.04
145
+ steps :
146
+ - uses : actions/checkout@v4
147
+ - uses : actions/setup-python@v5
148
+ with :
149
+ python-version : ' 3.12'
150
+ - run : sudo apt-get update
151
+ - run : sudo apt-get install libflint-dev
152
+ # The versions of cython and meson-python here should be kept in sync
153
+ # with those in pyproject.toml so that we test the stated minimum
154
+ # versions.
155
+ #
156
+ # We don't need to specify ninja as a requirement in pyproject.toml
157
+ # because without --no-build-isolation meson-python handles it
158
+ # automatically in get_requirements_for_build_wheel().
159
+ - run : ' pip install "cython==3.0" "meson-python==0.13" "ninja<1.11"'
160
+ - run : pip install --no-build-isolation .
161
+ - run : python -m flint.test --verbose
162
+
163
+ # For older Ubuntu we have to build Flint >= 3.0.0
164
+ test_flint_releases :
165
+ name : Test flint ${{ matrix.flint-tag }}
166
+ runs-on : ubuntu-22.04
167
+ strategy :
168
+ fail-fast : false
169
+ matrix :
170
+ # Supported Flint versions:
171
+ flint-tag : ['v3.0.0', 'v3.0.1', 'v3.1.0', 'v3.1.1', 'v3.1.2']
172
+ steps :
173
+ - uses : actions/checkout@v4
174
+ - uses : actions/setup-python@v5
175
+ with :
176
+ python-version : ' 3.12'
177
+ - run : bin/install_flint_ubuntu.sh ${{ matrix.flint-tag }}
178
+ - run : pip install .
179
+ - run : python -m flint.test --verbose
180
+
181
+ # Test against flint main
182
+ test_flint_main :
183
+ name : Test flint main
184
+ runs-on : ubuntu-22.04
185
+ steps :
186
+ - uses : actions/checkout@v4
187
+ - uses : actions/setup-python@v5
188
+ with :
189
+ python-version : ' 3.12'
190
+ - run : bin/install_flint_ubuntu.sh main
191
+ # Need to disable flint version check to build against main
192
+ - run : pip install --config-settings=setup-args="-Dflint_version_check=false" .
193
+ - run : python -m flint.test --verbose
194
+
195
+ # Test that we can make a coverage build and report coverage
196
+ test_coverage_build :
143
197
name : Test coverage setuptools build
144
198
runs-on : ubuntu-24.04
145
199
steps :
@@ -149,6 +203,8 @@ jobs:
149
203
python-version : ' 3.12'
150
204
- run : sudo apt-get update
151
205
- run : sudo apt-get install libflint-dev
206
+ # This is branch is for a Cython PR:
207
+ # https://github.com/cython/cython/pull/6341
152
208
- run : pip install git+https://github.com/oscarbenjamin/cython.git@pr_relative_paths
153
209
- run : pip install -r requirements-dev.txt
154
210
- run : bin/coverage.sh
@@ -173,24 +229,6 @@ jobs:
173
229
- run : pip install sympy==${{ matrix.sympy-version }}
174
230
- run : python -c 'import sympy; sympy.test(parallel=True)'
175
231
176
- # For older Ubuntu we have to build Flint >= 3.0.0
177
- test_flint_versions :
178
- name : Test flint ${{ matrix.flint-tag }}
179
- runs-on : ubuntu-22.04
180
- strategy :
181
- fail-fast : false
182
- matrix :
183
- # Supported versions and latest git
184
- flint-tag : ['v3.0.0', 'v3.0.1', 'v3.1.0', 'v3.1.1', 'v3.1.2', 'main']
185
- steps :
186
- - uses : actions/checkout@v4
187
- - uses : actions/setup-python@v5
188
- with :
189
- python-version : ' 3.12'
190
- - run : bin/install_flint_ubuntu.sh ${{ matrix.flint-tag }}
191
- - run : pip install .
192
- - run : python -m flint.test --verbose
193
-
194
232
# Deploy wheels and sdist to PyPI
195
233
196
234
pypi_release :
0 commit comments