prontolabs/pronto

View on GitHub

Showing 13 of 13 total issues

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

def run(path = '.')
path = File.expand_path(path)
 
gem_names = options[:runner].any? ? options[:runner] : ::Pronto::GemNames.new.to_a
gem_names.each do |gem_name|
Severity: Minor
Found in lib/pronto/cli.rb - About 1 hr to fix

Method format has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring.
Open

def format(messages, _repo, _patches)
messages.map do |message|
lineno = message.line.new_lineno if message.line
 
result = { level: message.level[0].upcase, message: message.msg }
Severity: Minor
Found in lib/pronto/formatter/json_formatter.rb - About 1 hr to fix

Method paged_request has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
Open

def paged_request(url, query = {})
Enumerator.new do |yielder|
next_page_start = 0
loop do
response = get(url, query.merge(start: next_page_start))
Severity: Minor
Found in lib/pronto/clients/bitbucket_server_client.rb - About 55 mins to fix

Method initialize has 6 arguments (exceeds 4 allowed). Consider refactoring.
Open

def initialize(path, line, level, msg, commit_sha = nil, runner = nil)
Severity: Minor
Found in lib/pronto/message.rb - About 45 mins to fix

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

    def run(patches)
    patches = reject_excluded(config.excluded_files('all'), patches)
    return [] if patches.none?
     
    result = []
    Severity: Minor
    Found in lib/pronto/runners.rb - About 45 mins to fix

    Method create_pull_comment has 5 arguments (exceeds 4 allowed). Consider refactoring.
    Open

    def create_pull_comment(slug, pull_id, body, path, position)
    Severity: Minor
    Found in lib/pronto/clients/bitbucket_client.rb - About 35 mins to fix

      Method create_commit_comment has 5 arguments (exceeds 4 allowed). Consider refactoring.
      Open

      def create_commit_comment(slug, sha, body, path, position)
      Severity: Minor
      Found in lib/pronto/clients/bitbucket_client.rb - About 35 mins to fix

        Method create_pull_comment has 5 arguments (exceeds 4 allowed). Consider refactoring.
        Open

        def create_pull_comment(slug, pull_id, body, path, position)
        Severity: Minor
        Found in lib/pronto/clients/bitbucket_server_client.rb - About 35 mins to fix

          Similar blocks of code found in 2 locations. Consider refactoring.
          Open

          def slug
          return @config.github_slug if @config.github_slug
          @slug ||= begin
          @repo.remote_urls.map do |url|
          hostname = Regexp.escape(@config.github_hostname)
          Severity: Minor
          Found in lib/pronto/github.rb and 1 other location - About 35 mins to fix
          lib/pronto/bitbucket.rb on lines 44..53

          Similar blocks of code found in 2 locations. Consider refactoring.
          Open

          def slug
          return @config.bitbucket_slug if @config.bitbucket_slug
          @slug ||= begin
          @repo.remote_urls.map do |url|
          hostname = Regexp.escape(@config.bitbucket_hostname)
          Severity: Minor
          Found in lib/pronto/bitbucket.rb and 1 other location - About 35 mins to fix
          lib/pronto/github.rb on lines 85..94

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

          def parse_comments(values)
          values.each do |value|
          value.content = value.content['raw']
          value.line_to = value.inline ? value.inline['to'] : 0
          value.filename = value.inline ? value.inline['path'] : ''
          Severity: Minor
          Found in lib/pronto/clients/bitbucket_client.rb - About 25 mins to fix

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

          def remove_duplicate_comments(old_comments, new_comments)
          new_comments.each_with_object([]) do |(key, comments), memo|
          existing = old_comments[key]
          comments = dedupe_comments(existing, comments) if existing
           
           
          Severity: Minor
          Found in lib/pronto/formatter/git_formatter.rb - About 25 mins to fix

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

          def format_location(message)
          line = message.line
          lineno = line.new_lineno if line
          path = message.path
          commit_sha = message.commit_sha
          Severity: Minor
          Found in lib/pronto/formatter/text_message_decorator.rb - About 25 mins to fix
          Severity
          Category
          Status
          Source
          Language