mirror of
https://github.com/joaovitoriasilva/endurain.git
synced 2026-01-09 15:57:59 -05:00
85 lines
2.1 KiB
TOML
85 lines
2.1 KiB
TOML
[tool.poetry]
|
|
name = "endurain"
|
|
version = "0.16.0"
|
|
description = "Endurain API for the Endurain app"
|
|
authors = ["João Vitória Silva <8648976+joaovitoriasilva@users.noreply.github.com>"]
|
|
readme = "README.md"
|
|
package-mode = false
|
|
|
|
[tool.poetry.dependencies]
|
|
python = "^3.13"
|
|
fastapi = "^0.121.2"
|
|
uvicorn = "^0.34.0"
|
|
python-dotenv = "^1.0.1"
|
|
sqlalchemy = "^2.0.36"
|
|
apscheduler = "^3.11.0"
|
|
requests = "^2.32.3"
|
|
stravalib = "^2.1"
|
|
opentelemetry-sdk = "^1.25.0"
|
|
opentelemetry-instrumentation-fastapi = "^0.49b0"
|
|
opentelemetry-exporter-otlp = "^1.25.0"
|
|
python-multipart = "^0.0.20"
|
|
gpxpy = "^1.6.2"
|
|
tcxreader = "^0.4.11"
|
|
alembic = "^1.14.0"
|
|
joserfc = "^1.0.1"
|
|
fitdecode = "^0.10.0"
|
|
numpy = "^2.2.1"
|
|
geopy = "^2.4.1"
|
|
flexparser = "^0.4"
|
|
pydantic-core = "^2.27.2"
|
|
importlib-metadata = "^8.5.0"
|
|
garminconnect = "^0.2.25"
|
|
websockets = "^14.1"
|
|
timezonefinder = "^6.5.7"
|
|
psycopg = {extras = ["binary", "pool"], version = "^3.2.3"}
|
|
poetry = "^2.0.0"
|
|
user-agents = "^2.2.0"
|
|
pydantic = {extras = ["email"], version = "^2.11.3"}
|
|
garth = "^0.5.16"
|
|
apprise = "^1.8.0"
|
|
pyotp = "^2.9.0"
|
|
qrcode = {extras = ["pil"], version = "^8.2"}
|
|
psutil = "^7.1.1"
|
|
python-magic = "^0.4.27"
|
|
pwdlib = {extras = ["argon2", "bcrypt"], version = "^0.2.1"}
|
|
authlib = "^1.3.2"
|
|
httpx = "^0.28.1"
|
|
itsdangerous = "^2.2.0"
|
|
slowapi = "^0.1.9"
|
|
safeuploads = {extras = ["fastapi"], version = "^0.1.0"}
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
pytest = "^8.3.4"
|
|
pytest-asyncio = "^0.24.0"
|
|
pytest-cov = "^6.0.0"
|
|
httpx = "^0.28.1"
|
|
faker = "^33.1.0"
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
python_files = ["test_*.py"]
|
|
python_classes = ["Test*"]
|
|
python_functions = ["test_*"]
|
|
asyncio_mode = "auto"
|
|
asyncio_default_fixture_loop_scope = "function"
|
|
addopts = "-v --strict-markers --cov=app --cov-report=term-missing --cov-report=html"
|
|
|
|
[tool.coverage.run]
|
|
source = ["app"]
|
|
omit = ["*/tests/*", "*/__pycache__/*", "*/alembic/*"]
|
|
|
|
[tool.coverage.report]
|
|
exclude_lines = [
|
|
"pragma: no cover",
|
|
"def __repr__",
|
|
"raise AssertionError",
|
|
"raise NotImplementedError",
|
|
"if __name__ == .__main__.:",
|
|
"if TYPE_CHECKING:",
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["poetry-core"]
|
|
build-backend = "poetry.core.masonry.api"
|