Мы линтируем всю кодовую базу с помощью RuboCop.
Это список всех правил в .rubocop_todo.yml
когда мы начали. Галочки означают «это исправлено и объединено с мастером».
Если вы создаете PR для исправления одного из них, используйте параметр --only
в RuboCop, чтобы сосредоточить усилия на одном типе исправлений. При просмотре такого кода очень легко потерять самообладание. (Если вы исправите немного больше, ничего страшного. Все дело в том, чтобы изменения оставались доступными для проверки.)
# edit .rubocop.yml, commenting out the first line -
# this removes the "ignore the TODOs" setting
# Auto-correct with only 1 rule
rubocop -a --only Name/OfTheRuleYouAreFixing --auto-correct
# Re-generate the config file
rubocop --auto-gen-config
# Revert line 3 in .rubocop_todo.yml
# This will avoid PR conflicts
# Inspect to see if it looks OK
git diff
# Re-set the TODO list
git checkout .rubocop.yml
# Add and commit the change
git add .
git commit -m"chore: RuboCop lint Name/OfTheRuleYouAreFixing"
Удаление этого комментария. Мое предыдущее утверждение было неверным. Будущие разработчики должны учитывать этот файл .rubocop_todo.yml при проверке нарушений.
Текущий главный справочник имеет некоторые нарушения рубокопа, которые не могут быть обнаружены CI. Эти проблемы исправлены в https://github.com/lostisland/faraday/pull/870 и https://github.com/lostisland/faraday/pull/871.
Кроме того, если PR названы чем-то вроде [RuboCop] fix Layout/TrailingBlankLines
, их будет намного проще добавить в приведенный выше контрольный список.
Я отметила Style/GlobalVars
потому что единственный нарушитель - script/generate_certs
. Как только старые интеграционные тесты будут полностью перенесены, старые скрипты для интеграционного пакета можно будет уйти, и это нарушение будет волшебным образом исправлено. Любые другие глобальные переменные, добавленные где-то еще, должны по-прежнему помечаться как нарушения рубокопа.
Я не видел этого поста, пока не исправил ошибку Style/Globalvars
: man_shrugging:
Спасибо всем! 🚀
Самый полезный комментарий
Спасибо всем! 🚀