Skip to content

Commit 699c776

Browse files
committed
ci(wheels): add python 3.14 wheels and use manylinux_2_28 for all linux wheels
Signed-off-by: Zach Lewis <[email protected]>
1 parent 0d54973 commit 699c776

File tree

2 files changed

+31
-45
lines changed

2 files changed

+31
-45
lines changed

.github/workflows/wheel.yml

Lines changed: 26 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -114,38 +114,16 @@ jobs:
114114
manylinux: manylinux_2_28
115115
python: cp313-manylinux_x86_64
116116
arch: x86_64
117-
# -------------------------------------------------------------------
118-
# CPython 64 bits manylinux2014
119-
# -------------------------------------------------------------------
120-
- build: CPython 3.9 64 bits manylinux2014
121-
manylinux: manylinux2014
122-
python: cp39-manylinux_x86_64
123-
arch: x86_64
124-
- build: CPython 3.10 64 bits manylinux2014
125-
manylinux: manylinux2014
126-
python: cp310-manylinux_x86_64
127-
arch: x86_64
128-
- build: CPython 3.11 64 bits manylinux2014
129-
manylinux: manylinux2014
130-
python: cp311-manylinux_x86_64
131-
arch: x86_64
132-
- build: CPython 3.12 64 bits manylinux2014
133-
manylinux: manylinux2014
134-
python: cp312-manylinux_x86_64
135-
arch: x86_64
136-
- build: CPython 3.13 64 bits manylinux2014
137-
manylinux: manylinux2014
138-
python: cp313-manylinux_x86_64
117+
- build: CPython 3.14 64 bits manylinux_2_28
118+
manylinux: manylinux_2_28
119+
python: cp314-manylinux_x86_64
139120
arch: x86_64
140-
141121
steps:
142122
- name: Checkout repo
143123
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
144124

145125
- name: Install Python
146126
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
147-
with:
148-
python-version: '3.9'
149127

150128
- name: ccache-restore
151129
id: ccache-restore
@@ -220,35 +198,37 @@ jobs:
220198
# -------------------------------------------------------------------
221199
# CPython ARM 64 bits manylinux2014
222200
# -------------------------------------------------------------------
223-
- build: CPython 3.9 ARM 64 bits manylinux2014
224-
manylinux: manylinux2014
201+
- build: CPython 3.9 ARM 64 bits manylinux_2_28
202+
manylinux: manylinux_2_28
225203
python: cp39-manylinux_aarch64
226204
arch: aarch64
227-
- build: CPython 3.10 ARM 64 bits manylinux2014
228-
manylinux: manylinux2014
205+
- build: CPython 3.10 ARM 64 bits manylinux_2_28
206+
manylinux: manylinux_2_28
229207
python: cp310-manylinux_aarch64
230208
arch: aarch64
231-
- build: CPython 3.11 ARM 64 bits manylinux2014
232-
manylinux: manylinux2014
209+
- build: CPython 3.11 ARM 64 bits manylinux_2_28
210+
manylinux: manylinux_2_28
233211
python: cp311-manylinux_aarch64
234212
arch: aarch64
235-
- build: CPython 3.12 ARM 64 bits manylinux2014
236-
manylinux: manylinux2014
213+
- build: CPython 3.12 ARM 64 bits manylinux_2_28
214+
manylinux: manylinux_2_28
237215
python: cp312-manylinux_aarch64
238216
arch: aarch64
239-
- build: CPython 3.13 ARM 64 bits manylinux2014
240-
manylinux: manylinux2014
217+
- build: CPython 3.13 ARM 64 bits manylinux_2_28
218+
manylinux: manylinux_2_28
241219
python: cp313-manylinux_aarch64
242220
arch: aarch64
221+
- build: CPython 3.14 ARM 64 bits manylinux_2_28
222+
manylinux: manylinux_2_28
223+
python: cp314-manylinux_aarch64
224+
arch: aarch64
243225

244226
steps:
245227
- name: Checkout repo
246228
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
247229

248230
- name: Install Python
249231
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
250-
with:
251-
python-version: '3.9'
252232

253233
- name: ccache-restore
254234
id: ccache-restore
@@ -333,15 +313,16 @@ jobs:
333313
- build: CPython 3.13 64 bits
334314
python: cp313-macosx_x86_64
335315
arch: x86_64
316+
- build: CPython 3.14 64 bits
317+
python: cp314-macosx_x86_64
318+
arch: x86_64
336319

337320
steps:
338321
- name: Checkout repo
339322
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
340323

341324
- name: Install Python
342325
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
343-
with:
344-
python-version: '3.9'
345326

346327
- name: ccache-restore
347328
id: ccache-restore
@@ -419,15 +400,16 @@ jobs:
419400
- build: CPython 3.13 ARM 64 bits
420401
python: cp313-macosx_arm64
421402
arch: arm64
403+
- build: CPython 3.14 ARM 64 bits
404+
python: cp314-macosx_arm64
405+
arch: arm64
422406

423407
steps:
424408
- name: Checkout repo
425409
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
426410

427411
- name: Install Python
428412
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
429-
with:
430-
python-version: '3.9'
431413

432414
- name: ccache-restore
433415
id: ccache-restore
@@ -496,15 +478,16 @@ jobs:
496478
- build: CPython 3.13 64 bits
497479
python: cp313-win_amd64
498480
arch: AMD64
481+
- build: CPython 3.14 64 bits
482+
python: cp314-win_amd64
483+
arch: AMD64
499484

500485
steps:
501486
- name: Checkout repo
502487
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
503488

504489
- name: Install Python
505490
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
506-
with:
507-
python-version: '3.9'
508491

509492
- name: Build wheels
510493
uses: pypa/cibuildwheel@9c00cb4f6b517705a3794b22395aedc36257242c # v3.2.1

pyproject.toml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ classifiers = [
2424
"Programming Language :: Python :: 3.11",
2525
"Programming Language :: Python :: 3.12",
2626
"Programming Language :: Python :: 3.13",
27+
"Programming Language :: Python :: 3.14",
2728
"License :: OSI Approved :: Apache Software License",
2829
"Topic :: Multimedia :: Graphics",
2930
"Topic :: Multimedia :: Video",
@@ -32,7 +33,7 @@ classifiers = [
3233
]
3334
requires-python = ">= 3.9"
3435
dependencies = [
35-
"numpy>=1.19",
36+
"numpy>=2.0,<3",
3637
]
3738

3839
[project.urls]
@@ -51,7 +52,7 @@ oiiotool = "OpenImageIO:_command_line"
5152
build-backend = "scikit_build_core.build"
5253
requires = [
5354
"scikit-build-core>=0.10.6,<1",
54-
"pybind11>=2.13,<3",
55+
"pybind11>=2.13,<4",
5556
]
5657

5758
[tool.scikit-build]
@@ -109,6 +110,8 @@ skip = [
109110
# Building with musl seems to work, but the repair-wheel step seems to fail...
110111
# This may be a bug in repairwheel (or auditwheel)?
111112
"*musllinux*",
113+
# Skip free-threading builds
114+
"cp3??t-*",
112115
]
113116
test-command = "oiiotool --buildinfo"
114117

0 commit comments

Comments
 (0)