[tool.black]
line-length = 99
target-version = ["py310"]
exclude = '''
'''

[tool.isort]
profile = "black"

[tool.pytest.ini_options]
pythonpath = ["src"]

[tool.poetry]
name = "aura-engine"
version = "1.0.0-alpha2"
description = "AURA Engine scheduling and playout control."
license = "AGPL-3.0-or-later"
authors = [
    "David Trattnig <david@subsquare.at>",
    "Gottfried Gaisbauer <gogo@servus.at>",
]
maintainers = ["David Trattnig <david@subsquare.at>"]
readme = "README.md"
homepage = "https://aura.radio/"
repository = "https://gitlab.servus.at/aura/engine"
documentation = "https://docs.aura.radio/"
keywords = ["radio", "scheduling", "audio", "playout"]
classifiers = [
    "Topic :: Multimedia :: Sound/Audio",
    "Topic :: Multimedia :: Sound/Audio :: Mixers",
    "Topic :: Multimedia :: Sound/Audio :: Players",
]
packages = [{ include = "aura_engine", from = "src" }]

[tool.poetry.dependencies]
python = "^3.10"
requests = "^2.24.0"
SQLAlchemy = "^1.3.17"
Werkzeug = "2.0.3"
Flask = "2.0.3"
Flask-SQLAlchemy = "2.4.3"
itsdangerous = "2.0.1"
http-parser = "^0.9.0"
psycopg2-binary = "^2.9.5"
openapi-python-client = "^0.14.0"
flake8-bandit = "^4.1.1"
tomli = "^2.0.1"

[tool.poetry.group.dev.dependencies]
codespell = "^2.2.1"
black = "^23.3.0"
flake8 = "^5.0.4"
flake8-docstrings = "^1.6.0"
validators = "^0.20.0"
isort = "^5.10.1"
pre-commit = "^2.20.0"
coverage = {extras = ["toml"], version = "^7.2.5"}

[tool.coverage.run]
source = ["src"]
omit = ["types.py"]
[tool.coverage.report]
# TODO Increase after we have more test cases
fail_under = 40
exclude_lines = [
  "if __name__ == .__main__.:",
]

[build-system]
requires = ["poetry>=1.3"]
build-backend = "poetry.masonry.api"