mLewisLogic/saddle

View on GitHub

Showing 11 of 11 total issues

Method initialize has a Cognitive Complexity of 32 (exceeds 5 allowed). Consider refactoring.
Open

    def initialize(parent_client, opt={})
      # We may want properties about the parent client in middlewares
      @parent_client = parent_client
      # Store the options for later use
      @options = opt
Severity: Minor
Found in lib/saddle/requester.rb - About 4 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

Method call has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
Open

        def call(env)
          retries = env[:saddle][:num_retries] || 0
          backoff = env[:saddle][:retry_backoff] || 0.050 # in seconds
          begin
            @app.call(self.class.deep_copy(env))
Severity: Minor
Found in lib/saddle/middleware/request/retry.rb - About 1 hr 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

Method call has a Cognitive Complexity of 11 (exceeds 5 allowed). Consider refactoring.
Open

        def call(env)
          if env[:saddle][:request_style] == :urlencoded
            # Make sure we're working with a valid body that's not a String
            if env[:body] and !env[:body].respond_to?(:to_str)
              if has_multipart?(env[:body])
Severity: Minor
Found in lib/saddle/middleware/request/url_encoded.rb - About 1 hr 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

Method has_multipart? has a Cognitive Complexity of 11 (exceeds 5 allowed). Consider refactoring.
Open

        def has_multipart?(obj)
          # string is an enum in 1.8, returning list of itself
          if obj.respond_to?(:each) && !obj.is_a?(String)
            (obj.respond_to?(:values) ? obj.values : obj).each do |val|
              return true if (val.respond_to?(:content_type) || has_multipart?(val))
Severity: Minor
Found in lib/saddle/middleware/request/url_encoded.rb - About 1 hr 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

Method initialize has 30 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    def initialize(parent_client, opt={})
      # We may want properties about the parent client in middlewares
      @parent_client = parent_client
      # Store the options for later use
      @options = opt
Severity: Minor
Found in lib/saddle/requester.rb - About 1 hr to fix

    Method connection has 26 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        def connection
          @connection ||= Faraday.new(base_url, :builder_class => Saddle::RackBuilder) do |connection|
            # Include the requester level options
            connection.builder.saddle_options[:client_options] = @options
    
    
    Severity: Minor
    Found in lib/saddle/requester.rb - About 1 hr to fix

      Method call has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
      Open

              def call(env)
                # Try to build up a path for the STATSD logging
                if env[:saddle][:statsd_path]
                  statsd_path = env[:saddle][:statsd_path]
                elsif env[:saddle][:client]
      Severity: Minor
      Found in lib/saddle/middleware/logging/statsd.rb - About 45 mins 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

      Method process_params has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
      Open

              def process_params(params, prefix = nil, pieces = nil, &block)
                params.inject(pieces || []) do |all, (key, value)|
                  key = "#{prefix}[#{key}]" if prefix
      
                  case value
      Severity: Minor
      Found in lib/saddle/middleware/request/url_encoded.rb - About 35 mins 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

      Method deep_copy has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
      Open

              def self.deep_copy(value)
                if value.is_a?(Struct)
                  result = value.clone
                  value.each{|k, v| result.send("#{k}=", deep_copy(v))}
                  result
      Severity: Minor
      Found in lib/saddle/middleware/request/retry.rb - About 35 mins 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

      Method call has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
      Open

              def call(env)
                begin
                  @app.call(env)
                rescue => e
                  # If we don't have an api key, use the default config
      Severity: Minor
      Found in lib/saddle/middleware/logging/airbrake.rb - About 25 mins 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

      Method build_node_children has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
      Open

          def build_node_children(current_module, current_node, requester)
            return unless current_module
            current_module.constants.each do |const_symbol|
              const = current_module.const_get(const_symbol)
      
      
      Severity: Minor
      Found in lib/saddle/method_tree_builder.rb - About 25 mins 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

      Severity
      Category
      Status
      Source
      Language