Python 3.13 Release

Python 3.13 was released today, 8th October 2024 (NZ time). The only new feature that really interests me is the update REPL. I know that free-threaded Python is a big deal, but it's not something I need right now.

But still, I upgraded this site, and the DJ Press package, and everything appears to be working fine. To upgrade this site, I needed to change the following settings and files.

  • pyproject.toml: changed the requires-python version from >=3.12 to >=3.13
  • Dockerfile: changed FROM python:3.12-slim-bookworm to FROM python:3.13-slim-bookworm. Also, since I'm using uv inside my Docker environment, I also changed ENV UV_PYTHON=python3.12 to ENV UV_PYTHON=python3.13
  • justfile: I use Just as my task runner, and I have a line near the top of my justfile that sets a variable to choose the Python version: python_version := "3.13".
  • uv.lock: Once the justfile is updated, I can run just sync-up which runs the following command: uv sync --python {{python_version}} --all-extras --upgrade

On a related note, I came across this great post outlining all the major changes in Python from version 3.8 to today. Based on that, I could probably support Python 3.9 with DJ Press if I wanted to - I would just need to stop using the Union "pipe" character in my type hinting.