pyproject.toml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. [tool.poetry]
  2. authors = ["clovis jaquin <clovis@jaquin.fr>"]
  3. description = "FastAPI project that can parse gsheet planning for brass dans la garonne event and manage creating automatic SMS notification for volunteer"
  4. name = "bdlg-2023"
  5. version = "0.2.3"
  6. [tool.poetry.dependencies]
  7. fastapi = "0.116.*"
  8. pyjwt = {extras = ["crypto"], version = "^2.6.0"}
  9. python = "^3.11"
  10. python-multipart = "^0.0.9"
  11. sqlalchemy = "2.0.*"
  12. alembic = "^1.9.2"
  13. numpy = '<2.0.0'
  14. passlib = {extras = ["bcrypt"], version = "^1.7.4"}
  15. pydantic = {extras = ["dotenv", "email"], version = "2.11.*"}
  16. pandas = "2.1.0"
  17. pandera = "0.20.3"
  18. requests = "2.32.*"
  19. pydantic-settings = "^2.2.1"
  20. psycopg2 = "^2.9.9"
  21. ruff = "^0.16.0"
  22. [tool.poetry.group.dev.dependencies]
  23. coverage = "^7.1.0"
  24. httpx = "*"
  25. pytest = "^7.2.1"
  26. pytest-asyncio = "^0.20.3"
  27. uvicorn = {extras = ["standard"], version = "*"}
  28. pre-commit = "^3.0.4"
  29. ruff = "*"
  30. [build-system]
  31. build-backend = "poetry.core.masonry.api"
  32. requires = ["poetry-core>=1.0.0"]
  33. [tool.pytest.ini_options]
  34. addopts = "-v"
  35. asyncio_mode = "auto"
  36. filterwarnings = []
  37. markers = ["pytest.mark.asyncio"]
  38. minversion = "6.0"
  39. testpaths = ["app/tests"]
  40. [tool.ruff]
  41. # Exclude a variety of commonly ignored directories.
  42. exclude = [
  43. ".bzr",
  44. ".direnv",
  45. ".eggs",
  46. ".git",
  47. ".git-rewrite",
  48. ".hg",
  49. ".ipynb_checkpoints",
  50. ".mypy_cache",
  51. ".nox",
  52. ".pants.d",
  53. ".pyenv",
  54. ".pytest_cache",
  55. ".pytype",
  56. ".ruff_cache",
  57. ".svn",
  58. ".tox",
  59. ".venv",
  60. ".vscode",
  61. "__pypackages__",
  62. "_build",
  63. "buck-out",
  64. "build",
  65. "dist",
  66. "node_modules",
  67. "site-packages",
  68. "venv",
  69. ]
  70. line-length = 100
  71. indent-width = 4
  72. target-version = "py311"
  73. [tool.ruff.format]
  74. skip-magic-trailing-comma = false
  75. line-ending = "auto"
  76. [tool.ruff.lint.isort]
  77. combine-as-imports = false
  78. [tool.ruff.lint.per-file-ignores]
  79. "__init__.py" = ["E402"]