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

Python 3.12 Readiness tracker #13757

Closed
9 of 10 tasks
miketheman opened this issue May 25, 2023 · 0 comments
Closed
9 of 10 tasks

Python 3.12 Readiness tracker #13757

miketheman opened this issue May 25, 2023 · 0 comments
Labels
meta Meta issues (rollouts, etc)

Comments

@miketheman
Copy link
Member

miketheman commented May 25, 2023

Python 3.12 is going to have a release candidate soon, so we might as well test it out.
https://peps.python.org/pep-0693/

Apply a patch locally to test it out yourself.

diff --git a/Dockerfile b/Dockerfile
index 0dd6db183..0ccc54548 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -36,7 +36,7 @@ RUN NODE_ENV=production npm run build


 # We'll build a light-weight layer along the way with just docs stuff
-FROM python:3.11.5-slim-bookworm as docs
+FROM python:3.12-rc-slim-bookworm as docs

 # By default, Docker has special steps to avoid keeping APT caches in the layers, which
 # is good, but in our case, we're going to mount a special cache volume (kept between
@@ -105,7 +105,7 @@ USER docs

 # Now we're going to build our actual application, but not the actual production
 # image that it gets deployed into.
-FROM python:3.11.5-slim-bookworm as build
+FROM python:3.12-rc-slim-bookworm as build

 # Define whether we're building a production or a development image. This will
 # generally be used to control whether or not we install our development and
@@ -184,7 +184,7 @@ RUN --mount=type=cache,target=/root/.cache/pip \

 # Now we're going to build our actual application image, which will eventually
 # pull in the static files that were built above.
-FROM python:3.11.5-slim-bookworm
+FROM python:3.12-rc-slim-bookworm

 # Setup some basic environment variables that are ~never going to change.
 ENV PYTHONUNBUFFERED 1

Notables:

As of 2023-09-29, these packages are being built into wheels:

grpcio,
hiredis,
paginate,
psycopg-c,
pycurl,
pyqrcode,
zxcvbn,
psutil,
pyyaml,
restructuredtext-lint

I expect psycopg-c to always be built, since that's what we've opted into with this package, but the others should probably get built as wheels soon.

@di di added the meta Meta issues (rollouts, etc) label Jun 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meta Meta issues (rollouts, etc)
Projects
None yet
Development

No branches or pull requests

2 participants