Skip to content

Enable multiple Rubocop cops that can be enabled

Grzegorz Bizon requested to merge complexity/enable-multiple-rubocop-cops into master

See https://gitlab.com/gitlab-org/gitlab-ce/issues/17406

This enabled following cops:

Lint/CircularArgumentReference:
  Description: Default values in optional keyword arguments and optional ordinal arguments
----------------
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
----------------
Lint/Debugger:
  Description: Check for debugger calls.
----------------
Lint/DefEndAlignment:
  Description: Align ends corresponding to defs correctly.
----------------
Lint/DuplicateMethods:
  Description: Check for duplicate method definitions.
----------------
Lint/DuplicatedKey:
  Description: Check for duplicate keys in hash literals.
----------------
Lint/EachWithObjectArgument:
  Description: Check for immutable argument given to each_with_object.
----------------
Lint/ElseLayout:
  Description: Check for odd code arrangement in an else block.
----------------
Lint/EmptyEnsure:
  Description: Checks for empty ensure block.
----------------
Lint/EmptyInterpolation:
  Description: Checks for empty string interpolation.
----------------
Lint/EndAlignment:
  Description: Align ends correctly.
----------------
Lint/EndInMethod:
  Description: END blocks should not be placed inside method definitions.
----------------
Lint/EnsureReturn:
  Description: Do not use return in an ensure block.
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-return-ensure
----------------
Lint/Eval:
  Description: The use of eval represents a serious security risk.
----------------
Lint/FloatOutOfRange:
  Description: Catches floating-point literals too large or small for Ruby to represent.
----------------
Lint/FormatParameterMismatch:
  Description: The number of parameters to format/sprint must match the fields.
----------------
Lint/ImplicitStringConcatenation:
  Description: Checks for adjacent string literals on the same line, which could better
    be represented as a single string literal.
----------------
Lint/InvalidCharacterLiteral:
  Description: Checks for invalid character literals with a non-escaped whitespace character.
----------------
Lint/LiteralInInterpolation:
  Description: Checks for literals used in interpolation.
----------------
Lint/NestedMethodDefinition:
  Description: Do not use nested method definitions.
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-methods
----------------
Lint/NextWithoutAccumulator:
  Description: Do not omit the accumulator when calling `next` in a `reduce`/`inject`
    block.
----------------
Lint/RandOne:
  Description: Checks for `rand(1)` calls. Such calls always return `0` and most likely
    a mistake.
----------------
Lint/RequireParentheses:
  Description: Use parentheses in the method call to avoid confusion about precedence.
----------------
Lint/UnreachableCode:
  Description: Unreachable code.
----------------
Lint/UselessComparison:
  Description: Checks for comparison of something with itself.
----------------
Lint/UselessElseWithoutRescue:
  Description: Checks for useless `else` in `begin..end` without `rescue`.
----------------
Lint/UselessSetterCall:
  Description: Checks for useless setter call to a local variable.
----------------
Lint/Void:
  Description: Possible use of operator/literal/variable in void context.
----------------
Performance/DoubleStartEndWith:
  Description: Use `str.{start,end}_with?(x, ..., y, ...)` instead of `str.{start,end}_with?(x,
    ...) || str.{start,end}_with?(y, ...)`.
----------------
Performance/RedundantSortBy:
  Description: Use `sort` instead of `sort_by { |x| x }`.
----------------
Rails/FindBy:
  Description: Prefer find_by over where.first.
  Include:
  - app/models/**/*.rb
----------------
Rails/FindEach:
  Description: Prefer all.find_each over all.find.
  Include:
  - app/models/**/*.rb
----------------
Rails/PluralizationGrammar:
  Description: Checks for incorrect grammar when using methods like `3.day.ago`.
----------------
Rails/ScopeArgs:
  Description: Checks the arguments of ActiveRecord scopes.
  Include:
  - app/models/**/*.rb

Merge request reports