| [project] |
| name = "cap-backend" |
| version = "0.1.0" |
| description = "ASF Infra CAP (Contingent Approval Provider) backend service." |
| requires-python = ">=3.12" |
| dependencies = [ |
| "asfquart", |
| "quart-schema[pydantic]>=0.20", |
| "pydantic>=2.6", |
| "pyyaml>=6.0", |
| ] |
| |
| [project.optional-dependencies] |
| dev = [ |
| "pytest>=8.0", |
| "pytest-asyncio>=0.23", |
| "ruff>=0.6", |
| ] |
| |
| [project.scripts] |
| cap-backend = "cap_backend.__main__:main" |
| |
| [build-system] |
| requires = ["hatchling"] |
| build-backend = "hatchling.build" |
| |
| [tool.hatch.build.targets.wheel] |
| packages = ["cap_backend"] |
| |
| [tool.hatch.build.targets.wheel.force-include] |
| "cap_backend/sql/schema.sql" = "cap_backend/sql/schema.sql" |
| "cap_backend/sql/migrations" = "cap_backend/sql/migrations" |
| |
| [tool.ruff] |
| line-length = 100 |
| target-version = "py312" |
| |
| [tool.ruff.lint] |
| select = [ |
| "E", # pycodestyle errors |
| "W", # pycodestyle warnings |
| "F", # pyflakes |
| "I", # isort |
| "B", # flake8-bugbear |
| "UP", # pyupgrade |
| ] |
| ignore = [ |
| "E501", # line-too-long handled by formatter |
| ] |
| |
| [tool.pytest.ini_options] |
| testpaths = ["tests"] |
| asyncio_mode = "auto" |
| addopts = "-ra -q" |