Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ jobs:
matrix:
os: ['ubuntu-latest']
python-version:
- '3.9'
- '3.10'
- '3.11'
- '3.12'
Expand Down
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,5 @@ repos:
rev: 75992aaa40730136014f34227e0135f63fc951b4 # frozen: v3.21.2
hooks:
- id: pyupgrade
name: "Enforce Python 3.9+ idioms"
args: ["--py39-plus"]
name: "Enforce Python 3.10+ idioms"
args: ["--py310-plus"]
1 change: 1 addition & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Here you can see the full list of changes between each SQLAlchemy-Utils release.
Unreleased
^^^^^^^^^^

- Drop support for Python 3.9.
- Support Python 3.14.
- Fix ``ChoiceType`` returning the raw scalar instead of a ``Choice`` for falsy codes such as ``0`` or the empty string. (#813)

Expand Down
7 changes: 1 addition & 6 deletions docs/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,7 @@ This part of the documentation covers the installation of SQLAlchemy-Utils.
Supported platforms
-------------------

SQLAlchemy-Utils is currently tested against the following Python platforms:

- CPython 3.9
- CPython 3.10
- CPython 3.11
- CPython 3.12
SQLAlchemy-Utils is tested against supported CPython versions.


Installing an official release
Expand Down
3 changes: 1 addition & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,12 @@ authors = [
{name = "Janne Vanhala"},
{name = "Vesa Uimonen"}
]
requires-python = ">=3.9"
requires-python = ">=3.10"
classifiers = [
"Environment :: Web Environment",
"Intended Audience :: Developers",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
Expand Down
2 changes: 1 addition & 1 deletion requirements/docs/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
package-mode = false

[tool.poetry.dependencies]
python = ">=3.9"
python = ">=3.10"
sphinx = "*"
sphinx-rtd-theme = "*"
52 changes: 25 additions & 27 deletions requirements/docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,27 +1,25 @@
alabaster==0.7.16 ; python_version >= "3.9"
babel==2.17.0 ; python_version >= "3.9"
certifi==2025.7.9 ; python_version >= "3.9"
charset-normalizer==3.4.2 ; python_version >= "3.9"
colorama==0.4.6 ; python_version >= "3.9" and sys_platform == "win32"
docutils==0.21.2 ; python_version >= "3.9"
idna==3.15 ; python_version >= "3.9"
imagesize==1.4.1 ; python_version >= "3.9"
importlib-metadata==8.7.0 ; python_version == "3.9"
jinja2==3.1.6 ; python_version >= "3.9"
markupsafe==3.0.2 ; python_version >= "3.9"
packaging==25.0 ; python_version >= "3.9"
pygments==2.19.2 ; python_version >= "3.9"
requests==2.33.0 ; python_version >= "3.9"
snowballstemmer==3.0.1 ; python_version >= "3.9"
sphinx-rtd-theme==3.0.2 ; python_version >= "3.9"
sphinx==7.4.7 ; python_version >= "3.9"
sphinxcontrib-applehelp==2.0.0 ; python_version >= "3.9"
sphinxcontrib-devhelp==2.0.0 ; python_version >= "3.9"
sphinxcontrib-htmlhelp==2.1.0 ; python_version >= "3.9"
sphinxcontrib-jquery==4.1 ; python_version >= "3.9"
sphinxcontrib-jsmath==1.0.1 ; python_version >= "3.9"
sphinxcontrib-qthelp==2.0.0 ; python_version >= "3.9"
sphinxcontrib-serializinghtml==2.0.0 ; python_version >= "3.9"
tomli==2.2.1 ; python_version >= "3.9" and python_version < "3.11"
urllib3==2.7.0 ; python_version >= "3.9"
zipp==3.23.0 ; python_version == "3.9"
alabaster==1.0.0 ; python_version >= "3.10"
babel==2.18.0 ; python_version >= "3.10"
certifi==2026.6.17 ; python_version >= "3.10"
charset-normalizer==3.4.9 ; python_version >= "3.10"
colorama==0.4.6 ; python_version >= "3.10" and sys_platform == "win32"
docutils==0.21.2 ; python_version >= "3.10"
idna==3.18 ; python_version >= "3.10"
imagesize==1.5.0 ; python_version >= "3.10"
jinja2==3.1.6 ; python_version >= "3.10"
markupsafe==3.0.3 ; python_version >= "3.10"
packaging==26.2 ; python_version >= "3.10"
pygments==2.20.0 ; python_version >= "3.10"
requests==2.34.2 ; python_version >= "3.10"
snowballstemmer==3.1.1 ; python_version >= "3.10"
sphinx-rtd-theme==3.1.0 ; python_version >= "3.10"
sphinx==8.1.3 ; python_version >= "3.10"
sphinxcontrib-applehelp==2.0.0 ; python_version >= "3.10"
sphinxcontrib-devhelp==2.0.0 ; python_version >= "3.10"
sphinxcontrib-htmlhelp==2.1.0 ; python_version >= "3.10"
sphinxcontrib-jquery==4.1 ; python_version >= "3.10"
sphinxcontrib-jsmath==1.0.1 ; python_version >= "3.10"
sphinxcontrib-qthelp==2.0.0 ; python_version >= "3.10"
sphinxcontrib-serializinghtml==2.0.0 ; python_version >= "3.10"
tomli==2.4.1 ; python_version == "3.10"
urllib3==2.7.0 ; python_version >= "3.10"
2 changes: 1 addition & 1 deletion tox.ini
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tox]
envlist =
py{3.9, 3.10, 3.11, 3.12, 3.13, 3.14}-sqlalchemy{14, 2}
py{3.10, 3.11, 3.12, 3.13, 3.14}-sqlalchemy{14, 2}
ruff
docs
labels =
Expand Down