Выбор ответа Senior Линтеры и форматирование обновлено

Внедрить строгий линтер в старый проект

Вопрос

В проект на 300 тысяч строк хотят включить строгие правила, и сразу находится 4000 ошибок. Какой подход разумнее?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Постепенно: --fix сразу, остальное как warn или для новых файлов. Постепенное внедрение даёт пользу сразу и не блокирует команду.

Варианты ответа

  1. Добавить /* eslint-disable */ во все файлы и снимать постепенно
  2. Постепенно: --fix сразу, остальное как warn или для новых файловправильный ответ
  3. Остановить разработку и исправить все 4000 ошибок одним большим PR
  4. Отказаться от линтера, раз ошибок так много в старом коде

Разбор

Постепенное внедрение даёт пользу сразу и не блокирует команду. Автоисправимое чинится одним коммитом, новые нарушения не появляются, старые уменьшаются по мере работы с кодом.

  • Массовый eslint-disable выключает линтер, только сложнее.
  • Огромный PR трудно проверить, он конфликтует со всеми ветками и останавливает работу.
  • Отказ от линтера оставит проблемы и дальше расти.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.