26
26
timeout-minutes : 90
27
27
strategy :
28
28
matrix :
29
- platform : [ubuntu-22 .04, ubuntu-24.04-arm]
29
+ platform : [ubuntu-24 .04, ubuntu-24.04-arm]
30
30
env_file : [actions-310.yaml, actions-311.yaml, actions-312.yaml, actions-313.yaml]
31
31
# Prevent the include jobs from overriding other jobs
32
32
pattern : [""]
@@ -36,11 +36,15 @@ jobs:
36
36
env_file : actions-311-downstream_compat.yaml
37
37
pattern : " not slow and not network and not single_cpu"
38
38
pytest_target : " pandas/tests/test_downstream.py"
39
- platform : ubuntu-22 .04
39
+ platform : ubuntu-24 .04
40
40
- name : " Minimum Versions"
41
41
env_file : actions-310-minimum_versions.yaml
42
42
pattern : " not slow and not network and not single_cpu"
43
- platform : ubuntu-22.04
43
+ platform : ubuntu-24.04
44
+ - name : " Freethreading"
45
+ env_file : actions-313-freethreading.yaml
46
+ pattern : " not slow and not network and not single_cpu"
47
+ platform : ubuntu-24.04
44
48
- name : " Locale: it_IT"
45
49
env_file : actions-311.yaml
46
50
pattern : " not slow and not network and not single_cpu"
51
55
# Also install it_IT (its encoding is ISO8859-1) but do not activate it.
52
56
# It will be temporarily activated during tests with locale.setlocale
53
57
extra_loc : " it_IT"
54
- platform : ubuntu-22 .04
58
+ platform : ubuntu-24 .04
55
59
- name : " Locale: zh_CN"
56
60
env_file : actions-311.yaml
57
61
pattern : " not slow and not network and not single_cpu"
@@ -62,30 +66,30 @@ jobs:
62
66
# Also install zh_CN (its encoding is gb2312) but do not activate it.
63
67
# It will be temporarily activated during tests with locale.setlocale
64
68
extra_loc : " zh_CN"
65
- platform : ubuntu-22 .04
69
+ platform : ubuntu-24 .04
66
70
- name : " Future infer strings"
67
71
env_file : actions-312.yaml
68
72
pandas_future_infer_string : " 1"
69
- platform : ubuntu-22 .04
73
+ platform : ubuntu-24 .04
70
74
- name : " Future infer strings (without pyarrow)"
71
75
env_file : actions-311.yaml
72
76
pandas_future_infer_string : " 1"
73
- platform : ubuntu-22 .04
77
+ platform : ubuntu-24 .04
74
78
- name : " Pypy"
75
79
env_file : actions-pypy-39.yaml
76
80
pattern : " not slow and not network and not single_cpu"
77
81
test_args : " --max-worker-restart 0"
78
- platform : ubuntu-22 .04
82
+ platform : ubuntu-24 .04
79
83
- name : " Numpy Dev"
80
84
env_file : actions-311-numpydev.yaml
81
85
pattern : " not slow and not network and not single_cpu"
82
86
test_args : " -W error::DeprecationWarning -W error::FutureWarning"
83
- platform : ubuntu-22 .04
87
+ platform : ubuntu-24 .04
84
88
- name : " Pyarrow Nightly"
85
89
env_file : actions-311-pyarrownightly.yaml
86
90
pattern : " not slow and not network and not single_cpu"
87
91
pandas_future_infer_string : " 1"
88
- platform : ubuntu-22 .04
92
+ platform : ubuntu-24 .04
89
93
fail-fast : false
90
94
name : ${{ matrix.name || format('{0} {1}', matrix.platform, matrix.env_file) }}
91
95
env :
@@ -165,6 +169,9 @@ jobs:
165
169
- name : Build Pandas
166
170
id : build
167
171
uses : ./.github/actions/build_pandas
172
+ with :
173
+ # xref https://github.com/cython/cython/issues/6870
174
+ werror : ${{ matrix.name != 'Freethreading' }}
168
175
# TODO: Re-enable once Pypy has Pypy 3.10 on conda-forge
169
176
if : ${{ matrix.name != 'Pypy' }}
170
177
@@ -220,7 +227,7 @@ jobs:
220
227
uses : ./.github/actions/run-tests
221
228
222
229
Linux-32-bit :
223
- runs-on : ubuntu-22 .04
230
+ runs-on : ubuntu-24 .04
224
231
container :
225
232
image : quay.io/pypa/manylinux2014_i686
226
233
options : --platform linux/386
@@ -258,7 +265,7 @@ jobs:
258
265
cancel-in-progress : true
259
266
260
267
Linux-Musl :
261
- runs-on : ubuntu-22 .04
268
+ runs-on : ubuntu-24 .04
262
269
container :
263
270
image : quay.io/pypa/musllinux_1_2_x86_64
264
271
steps :
@@ -327,7 +334,7 @@ jobs:
327
334
fail-fast : false
328
335
matrix :
329
336
# Separate out macOS 13 and 14, since macOS 14 is arm64 only
330
- os : [ubuntu-22 .04, macOS-13, macOS-14, windows-latest]
337
+ os : [ubuntu-24 .04, macOS-13, macOS-14, windows-latest]
331
338
332
339
timeout-minutes : 90
333
340
@@ -364,48 +371,6 @@ jobs:
364
371
- name : Run Tests
365
372
uses : ./.github/actions/run-tests
366
373
367
- python-freethreading :
368
- defaults :
369
- run :
370
- shell : bash -eou pipefail {0}
371
- runs-on : ubuntu-22.04
372
-
373
- timeout-minutes : 90
374
-
375
- concurrency :
376
- # https://github.community/t/concurrecy-not-work-for-push/183068/7
377
- group : ${{ github.event_name == 'push' && github.run_number || github.ref }}-python-freethreading-dev
378
- cancel-in-progress : true
379
-
380
- env :
381
- PYTEST_WORKERS : " auto"
382
- PANDAS_CI : 1
383
- PATTERN : " not slow and not network and not clipboard and not single_cpu"
384
- PYTEST_TARGET : pandas
385
-
386
- steps :
387
- - uses : actions/checkout@v4
388
- with :
389
- fetch-depth : 0
390
-
391
- - name : Set up Python Free-threading Version
392
- uses :
deadsnakes/[email protected]
393
- with :
394
- python-version : 3.13-dev
395
- nogil : true
396
-
397
- - name : Build Environment
398
- run : |
399
- python --version
400
- python -m pip install --upgrade pip setuptools wheel numpy meson[ninja]==1.2.1 meson-python==0.13.1
401
- python -m pip install --pre --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple cython
402
- python -m pip install versioneer[toml] python-dateutil pytz tzdata hypothesis>=6.84.0 pytest>=7.3.2 pytest-xdist>=3.4.0 pytest-cov
403
- python -m pip install -ve . --no-build-isolation --no-index --no-deps -Csetup-args="--werror"
404
- python -m pip list
405
-
406
- - name : Run Tests
407
- uses : ./.github/actions/run-tests
408
-
409
374
# NOTE: this job must be kept in sync with the Pyodide build job in wheels.yml
410
375
emscripten :
411
376
# Note: the Python version, Emscripten toolchain version are determined
@@ -415,7 +380,7 @@ jobs:
415
380
# The Node.js version can be determined via Pyodide:
416
381
# https://pyodide.org/en/stable/usage/index.html#node-js
417
382
name : Pyodide build
418
- runs-on : ubuntu-22 .04
383
+ runs-on : ubuntu-24 .04
419
384
concurrency :
420
385
# https://github.community/t/concurrecy-not-work-for-push/183068/7
421
386
group : ${{ github.event_name == 'push' && github.run_number || github.ref }}-wasm
0 commit comments