Skip to content

Python 3.12 Readiness tracker #13757

Closed
Closed
@miketheman

Description

@miketheman

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    metaMeta issues (rollouts, etc)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions