Faraday: RuboCop Quest Issue

Созданный на 20 февр. 2019  ·  5Комментарии  ·  Источник: lostisland/faraday

Основная информация

Мы линтируем всю кодовую базу с помощью 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"

Рабочий процесс

Описание проблемы

  • [x] Bundler / OrderedGems № 856
  • [x] Layout / AccessModifierIndentation # 862
  • [x] Layout / AlignHash # 863
  • [x] Layout / AlignParameters # 867
  • [x] Layout / BlockEndNewline
  • [x] Макет / Обозначение № 864
  • [x] Макет / Комментарий, отступ # 864
  • [x] Layout / DotPosition # 880
  • [x] Layout / ElseAlignment # 871
  • [x] Layout / EmptyLineAfterGuardClause # 860
  • [x] Layout / EmptyLineBetweenDefs # 860
  • [x] Layout / EmptyLines # 860
  • [x] Layout / EmptyLinesAroundAccessModifier # 881
  • [x] Макет / EmptyLinesAroundClassBody # 882
  • [x] Layout / EndAlignment # 887
  • [x] Layout / ExtraSpacing # 884
  • [x] Layout / IndentArray # 890
  • [x] Layout / IndentHash # 890
  • [x] Layout / IndentationWidth # 864
  • [x] Layout / LeadingCommentSpace # 860
  • [x] Layout / MultilineBlockLayout
  • [x] Layout / MultilineMethodCallIndentation # 864
  • [x] Layout / MultilineOperationIndentation # 864
  • [x] Layout / RescueEnsureAlignment # 890
  • [x] Layout / SpaceAfterComma # 884
  • [x] Layout / SpaceAroundEqualsInParameterDefault # 884
  • [x] Layout / SpaceAroundOperators # 884
  • [x] Layout / SpaceBeforeBlockBraces # 884
  • [x] Layout / SpaceInsideArrayLiteralBrackets # 884
  • [x] Layout / SpaceInsideBlockBraces # 884
  • [x] Layout / SpaceInsideHashLiteralBraces # 884
  • [x] Layout / SpaceInsideParens # 884
  • [x] Layout / SpaceInsidePercentLiteralDelimiters # 884
  • [x] Layout / TrailingBlankLines # 872
  • [x] Layout / TrailingWhitespace
  • [x] Lint / AssignmentInCondition # 874
  • [x] Lint / HandleExceptions # 896
  • [x] Lint / ReturnInVoidContext # 896
  • [x] Lint / StringConversionInInterpolation # 891
  • [x] Lint / UnneededRequireStatement # 896
  • [x] Lint / UnusedBlockArgument # 896
  • [x] Lint / UnusedMethodArgument # 896
  • [x] Lint / UselessAssignment # 891
  • [x] Lint / Void # 896
  • [x] _Отложено на неопределенный срок_ ~ Metrics / AbcSize ~
  • [x] Metrics / BlockLength # 883 # 927
  • [x] _Отложено на неопределенный срок_ ~ Metrics / ClassLength # 944 ~
  • [x] _Отложено на неопределенный срок_ ~ Metrics / CyclomaticComplexity ~
  • [x] _Отложено на неопределенный срок_ ~ Метрики / Длина метода ~
  • [x] _Отложено на неопределенный срок_ ~ Метрики / Длина модуля ~
  • [x] _Отложено на неопределенный срок_ ~ Показатели / Воспринимаемая сложность ~
  • [x] Именование / ConstantName # 897
  • [x] Именование / MemoizedInstanceVariableName # 891
  • [x] Именование / PredicateName # 897
  • [x] Именование / UncommunicativeMethodParamName # 897
  • [x] Производительность / RedundantBlockCall # 897
  • [x] Performance / StringReplacement # 897
  • [x] Style / AccessModifierDeclarations # 897
  • [x] Стиль / псевдоним # 897
  • [x] Стиль / AndOr # 897
  • [x] Style / BlockDelimiters # 906
  • [x] Style / BracesAroundHashParameters # 907
  • [x] Style / CaseEquality # 902
  • [x] Style / ClassAndModuleChildren # 902
  • [x] Проверка стиля / класса № 902
  • [x] Style / ClassVars # 933
  • [x] Стиль / ColonMethodCall # 894
  • [x] Стиль / Комментарий # 876
  • [x] Стиль / ConditionalAssignment # 902
  • [x] Стиль / Документация
  • [x] Стиль / DoubleNegation # 922
  • [x] Style / EachWithObject # 901
  • [x] Стиль / EmptyMethod # 912
  • [x] Style / ExpandPathArguments # 901
  • [x] Style / FormatString # 901
  • [x] Style / FormatStringToken # 914
  • [x] Style / FrozenStringLiteralComment # 868
  • [x] Style / GlobalVars # 943
  • [x] Style / GuardClause # 931
  • [x] Стиль / HashSyntax # 878
  • [x] Стиль / IfInsideElse # 915
  • [x] Стиль / IfUnlessModifier # 926
  • [x] Стиль / лямбда # 901
  • [x] Style / MethodMissingSuper # 928
  • [x] Стиль / MissingRespondToMissing # 930
  • [x] Стиль / ModuleFunction # 925
  • [x] Style / MultilineIfModifier # 924
  • [x] Style / MultilineTernaryOperator # 913
  • [x] Стиль / Множественное сравнение # 923
  • [x] Стиль / MutableConstant # 925
  • [x] Style / NegatedIf # 901
  • [x] Style / NestedParenthesizedCalls # 901
  • [x] Style / Next # 901
  • [x] Стиль / NilComparison # 921
  • [x] Стиль / Not # 901
  • [x] Style / NumericPredicate # 921
  • [x] Стиль / ParallelAssignment # 920
  • [x] Стиль / Круглые скобки Условие № 920
  • [x] Style / PercentLiteralDelimiters # 905
  • [x] Стиль / PerlBackrefs # 920
  • [x] Style / PreferredHashMethods # 920
  • [x] Стиль / Процедура № 920
  • [x] Style / RaiseArgs # 910
  • [x] Style / RedundantException # 895
  • [x] Стиль / RedundantParentheses # 895
  • [x] Стиль / RedundantReturn # 895
  • [x] Стиль / RedundantSelf # 895
  • [x] Style / RegexpLiteral # 910
  • [x] Style / RescueStandardError # 910
  • [x] Стиль / SafeNavigation # 909
  • [x] Стиль / точка с запятой # 908
  • [x] Стиль / SingleLineMethods # 909
  • [x] Style / SpecialGlobalVars # 909
  • [x] Стиль / StderrPuts # 908
  • [x] Style / StringLiterals # 874
  • [x] Style / StringLiteralsInInterpolation # 909
  • [x] Style / StructInheritance # 904
  • [x] Style / SymbolArray # 898
  • [x] Style / SymbolProc # 898
  • [x] Стиль / тройные скобки # 898
  • [x] Style / TrailingCommaInArrayLiteral # 859
  • [x] Style / TrailingCommaInHashLiteral # 859
  • [x] Style / TrivialAccessors # 898
  • [x] Стиль / UnlessElse # 898
  • [x] Style / WordArray # 893
  • [x] Стиль / Условие Йоды # 898
  • [x] Style / ZeroLengthPredicate # 858
  • [x] Metrics / LineLength # 938
help wanted

Самый полезный комментарий

Спасибо всем! 🚀

Все 5 Комментарий

Удаление этого комментария. Мое предыдущее утверждение было неверным. Будущие разработчики должны учитывать этот файл .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:

Спасибо всем! 🚀

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

QuinnWilton picture QuinnWilton  ·  4Комментарии

subvertallchris picture subvertallchris  ·  5Комментарии

JasonBarnabe picture JasonBarnabe  ·  4Комментарии

jordansissel picture jordansissel  ·  5Комментарии

t3hk0d3 picture t3hk0d3  ·  3Комментарии