diff --git a/.circleci/config.yml b/.circleci/config.yml
index 2bee4b541..6e6b5411b 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -3,7 +3,7 @@ version: 2.1
jobs:
test:
docker:
- - image: cimg/python:3.12.8
+ - image: cimg/python:3.13.7
steps:
- checkout
- run:
@@ -25,7 +25,7 @@ jobs:
command: make openapi-generate
build:
docker:
- - image: cimg/python:3.12.8
+ - image: cimg/python:3.13.7
steps:
- checkout
- run:
diff --git a/README.md b/README.md
index 1546692c2..c643871fb 100755
--- a/README.md
+++ b/README.md
@@ -33,7 +33,7 @@ A RESTful API for Pokémon - [pokeapi.co](https://pokeapi.co)
- [Join Us On Slack!](#join-us-on-slack)
- [Contributing](#contributing)
-## Setup [](https://www.python.org/downloads/release/python-3128/)
+## Setup [](https://www.python.org/downloads/release/python-3137/)
- Download this source code into a working directory, be sure to use the flag `--recurse-submodules` to clone also our submodules.
diff --git a/Resources/docker/app/Dockerfile b/Resources/docker/app/Dockerfile
index 7f56f69a7..1ce3eb5a6 100644
--- a/Resources/docker/app/Dockerfile
+++ b/Resources/docker/app/Dockerfile
@@ -1,4 +1,4 @@
-FROM python:3.12.8-alpine3.21 AS builder
+FROM python:3.13.7-alpine AS builder
ENV PYTHONUNBUFFERED=1
@@ -11,7 +11,7 @@ RUN apk add --no-cache --virtual .build-deps gcc g++ musl-dev \
postgresql-dev binutils rust cargo && \
python3 -m pip install -r requirements.txt --no-cache-dir
-FROM python:3.12.8-alpine3.21
+FROM python:3.13.7-alpine
ENV PYTHONUNBUFFERED=1
ENV DJANGO_SETTINGS_MODULE='config.docker-compose'
@@ -19,7 +19,7 @@ ENV DJANGO_SETTINGS_MODULE='config.docker-compose'
RUN mkdir /code
WORKDIR /code
-COPY --from=builder /usr/local/lib/python3.12/site-packages /usr/local/lib/python3.12/site-packages
+COPY --from=builder /usr/local/lib/python3.13/site-packages /usr/local/lib/python3.13/site-packages
COPY --from=builder /usr/local/bin /usr/local/bin
ADD . /code/
diff --git a/Resources/docker/app/README.md b/Resources/docker/app/README.md
index 1a01360a4..285d8d402 100644
--- a/Resources/docker/app/README.md
+++ b/Resources/docker/app/README.md
@@ -17,7 +17,7 @@
- [`master`](https://github.com/PokeAPI/pokeapi/blob/master/Resources/docker/app/Dockerfile)
- [`staging`](https://github.com/PokeAPI/pokeapi/blob/staging/Resources/docker/app/Dockerfile)
-> `pokeapi` uses `python:3.12.8-alpine3.21` as base image.
+> `pokeapi` uses `python:3.13.7-alpine` as base image.
## What is PokeAPI?
diff --git a/default.nix b/default.nix
index f1e0ad250..7b73814bf 100644
--- a/default.nix
+++ b/default.nix
@@ -3,13 +3,13 @@ pkgs.mkShell {
name = "onix-shellder";
venvDir = "./.venv";
buildInputs = [
- python312Packages.python
- python312Packages.venvShellHook
+ python313Packages.python
+ python313Packages.venvShellHook
# Required dependencies
# Python
- python312Packages.black
+ python313Packages.black
# misc
taglib
diff --git a/requirements.txt b/requirements.txt
index 2f26bc48e..3680a80d4 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -12,3 +12,4 @@ psycopg2-binary==2.9.10
python-dateutil==2.8.2
python-mimeparse==1.6.0
drf-spectacular==0.28.0
+legacy-cgi; python_version >= '3.13'