[project]
name = "scorecard-rule-github-secrets"
version = "0.1.0"
description = "Lambda to check for GitHub secrets exposure in services"
readme = "README.md"
requires-python = ">=3.14"
dependencies = [
    "backoff>=2.2.1",
    "datadog-api-client==2.55.0",
    "datadog-lambda>=8.125.0",
    "lambdacommon==7.0.0",
    "secrets-manager==1.4.6",
    "sentry-sdk>=2.61.1",
]

[dependency-groups]
dev = [
    "pytest==9.0.3",
    "pytest-mock==3.15.1",
    "ruff==0.15.15",
    "ty==0.0.42",
    "types-requests"
]

[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["."]
addopts = ["--strict-markers"]

[tool.ruff]
line-length = 82

[tool.ruff.lint]
select = [
    "E",    # pycodestyle errors
    "F",    # pyflakes
    "I",    # isort
    "Q",    # flake8-quotes
    "D",    # pydocstyle
]

[tool.ruff.lint.flake8-quotes]
inline-quotes = "double"

[tool.ruff.lint.isort]
known-first-party = ["src", "config", "common"]
known-third-party = [
    "boto3",
    "datadog_api_client",
    "datadog_lambda",
    "lambdacommon",
    "sentry_sdk"
]

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

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