pyproject.toml 1.8 KB

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