[tool.poetry]
name = "src"
version = "0.1.0"
description = ""
authors = ["Sony Music PDE"]

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

[tool.poetry.dependencies]
datadog-lambda = "^8.116.0"
ddtrace = "^3.9.1"
python = "~3.13"
owsclient = "^0.6.0"
secrets-manager = {version = "^1.4.6", source = "theorchard"}
sentry-sdk = "^2.31.0"

[tool.poetry.group.dev.dependencies]
mypy = "^1.15.0"
pytest = "^8.3.4"
pytest-cov = "^6.0.0"
ruff = "^0.9.7"
boto3 = "^1.37.0"
boto3-stubs = {extras = ["lambda"], version = "^1.37.0"}

[tool.mypy]
python_version = "3.13"
show_error_codes = true
strict = true
mypy_path = "./stubs"

[tool.ruff]
line-length = 100
target-version = "py313"

[tool.ruff.lint]
# Basic starter config from https://docs.astral.sh/ruff/linter/#rule-selection
select = [
    # pycodestyle
    "E",
    # Pyflakes
    "F",
    # pyupgrade
    "UP",
    # flake8-bugbear
    "B",
    # flake8-simplify
    "SIM",
    # isort
    "I",
]

[tool.ruff.lint.isort]
combine-as-imports = true
forced-separate = ["tests"]

[tool.ruff.format]
quote-style = "single"

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

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