[tool.poetry]
name = "ows-project-manager"
version = "0.1.0"
description = "Project clients can manage to create new releases, tracks, master recordings and more"
authors = ["Sony Music PDE"]
readme = "README.md"
packages = [{include = "project_manager"}]

[tool.poetry.dependencies]
boto3 = "~=1.35"
botocore = "~=1.35"
ddtrace = "~=4.8"
Flask = "~=3.1"
flask_executor_pde = "~=1.0"
jsonschema = "~=4.23"
jwtauth = "~=0.6"
oto = "~=1.0"
owsclient = "~=0.13"
owslogger = "~=4.3"
owsrequest = "~=2.10"
owsresponse = "~=3.0"
PyMySQL = "~=1.1"
pyraml-parser = "~=0.1"
python = "~3.13"
python-dotenv = "~=1.0"
python-pdp-sdk = "~=6.0"
pythonfeatures = "~=3.1"
sentry-sdk = {version = "~=2.0", extras = ["flask"]}
secrets_manager = "~=1.4"
SQLAlchemy = "~=1.3"
uWSGI = "~=2.0"

[tool.poetry.group.dev.dependencies]
flexmock = "~=0.10"
httmock = "~=1.4"
moto = "~=5.0"
pytest = "~=9.0"
pytest-cov = "~=7.1"
pytest-mock = "~=3.15"
ruff = "~=0.6"

[tool.poetry.group.integration.dependencies]
boto3 = "~=1.35"
ddtrace = "~=4.8"
jwtauth = {version = "~=0.6", extras = ["testing"]}
PyMySQL = "~=1.1"
pytest = "~=9.0"
requests = "~=2.32"

[[tool.poetry.source]]
name = "pde"
url = "https://pypi.theorchard.io/pypi/"
priority = "supplemental"

[[tool.poetry.source]]
name = "PyPI"
priority = "primary"

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

[tool.ruff]
line-length = 100

[tool.ruff.lint]
select = ["D", "E", "F", "W"]
ignore = ["D401", "D404", "D413", "D417"]
