22# https://packaging.python.org/en/latest/specifications/pyproject-toml/
33
44[build-system ]
5- requires = [" setuptools>=75.6.0 " ]
5+ requires = [" setuptools>=82 " , " wheel>=0.46.3 " ]
66build-backend = " setuptools.build_meta"
77
88[project ]
@@ -18,7 +18,7 @@ maintainers = [
1818 { name = " Thomas Kriechbaumer" , email = " thomas@kriechbaumer.name" },
1919]
2020
21- requires-python = " >=3.9 "
21+ requires-python = " >=3.10 "
2222dependencies = []
2323dynamic = [" version" ]
2424
@@ -30,13 +30,12 @@ classifiers = [
3030 " Programming Language :: Python" ,
3131 " Programming Language :: Python :: 3 :: Only" ,
3232 " Programming Language :: Python :: 3" ,
33- " Programming Language :: Python :: 3.9" ,
3433 " Programming Language :: Python :: 3.10" ,
3534 " Programming Language :: Python :: 3.11" ,
3635 " Programming Language :: Python :: 3.12" ,
3736 " Programming Language :: Python :: 3.13" ,
37+ " Programming Language :: Python :: 3.14" ,
3838 " Programming Language :: Python :: Implementation :: CPython" ,
39- " Programming Language :: Python :: Implementation :: PyPy" ,
4039]
4140
4241[project .urls ]
@@ -65,15 +64,14 @@ linting = [
6564]
6665
6766packaging = [
68- " check-manifest==0.50" ,
69- " readme-renderer==44.0" ,
70- " build>=1.2.2,<2" ,
71- " twine>=5.1.1,<6" ,
72- " wheel>=0.45.0,<1" ,
67+ " check-manifest==0.51" ,
68+ " build>=1.4.2,<2" ,
69+ " twine>=6.2.0,<7" ,
70+ " wheel>=0.46.3,<1" ,
7371]
7472
7573docs = [
76- " sphinx>=7.4.7,<9 " ,
74+ " sphinx>=9.1.0,<10 " ,
7775]
7876
7977[tool .setuptools .packages .find ]
@@ -93,7 +91,7 @@ ignore = [
9391
9492[tool .ruff ]
9593line-length = 150
96- target-version = " py39 "
94+ target-version = " py314 "
9795format.preview = true
9896format.docstring-code-line-length = 100
9997format.docstring-code-format = true
@@ -148,16 +146,15 @@ source = [
148146
149147[tool .tox ]
150148min_version = " 4.23.2"
151- env_list = [ " py39 " , " py310" , " py311" , " py312" , " py313" , " pypy3 " , " lint" , " docs" , " packaging" ]
149+ env_list = [ " py310" , " py311" , " py312" , " py313" , " py314 " , " lint" , " docs" , " packaging" ]
152150
153151[tool .tox .gh-actions ]
154152python = """
155- 3.9: py39, h2spec, lint, docs, packaging
156- 3.10: py310
153+ 3.10: py310, h2spec, lint, docs, packaging
157154 3.11: py311
158155 3.12: py312
159156 3.13: py313
160- pypy3: pypy3
157+ 3.14: py314
161158"""
162159
163160[tool .tox .env_run_base ]
@@ -169,12 +166,6 @@ commands = [
169166 [" pytest" , " --cov-report=xml" , " --cov-report=term" , " --cov=hyperframe" , { replace = " posargs" , extend = true }]
170167]
171168
172- [tool .tox .env .pypy3 ]
173- # temporarily disable coverage testing on PyPy due to performance problems
174- commands = [
175- [" pytest" , { replace = " posargs" , extend = true }]
176- ]
177-
178169[tool .tox .env .lint ]
179170dependency_groups = [" linting" ]
180171commands = [
@@ -192,7 +183,7 @@ commands = [
192183]
193184
194185[tool .tox .env .packaging ]
195- base_python = [" python39 " ]
186+ base_python = [" python3.10 " ]
196187dependency_groups = [" packaging" ]
197188allowlist_externals = [" rm" ]
198189commands = [
@@ -203,7 +194,7 @@ commands = [
203194]
204195
205196[tool .tox .env .publish ]
206- base_python = [" python39 " ]
197+ base_python = [" python3.10 " ]
207198dependency_groups = [" packaging" ]
208199allowlist_externals = [" twine" ]
209200commands = [
0 commit comments