Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Python 3.14-rc #17752

Closed
wants to merge 1 commit into from
Closed

Conversation

jnoordsij
Copy link

Not sure if/how this slipped under the radar, but the 3.14-rc variants were not yet added here (last PR was #17687).

Note: I've deliberately only included addition of the new 3.14-rc images and skipped over the changes to other variants, as they seem not to be substantial enough to warrant a rebuild. Feel free to replace this with a full update however if that's to be preferred.

@jnoordsij jnoordsij requested a review from a team as a code owner October 18, 2024 12:33
Copy link

Diff for 6684adc:
diff --git a/_bashbrew-cat b/_bashbrew-cat
index 1071069..13a54ed 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -188,3 +188,50 @@ GitCommit: 7c8595e8e2b1c8bca0b6d9d146675b94c2a37ec7
 Directory: 3.13/windows/windowsservercore-ltsc2022
 Builder: classic
 Constraints: windowsservercore-ltsc2022
+
+Tags: 3.14.0a1-alpine3.19, 3.14-rc-alpine3.19
+Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/alpine3.19
+
+Tags: 3.14.0a1-alpine3.20, 3.14-rc-alpine3.20, 3.14.0a1-alpine, 3.14-rc-alpine
+Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/alpine3.20
+
+Tags: 3.14.0a1-bookworm, 3.14-rc-bookworm
+SharedTags: 3.14.0a1, 3.14-rc
+Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/bookworm
+
+Tags: 3.14.0a1-bullseye, 3.14-rc-bullseye
+Architectures: amd64, arm32v7, arm64v8, i386
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/bullseye
+
+Tags: 3.14.0a1-slim-bookworm, 3.14-rc-slim-bookworm, 3.14.0a1-slim, 3.14-rc-slim
+Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, ppc64le, s390x
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/slim-bookworm
+
+Tags: 3.14.0a1-slim-bullseye, 3.14-rc-slim-bullseye
+Architectures: amd64, arm32v7, arm64v8, i386
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/slim-bullseye
+
+Tags: 3.14.0a1-windowsservercore-1809, 3.14-rc-windowsservercore-1809
+SharedTags: 3.14.0a1-windowsservercore, 3.14-rc-windowsservercore, 3.14.0a1, 3.14-rc
+Architectures: windows-amd64
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/windows/windowsservercore-1809
+Builder: classic
+Constraints: windowsservercore-1809
+
+Tags: 3.14.0a1-windowsservercore-ltsc2022, 3.14-rc-windowsservercore-ltsc2022
+SharedTags: 3.14.0a1-windowsservercore, 3.14-rc-windowsservercore, 3.14.0a1, 3.14-rc
+Architectures: windows-amd64
+GitCommit: f599a555df4b1065bfe02163f5ebff04481553e2
+Directory: 3.14-rc/windows/windowsservercore-ltsc2022
+Builder: classic
+Constraints: windowsservercore-ltsc2022
diff --git a/_bashbrew-list b/_bashbrew-list
index 935f1a5..bd20cd6 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -112,6 +112,30 @@ python:3.13.0-slim-bullseye
 python:3.13.0-windowsservercore
 python:3.13.0-windowsservercore-1809
 python:3.13.0-windowsservercore-ltsc2022
+python:3.14-rc
+python:3.14-rc-alpine
+python:3.14-rc-alpine3.19
+python:3.14-rc-alpine3.20
+python:3.14-rc-bookworm
+python:3.14-rc-bullseye
+python:3.14-rc-slim
+python:3.14-rc-slim-bookworm
+python:3.14-rc-slim-bullseye
+python:3.14-rc-windowsservercore
+python:3.14-rc-windowsservercore-1809
+python:3.14-rc-windowsservercore-ltsc2022
+python:3.14.0a1
+python:3.14.0a1-alpine
+python:3.14.0a1-alpine3.19
+python:3.14.0a1-alpine3.20
+python:3.14.0a1-bookworm
+python:3.14.0a1-bullseye
+python:3.14.0a1-slim
+python:3.14.0a1-slim-bookworm
+python:3.14.0a1-slim-bullseye
+python:3.14.0a1-windowsservercore
+python:3.14.0a1-windowsservercore-1809
+python:3.14.0a1-windowsservercore-ltsc2022
 python:alpine
 python:alpine3.19
 python:alpine3.20
diff --git a/_bashbrew-list-build-order b/_bashbrew-list-build-order
index 25c7306..b16c193 100644
--- a/_bashbrew-list-build-order
+++ b/_bashbrew-list-build-order
@@ -24,6 +24,14 @@ python:3.12-slim
 python:3.12-slim-bullseye
 python:3.12-windowsservercore-1809
 python:3.12-windowsservercore-ltsc2022
+python:3.14-rc-alpine
+python:3.14-rc-alpine3.19
+python:3.14-rc-bookworm
+python:3.14-rc-bullseye
+python:3.14-rc-slim
+python:3.14-rc-slim-bullseye
+python:3.14-rc-windowsservercore-1809
+python:3.14-rc-windowsservercore-ltsc2022
 python:alpine
 python:alpine3.19
 python:bookworm
diff --git a/python_alpine/Dockerfile b/python_3.14-rc-alpine/Dockerfile
similarity index 87%
copy from python_alpine/Dockerfile
copy to python_3.14-rc-alpine/Dockerfile
index afd49db..4af7c70 100644
--- a/python_alpine/Dockerfile
+++ b/python_3.14-rc-alpine/Dockerfile
@@ -16,8 +16,8 @@ RUN set -eux; \
 		tzdata \
 	;
 
-ENV GPG_KEY 7169605F62C751356D054A26A821E680E5FA6305
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 3e464b0cbb7535e2db34262fd19a0a393d0e62be0f43b1513ed98379b054ead4
 
 RUN set -eux; \
 	\
@@ -53,12 +53,7 @@ RUN set -eux; \
 	; \
 	\
 	wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; \
-	wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; \
-	GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
-	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; \
-	gpg --batch --verify python.tar.xz.asc python.tar.xz; \
-	gpgconf --kill all; \
-	rm -rf "$GNUPGHOME" python.tar.xz.asc; \
+	echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; \
 	mkdir -p /usr/src/python; \
 	tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \
 	rm python.tar.xz; \
diff --git a/python_alpine3.19/Dockerfile b/python_3.14-rc-alpine3.19/Dockerfile
similarity index 87%
copy from python_alpine3.19/Dockerfile
copy to python_3.14-rc-alpine3.19/Dockerfile
index 0895e5c..bb8bea9 100644
--- a/python_alpine3.19/Dockerfile
+++ b/python_3.14-rc-alpine3.19/Dockerfile
@@ -16,8 +16,8 @@ RUN set -eux; \
 		tzdata \
 	;
 
-ENV GPG_KEY 7169605F62C751356D054A26A821E680E5FA6305
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 3e464b0cbb7535e2db34262fd19a0a393d0e62be0f43b1513ed98379b054ead4
 
 RUN set -eux; \
 	\
@@ -53,12 +53,7 @@ RUN set -eux; \
 	; \
 	\
 	wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; \
-	wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; \
-	GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
-	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; \
-	gpg --batch --verify python.tar.xz.asc python.tar.xz; \
-	gpgconf --kill all; \
-	rm -rf "$GNUPGHOME" python.tar.xz.asc; \
+	echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; \
 	mkdir -p /usr/src/python; \
 	tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \
 	rm python.tar.xz; \
diff --git a/python_bookworm/Dockerfile b/python_3.14-rc-bookworm/Dockerfile
similarity index 85%
copy from python_bookworm/Dockerfile
copy to python_3.14-rc-bookworm/Dockerfile
index 58bdbf4..342d909 100644
--- a/python_bookworm/Dockerfile
+++ b/python_3.14-rc-bookworm/Dockerfile
@@ -19,18 +19,13 @@ RUN set -eux; \
 	; \
 	rm -rf /var/lib/apt/lists/*
 
-ENV GPG_KEY 7169605F62C751356D054A26A821E680E5FA6305
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 3e464b0cbb7535e2db34262fd19a0a393d0e62be0f43b1513ed98379b054ead4
 
 RUN set -eux; \
 	\
 	wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; \
-	wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; \
-	GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
-	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; \
-	gpg --batch --verify python.tar.xz.asc python.tar.xz; \
-	gpgconf --kill all; \
-	rm -rf "$GNUPGHOME" python.tar.xz.asc; \
+	echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; \
 	mkdir -p /usr/src/python; \
 	tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \
 	rm python.tar.xz; \
diff --git a/python_bullseye/Dockerfile b/python_3.14-rc-bullseye/Dockerfile
similarity index 85%
copy from python_bullseye/Dockerfile
copy to python_3.14-rc-bullseye/Dockerfile
index f334cc7..a78c16a 100644
--- a/python_bullseye/Dockerfile
+++ b/python_3.14-rc-bullseye/Dockerfile
@@ -19,18 +19,13 @@ RUN set -eux; \
 	; \
 	rm -rf /var/lib/apt/lists/*
 
-ENV GPG_KEY 7169605F62C751356D054A26A821E680E5FA6305
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 3e464b0cbb7535e2db34262fd19a0a393d0e62be0f43b1513ed98379b054ead4
 
 RUN set -eux; \
 	\
 	wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; \
-	wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; \
-	GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
-	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; \
-	gpg --batch --verify python.tar.xz.asc python.tar.xz; \
-	gpgconf --kill all; \
-	rm -rf "$GNUPGHOME" python.tar.xz.asc; \
+	echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; \
 	mkdir -p /usr/src/python; \
 	tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \
 	rm python.tar.xz; \
diff --git a/python_slim-bullseye/Dockerfile b/python_3.14-rc-slim-bullseye/Dockerfile
similarity index 87%
copy from python_slim-bullseye/Dockerfile
copy to python_3.14-rc-slim-bullseye/Dockerfile
index 2b2b11c..e7e927d 100644
--- a/python_slim-bullseye/Dockerfile
+++ b/python_3.14-rc-slim-bullseye/Dockerfile
@@ -19,8 +19,8 @@ RUN set -eux; \
 	; \
 	rm -rf /var/lib/apt/lists/*
 
-ENV GPG_KEY 7169605F62C751356D054A26A821E680E5FA6305
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 3e464b0cbb7535e2db34262fd19a0a393d0e62be0f43b1513ed98379b054ead4
 
 RUN set -eux; \
 	\
@@ -51,12 +51,7 @@ RUN set -eux; \
 	; \
 	\
 	wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; \
-	wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; \
-	GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
-	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; \
-	gpg --batch --verify python.tar.xz.asc python.tar.xz; \
-	gpgconf --kill all; \
-	rm -rf "$GNUPGHOME" python.tar.xz.asc; \
+	echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; \
 	mkdir -p /usr/src/python; \
 	tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \
 	rm python.tar.xz; \
diff --git a/python_slim/Dockerfile b/python_3.14-rc-slim/Dockerfile
similarity index 87%
copy from python_slim/Dockerfile
copy to python_3.14-rc-slim/Dockerfile
index 9237983..3baee8b 100644
--- a/python_slim/Dockerfile
+++ b/python_3.14-rc-slim/Dockerfile
@@ -19,8 +19,8 @@ RUN set -eux; \
 	; \
 	rm -rf /var/lib/apt/lists/*
 
-ENV GPG_KEY 7169605F62C751356D054A26A821E680E5FA6305
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 3e464b0cbb7535e2db34262fd19a0a393d0e62be0f43b1513ed98379b054ead4
 
 RUN set -eux; \
 	\
@@ -51,12 +51,7 @@ RUN set -eux; \
 	; \
 	\
 	wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; \
-	wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; \
-	GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \
-	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; \
-	gpg --batch --verify python.tar.xz.asc python.tar.xz; \
-	gpgconf --kill all; \
-	rm -rf "$GNUPGHOME" python.tar.xz.asc; \
+	echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; \
 	mkdir -p /usr/src/python; \
 	tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \
 	rm python.tar.xz; \
diff --git a/python_windowsservercore-1809/Dockerfile b/python_3.14-rc-windowsservercore-1809/Dockerfile
similarity index 85%
copy from python_windowsservercore-1809/Dockerfile
copy to python_3.14-rc-windowsservercore-1809/Dockerfile
index c15287f..34ed4d2 100644
--- a/python_windowsservercore-1809/Dockerfile
+++ b/python_3.14-rc-windowsservercore-1809/Dockerfile
@@ -11,13 +11,20 @@ SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPref
 # https://github.com/docker-library/python/pull/557
 ENV PYTHONIOENCODING UTF-8
 
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 c02e8f6f118bcfd216cddeeb7243203202be7ee8004d1465140195fbdac92e55
 
 RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($env:PYTHON_VERSION -replace '[a-z]+[0-9]*$', ''), $env:PYTHON_VERSION); \
 	Write-Host ('Downloading {0} ...' -f $url); \
 	[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
 	Invoke-WebRequest -Uri $url -OutFile 'python.exe'; \
 	\
+	Write-Host ('Verifying sha256 ({0}) ...' -f $env:PYTHON_SHA256); \
+	if ((Get-FileHash python.exe -Algorithm sha256).Hash -ne $env:PYTHON_SHA256) { \
+		Write-Host 'FAILED!'; \
+		exit 1; \
+	}; \
+	\
 	Write-Host 'Installing ...'; \
 # https://docs.python.org/3/using/windows.html#installing-without-ui
 	$exitCode = (Start-Process python.exe -Wait -NoNewWindow -PassThru \
diff --git a/python_windowsservercore-ltsc2022/Dockerfile b/python_3.14-rc-windowsservercore-ltsc2022/Dockerfile
similarity index 85%
copy from python_windowsservercore-ltsc2022/Dockerfile
copy to python_3.14-rc-windowsservercore-ltsc2022/Dockerfile
index 4977b39..1676dc2 100644
--- a/python_windowsservercore-ltsc2022/Dockerfile
+++ b/python_3.14-rc-windowsservercore-ltsc2022/Dockerfile
@@ -11,13 +11,20 @@ SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPref
 # https://github.com/docker-library/python/pull/557
 ENV PYTHONIOENCODING UTF-8
 
-ENV PYTHON_VERSION 3.13.0
+ENV PYTHON_VERSION 3.14.0a1
+ENV PYTHON_SHA256 c02e8f6f118bcfd216cddeeb7243203202be7ee8004d1465140195fbdac92e55
 
 RUN $url = ('https://www.python.org/ftp/python/{0}/python-{1}-amd64.exe' -f ($env:PYTHON_VERSION -replace '[a-z]+[0-9]*$', ''), $env:PYTHON_VERSION); \
 	Write-Host ('Downloading {0} ...' -f $url); \
 	[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
 	Invoke-WebRequest -Uri $url -OutFile 'python.exe'; \
 	\
+	Write-Host ('Verifying sha256 ({0}) ...' -f $env:PYTHON_SHA256); \
+	if ((Get-FileHash python.exe -Algorithm sha256).Hash -ne $env:PYTHON_SHA256) { \
+		Write-Host 'FAILED!'; \
+		exit 1; \
+	}; \
+	\
 	Write-Host 'Installing ...'; \
 # https://docs.python.org/3/using/windows.html#installing-without-ui
 	$exitCode = (Start-Process python.exe -Wait -NoNewWindow -PassThru \

Relevant Maintainers:

@yosifkit
Copy link
Member

Yeah, I was slightly waiting on docker-library/python#979 / docker-library/python#980, but it's a bit more complicated than just dropping the PROFILE_TASK lines 😢. So, I think adding 3.14-rc without that is fine.

@jnoordsij
Copy link
Author

I see, all fine to me! I'll just leave this open for anyone interested to track when the new 3.14-rc image will be available.

@tianon
Copy link
Member

tianon commented Oct 18, 2024

Closing in favor of #17757, which now includes docker-library/python#980 🙇

As always, thank you for your diligence, @jnoordsij ❤️

@tianon tianon closed this Oct 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants