Skip to content

Commit 3f1ee6b

Browse files
committed
chore: drop Python 3.9 support ahead of October 2025 EOL
Python 3.9 reaches end-of-life on October 5, 2025. Remove support across: - CI/CD workflows (GitHub Actions, GitLab CI) - Testing configurations (tox.ini) - Development containers - Documentation and requirements
1 parent 176544d commit 3f1ee6b

14 files changed

+23
-26
lines changed

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.245.2/containers/python-3/.devcontainer/base.Dockerfile
22

3-
# [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.10, 3.9, 3.8, 3.7, 3.6, 3-bullseye, 3.10-bullseye, 3.9-bullseye, 3.8-bullseye, 3.7-bullseye, 3.6-bullseye, 3-buster, 3.10-buster, 3.9-buster, 3.8-buster, 3.7-buster, 3.6-buster
3+
# [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.13, 3.12, 3.11, 3.10, 3-bullseye, 3.13-bullseye, 3.12-bullseye, 3.11-bullseye, 3.10-bullseye, 3-buster, 3.13-buster, 3.12-buster, 3.11-buster, 3.10-buster
44
ARG VARIANT="3.10-bullseye"
55
FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT}
66

.devcontainer/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"dockerfile": "Dockerfile",
77
"context": "..",
88
"args": {
9-
// Update 'VARIANT' to pick a Python version: 3, 3.10, 3.9, 3.8, 3.7, 3.6
9+
// Update 'VARIANT' to pick a Python version: 3, 3.13, 3.12, 3.11, 3.10
1010
// Append -bullseye or -buster to pin to an OS version.
1111
// Use -bullseye variants on local on arm64/Apple Silicon.
1212
"VARIANT": "3.10-bullseye",

.github/workflows/full-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
strategy:
2020
matrix:
2121
os: [Windows, macOS] # exclude Ubuntu as it is available in pr-tests
22-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
22+
python-version: ["3.10", "3.11", "3.12", "3.13"]
2323
include:
2424
- os: Windows
2525
image: windows-2022

.github/workflows/latest-deps-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
strategy:
1111
matrix:
1212
os: [Ubuntu]
13-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
13+
python-version: ["3.10", "3.11", "3.12", "3.13"]
1414
include:
1515
- os: Ubuntu
1616
image: ubuntu-latest

.github/workflows/pr-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
strategy:
1212
matrix:
1313
os: [Ubuntu]
14-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
14+
python-version: ["3.10", "3.11", "3.12", "3.13"]
1515
include:
1616
- os: Ubuntu
1717
image: ubuntu-latest

.github/workflows/test-and-build-wheel.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ jobs:
8585
runs-on: ubuntu-latest
8686
strategy:
8787
matrix:
88-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
88+
python-version: ["3.10", "3.11", "3.12", "3.13"]
8989
steps:
9090
- name: Set up Python
9191
uses: actions/setup-python@v5

.github/workflows/test-published-dist.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
runs-on: ubuntu-latest
1010
strategy:
1111
matrix:
12-
python-version: ["3.9", "3.10", "3.11", "3.12"]
12+
python-version: ["3.10", "3.11", "3.12", "3.13"]
1313
steps:
1414
- name: Set up Python
1515
uses: actions/setup-python@v5

.gitlab-ci.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,6 @@ cache:
4949

5050
# Tests jobs
5151

52-
python3.9:
53-
<<: *test
54-
image: python:3.9
55-
5652
python3.10:
5753
<<: *test
5854
image: python:3.10

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,4 @@ repos:
3636
# rev: v2.17.0
3737
# hooks:
3838
# - id: pylint
39-
# language_version: python3.9
39+
# language_version: python3.10

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ If you would like to take on an issue, feel free to comment on the issue. We are
106106

107107
To get started quickly, follow the steps below.
108108

109-
1. Ensure you have Python 3.9+ and [Git](https://git-scm.com/) installed on your system. You can check your Python version by running:
109+
1. Ensure you have Python 3.10+ and [Git](https://git-scm.com/) installed on your system. You can check your Python version by running:
110110

111111
```bash
112112
python --version

0 commit comments

Comments
 (0)