fastapi-dynamic-response/pyproject.toml
2025-11-22 22:00:19 -06:00

112 lines
2.5 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "fastapi-dynamic-response"
dynamic = ["version"]
description = 'A demo fastapi application that automatically responds to user preferences for output format.'
readme = "README.md"
requires-python = ">=3.8"
license = "MIT"
keywords = []
authors = [
{ name = "U.N. Owen", email = "void@some.where" },
]
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = [
"fastapi>=0.115.0",
"html2text>=2024.2.26",
"itsdangerous>=2.2.0",
"jinja2>=3.1.4",
"markdown>=3.7",
"pillow>=10.4.0",
"pydantic-settings>=2.5.2",
"pydyf==0.8.0",
"python-levenshtein>=0.25.1",
"rich>=13.9.2",
"selenium>=4.25.0",
"structlog>=24.4.0",
"typer>=0.12.5",
"uvicorn>=0.31.1",
"weasyprint>=61.2",
]
[project.urls]
Documentation = "https://github.com/U.N. Owen/fastapi-dynamic-response#readme"
Issues = "https://github.com/U.N. Owen/fastapi-dynamic-response/issues"
Source = "https://github.com/U.N. Owen/fastapi-dynamic-response"
[project.scripts]
fdr_app = "fastapi_dynamic_response.cli.cli:app"
[tool.hatch.version]
path = "src/fastapi_dynamic_response/__about__.py"
[tool.hatch.envs.types]
extra-dependencies = [
"mypy>=1.0.0",
]
[tool.hatch.envs.types.scripts]
check = "mypy --install-types --non-interactive {args:src/fastapi_dynamic_response tests}"
[tool.coverage.run]
source_pkgs = ["fastapi_dynamic_response", "tests"]
branch = true
parallel = true
omit = [
"src/fastapi_dynamic_response/__about__.py",
]
[tool.coverage.paths]
fastapi_dynamic_response = ["src/fastapi_dynamic_response", "*/fastapi-dynamic-response/src/fastapi_dynamic_response"]
tests = ["tests", "*/fastapi-dynamic-response/tests"]
[tool.coverage.report]
exclude_lines = [
"no cov",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
]
[tool.ruff.lint]
select = [
"A",
"ARG",
"B",
"C",
"DTZ",
"E",
"EM",
"F",
"FBT",
"I",
"ICN",
# "ISC",
"N",
"PLC",
"PLE",
"PLR",
"PLW",
"Q",
"RUF",
"S",
"T",
"TID",
"UP",
"W",
"YTT",
]
[tool.ruff.lint.isort]
force-single-line = true