[tool.poetry]
name = "discord-embed"
version = "1.0.0"
description = "Make nice embeds for Discord"
authors = ["Joakim Hellsén <tlovinator@gmail.com>"]
license = "GPL-3.0-or-later"

[tool.poetry.dependencies]
python = "^3.12"
fastapi = "^0.108.0"
ffmpeg-python = "^0.2.0"
discord-webhook = "^1.3.0"
python-multipart = "^0.0.6"
python-dotenv = "^1.0.0"
Jinja2 = "^3.1.2"
uvicorn = { extras = ["standard"], version = "^0.25.0" }

[tool.poetry.group.dev.dependencies]
httpx = "^0.26.0"
pytest = "^7.4.3"
pre-commit = "^3.5.0"

[build-system]
build-backend = "poetry.core.masonry.api"
requires = [
  "poetry-core>=1",
]

[tool.ruff]
fix = true
unsafe-fixes = true
preview = true
select = ["ALL"]
ignore = ["D100", "D104", "CPY001", "ANN201"]

[tool.ruff.pydocstyle]
convention = "google"

[tool.ruff.per-file-ignores]
"tests/**/*.py" = [
    "S101", # asserts allowed in tests...
    "ARG",  # Unused function args -> fixtures nevertheless are functionally relevant...
    "FBT",  # Don't care about booleans as positional arguments in tests, e.g. via @pytest.mark.parametrize()
]