config/enabled.yml in rubocop-0.43.0 vs config/enabled.yml in rubocop-0.44.0
- old
+ new
@@ -1,27 +1,27 @@
# These are all the cops that are enabled in the default configuration.
Style/AccessModifierIndentation:
Description: Check indentation of private/protected visibility modifiers.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#indent-public-private-protected'
+ StyleGuide: '#indent-public-private-protected'
Enabled: true
Style/AccessorMethodName:
Description: Check the naming of accessor methods for get_/set_.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#accessor_mutator_method_names'
+ StyleGuide: '#accessor_mutator_method_names'
Enabled: true
Style/Alias:
Description: 'Use alias instead of alias_method.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#alias-method'
+ StyleGuide: '#alias-method'
Enabled: true
Style/AlignArray:
Description: >-
Align the elements of an array literal if they span more than
one line.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#align-multiline-arrays'
+ StyleGuide: '#align-multiline-arrays'
Enabled: true
Style/AlignHash:
Description: >-
Align the elements of a hash literal if they span more than
@@ -30,51 +30,51 @@
Style/AlignParameters:
Description: >-
Align the parameters of a method call if they span more
than one line.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-double-indent'
+ StyleGuide: '#no-double-indent'
Enabled: true
Style/AndOr:
Description: 'Use &&/|| instead of and/or.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-and-or-or'
+ StyleGuide: '#no-and-or-or'
Enabled: true
Style/ArrayJoin:
Description: 'Use Array#join instead of Array#*.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#array-join'
+ StyleGuide: '#array-join'
Enabled: true
Style/AsciiComments:
Description: 'Use only ascii symbols in comments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#english-comments'
+ StyleGuide: '#english-comments'
Enabled: true
Style/AsciiIdentifiers:
Description: 'Use only ascii symbols in identifiers.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#english-identifiers'
+ StyleGuide: '#english-identifiers'
Enabled: true
Style/Attr:
Description: 'Checks for uses of Module#attr.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#attr'
+ StyleGuide: '#attr'
Enabled: true
Style/BeginBlock:
Description: 'Avoid the use of BEGIN blocks.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-BEGIN-blocks'
+ StyleGuide: '#no-BEGIN-blocks'
Enabled: true
Style/BarePercentLiterals:
Description: 'Checks if usage of %() or %Q() matches configuration.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-q-shorthand'
+ StyleGuide: '#percent-q-shorthand'
Enabled: true
Style/BlockComments:
Description: 'Do not use block comments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-block-comments'
+ StyleGuide: '#no-block-comments'
Enabled: true
Style/BlockEndNewline:
Description: 'Put end statement of multiline block on its own line.'
Enabled: true
@@ -82,35 +82,35 @@
Style/BlockDelimiters:
Description: >-
Avoid using {...} for multi-line blocks (multiline chaining is
always ugly).
Prefer {...} over do...end for single-line blocks.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#single-line-blocks'
+ StyleGuide: '#single-line-blocks'
Enabled: true
Style/BracesAroundHashParameters:
Description: 'Enforce braces style around hash parameters.'
Enabled: true
Style/CaseEquality:
Description: 'Avoid explicit use of the case equality operator(===).'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-case-equality'
+ StyleGuide: '#no-case-equality'
Enabled: true
Style/CaseIndentation:
Description: 'Indentation of when in a case/when/[else/]end.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#indent-when-to-case'
+ StyleGuide: '#indent-when-to-case'
Enabled: true
Style/CharacterLiteral:
Description: 'Checks for uses of character literals.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-character-literals'
+ StyleGuide: '#no-character-literals'
Enabled: true
Style/ClassAndModuleCamelCase:
Description: 'Use CamelCase for classes and modules.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#camelcase-classes'
+ StyleGuide: '#camelcase-classes'
Enabled: true
Style/ClassAndModuleChildren:
Description: 'Checks style of children classes and modules.'
Enabled: true
@@ -119,37 +119,37 @@
Description: 'Enforces consistent use of `Object#is_a?` or `Object#kind_of?`.'
Enabled: true
Style/ClassMethods:
Description: 'Use self when defining module/class methods.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#def-self-class-methods'
+ StyleGuide: '#def-self-class-methods'
Enabled: true
Style/ClassVars:
Description: 'Avoid the use of class variables.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-class-vars'
+ StyleGuide: '#no-class-vars'
Enabled: true
Style/ClosingParenthesisIndentation:
Description: 'Checks the indentation of hanging closing parentheses.'
Enabled: true
Style/ColonMethodCall:
Description: 'Do not use :: for method call.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#double-colons'
+ StyleGuide: '#double-colons'
Enabled: true
Style/CommandLiteral:
Description: 'Use `` or %x around command literals.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-x'
+ StyleGuide: '#percent-x'
Enabled: true
Style/CommentAnnotation:
Description: >-
Checks formatting of special comments
(TODO, FIXME, OPTIMIZE, HACK, REVIEW).
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#annotate-keywords'
+ StyleGuide: '#annotate-keywords'
Enabled: true
Style/CommentIndentation:
Description: 'Indentation of comments.'
Enabled: true
@@ -161,38 +161,33 @@
of assigning that variable inside of each branch.
Enabled: true
Style/ConstantName:
Description: 'Constants should use SCREAMING_SNAKE_CASE.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#screaming-snake-case'
+ StyleGuide: '#screaming-snake-case'
Enabled: true
Style/DefWithParentheses:
Description: 'Use def with parentheses when there are arguments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#method-parens'
+ StyleGuide: '#method-parens'
Enabled: true
-Style/PreferredHashMethods:
- Description: 'Checks use of `has_key?` and `has_value?` Hash methods.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-key'
- Enabled: true
-
Style/Documentation:
Description: 'Document classes and non-namespace modules.'
Enabled: true
Exclude:
- 'spec/**/*'
- 'test/**/*'
Style/DotPosition:
Description: 'Checks the position of the dot in multi-line method calls.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains'
+ StyleGuide: '#consistent-multi-line-chains'
Enabled: true
Style/DoubleNegation:
Description: 'Checks for uses of double negation (!!).'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-bang-bang'
+ StyleGuide: '#no-bang-bang'
Enabled: true
Style/EachForSimpleLoop:
Description: >-
Use `Integer#times` for a simple loop which iterates a fixed
@@ -215,11 +210,11 @@
Description: 'Avoid empty condition in case statements.'
Enabled: true
Style/EmptyLineBetweenDefs:
Description: 'Use empty lines between defs.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#empty-lines-between-methods'
+ StyleGuide: '#empty-lines-between-methods'
Enabled: true
Style/EmptyLines:
Description: "Don't use several empty lines in a row."
Enabled: true
@@ -244,35 +239,35 @@
Description: "Keeps track of empty lines around method bodies."
Enabled: true
Style/EmptyLiteral:
Description: 'Prefer literals to Array.new/Hash.new/String.new.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#literal-array-hash'
+ StyleGuide: '#literal-array-hash'
Enabled: true
Style/EndBlock:
Description: 'Avoid the use of END blocks.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-END-blocks'
+ StyleGuide: '#no-END-blocks'
Enabled: true
Style/EndOfLine:
Description: 'Use Unix-style line endings.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#crlf'
+ StyleGuide: '#crlf'
Enabled: true
Style/EvenOdd:
Description: 'Favor the use of Integer#even? && Integer#odd?'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#predicate-methods'
+ StyleGuide: '#predicate-methods'
Enabled: true
Style/ExtraSpacing:
Description: 'Do not use unnecessary spacing.'
Enabled: true
Style/FileName:
Description: 'Use snake_case for source file names.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-files'
+ StyleGuide: '#snake-case-files'
Enabled: true
Style/FrozenStringLiteralComment:
Description: >-
Add the frozen_string_literal comment to the top of files
@@ -288,69 +283,69 @@
Description: 'Checks the indentation of the first parameter in a method call.'
Enabled: true
Style/FlipFlop:
Description: 'Checks for flip flops'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-flip-flops'
+ StyleGuide: '#no-flip-flops'
Enabled: true
Style/For:
Description: 'Checks use of for or each in multiline loops.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-for-loops'
+ StyleGuide: '#no-for-loops'
Enabled: true
Style/FormatString:
Description: 'Enforce the use of Kernel#sprintf, Kernel#format or String#%.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#sprintf'
+ StyleGuide: '#sprintf'
Enabled: true
Style/GlobalVars:
Description: 'Do not introduce global variables.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#instance-vars'
+ StyleGuide: '#instance-vars'
Reference: 'http://www.zenspider.com/Languages/Ruby/QuickRef.html'
Enabled: true
Style/GuardClause:
Description: 'Check for conditionals that can be replaced with guard clauses'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals'
+ StyleGuide: '#no-nested-conditionals'
Enabled: true
Style/HashSyntax:
Description: >-
Prefer Ruby 1.9 hash syntax { a: 1, b: 2 } over 1.8 syntax
{ :a => 1, :b => 2 }.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-literals'
+ StyleGuide: '#hash-literals'
Enabled: true
Style/IfInsideElse:
Description: 'Finds if nodes inside else, which can be converted to elsif.'
Enabled: true
Style/IfUnlessModifier:
Description: >-
Favor modifier if/unless usage when you have a
single-line body.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#if-as-a-modifier'
+ StyleGuide: '#if-as-a-modifier'
Enabled: true
Style/IfUnlessModifierOfIfUnless:
Description: >-
Avoid modifier if/unless usage on conditionals.
Enabled: true
Style/IfWithSemicolon:
Description: 'Do not use if x; .... Use the ternary operator instead.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-semicolon-ifs'
+ StyleGuide: '#no-semicolon-ifs'
Enabled: true
Style/IndentationConsistency:
Description: 'Keep indentation straight.'
Enabled: true
Style/IndentationWidth:
Description: 'Use 2 spaces for indentation.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-indentation'
+ StyleGuide: '#spaces-indentation'
Enabled: true
Style/IdenticalConditionalBranches:
Description: >-
Checks that conditional statements do not have an identical
@@ -374,59 +369,59 @@
Description: 'Checks the indentation of the first key in a hash literal.'
Enabled: true
Style/InfiniteLoop:
Description: 'Use Kernel#loop for infinite loops.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#infinite-loop'
+ StyleGuide: '#infinite-loop'
Enabled: true
Style/Lambda:
Description: 'Use the new lambda literal syntax for single-line blocks.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#lambda-multi-line'
+ StyleGuide: '#lambda-multi-line'
Enabled: true
Style/LambdaCall:
Description: 'Use lambda.call(...) instead of lambda.(...).'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#proc-call'
+ StyleGuide: '#proc-call'
Enabled: true
Style/LeadingCommentSpace:
Description: 'Comments should start with a space.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-space'
+ StyleGuide: '#hash-space'
Enabled: true
Style/LineEndConcatenation:
Description: >-
Use \ instead of + or << to concatenate two string literals at
line end.
Enabled: true
Style/MethodCallParentheses:
Description: 'Do not use parentheses for method calls with no arguments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#method-invocation-parens'
+ StyleGuide: '#method-invocation-parens'
Enabled: true
Style/MethodDefParentheses:
Description: >-
Checks if the method definitions have or don't have
parentheses.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#method-parens'
+ StyleGuide: '#method-parens'
Enabled: true
Style/MethodName:
Description: 'Use the configured style when naming methods.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-symbols-methods-vars'
+ StyleGuide: '#snake-case-symbols-methods-vars'
Enabled: true
Style/MethodMissing:
Description: 'Avoid using `method_missing`.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-method-missing'
+ StyleGuide: '#no-method-missing'
Enabled: true
Style/ModuleFunction:
Description: 'Checks for usage of `extend self` in modules.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#module-function'
+ StyleGuide: '#module-function'
Enabled: true
Style/MultilineArrayBraceLayout:
Description: >-
Checks that the closing brace in an array literal is
@@ -434,11 +429,11 @@
a new line.
Enabled: true
Style/MultilineBlockChain:
Description: 'Avoid multi-line chains of blocks.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#single-line-blocks'
+ StyleGuide: '#single-line-blocks'
Enabled: true
Style/MultilineBlockLayout:
Description: 'Ensures newlines after multiline block do statements.'
Enabled: true
@@ -450,13 +445,17 @@
a new line.
Enabled: true
Style/MultilineIfThen:
Description: 'Do not use then for multi-line if/unless.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-then'
+ StyleGuide: '#no-then'
Enabled: true
+Style/MultilineMemoization:
+ Description: 'Wrap multiline memoizations in a `begin` and `end` block.'
+ Enabled: true
+
Style/MultilineMethodCallBraceLayout:
Description: >-
Checks that the closing brace in a method call is
either on the same line as the last method argument, or
a new line.
@@ -483,155 +482,164 @@
Style/MultilineTernaryOperator:
Description: >-
Avoid multi-line ?: (the ternary operator);
use if/unless instead.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-multiline-ternary'
+ StyleGuide: '#no-multiline-ternary'
Enabled: true
Style/MutableConstant:
Description: 'Do not assign mutable objects to constants.'
Enabled: true
Style/NegatedIf:
Description: >-
Favor unless over if for negative conditions
(or control flow or).
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#unless-for-negatives'
+ StyleGuide: '#unless-for-negatives'
Enabled: true
Style/NegatedWhile:
Description: 'Favor until over while for negative conditions.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#until-for-negatives'
+ StyleGuide: '#until-for-negatives'
Enabled: true
Style/NestedModifier:
Description: 'Avoid using nested modifiers.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-modifiers'
+ StyleGuide: '#no-nested-modifiers'
Enabled: true
Style/NestedParenthesizedCalls:
Description: >-
Parenthesize method calls which are nested inside the
argument list of another parenthesized method call.
Enabled: true
Style/NestedTernaryOperator:
Description: 'Use one expression per branch in a ternary operator.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-ternary'
+ StyleGuide: '#no-nested-ternary'
Enabled: true
Style/Next:
Description: 'Use `next` to skip iteration instead of a condition at the end.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals'
+ StyleGuide: '#no-nested-conditionals'
Enabled: true
Style/NilComparison:
Description: 'Prefer x.nil? to x == nil.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#predicate-methods'
+ StyleGuide: '#predicate-methods'
Enabled: true
Style/NonNilCheck:
Description: 'Checks for redundant nil checks.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-non-nil-checks'
+ StyleGuide: '#no-non-nil-checks'
Enabled: true
Style/Not:
Description: 'Use ! instead of not.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#bang-not-not'
+ StyleGuide: '#bang-not-not'
Enabled: true
Style/NumericLiterals:
Description: >-
Add underscores to large numeric literals to improve their
readability.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscores-in-numerics'
+ StyleGuide: '#underscores-in-numerics'
Enabled: true
Style/NumericLiteralPrefix:
Description: 'Use smallcase prefixes for numeric literals.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#numeric-literal-prefixes'
+ StyleGuide: '#numeric-literal-prefixes'
Enabled: true
Style/NumericPredicate:
Description: >-
Checks for the use of predicate- or comparison methods for
numeric comparisons.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#predicate-methods'
+ StyleGuide: '#predicate-methods'
+ # This will change to a new method call which isn't guaranteed to be on the
+ # object. Switching these methods has to be done with knowledge of the types
+ # of the variables which rubocop doesn't have.
+ AutoCorrect: false
Enabled: true
Style/OneLineConditional:
Description: >-
Favor the ternary operator(?:) over
if/then/else/end constructs.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#ternary-operator'
+ StyleGuide: '#ternary-operator'
Enabled: true
Style/OpMethod:
Description: 'When defining binary operators, name the argument other.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#other-arg'
+ StyleGuide: '#other-arg'
Enabled: true
Style/OptionalArguments:
Description: >-
Checks for optional arguments that do not appear at the end
of the argument list
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#optional-arguments'
+ StyleGuide: '#optional-arguments'
Enabled: true
Style/ParallelAssignment:
Description: >-
Check for simple usages of parallel assignment.
It will only warn when the number of variables
matches on both sides of the assignment.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parallel-assignment'
+ StyleGuide: '#parallel-assignment'
Enabled: true
Style/ParenthesesAroundCondition:
Description: >-
Don't use parentheses around the condition of an
if/unless/while.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-parens-if'
+ StyleGuide: '#no-parens-if'
Enabled: true
Style/PercentLiteralDelimiters:
Description: 'Use `%`-literal delimiters consistently'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-literal-braces'
+ StyleGuide: '#percent-literal-braces'
Enabled: true
Style/PercentQLiterals:
Description: 'Checks if uses of %Q/%q match the configured preference.'
Enabled: true
Style/PerlBackrefs:
Description: 'Avoid Perl-style regex back references.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-perl-regexp-last-matchers'
+ StyleGuide: '#no-perl-regexp-last-matchers'
Enabled: true
Style/PredicateName:
Description: 'Check the names of predicate methods.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark'
+ StyleGuide: '#bool-methods-qmark'
Enabled: true
+Style/PreferredHashMethods:
+ Description: 'Checks use of `has_key?` and `has_value?` Hash methods.'
+ StyleGuide: '#hash-key'
+ Enabled: true
+
Style/Proc:
Description: 'Use proc instead of Proc.new.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#proc'
+ StyleGuide: '#proc'
Enabled: true
Style/RaiseArgs:
Description: 'Checks the arguments passed to raise/fail.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#exception-class-messages'
+ StyleGuide: '#exception-class-messages'
Enabled: true
Style/RedundantBegin:
Description: "Don't use begin blocks when they are not needed."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#begin-implicit'
+ StyleGuide: '#begin-implicit'
Enabled: true
Style/RedundantException:
Description: "Checks for an obsolete RuntimeException argument in raise/fail."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-explicit-runtimeerror'
+ StyleGuide: '#no-explicit-runtimeerror'
Enabled: true
Style/RedundantFreeze:
Description: "Checks usages of Object#freeze on immutable objects."
Enabled: true
@@ -640,30 +648,30 @@
Description: "Checks for parentheses that seem not to serve any purpose."
Enabled: true
Style/RedundantReturn:
Description: "Don't use return where it's not required."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-explicit-return'
+ StyleGuide: '#no-explicit-return'
Enabled: true
Style/RedundantSelf:
Description: "Don't use self where it's not needed."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-self-unless-required'
+ StyleGuide: '#no-self-unless-required'
Enabled: true
Style/RegexpLiteral:
Description: 'Use / or %r around regular expressions.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-r'
+ StyleGuide: '#percent-r'
Enabled: true
Style/RescueEnsureAlignment:
Description: 'Align rescues and ensures correctly.'
Enabled: true
Style/RescueModifier:
Description: 'Avoid using rescue in its modifier form.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-rescue-modifiers'
+ StyleGuide: '#no-rescue-modifiers'
Enabled: true
Style/SafeNavigation:
Description: >-
This cop transforms usages of a method call safeguarded by
@@ -673,64 +681,64 @@
Style/SelfAssignment:
Description: >-
Checks for places where self-assignment shorthand should have
been used.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#self-assignment'
+ StyleGuide: '#self-assignment'
Enabled: true
Style/Semicolon:
Description: "Don't use semicolons to terminate expressions."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-semicolon'
+ StyleGuide: '#no-semicolon'
Enabled: true
Style/SignalException:
Description: 'Checks for proper usage of fail and raise.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#prefer-raise-over-fail'
+ StyleGuide: '#prefer-raise-over-fail'
Enabled: true
Style/SingleLineBlockParams:
Description: 'Enforces the names of some block params.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#reduce-blocks'
+ StyleGuide: '#reduce-blocks'
Enabled: true
Style/SingleLineMethods:
Description: 'Avoid single-line methods.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-single-line-methods'
+ StyleGuide: '#no-single-line-methods'
Enabled: true
Style/SpaceBeforeFirstArg:
Description: >-
Checks that exactly one space is used between a method name
and the first argument for method calls without parentheses.
Enabled: true
Style/SpaceAfterColon:
Description: 'Use spaces after colons.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
+ StyleGuide: '#spaces-operators'
Enabled: true
Style/SpaceAfterComma:
Description: 'Use spaces after commas.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
+ StyleGuide: '#spaces-operators'
Enabled: true
Style/SpaceAfterMethodName:
Description: >-
Do not put a space between a method name and the opening
parenthesis in a method definition.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parens-no-spaces'
+ StyleGuide: '#parens-no-spaces'
Enabled: true
Style/SpaceAfterNot:
Description: Tracks redundant space after the ! operator.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-space-bang'
+ StyleGuide: '#no-space-bang'
Enabled: true
Style/SpaceAfterSemicolon:
Description: 'Use spaces after semicolons.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
+ StyleGuide: '#spaces-operators'
Enabled: true
Style/SpaceBeforeBlockBraces:
Description: >-
Checks that the left block brace has or doesn't have space
@@ -765,20 +773,20 @@
Style/SpaceAroundEqualsInParameterDefault:
Description: >-
Checks that the equals signs in parameter default assignments
have or don't have surrounding space depending on
configuration.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-around-equals'
+ StyleGuide: '#spaces-around-equals'
Enabled: true
Style/SpaceAroundKeyword:
Description: 'Use a space around keywords if appropriate.'
Enabled: true
Style/SpaceAroundOperators:
Description: 'Use a single space around operators.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
+ StyleGuide: '#spaces-operators'
Enabled: true
Style/SpaceInsideArrayPercentLiteral:
Description: 'No unnecessary additional spaces between elements in %i/%w literals.'
Enabled: true
@@ -787,57 +795,57 @@
Description: 'No unnecessary spaces inside delimiters of %i/%w/%x literals.'
Enabled: true
Style/SpaceInsideBrackets:
Description: 'No spaces after [ or before ].'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-spaces-braces'
+ StyleGuide: '#no-spaces-braces'
Enabled: true
Style/SpaceInsideHashLiteralBraces:
Description: "Use spaces inside hash literal braces - or don't."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-operators'
+ StyleGuide: '#spaces-operators'
Enabled: true
Style/SpaceInsideParens:
Description: 'No spaces after ( or before ).'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-spaces-braces'
+ StyleGuide: '#no-spaces-braces'
Enabled: true
Style/SpaceInsideRangeLiteral:
Description: 'No spaces inside range literals.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-space-inside-range-literals'
+ StyleGuide: '#no-space-inside-range-literals'
Enabled: true
Style/SpaceInsideStringInterpolation:
Description: 'Checks for padding/surrounding spaces inside string interpolation.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#string-interpolation'
+ StyleGuide: '#string-interpolation'
Enabled: true
Style/SpecialGlobalVars:
Description: 'Avoid Perl-style global variables.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-cryptic-perlisms'
+ StyleGuide: '#no-cryptic-perlisms'
Enabled: true
Style/StabbyLambdaParentheses:
Description: 'Check for the usage of parentheses around stabby lambda arguments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#stabby-lambda-with-args'
+ StyleGuide: '#stabby-lambda-with-args'
Enabled: true
Style/StringLiterals:
Description: 'Checks if uses of quotes match the configured preference.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#consistent-string-literals'
+ StyleGuide: '#consistent-string-literals'
Enabled: true
Style/StringLiteralsInInterpolation:
Description: >-
Checks if uses of quotes inside expressions in interpolated
strings match the configured preference.
Enabled: true
Style/StructInheritance:
Description: 'Checks for inheritance from Struct.new.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-extend-struct-new'
+ StyleGuide: '#no-extend-struct-new'
Enabled: true
Style/SymbolLiteral:
Description: 'Use plain symbols instead of string symbols when possible.'
Enabled: true
@@ -846,47 +854,47 @@
Description: 'Use symbols as procs instead of blocks when possible.'
Enabled: true
Style/Tab:
Description: 'No hard tabs.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#spaces-indentation'
+ StyleGuide: '#spaces-indentation'
Enabled: true
Style/TernaryParentheses:
Description: 'Checks for use of parentheses around ternary conditions.'
Enabled: true
Style/TrailingBlankLines:
Description: 'Checks trailing blank lines and final newline.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#newline-eof'
+ StyleGuide: '#newline-eof'
Enabled: true
Style/TrailingCommaInArguments:
Description: 'Checks for trailing comma in argument lists.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-params-comma'
+ StyleGuide: '#no-trailing-params-comma'
Enabled: true
Style/TrailingCommaInLiteral:
Description: 'Checks for trailing comma in array and hash literals.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas'
+ StyleGuide: '#no-trailing-array-commas'
Enabled: true
Style/TrailingWhitespace:
Description: 'Avoid trailing whitespace.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-whitespace'
+ StyleGuide: '#no-trailing-whitespace'
Enabled: true
Style/TrivialAccessors:
Description: 'Prefer attr_* methods to trivial readers/writers.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#attr_family'
+ StyleGuide: '#attr_family'
Enabled: true
Style/UnlessElse:
Description: >-
Do not use unless with else. Rewrite these with the positive
case first.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-else-with-unless'
+ StyleGuide: '#no-else-with-unless'
Enabled: true
Style/UnneededCapitalW:
Description: 'Checks for %W when interpolation is not needed.'
Enabled: true
@@ -895,11 +903,11 @@
Description: 'Checks for strings that are just an interpolated expression.'
Enabled: true
Style/UnneededPercentQ:
Description: 'Checks for %q/%Q when single quotes or double quotes would do.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-q'
+ StyleGuide: '#percent-q'
Enabled: true
Style/TrailingUnderscoreVariable:
Description: >-
Checks for the usage of unneeded trailing underscores at the
@@ -909,42 +917,42 @@
Style/VariableInterpolation:
Description: >-
Don't interpolate global, instance and class variables
directly in strings.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#curlies-interpolate'
+ StyleGuide: '#curlies-interpolate'
Enabled: true
Style/VariableName:
Description: 'Use the configured style when naming variables.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-symbols-methods-vars'
+ StyleGuide: '#snake-case-symbols-methods-vars'
Enabled: true
Style/VariableNumber:
Description: 'Use the configured style when numbering variables.'
Enabled: true
Style/WhenThen:
Description: 'Use when x then ... for one-line cases.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#one-line-cases'
+ StyleGuide: '#one-line-cases'
Enabled: true
Style/WhileUntilDo:
Description: 'Checks for redundant do after while or until.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-multiline-while-do'
+ StyleGuide: '#no-multiline-while-do'
Enabled: true
Style/WhileUntilModifier:
Description: >-
Favor modifier while/until usage when you have a
single-line body.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#while-as-a-modifier'
+ StyleGuide: '#while-as-a-modifier'
Enabled: true
Style/WordArray:
Description: 'Use %w or %W for arrays of words.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-w'
+ StyleGuide: '#percent-w'
Enabled: true
Style/ZeroLengthPredicate:
Description: 'Use #empty? when testing for objects of length 0.'
Enabled: true
@@ -958,11 +966,11 @@
Reference: 'http://c2.com/cgi/wiki?AbcMetric'
Enabled: true
Metrics/BlockNesting:
Description: 'Avoid excessive block nesting'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#three-is-the-number-thou-shalt-count'
+ StyleGuide: '#three-is-the-number-thou-shalt-count'
Enabled: true
Metrics/ClassLength:
Description: 'Avoid classes longer than 100 lines of code.'
Enabled: true
@@ -977,21 +985,25 @@
of test cases needed to validate a method.
Enabled: true
Metrics/LineLength:
Description: 'Limit lines to 80 characters.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#80-character-limits'
+ StyleGuide: '#80-character-limits'
Enabled: true
Metrics/MethodLength:
Description: 'Avoid methods longer than 10 lines of code.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#short-methods'
+ StyleGuide: '#short-methods'
Enabled: true
+Metrics/BlockLength:
+ Description: 'Avoid long blocks with many lines.'
+ Enabled: true
+
Metrics/ParameterLists:
Description: 'Avoid parameter lists longer than three or four parameters.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#too-many-params'
+ StyleGuide: '#too-many-params'
Enabled: true
Metrics/PerceivedComplexity:
Description: >-
A complexity metric geared towards measuring complexity for a
@@ -1003,22 +1015,22 @@
Lint/AmbiguousOperator:
Description: >-
Checks for ambiguous operators in the first argument of a
method invocation without parentheses.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#method-invocation-parens'
+ StyleGuide: '#method-invocation-parens'
Enabled: true
Lint/AmbiguousRegexpLiteral:
Description: >-
Checks for ambiguous regexp literals in the first argument of
a method invocation without parentheses.
Enabled: true
Lint/AssignmentInCondition:
Description: "Don't use assignment in conditions."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#safe-assignment-in-condition'
+ StyleGuide: '#safe-assignment-in-condition'
Enabled: true
Lint/BlockAlignment:
Description: 'Align block ends correctly.'
Enabled: true
@@ -1029,11 +1041,11 @@
Lint/ConditionPosition:
Description: >-
Checks for condition placed in a confusing position relative to
the keyword.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#same-line-condition'
+ StyleGuide: '#same-line-condition'
Enabled: true
Lint/Debugger:
Description: 'Check for debugger calls.'
Enabled: true
@@ -1078,11 +1090,11 @@
Description: 'END blocks should not be placed inside method definitions.'
Enabled: true
Lint/EnsureReturn:
Description: 'Do not use return in an ensure block.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-return-ensure'
+ StyleGuide: '#no-return-ensure'
Enabled: true
Lint/Eval:
Description: 'The use of eval represents a serious security risk.'
Enabled: true
@@ -1097,11 +1109,11 @@
Description: 'The number of parameters to format/sprint must match the fields.'
Enabled: true
Lint/HandleExceptions:
Description: "Don't suppress exception."
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions'
+ StyleGuide: '#dont-hide-exceptions'
Enabled: true
Lint/ImplicitStringConcatenation:
Description: >-
Checks for adjacent string literals on the same line, which
@@ -1134,16 +1146,16 @@
Lint/Loop:
Description: >-
Use Kernel#loop with break rather than begin/end/until or
begin/end/while for post-loop tests.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#loop-with-break'
+ StyleGuide: '#loop-with-break'
Enabled: true
Lint/NestedMethodDefinition:
Description: 'Do not use nested method definitions.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-nested-methods'
+ StyleGuide: '#no-nested-methods'
Enabled: true
Lint/NextWithoutAccumulator:
Description: >-
Do not omit the accumulator when calling `next`
@@ -1156,11 +1168,11 @@
Lint/ParenthesesAsGroupedExpression:
Description: >-
Checks for method calls with a space before the opening
parenthesis.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#parens-no-spaces'
+ StyleGuide: '#parens-no-spaces'
Enabled: true
Lint/PercentStringArray:
Description: >-
Checks for unwanted commas and quotes in %w/%W literals.
@@ -1183,11 +1195,11 @@
about precedence.
Enabled: true
Lint/RescueException:
Description: 'Avoid rescuing the Exception class.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-blind-rescues'
+ StyleGuide: '#no-blind-rescues'
Enabled: true
Lint/ShadowedException:
Description: >-
Avoid rescuing a higher level exception
@@ -1200,11 +1212,11 @@
for block arguments or block local variables.
Enabled: true
Lint/StringConversionInInterpolation:
Description: 'Checks for Object#to_s usage in string interpolation.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-to-s'
+ StyleGuide: '#no-to-s'
Enabled: true
Lint/UnderscorePrefixedVariableName:
Description: 'Do not use prefix `_` for a variable that is used.'
Enabled: true
@@ -1224,16 +1236,16 @@
Description: 'Checks for splat unnecessarily being called on literals'
Enabled: true
Lint/UnusedBlockArgument:
Description: 'Checks for unused block arguments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars'
+ StyleGuide: '#underscore-unused-vars'
Enabled: true
Lint/UnusedMethodArgument:
Description: 'Checks for unused method arguments.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars'
+ StyleGuide: '#underscore-unused-vars'
Enabled: true
Lint/UnreachableCode:
Description: 'Unreachable code.'
Enabled: true
@@ -1243,11 +1255,11 @@
Enabled: true
ContextCreatingMethods: []
Lint/UselessAssignment:
Description: 'Checks for useless assignment to a local variable.'
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars'
+ StyleGuide: '#underscore-unused-vars'
Enabled: true
Lint/UselessComparison:
Description: 'Checks for comparison of something with itself.'
Enabled: true
@@ -1309,10 +1321,14 @@
Enabled: true
Performance/EndWith:
Description: 'Use `end_with?` instead of a regex match anchored to the end of a string.'
Reference: 'https://github.com/JuanitoFatas/fast-ruby#stringmatch-vs-stringstart_withstringend_with-code-start-code-end'
+ # This will change to a new method call which isn't guaranteed to be on the
+ # object. Switching these methods has to be done with knowledge of the types
+ # of the variables which rubocop doesn't have.
+ AutoCorrect: false
Enabled: true
Performance/FixedSize:
Description: 'Do not compute the size of statically sized objects except in constants'
Enabled: true
@@ -1332,11 +1348,11 @@
Performance/HashEachMethods:
Description: >-
Use `Hash#each_key` and `Hash#each_value` instead of
`Hash#keys.each` and `Hash#values.each`.
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#hash-each'
+ StyleGuide: '#hash-each'
Enabled: true
AutoCorrect: false
Performance/LstripRstrip:
Description: 'Use `strip` instead of `lstrip.rstrip`.'
@@ -1391,10 +1407,14 @@
Enabled: true
Performance/StartWith:
Description: 'Use `start_with?` instead of a regex match anchored to the beginning of a string.'
Reference: 'https://github.com/JuanitoFatas/fast-ruby#stringmatch-vs-stringstart_withstringend_with-code-start-code-end'
+ # This will change to a new method call which isn't guaranteed to be on the
+ # object. Switching these methods has to be done with knowledge of the types
+ # of the variables which rubocop doesn't have.
+ AutoCorrect: false
Enabled: true
Performance/StringReplacement:
Description: >-
Use `tr` instead of `gsub` when you are replacing the same
@@ -1421,10 +1441,19 @@
Rails/Delegate:
Description: 'Prefer delegate method for delegations.'
Enabled: true
+Rails/DelegateAllowBlank:
+ Description: 'Do not use allow_blank as an option to delegate.'
+ Enabled: true
+
+Rails/DynamicFindBy:
+ Description: 'Use `find_by` instead of dynamic `find_by_*`.'
+ StyleGuide: 'https://github.com/bbatsov/rails-style-guide#find_by'
+ Enabled: true
+
Rails/Exit:
Description: >-
Favor `fail`, `break`, `return`, etc. over `exit` in
application or library code outside of Rake files to avoid
exits during unit testing or running in production.
@@ -1443,10 +1472,17 @@
Rails/HasAndBelongsToMany:
Description: 'Prefer has_many :through to has_and_belongs_to_many.'
StyleGuide: 'https://github.com/bbatsov/rails-style-guide#has-many-through'
Enabled: true
+Rails/HttpPositionalArguments:
+ Description: 'Use keyword arguments instead of positional arguments in http method calls.'
+ Enabled: true
+ Include:
+ - 'spec/**/*'
+ - 'test/**/*'
+
Rails/NotNullColumn:
Description: 'Do not add a NOT NULL column without a default value'
Enabled: true
Rails/Output:
@@ -1493,7 +1529,13 @@
Rails/Validation:
Description: 'Use validates :attribute, hash of validations.'
Enabled: true
Security/JSONLoad:
- Description : 'Prefer usage of JSON.parse'
+ Description: >-
+ Prefer usage of `JSON.parse` over `JSON.load` due to potential
+ security issues. See reference for more information.
+ Reference: 'http://ruby-doc.org/stdlib-2.3.0/libdoc/json/rdoc/JSON.html#method-i-load'
Enabled: true
+ # Autocorrect here will change to a method that may cause crashes depending
+ # on the value of the argument.
+ AutoCorrect: false