[tool.mypy]
files = "policy_sentry"
strict = true
pretty = true

[[tool.mypy.overrides]]
module = [
    "schema"
]
ignore_missing_imports = true

[tool.ruff]
target-version = "py37"

[tool.ruff.lint]
preview = true
select = [
    "A",
    "ANN",
    "ARG",
    "B",
    "E",
    "F",
    "FURB",
    "I",
    "ISC",
    "N",
    "PERF",
    "PIE",
    "RUF",
    "S",
    "SIM",
    "T10",
    "UP",
    "W",
    "YTT",
]
ignore = ["E501"] # ruff fromat takes care of it

[tool.pytest.ini_options]
testpaths = [
    "test",
    "test/analysis",
    "test/command",
    "test/querying",
    "test/util",
    "test/writing",
]
norecursedirs = [
    "_build",
    "tmp*",
    "__pycache__",
]

# supported from version 7.3.0
#[tool.coverage]
#omit = [
#    "policy_sentry/shared/awsdocs.py",
#    # ignore v1 variants
#    "policy_sentry/querying/actions_v1.py",
#    "policy_sentry/querying/all_v1.py",
#    "policy_sentry/querying/arns_v1.py",
#    # omit anything in a .local directory anywhere
#    "*/.local/*",
#    "*/virtualenv/*",
#    "*/venv/*",
#    "*/.venv/*",
#    "*/docs/*",
#    "*/examples/*",
#    "utils/*",
#]
