| [project] |
| name = "asf-community-calendar" |
| version = "0.1.0" |
| description = "ASF Community Calendar - a shared calendar for personal, project and foundation events" |
| readme = "README.md" |
| requires-python = ">=3.11,<4" |
| license = "Apache-2.0" |
| authors = [{ name = "ASF Community Development", email = "dev@community.apache.org" }] |
| dependencies = [ |
| "asfquart>=0.1.12,<1", |
| "tzdata>=2024.1", |
| "aiosqlite>=0.20,<1", |
| "PyYAML>=6.0.1,<7", |
| "hypercorn>=0.17,<1", |
| "icalendar>=6,<8", |
| ] |
| |
| [project.scripts] |
| asf-calendar = "asfcalendar.__main__:main" |
| |
| [project.urls] |
| Repository = "https://github.com/apache/comdev-calendar" |
| |
| [dependency-groups] |
| dev = [ |
| "pytest>=8.0,<10", |
| "pytest-asyncio>=0.24,<2", |
| "pytest-cov>=5.0", |
| "mypy>=1.11", |
| "ruff>=0.6", |
| "types-PyYAML>=6.0", |
| "openapi-spec-validator>=0.7", |
| ] |
| |
| [build-system] |
| requires = ["hatchling"] |
| build-backend = "hatchling.build" |
| |
| [tool.hatch.build.targets.wheel] |
| packages = ["backend/asfcalendar"] |
| |
| [tool.uv] |
| package = true |
| |
| [tool.pytest.ini_options] |
| minversion = "8.0" |
| testpaths = ["backend/tests"] |
| asyncio_mode = "auto" |
| asyncio_default_fixture_loop_scope = "function" |
| filterwarnings = ["ignore::DeprecationWarning"] |
| |
| [tool.mypy] |
| python_version = "3.11" |
| files = ["backend/asfcalendar", "backend/tests"] |
| strict = true |
| warn_unused_ignores = false |
| # asfquart and easydict ship no type information. |
| [[tool.mypy.overrides]] |
| module = ["asfquart.*", "easydict.*"] |
| ignore_missing_imports = true |
| |
| [tool.ruff] |
| line-length = 120 |
| target-version = "py311" |
| src = ["backend"] |
| |
| [tool.ruff.lint] |
| select = ["E", "F", "W", "I", "UP", "B", "C4", "SIM"] |
| ignore = ["B008"] |