Правила
Правила — это отдельные проверки, которые ty выполняет для выявления типичных проблем в коде: несовместимые присваивания, отсутствующие импорты или некорректные аннотации типов. Каждое правило отвечает за определённый паттерн и может быть включено или отключено в зависимости от потребностей проекта.
Tip
Полный перечень поддерживаемых правил см. в справочнике по правилам.
Уровни правил
У каждого правила настраивается уровень:
ignore: правило отключеноwarn: нарушения сообщаются как предупреждения. В зависимости от настроек ty завершается с кодом 0, если есть только предупреждения (по умолчанию), или с кодом 1 при использовании--error-on-warningerror: нарушения считаются ошибками, и ty завершается с кодом 1 при наличии любых таких нарушений
Уровень для каждого правила можно задать в командной строке флагами --warn, --error и --ignore. Например:
ty check \
--warn unused-ignore-comment \ # Сделать `unused-ignore-comment` предупреждением
--ignore redundant-cast \ # Отключить `redundant-cast`
--error possibly-missing-attribute \ # Ошибка для `possibly-missing-attribute`
--error possibly-missing-import # Ошибка для `possibly-missing-import`
Опции можно повторять. Более поздние опции переопределяют более ранние.
Уровни правил также можно менять в секции rules конфигурационного файла.
Например, следующая конфигурация эквивалентна приведённой выше команде:
pyproject.toml
[tool.ty.rules]
unused-ignore-comment = "warn"
redundant-cast = "ignore"
possibly-missing-attribute = "error"
possibly-missing-import = "error"
Уровень можно задать и для всех правил сразу.
В командной строке можно использовать --error all, --warn all или --ignore all. Например:
ty check --error all
То же самое можно указать в секции rules конфигурационного файла.
Например, следующая конфигурация эквивалентна приведённой выше команде:
pyproject.toml
[tool.ty.rules]
all = "error"