rubocop-hq/rubocop

View on GitHub

Showing 420 of 453 total issues

File rubocop.rb has 662 lines of code (exceeds 250 allowed). Consider refactoring.
Open

require 'English'
before_us = $LOADED_FEATURES.dup
require 'rainbow'

require 'set'
Severity: Major
Found in lib/rubocop.rb - About 1 day to fix

    Class Base has 54 methods (exceeds 20 allowed). Consider refactoring.
    Open

        class Base # rubocop:disable Metrics/ClassLength
          extend RuboCop::AST::Sexp
          extend NodePattern::Macros
          extend ExcludeLimit
          include RuboCop::AST::Sexp
    Severity: Major
    Found in lib/rubocop/cop/base.rb - About 7 hrs to fix

      File conditional_assignment.rb has 406 lines of code (exceeds 250 allowed). Consider refactoring.
      Open

      module RuboCop
        module Cop
          module Style
            # Helper module to provide common methods to classes needed for the
            # ConditionalAssignment Cop.
      Severity: Minor
      Found in lib/rubocop/cop/style/conditional_assignment.rb - About 5 hrs to fix

        File options.rb has 398 lines of code (exceeds 250 allowed). Consider refactoring.
        Open

        require 'optparse'
        require 'shellwords'
        
        module RuboCop
          class IncorrectCopNameError < StandardError; end
        Severity: Minor
        Found in lib/rubocop/options.rb - About 5 hrs to fix

          Class SpaceAroundKeyword has 37 methods (exceeds 20 allowed). Consider refactoring.
          Open

                class SpaceAroundKeyword < Base
                  extend AutoCorrector
          
                  MSG_BEFORE = 'Space before keyword `%<range>s` is missing.'
                  MSG_AFTER = 'Space after keyword `%<range>s` is missing.'
          Severity: Minor
          Found in lib/rubocop/cop/layout/space_around_keyword.rb - About 4 hrs to fix

            Class Registry has 36 methods (exceeds 20 allowed). Consider refactoring.
            Open

                class Registry
                  include Enumerable
            
                  attr_reader :options
            
            
            Severity: Minor
            Found in lib/rubocop/cop/registry.rb - About 4 hrs to fix

              Class Runner has 35 methods (exceeds 20 allowed). Consider refactoring.
              Open

                class Runner # rubocop:disable Metrics/ClassLength
                  # An exception indicating that the inspection loop got stuck correcting
                  # offenses back and forth.
                  class InfiniteCorrectionLoop < RuntimeError
                    attr_reader :offenses
              Severity: Minor
              Found in lib/rubocop/runner.rb - About 4 hrs to fix

                Class IndentationWidth has 33 methods (exceeds 20 allowed). Consider refactoring.
                Open

                      class IndentationWidth < Base # rubocop:disable Metrics/ClassLength
                        include EndKeywordAlignment
                        include Alignment
                        include CheckAssignment
                        include IgnoredPattern
                Severity: Minor
                Found in lib/rubocop/cop/layout/indentation_width.rb - About 4 hrs to fix

                  Class Config has 32 methods (exceeds 20 allowed). Consider refactoring.
                  Open

                    class Config
                      include PathUtil
                      include FileFinder
                      extend Forwardable
                  
                  
                  Severity: Minor
                  Found in lib/rubocop/config.rb - About 4 hrs to fix

                    Class BlockDelimiters has 31 methods (exceeds 20 allowed). Consider refactoring.
                    Open

                          class BlockDelimiters < Base
                            include ConfigurableEnforcedStyle
                            include IgnoredMethods
                            extend AutoCorrector
                    
                    
                    Severity: Minor
                    Found in lib/rubocop/cop/style/block_delimiters.rb - About 3 hrs to fix

                      Class MethodCallWithArgsParentheses has 29 methods (exceeds 20 allowed). Consider refactoring.
                      Open

                            class MethodCallWithArgsParentheses
                              # Style omit_parentheses
                              # rubocop:disable Metrics/ModuleLength, Metrics/CyclomaticComplexity
                              module OmitParentheses
                                TRAILING_WHITESPACE_REGEX = /\s+\Z/.freeze

                        Class VariableForce has 28 methods (exceeds 20 allowed). Consider refactoring.
                        Open

                            class VariableForce < Force # rubocop:disable Metrics/ClassLength
                              VARIABLE_ASSIGNMENT_TYPE = :lvasgn
                              REGEXP_NAMED_CAPTURE_TYPE = :match_with_lvasgn
                              VARIABLE_ASSIGNMENT_TYPES = [VARIABLE_ASSIGNMENT_TYPE, REGEXP_NAMED_CAPTURE_TYPE].freeze
                        
                        
                        Severity: Minor
                        Found in lib/rubocop/cop/variable_force.rb - About 3 hrs to fix

                          Class RedundantParentheses has 28 methods (exceeds 20 allowed). Consider refactoring.
                          Open

                                class RedundantParentheses < Base
                                  include Parentheses
                                  extend AutoCorrector
                          
                                  # @!method square_brackets?(node)
                          Severity: Minor
                          Found in lib/rubocop/cop/style/redundant_parentheses.rb - About 3 hrs to fix

                            Class ConfigLoader has 27 methods (exceeds 20 allowed). Consider refactoring.
                            Open

                              class ConfigLoader
                                DOTFILE = '.rubocop.yml'
                                XDG_CONFIG = 'config.yml'
                                RUBOCOP_HOME = File.realpath(File.join(File.dirname(__FILE__), '..', '..'))
                                DEFAULT_FILE = File.join(RUBOCOP_HOME, 'config', 'default.yml')
                            Severity: Minor
                            Found in lib/rubocop/config_loader.rb - About 3 hrs to fix

                              Class HeredocArgumentClosingParenthesis has 27 methods (exceeds 20 allowed). Consider refactoring.
                              Open

                                    class HeredocArgumentClosingParenthesis < Base
                                      include RangeHelp
                                      extend AutoCorrector
                              
                                      MSG = 'Put the closing parenthesis for a method call with a ' \
                              Severity: Minor
                              Found in lib/rubocop/cop/layout/heredoc_argument_closing_parenthesis.rb - About 3 hrs to fix

                                Class Team has 26 methods (exceeds 20 allowed). Consider refactoring.
                                Open

                                    class Team
                                      attr_reader :errors, :warnings, :updated_source_file, :cops
                                
                                      alias updated_source_file? updated_source_file
                                
                                
                                Severity: Minor
                                Found in lib/rubocop/cop/team.rb - About 3 hrs to fix

                                  File runner.rb has 285 lines of code (exceeds 250 allowed). Consider refactoring.
                                  Open

                                  require 'parallel'
                                  
                                  module RuboCop
                                    # This class handles the processing of files, which includes dealing with
                                    # formatters and letting cops inspect the files.
                                  Severity: Minor
                                  Found in lib/rubocop/runner.rb - About 2 hrs to fix

                                    Class LineLength has 25 methods (exceeds 20 allowed). Consider refactoring.
                                    Open

                                          class LineLength < Base
                                            include CheckLineBreakable
                                            include IgnoredPattern
                                            include RangeHelp
                                            include LineLengthHelp
                                    Severity: Minor
                                    Found in lib/rubocop/cop/layout/line_length.rb - About 2 hrs to fix

                                      Method on_send has a Cognitive Complexity of 20 (exceeds 5 allowed). Consider refactoring.
                                      Open

                                              def on_send(node)
                                                return unless struct_new(node) do
                                                  node.arguments.each_with_index do |arg, index|
                                                    # Ignore if the first argument is a class name
                                                    next if index.zero? && arg.str_type?
                                      Severity: Minor
                                      Found in lib/rubocop/cop/lint/struct_new_override.rb - About 2 hrs to fix

                                      Cognitive Complexity

                                      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                                      A method's cognitive complexity is based on a few simple rules:

                                      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                                      • Code is considered more complex for each "break in the linear flow of the code"
                                      • Code is considered more complex when "flow breaking structures are nested"

                                      Further reading

                                      Class CopsDocumentationGenerator has 24 methods (exceeds 20 allowed). Consider refactoring.
                                      Open

                                      class CopsDocumentationGenerator # rubocop:disable Metrics/ClassLength
                                        include ::RuboCop::Cop::Documentation
                                        # This class will only generate documentation for cops that belong to one of
                                        # the departments given in the `departments` array. E.g. if we only wanted
                                        # documentation for Lint cops:
                                      Severity: Minor
                                      Found in lib/rubocop/cops_documentation_generator.rb - About 2 hrs to fix
                                        Severity
                                        Category
                                        Status
                                        Source
                                        Language