mirror of
https://github.com/frappe/gunicorn.git
synced 2026-07-01 18:21:30 +08:00
- Add optional h2 dependency for HTTP/2 support - Add http2 module skeleton with availability check and errors - Add HTTP/2 configuration settings (max_concurrent_streams, initial_window_size, max_frame_size, max_header_list_size) - Add ALPN support to SSL context for HTTP/2 negotiation
95 lines
2.9 KiB
TOML
95 lines
2.9 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=61.2"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
# see https://packaging.python.org/en/latest/specifications/pyproject-toml/
|
|
name = "gunicorn"
|
|
authors = [{name = "Benoit Chesneau", email = "benoitc@gunicorn.org"}]
|
|
license = "MIT"
|
|
license-files = ["LICENSE"]
|
|
description = "WSGI HTTP Server for UNIX"
|
|
readme = "README.rst"
|
|
classifiers = [
|
|
"Development Status :: 5 - Production/Stable",
|
|
"Environment :: Other Environment",
|
|
"Intended Audience :: Developers",
|
|
"Operating System :: MacOS :: MacOS X",
|
|
"Operating System :: POSIX",
|
|
"Programming Language :: Python",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3.13",
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
"Topic :: Internet",
|
|
"Topic :: Utilities",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
"Topic :: Internet :: WWW/HTTP",
|
|
"Topic :: Internet :: WWW/HTTP :: WSGI",
|
|
"Topic :: Internet :: WWW/HTTP :: WSGI :: Server",
|
|
"Topic :: Internet :: WWW/HTTP :: Dynamic Content",
|
|
]
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"packaging",
|
|
]
|
|
dynamic = ["version"]
|
|
|
|
[project.urls]
|
|
Homepage = "https://gunicorn.org"
|
|
Documentation = "https://gunicorn.org"
|
|
"Issue tracker" = "https://github.com/benoitc/gunicorn/issues"
|
|
"Source code" = "https://github.com/benoitc/gunicorn"
|
|
Changelog = "https://gunicorn.org/news/"
|
|
|
|
[project.optional-dependencies]
|
|
gevent = ["gevent>=24.10.1"]
|
|
eventlet = ["eventlet>=0.40.3"]
|
|
tornado = ["tornado>=6.5.0"]
|
|
gthread = []
|
|
setproctitle = ["setproctitle"]
|
|
http2 = ["h2>=4.1.0"]
|
|
testing = [
|
|
"gevent>=24.10.1",
|
|
"eventlet>=0.40.3",
|
|
"h2>=4.1.0",
|
|
"coverage",
|
|
"pytest",
|
|
"pytest-cov",
|
|
"pytest-asyncio",
|
|
"uvloop>=0.19.0",
|
|
]
|
|
|
|
[project.scripts]
|
|
# duplicates "python -m gunicorn" handling in __main__.py
|
|
gunicorn = "gunicorn.app.wsgiapp:run"
|
|
|
|
# note the quotes around "paste.server_runner" to escape the dot
|
|
[project.entry-points."paste.server_runner"]
|
|
main = "gunicorn.app.pasterapp:serve"
|
|
|
|
[tool.pytest.ini_options]
|
|
# # can override these: python -m pytest --override-ini="addopts="
|
|
norecursedirs = ["examples", "lib", "local", "src", "tests/docker"]
|
|
testpaths = ["tests/"]
|
|
addopts = "--assert=plain --cov=gunicorn --cov-report=xml"
|
|
filterwarnings = [
|
|
# Eventlet patches select module, which breaks asyncio event loop cleanup
|
|
# This is expected behavior when testing eventlet worker
|
|
"ignore::pytest.PytestUnraisableExceptionWarning",
|
|
]
|
|
|
|
[tool.setuptools]
|
|
zip-safe = false
|
|
include-package-data = true
|
|
|
|
[tool.setuptools.packages]
|
|
find = {namespaces = false}
|
|
|
|
[tool.setuptools.dynamic]
|
|
version = {attr = "gunicorn.__version__"}
|