[run]
branch = true
# tox measures `coverage=hcl2`, so hcl2/cli/* only came into scope when the CLI moved
# under the package in 8.2.0. Omitting it keeps the gate on library code, as before.
omit =
    hcl2/lark_parser.py
    hcl2/version.py
    hcl2/__main__.py
    hcl2/__init__.py
    hcl2/rules/__init__.py
    hcl2/cli/*

[report]
show_missing = true
fail_under = 95
# Python 3.14 (PEP 649) defers annotation evaluation, so a bare `_children_layout:`
# declaration never executes and coverage stops counting it. Excluding it keeps the
# total comparable across versions.
exclude_lines =
    raise NotImplementedError
    ^\s*_children_layout:
