Skip to content

Commit 96ea22a

Browse files
authored
Merge pull request #1772 from mayeut/add-cpython-3.14
feature: add CPython 3.14
2 parents 172bc67 + d963c5c commit 96ea22a

File tree

6 files changed

+44
-13
lines changed

6 files changed

+44
-13
lines changed

.github/workflows/build.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ jobs:
5555
("aarch64", "ubuntu-24.04-arm", ("manylinux2014", "manylinux_2_28", "manylinux_2_34", "musllinux_1_2")),
5656
("i686", "ubuntu-24.04", ("manylinux2014", "musllinux_1_2")),
5757
("armv7l", "ubuntu-24.04-arm", ("manylinux_2_31", "musllinux_1_2")),
58+
("s390x", "ubuntu-24.04", ("musllinux_1_2",)),
5859
]
5960
expanded = [{"policy": policy, "platform": platform, "runner": runner} for platform, runner, policies in reduced for policy in policies]
6061
print(json.dumps(expanded, indent=2))
@@ -82,6 +83,10 @@ jobs:
8283
with:
8384
fetch-depth: 50
8485

86+
- name: Set up QEMU
87+
if: matrix.platform == 's390x'
88+
uses: docker/setup-qemu-action@v3
89+
8590
- name: Set up Docker Buildx
8691
uses: docker/setup-buildx-action@v3
8792

.travis.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,6 @@ jobs:
3838
env: POLICY="manylinux_2_34" PLATFORM="s390x"
3939
- arch: ppc64le
4040
env: POLICY="manylinux_2_34" PLATFORM="ppc64le"
41-
- arch: s390x
42-
env: POLICY="musllinux_1_2" PLATFORM="s390x"
4341
- arch: ppc64le
4442
env: POLICY="musllinux_1_2" PLATFORM="ppc64le"
4543

@@ -53,10 +51,11 @@ install:
5351
- docker buildx inspect --bootstrap --builder builder-manylinux 2>&1 | tee /dev/null
5452

5553
script: |
56-
BUILD_STATUS=success
5754
(while true; do echo "travis_wait"; docker stats --no-stream; free; df -h; sleep 30; done) &
5855
WAIT_PID=$!
59-
COMMIT_SHA=${TRAVIS_COMMIT} ./build.sh || BUILD_STATUS=failed
56+
disown
57+
BUILD_STATUS=success
58+
COMMIT_SHA=${TRAVIS_COMMIT} ./build.sh 2>&1 || BUILD_STATUS=failed
6059
kill -9 ${WAIT_PID}
6160
if [ "${BUILD_STATUS}" != "success" ]; then
6261
exit 1

docker/Dockerfile

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,11 @@ RUN manylinux-entrypoint /build_scripts/build-cpython.sh [email protected] https
143143
FROM build_cpython AS build_cpython313_nogil
144144
RUN manylinux-entrypoint /build_scripts/build-cpython.sh [email protected] https://accounts.google.com 3.13.3 nogil
145145

146+
FROM build_cpython AS build_cpython314
147+
RUN manylinux-entrypoint /build_scripts/build-cpython.sh [email protected] https://github.com/login/oauth 3.14.0b1
148+
149+
FROM build_cpython AS build_cpython314_nogil
150+
RUN manylinux-entrypoint /build_scripts/build-cpython.sh [email protected] https://github.com/login/oauth 3.14.0b1 nogil
146151

147152
FROM runtime_base
148153
COPY --from=build_tcl_tk /manylinux-rootfs /
@@ -157,6 +162,8 @@ RUN --mount=type=bind,target=/build_cpython38,from=build_cpython38 \
157162
--mount=type=bind,target=/build_cpython312,from=build_cpython312 \
158163
--mount=type=bind,target=/build_cpython313,from=build_cpython313 \
159164
--mount=type=bind,target=/build_cpython313_nogil,from=build_cpython313_nogil \
165+
--mount=type=bind,target=/build_cpython314,from=build_cpython314 \
166+
--mount=type=bind,target=/build_cpython314_nogil,from=build_cpython314_nogil \
160167
mkdir -p /opt/_internal && \
161168
cp -rf /build_cpython*/opt/_internal/* /opt/_internal/ && \
162169
manylinux-entrypoint /opt/_internal/build_scripts/finalize.sh \
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# This file was autogenerated by uv via the following command:
2+
# nox -s update_python_dependencies
3+
build==1.2.2.post1 \
4+
--hash=sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5 \
5+
--hash=sha256:b36993e92ca9375a219c99e606a122ff365a760a2d4bba0caa09bd5278b608b7
6+
# via -r requirements.in
7+
packaging==25.0 \
8+
--hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 \
9+
--hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f
10+
# via
11+
# -r requirements.in
12+
# build
13+
pip==25.1.1 ; implementation_name != 'graalpy' \
14+
--hash=sha256:2913a38a2abf4ea6b64ab507bd9e967f3b53dc1ede74b01b0931e1ce548751af \
15+
--hash=sha256:3de45d411d308d5054c2168185d8da7f9a2cd753dbac8acbfa88a8909ecd9077
16+
# via -r requirements.in
17+
pyproject-hooks==1.2.0 \
18+
--hash=sha256:1e859bd5c40fae9448642dd871adf459e5e2084186e8d2c2a79a824c970da1f8 \
19+
--hash=sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913
20+
# via build

noxfile.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ def update_python_dependencies(session):
1919
# regenerate the constraints files
2020
env["UV_CUSTOM_COMPILE_COMMAND"] = f"nox -s {session.name}"
2121

22-
for python_minor in range(8, 14):
22+
for python_minor in range(8, 15):
2323
python_version = f"3.{python_minor}"
2424
session.run(
2525
"uv",

tests/run_tests.sh

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,18 @@ set -exuo pipefail
77
MY_DIR=$(dirname "${BASH_SOURCE[0]}")
88

99
if [ "${AUDITWHEEL_POLICY:0:10}" == "musllinux_" ]; then
10-
EXPECTED_PYTHON_COUNT=7
11-
EXPECTED_PYTHON_COUNT_ALL=7
10+
EXPECTED_PYTHON_COUNT=9
11+
EXPECTED_PYTHON_COUNT_ALL=9
1212
else
1313
if [ "${AUDITWHEEL_ARCH}" == "x86_64" ] || [ "${AUDITWHEEL_ARCH}" == "aarch64" ]; then
14-
EXPECTED_PYTHON_COUNT=9
15-
EXPECTED_PYTHON_COUNT_ALL=12
14+
EXPECTED_PYTHON_COUNT=11
15+
EXPECTED_PYTHON_COUNT_ALL=14
1616
elif [ "${AUDITWHEEL_ARCH}" == "i686" ]; then
17-
EXPECTED_PYTHON_COUNT=9
18-
EXPECTED_PYTHON_COUNT_ALL=11
17+
EXPECTED_PYTHON_COUNT=11
18+
EXPECTED_PYTHON_COUNT_ALL=13
1919
else
20-
EXPECTED_PYTHON_COUNT=7
21-
EXPECTED_PYTHON_COUNT_ALL=7
20+
EXPECTED_PYTHON_COUNT=9
21+
EXPECTED_PYTHON_COUNT_ALL=9
2222
fi
2323
fi
2424

0 commit comments

Comments
 (0)