pyproject.toml 2.0 KB

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