Skip to content

Commit cd5a104

Browse files
committed
Drop CPython 3.7 & PyPy 3.7
1 parent c8a7f2d commit cd5a104

File tree

8 files changed

+18
-7802
lines changed

8 files changed

+18
-7802
lines changed

README.rst

+3-3
Original file line numberDiff line numberDiff line change
@@ -209,12 +209,12 @@ Image content
209209

210210
All supported images currently contain:
211211

212-
- CPython 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, 3.13t and PyPy 3.7, 3.8, 3.9, 3.10 installed in
212+
- CPython 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, 3.13t and PyPy 3.8, 3.9, 3.10 installed in
213213
``/opt/python/<python tag>-<abi tag>``. The directories are named
214214
after the PEP 425 tags for each environment --
215-
e.g. ``/opt/python/cp37-cp37m`` contains a CPython 3.7 build, and
215+
e.g. ``/opt/python/cp313-cp313`` contains a CPython 3.13 build, and
216216
can be used to produce wheels named like
217-
``<pkg>-<version>-cp37-cp37m-<arch>.whl``.
217+
``<pkg>-<version>-cp313-cp313-<arch>.whl``.
218218

219219
- Development packages for all the libraries that PEP 571/599 list. One should not assume the presence of any other development package.
220220

docker/Dockerfile

+4-12
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ RUN export GIT_ROOT=git-2.45.2 && \
7979
manylinux-entrypoint /build_scripts/build-git.sh
8080

8181

82-
FROM build_base AS build_cpython_system_ssl
82+
FROM build_base AS build_cpython
8383
COPY build_scripts/build-sqlite3.sh /build_scripts/
8484
RUN export SQLITE_AUTOCONF_ROOT=sqlite-autoconf-3460100 && \
8585
export SQLITE_AUTOCONF_HASH=67d3fe6d268e6eaddcae3727fce58fcc8e9c53869bdd07a0c61e38ddf2965071 && \
@@ -94,20 +94,13 @@ RUN export TCL_ROOT=tcl8.6.14 && \
9494
export TK_HASH=8ffdb720f47a6ca6107eac2dd877e30b0ef7fac14f3a84ebbd0b3612cee41a94 && \
9595
manylinux-entrypoint /build_scripts/build-tcltk.sh
9696

97-
COPY build_scripts/build-cpython.sh /build_scripts/
98-
99-
100-
FROM build_cpython_system_ssl AS build_cpython
10197
COPY build_scripts/build-openssl.sh /build_scripts/
10298
RUN export OPENSSL_ROOT=openssl-3.0.15 && \
10399
export OPENSSL_HASH=23c666d0edf20f14249b3d8f0368acaee9ab585b09e1de82107c66e1f3ec9533 && \
104100
export OPENSSL_DOWNLOAD_URL=https://github.com/openssl/openssl/releases/download/${OPENSSL_ROOT} && \
105101
manylinux-entrypoint /build_scripts/build-openssl.sh
106102

107-
108-
FROM build_cpython_system_ssl AS build_cpython37
109-
COPY build_scripts/cpython-pubkeys.txt /build_scripts/cpython-pubkeys.txt
110-
RUN manylinux-entrypoint /build_scripts/build-cpython.sh 3.7.17
103+
COPY build_scripts/build-cpython.sh /build_scripts/
111104

112105

113106
FROM build_cpython AS build_cpython38
@@ -141,10 +134,9 @@ RUN manylinux-entrypoint /build_scripts/build-cpython.sh 3.13.0rc2 nogil
141134

142135
FROM runtime_base
143136
COPY --from=build_git /manylinux-rootfs /
144-
COPY --from=build_cpython_system_ssl /manylinux-rootfs /
137+
COPY --from=build_cpython /manylinux-rootfs /
145138
COPY build_scripts /opt/_internal/build_scripts/
146-
RUN --mount=type=bind,target=/build_cpython37,from=build_cpython37 \
147-
--mount=type=bind,target=/build_cpython38,from=build_cpython38 \
139+
RUN --mount=type=bind,target=/build_cpython38,from=build_cpython38 \
148140
--mount=type=bind,target=/build_cpython39,from=build_cpython39 \
149141
--mount=type=bind,target=/build_cpython310,from=build_cpython310 \
150142
--mount=type=bind,target=/build_cpython311,from=build_cpython311 \

docker/build_scripts/cpython-pubkeys.txt

-7,715
This file was deleted.

docker/build_scripts/python_versions.json

-17
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,6 @@
1111
"sha256": "cd7e17bb0a72aefbd3dbc81c340b20d1ab080a7072ccfa9568658bdc6152911f"
1212
}
1313
},
14-
"pp37-pypy37_pp73": {
15-
"x86_64": {
16-
"version": "7.3.9",
17-
"download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.9-linux64.tar.bz2",
18-
"sha256": "c58195124d807ecc527499ee19bc511ed753f4f2e418203ca51bc7e3b124d5d1"
19-
},
20-
"aarch64": {
21-
"version": "7.3.9",
22-
"download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.9-aarch64.tar.bz2",
23-
"sha256": "dfc62f2c453fb851d10a1879c6e75c31ffebbf2a44d181bb06fcac4750d023fc"
24-
},
25-
"i686": {
26-
"version": "7.3.9",
27-
"download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.9-linux32.tar.bz2",
28-
"sha256": "3398cece0167b81baa219c9cd54a549443d8c0a6b553ec8ec13236281e0d86cd"
29-
}
30-
},
3114
"pp38-pypy38_pp73": {
3215
"x86_64": {
3316
"version": "7.3.11",

docker/build_scripts/requirements3.7.txt

-44
This file was deleted.

noxfile.py

+1-1
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(7, 14):
22+
for python_minor in range(8, 14):
2323
python_version = f"3.{python_minor}"
2424
session.run(
2525
"uv", "pip", "compile",

tests/forty-two/setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@
33
setup(
44
name="forty_two",
55
version="0.1.0",
6-
python_requires=">=3.7",
6+
python_requires=">=3.8",
77
ext_modules=[Extension("forty_two", sources=["forty-two.c"])],
88
)

tests/run_tests.sh

+9-9
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,18 @@ else
1818
fi
1919

2020
if [ "${AUDITWHEEL_POLICY:0:10}" == "musllinux_" ]; then
21-
EXPECTED_PYTHON_COUNT=8
22-
EXPECTED_PYTHON_COUNT_ALL=8
21+
EXPECTED_PYTHON_COUNT=7
22+
EXPECTED_PYTHON_COUNT_ALL=7
2323
else
2424
if [ "${AUDITWHEEL_ARCH}" == "x86_64" ] || [ "${AUDITWHEEL_ARCH}" == "aarch64" ]; then
25-
EXPECTED_PYTHON_COUNT=10
26-
EXPECTED_PYTHON_COUNT_ALL=13
25+
EXPECTED_PYTHON_COUNT=9
26+
EXPECTED_PYTHON_COUNT_ALL=11
2727
elif [ "${AUDITWHEEL_ARCH}" == "i686" ]; then
28-
EXPECTED_PYTHON_COUNT=10
29-
EXPECTED_PYTHON_COUNT_ALL=12
28+
EXPECTED_PYTHON_COUNT=9
29+
EXPECTED_PYTHON_COUNT_ALL=10
3030
else
31-
EXPECTED_PYTHON_COUNT=8
32-
EXPECTED_PYTHON_COUNT_ALL=8
31+
EXPECTED_PYTHON_COUNT=7
32+
EXPECTED_PYTHON_COUNT_ALL=7
3333
fi
3434
fi
3535
PYTHON_COUNT=$(manylinux-interpreters list --installed | wc -l)
@@ -100,7 +100,7 @@ for PYTHON in /opt/python/*/bin/python; do
100100
echo "invalid answer, expecting 42"
101101
exit 1
102102
fi
103-
if [ "${PYVERS}" != "3.7" ] && [ "${IMPLEMENTATION}" != "graalpy" ] && [ "${AUDITWHEEL_POLICY:0:9}_${AUDITWHEEL_ARCH}" != "musllinux_s390x" ] && [ "${AUDITWHEEL_ARCH}" != "ppc64le" ]; then
103+
if [ "${IMPLEMENTATION}" != "graalpy" ] && [ "${AUDITWHEEL_POLICY:0:9}_${AUDITWHEEL_ARCH}" != "musllinux_s390x" ] && [ "${AUDITWHEEL_ARCH}" != "ppc64le" ]; then
104104
# no uv on musllinux s390x
105105
# FIXME, ppc64le test fails on Travis CI but works with qemu
106106
UV_PYTHON=/tmp/uv-test-${IMPLEMENTATION}${PYVERS}/bin/python

0 commit comments

Comments
 (0)