Files
github-copilot/.github/skills/python-review/references/default-config.md
T
ВяткинАртём b6eb535e25 fix
2026-04-07 09:33:47 +03:00

1.4 KiB

Default Config

Baseline mypy and ruff settings used when pyproject.toml is absent or incomplete.

mypy (strict mode)

[mypy]
python_version = 3.13
strict = true
warn_return_any = true
warn_unused_ignores = true
warn_redundant_casts = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
check_untyped_defs = true
disallow_any_generics = true
no_implicit_reexport = true

ruff

[tool.ruff]
target-version = "py313"
line-length = 88

[tool.ruff.lint]
select = [
  "E",    # pycodestyle errors
  "W",    # pycodestyle warnings
  "F",    # pyflakes
  "UP",   # pyupgrade
  "B",    # flake8-bugbear
  "SIM",  # flake8-simplify
  "I",    # isort
  "RUF",  # ruff-specific
  "ANN",  # flake8-annotations (public API must be typed)
]
ignore = [
  "ANN101",  # missing type for self
  "ANN102",  # missing type for cls
]

pyproject.toml Priority Rules

When pyproject.toml exists, always prefer its values over these defaults:

Config key Behaviour
[tool.mypy] strict = false Still enforce strict — mention the deviation to the user
[tool.mypy] python_version Use as-is; warn if < 3.13
[tool.ruff.lint] ignore Respect fully — do not flag ignored rules
[tool.ruff] line-length Use for E501; default 88 if absent
[tool.ruff.lint] select Merge with defaults — do not drop user selections