zona/pyproject.toml

84 lines
1.7 KiB
TOML

[project]
name = "zona"
version = "0.1.0"
description = "Static site generator"
readme = "README.md"
authors = [
{ name = "Daniel Fichtinger", email = "daniel@ficd.ca" },
]
requires-python = ">=3.12"
dependencies = [
"dacite>=1.9.2",
"jinja2>=3.1.6",
"marko>=2.1.4",
"pygments>=2.19.1",
"pygments-ashen>=0.1.2",
"pygments-kakoune>=0.1.0",
"python-frontmatter>=1.1.0",
"rich>=14.0.0",
"typer>=0.16.0",
"watchdog>=6.0.0",
]
[project.scripts]
zona = "zona.cli:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.basedpyright]
include = ["src", "."]
exclude = [
"**/node_modules",
"**/__pycache__",
"src/experimental",
"src/typestubs",
"src/typings",
]
executionEnvironments = [
{ root = "src" },
{ root = "tests", extraPaths = ["src"], reportPrivateUsage = false },
]
# off | basic | standard | strict | recommended | all
typeCheckingMode = "recommended"
reportExplicitAny = false
reportAny = false
reportUnusedCallResult = false
reportCallInDefaultInitializer = false
enableTypeIgnoreComments = true
reportIgnoreCommentWithoutRule = false
allowedUntypedLibraries = ["frontmatter", "pygments"]
[tool.ruff]
line-length = 70
indent-width = 4
target-version = "py311"
[tool.ruff.lint]
fixable = ["ALL"]
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
select = ["E4", "E7", "E9", "F"]
ignore = []
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
docstring-code-format = true
[tool.pytest.ini_options]
pythonpath = "src"
testpaths = ["tests"]
filterwarnings = [
"ignore::DeprecationWarning",
"ignore::UserWarning",
"ignore::FutureWarning",
]
[dependency-groups]
dev = [
"basedpyright>=1.29.4",
"pytest>=8.4.0",
"ruff>=0.11.13",
"types-pygments>=2.19.0.20250516",
]