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
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
checks:
strategy:
matrix:
python: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python: ["3.11", "3.12", "3.13", "3.14", "3.15"]
uses: ./.github/workflows/check-python.yml
with:
python-version: ${{ matrix.python }}
Expand Down
2 changes: 1 addition & 1 deletion ci/setup_dev_environment.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash

python3.9 -m venv ./.venv/
python3.11 -m venv ./.venv/
. ./.venv/bin/activate
pip install pip-tools
2 changes: 1 addition & 1 deletion ci/update_dependencies.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env sh

. .venv/bin/activate
pip-compile --extra=ws --extra=development --extra=docs --extra=testing --output-file=./dev-requirements.txt pyproject.toml
pip-compile -U --extra=ws --extra=development --extra=docs --extra=testing --output-file=./dev-requirements.txt pyproject.toml
207 changes: 107 additions & 100 deletions dev-requirements.txt
Original file line number Diff line number Diff line change
@@ -1,169 +1,185 @@
#
# This file is autogenerated by pip-compile with Python 3.9
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# pip-compile --extra=development --extra=docs --extra=testing --extra=ws --output-file=./dev-requirements.txt pyproject.toml
#
alabaster==0.7.13
alabaster==1.0.0
# via sphinx
annotated-types==0.7.0
annotated-types==0.8.0
# via pydantic
argcomplete==3.5.3
argcomplete==3.7.2
# via datamodel-code-generator
astroid==3.2.4
ast-serialize==0.13.1
# via mypy
astroid==4.3.4
# via pylint
babel==2.17.0
babel==2.18.0
# via sphinx
black==24.8.0
black==26.10.1
# via datamodel-code-generator
build==1.2.2.post1
build==1.6.1
# via pip-tools
cachetools==5.5.2
cachetools==7.2.4
# via tox
certifi==2025.1.31
# via requests
cfgv==3.4.0
certifi==2026.10.19
# via
# requests
# s2-python (pyproject.toml)
cfgv==3.5.0
# via pre-commit
chardet==5.2.0
# via tox
charset-normalizer==3.4.1
charset-normalizer==3.5.2
# via requests
click==8.1.8
click==8.5.0
# via
# black
# pip-tools
colorama==0.4.6
# via tox
coverage[toml]==7.6.1
coverage[toml]==7.17.0
# via pytest-cov
datamodel-code-generator==0.27.3
datamodel-code-generator==0.86.0
# via s2-python (pyproject.toml)
dill==0.3.9
dill==0.4.1
# via pylint
distlib==0.3.9
distlib==0.4.4
# via virtualenv
docutils==0.20.1
docutils==0.22.4
# via
# sphinx
# sphinx-rtd-theme
# sphinx-tabs
exceptiongroup==1.3.1
# via pytest
filelock==3.16.1
filelock==4.2.4
# via
# python-discovery
# tox
# virtualenv
genson==1.3.0
genson==1.4.0
# via datamodel-code-generator
identify==2.6.1
identify==2.6.20
# via pre-commit
idna==3.10
idna==3.20
# via requests
imagesize==1.4.1
imagesize==2.0.1
# via sphinx
importlib-metadata==8.7.1
# via
# build
# setuptools-scm
# sphinx
inflect==5.6.2
inflect==7.6.0
# via datamodel-code-generator
iniconfig==2.0.0
iniconfig==2.3.1
# via pytest
isort==5.13.2
isort==8.0.1
# via
# datamodel-code-generator
# pylint
jinja2==3.1.5
jaraco-functools==4.6.0
# via inflect
jinja2==3.1.6
# via
# datamodel-code-generator
# sphinx
markupsafe==2.1.5
librt==0.16.0
# via mypy
markupsafe==3.0.4
# via jinja2
mccabe==0.7.0
# via pylint
mypy==1.14.1
more-itertools==11.2.1
# via
# inflect
# jaraco-functools
mypy==2.4.0
# via s2-python (pyproject.toml)
mypy-extensions==1.0.0
mypy-extensions==1.1.0
# via
# black
# mypy
nodeenv==1.9.1
nodeenv==1.11.0
# via
# pre-commit
# pyright
packaging==24.2
packaging==26.3
# via
# black
# build
# datamodel-code-generator
# pyproject-api
# pytest
# setuptools-scm
# sphinx
# tox
pathspec==0.12.1
# via black
pip-tools==7.4.1
# vcs-versioning
# virtualenv
# wheel
pathspec==1.1.1
# via
# black
# mypy
pip-tools==7.6.2
# via s2-python (pyproject.toml)
platformdirs==4.3.6
platformdirs==4.13.5
# via
# black
# pylint
# tox
# virtualenv
pluggy==1.5.0
pluggy==1.7.0
# via
# pytest
# pytest-cov
# tox
pre-commit==3.5.0
pre-commit==4.7.0
# via s2-python (pyproject.toml)
pydantic==2.10.6
pydantic==2.14.1
# via
# datamodel-code-generator
# s2-python (pyproject.toml)
pydantic-core==2.27.2
pydantic-core==2.50.1
# via pydantic
pygments==2.19.1
pygments==2.21.0
# via
# pytest
# sphinx
# sphinx-tabs
pylint==3.2.7
pylint==4.1.3
# via s2-python (pyproject.toml)
pyproject-api==1.8.0
pyproject-api==1.12.0
# via tox
pyproject-hooks==1.2.0
pyproject-hooks==1.3.3
# via
# build
# pip-tools
pyright==1.1.396
pyright==1.1.414
# via s2-python (pyproject.toml)
pytest==8.3.5
pytest==9.1.1
# via
# pytest-cov
# pytest-timer
# s2-python (pyproject.toml)
pytest-cov==5.0.0
pytest-cov==7.1.0
# via pytest-cover
pytest-cover==3.0.0
# via pytest-coverage
pytest-coverage==0.0
# via s2-python (pyproject.toml)
pytest-timer==1.0.0
# via s2-python (pyproject.toml)
pyyaml==6.0.2
python-discovery==1.6.4
# via
# tox
# virtualenv
pytokens==0.4.1
# via black
pyyaml==6.0.3
# via
# datamodel-code-generator
# pre-commit
requests==2.32.3
requests==2.34.2
# via sphinx
roman-numerals==4.1.0
# via sphinx
setuptools-scm==8.3.1
setuptools-scm==10.3.4
# via s2-python (pyproject.toml)
six==1.17.0
# via sphinxcontrib-httpdomain
snowballstemmer==2.2.0
snowballstemmer==3.1.1
# via sphinx
sphinx==7.1.2
sphinx==9.0.4
# via
# s2-python (pyproject.toml)
# sphinx-copybutton
Expand All @@ -176,68 +192,59 @@ sphinx-copybutton==0.5.2
# via s2-python (pyproject.toml)
sphinx-fontawesome==0.0.6
# via s2-python (pyproject.toml)
sphinx-rtd-theme==3.0.2
sphinx-rtd-theme==3.1.0
# via s2-python (pyproject.toml)
sphinx-tabs==3.4.7
sphinx-tabs==3.5.0
# via s2-python (pyproject.toml)
sphinxcontrib-applehelp==1.0.4
sphinxcontrib-applehelp==2.0.0
# via sphinx
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-devhelp==2.0.0
# via sphinx
sphinxcontrib-htmlhelp==2.0.1
sphinxcontrib-htmlhelp==2.1.0
# via sphinx
sphinxcontrib-httpdomain==1.8.1
sphinxcontrib-httpdomain==2.2.1
# via s2-python (pyproject.toml)
sphinxcontrib-jquery==4.1
# via sphinx-rtd-theme
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-jsmath==2.0.0
# via sphinx
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-qthelp==2.0.0
# via sphinx
sphinxcontrib-serializinghtml==1.1.5
sphinxcontrib-serializinghtml==2.0.0
# via sphinx
tomli==2.2.1
# via
# black
# build
# coverage
# datamodel-code-generator
# mypy
# pip-tools
# pylint
# pyproject-api
# pytest
# setuptools-scm
# tox
tomlkit==0.13.2
tomli-w==1.2.0
# via tox
tomlkit==0.15.2
# via pylint
tox==4.24.1
tox==4.67.1
# via s2-python (pyproject.toml)
typing-extensions==4.12.2
typeguard==4.6.0
# via inflect
typing-extensions==4.16.0
# via
# astroid
# black
# exceptiongroup
# datamodel-code-generator
# mypy
# pydantic
# pydantic-core
# pylint
# pyright
# s2-python (pyproject.toml)
# setuptools-scm
# tox
urllib3==2.2.3
# typeguard
# typing-inspection
typing-inspection==0.4.4
# via pydantic
urllib3==2.8.0
# via requests
virtualenv==20.29.2
vcs-versioning==2.6.0
# via setuptools-scm
virtualenv==21.14.13
# via
# pre-commit
# tox
websockets==13.1
# via s2-python (pyproject.toml)
wheel==0.45.1
wheel==0.48.0
# via pip-tools
zipp==3.23.1
# via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# pip
Expand Down
5 changes: 4 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ dynamic = ["version"]
readme = "README.rst"
license = "Apache-2.0"
license-files = ["LICENSE"]
requires-python = ">=3.9, < 3.14"
requires-python = ">=3.11, < 3.16"
dependencies = [
"pydantic>=2.8.2",
"typing-extensions",
Expand All @@ -24,6 +24,8 @@ classifiers = [
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
]

[tool.setuptools_scm]
Expand Down Expand Up @@ -51,6 +53,7 @@ development = [
"pre-commit",
"tox",
"setuptools_scm",
"certifi>=2026.10.19", # Because of https://emudhra.we-have-a-problem.com/
]
docs = [
"sphinx",
Expand Down
Loading
Loading