[project]
name = "update_template"
version = "0.1.0"
description = ""
requires-python = "~=3.13.0"
dependencies = [
    "boto3>=1.36.6",
    "boto3-stubs[s3]>=1.36.6",
    "botocore>=1.36.6",
    "common",
    "datadog-lambda>=6.104.0",
    "ddtrace==3.14.4",
    "pydantic>=2.10.6",
    "pydantic-settings==2.7.1",
    "openpyxl>=3.1.5",
    "xlrd>=2.0.1",
    "types-openpyxl==3.1.5.20240822",
    "xlwt>=1.3.0",
    "xlutils>=2.0.0",
    "sqlalchemy==1.4.37",
    "pymysql>=1.1.1",
    "dotenv>=0.9.9",
    "protobuf>=6.33.5",
    "requests>=2.32.4",
    "urllib3>=2.6.0",
]

[tool.uv.sources]
common = { workspace = true }

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

[dependency-groups]
dev = [
    "ty>=0.0.24",
    "pytest>=8.3.1",
    "pytest-cov==2.11.1",
    "pytest-mock==3.5.1",
    "ruff>=0.9.3",
    "sqlalchemy-stubs>=0.4",
    "types-requests>=2.32.4.20250913",
]

[tool.ty.rules]
unused-type-ignore-comment = "error"

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

[tool.ruff.lint]
select = ["C", "E", "F", "W", "B", "I", "UP", "T20", "TID252", "G"]
ignore = ["E501", "B008", "B009"]

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