[build-system]
requires = ["setuptools >= 80.9.0"]
build-backend = "setuptools.build_meta"

[project]
name = "cz-powertools"
version = "0.0.4"
description = "CloudZero wrappers around the routing functionality in AWS powertools (https://github.com/aws-powertools/powertools-lambda-python)"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
    "aws-lambda-powertools",
    "cz-common-python>=8.0.0",
    "pydantic>=2.0.0",
    "requests"
]

[project.optional-dependencies]
dev = [
    "flake8-copyright",
    "isort",
    "mypy",
    "pytest",
    "pytest-cov",
    "pytest-csv",
    "pytest-env",
    "pytest-mock",
    "pytest-xdist",
    "ruff>=0.8.4",
    "wheel"
]

[tool.ruff]
extend = "./cz_build_common/python/ruff/ruff.toml"
include = ["czpowertools/**/*.py", "tests/**/*.py"]
target-version = "py312"

[tool.ruff.lint]
ignore = [
    "C901",   # {name} is too complex ({complexity} > {max_complexity})
    "RET503", # Missing explicit return at the end of function able to return non-None value
]


[tool.setuptools.packages.find]
where = ["."]
include = ["czpowertools*"]

[tool.setuptools.package-data]
czpowertools = ["py.typed"]
