extend = "ruff_defaults.toml"

# https://github.com/astral-sh/ruff/issues/8627
exclude = [".git", ".mypy_cache", ".ruff_cache", ".venv", "dist"]

[format]
preview = true

[lint]
preview = true
ignore = [
  # Allow lazy imports for responsive CLI
  "PLC0415",
]

[lint.extend-per-file-ignores]
"backend/src/hatchling/bridge/app.py" = ["T201"]
"backend/tests/downstream/integrate.py" = ["INP001", "T201"]
"docs/.hooks/*" = ["INP001", "T201"]
"release/**/*" = ["INP001"]

[lint.isort]
known-first-party = ["hatch", "hatchling"]
