pyproject.toml 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  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. [tool.poetry.group.dev.dependencies]
  22. coverage = "^7.1.0"
  23. httpx = "*"
  24. pytest = "^7.2.1"
  25. pytest-asyncio = "^0.20.3"
  26. uvicorn = {extras = ["standard"], version = "*"}
  27. pre-commit = "^3.0.4"
  28. ruff = "*"
  29. [build-system]
  30. build-backend = "poetry.core.masonry.api"
  31. requires = ["poetry-core>=1.0.0"]
  32. [tool.pytest.ini_options]
  33. addopts = "-v"
  34. asyncio_mode = "auto"
  35. filterwarnings = []
  36. markers = ["pytest.mark.asyncio"]
  37. minversion = "6.0"
  38. testpaths = ["app/tests"]
  39. [tool.ruff]
  40. # Exclude a variety of commonly ignored directories.
  41. exclude = [
  42. ".bzr",
  43. ".direnv",
  44. ".eggs",
  45. ".git",
  46. ".git-rewrite",
  47. ".hg",
  48. ".ipynb_checkpoints",
  49. ".mypy_cache",
  50. ".nox",
  51. ".pants.d",
  52. ".pyenv",
  53. ".pytest_cache",
  54. ".pytype",
  55. ".ruff_cache",
  56. ".svn",
  57. ".tox",
  58. ".venv",
  59. ".vscode",
  60. "__pypackages__",
  61. "_build",
  62. "buck-out",
  63. "build",
  64. "dist",
  65. "node_modules",
  66. "site-packages",
  67. "venv",
  68. ]
  69. line-length = 100
  70. indent-width = 4
  71. target-version = "py311"
  72. [tool.ruff.format]
  73. skip-magic-trailing-comma = false
  74. line-ending = "auto"
  75. [tool.ruff.lint.isort]
  76. combine-as-imports = false
  77. [tool.ruff.lint.per-file-ignores]
  78. "__init__.py" = ["E402"]