Files
hxbooks/pyproject.toml

66 lines
1.3 KiB
TOML

[project]
name = "hxbooks"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.14"
dependencies = [
"alembic>=1.13.0",
"click>=8.3.1",
"flask>=3.1.3",
"flask-htmx>=0.4.0",
"flask-migrate>=4.0.0",
"flask-sqlalchemy>=3.1.1",
"gunicorn>=25.1.0",
"jinja2-fragments>=1.11.0",
"pydantic>=2.12.5",
"pydantic-extra-types>=2.11.1",
"pyparsing>=3.3.2",
"requests>=2.32.5",
"sqlalchemy>=2.0.48",
]
[project.scripts]
hxbooks = "hxbooks.cli:cli"
[build-system]
requires = ["uv_build>=0.10.10,<0.11.0"]
build-backend = "uv_build"
[dependency-groups]
dev = [
"livereload>=2.7.1",
"pre-commit>=4.5.1",
"pytest>=9.0.2",
"ruff>=0.15.6",
"ty>=0.0.23",
]
[tool.pytest.ini_options]
addopts = ["-v", "--tb=short"]
[tool.ruff]
preview = true
exclude = [
"migrations/**",
"src/hxbooks/book.py",
"src/hxbooks/util.py",
"src/hxbooks/auth.py",
"src/hxbooks/gbooks.py",
]
[tool.ruff.lint]
select = ["E", "F", "B", "C90", "UP", "RUF", "FURB", "PL", "ANN"]
ignore = ["PLR09", "PLR2004", "E501", "C901", "PLC1901"]
per-file-ignores = { "tests/**.py" = ["PLR6301"] }
[tool.ty.src]
exclude = [
"migrations/**",
"src/hxbooks/book.py",
"src/hxbooks/util.py",
"src/hxbooks/auth.py",
"src/hxbooks/gbooks.py",
"src/hxbooks/htmx.py",
]