pyproject.toml 819 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. [build-system]
  2. requires = ["hatchling"]
  3. build-backend = "hatchling.build"
  4. [project]
  5. name = "room-cal"
  6. version = "0.1.0"
  7. requires-python = ">=3.14"
  8. dependencies = [
  9. "aiosqlite>=0.22.1",
  10. "caldav",
  11. "httpx>=0.27",
  12. "icalendar",
  13. ]
  14. [project.scripts]
  15. refresh-creds = "room_cal.service_api._scripts:refresh_cookies"
  16. room-cal = "room_cal.actions._cli:main"
  17. room-api = "room_cal.api._server:main"
  18. room-mcp = "room_cal.mcp._server:main"
  19. [dependency-groups]
  20. api = [
  21. "fastapi>=0.115",
  22. "uvicorn[standard]>=0.30",
  23. ]
  24. mcp = [
  25. "fastmcp>=2.0",
  26. ]
  27. dev = [
  28. {include-group = "api"},
  29. {include-group = "mcp"},
  30. "pytest",
  31. "pytest-asyncio",
  32. "pytest-xdist",
  33. ]
  34. [tool.hatch.build.targets.wheel]
  35. packages = ["room_cal"]
  36. [tool.pytest.ini_options]
  37. pythonpath = ["."]
  38. asyncio_mode = "auto"
  39. addopts = "-n auto --dist=loadfile"