Skip to content

Commit 0b85069

Browse files
committed
modernize everything
1 parent 48965e0 commit 0b85069

12 files changed

+119
-100
lines changed

.gitmodules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[submodule "test/http2-frame-test-case"]
2-
path = test/http2-frame-test-case
2+
path = tests/http2-frame-test-case
33
url = https://github.com/http2jp/http2-frame-test-case.git

CHANGELOG.rst

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,8 @@ dev
1616
- Support for Python 3.11 has been added.
1717
- Support for Python 3.12 has been added.
1818
- Support for Python 3.13 has been added.
19-
20-
**Bugfixes**
21-
22-
-
19+
- Improved type hints.
20+
- Updated packaging and testing infrastructure.
2321

2422
6.0.1 (2021-04-17)
2523
------------------

MANIFEST.in

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
graft src/hyperframe
22
graft docs
3-
graft test
3+
graft tests
4+
45
prune docs/build
5-
prune test/http2-frame-test-case
6-
include README.rst LICENSE CHANGELOG.rst CONTRIBUTORS.rst tox.ini .gitmodules
6+
prune tests/http2-frame-test-case
7+
8+
include README.rst LICENSE CHANGELOG.rst CONTRIBUTORS.rst pyproject.toml tox.ini .gitmodules
9+
710
global-exclude *.pyc *.pyo *.swo *.swp *.map *.yml *.DS_Store

pyproject.toml

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
# https://packaging.python.org/en/latest/guides/writing-pyproject-toml/
2+
# https://packaging.python.org/en/latest/specifications/pyproject-toml/
3+
4+
[build-system]
5+
requires = ["setuptools"]
6+
build-backend = "setuptools.build_meta"
7+
8+
[project]
9+
name = "hyperframe"
10+
description = "HTTP/2 framing layer for Python"
11+
readme = { file = "README.rst", content-type = "text/x-rst" }
12+
license = { file = "LICENSE" }
13+
14+
authors = [
15+
{ name = "Cory Benfield", email = "[email protected]" }
16+
]
17+
maintainers = [
18+
{ name = "Thomas Kriechbaumer", email = "[email protected]" },
19+
]
20+
21+
requires-python = ">=3.9"
22+
dependencies = []
23+
dynamic = ["version"]
24+
25+
# For a list of valid classifiers, see https://pypi.org/classifiers/
26+
classifiers = [
27+
"Development Status :: 5 - Production/Stable",
28+
"Intended Audience :: Developers",
29+
"License :: OSI Approved :: MIT License",
30+
"Programming Language :: Python",
31+
"Programming Language :: Python :: 3 :: Only",
32+
"Programming Language :: Python :: 3",
33+
"Programming Language :: Python :: 3.9",
34+
"Programming Language :: Python :: 3.10",
35+
"Programming Language :: Python :: 3.11",
36+
"Programming Language :: Python :: 3.12",
37+
"Programming Language :: Python :: 3.13",
38+
"Programming Language :: Python :: Implementation :: CPython",
39+
"Programming Language :: Python :: Implementation :: PyPy",
40+
]
41+
42+
[project.urls]
43+
"Homepage" = "https://github.com/python-hyper/hyperframe/"
44+
"Bug Reports" = "https://github.com/python-hyper/hyperframe/issues"
45+
"Source" = "https://github.com/python-hyper/hyperframe/"
46+
"Documentation" = "https://python-hyper.org/"
47+
48+
[dependency-groups]
49+
testing = [
50+
"pytest>=8.3.3,<9",
51+
"pytest-cov>=6.0.0,<7",
52+
"pytest-xdist>=3.6.1,<4",
53+
]
54+
55+
linting = [
56+
"ruff>=0.8.0,<1",
57+
"mypy>=1.13.0,<2",
58+
]
59+
60+
packaging = [
61+
"check-manifest==0.50",
62+
"readme-renderer==44.0",
63+
"build>=1.2.2,<2",
64+
"twine>=5.1.1,<6",
65+
"wheel>=0.45.0,<1",
66+
]
67+
68+
docs = [
69+
"sphinx>=7.4.7,<9",
70+
]
71+
72+
[tool.setuptools.packages.find]
73+
where = [ "src" ]
74+
75+
[tool.setuptools.package-data]
76+
hyperframe = [ "py.typed" ]
77+
78+
[tool.setuptools.dynamic]
79+
version = { attr = "hyperframe.__version__" }
80+
81+
[tool.check-manifest]
82+
ignore = [
83+
"Makefile",
84+
"tests/http2-frame-test-case",
85+
]
86+
87+
[tool.ruff]
88+
line-length = 140
89+
target-version = "py39"
90+
91+
[tool.coverage.run]
92+
branch = true
93+
source = [ "hyperframe" ]
94+
95+
[tool.coverage.report]
96+
fail_under = 100
97+
show_missing = true
98+
exclude_lines = [
99+
"pragma: no cover",
100+
"raise NotImplementedError()",
101+
]

setup.cfg

Lines changed: 0 additions & 27 deletions
This file was deleted.

setup.py

Lines changed: 0 additions & 50 deletions
This file was deleted.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)