Method: Shiba::Review::ExplainDiff#problems

Defined in:
lib/shiba/review/explain_diff.rb

#problemsObject

Returns detected problem queries with their line numbers. Query problem format is [ [ “path:lineno”, explain ]… ]



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/shiba/review/explain_diff.rb', line 27

def problems
  return @problems if @problems

  @problems = explains_with_backtrace_in_diff.select do |explain|
    explain["severity"] && explain["severity"] != 'none'
  end

  if options["verbose"]
    $stderr.puts @problems
    $stderr.puts "Updated lines: #{updated_lines}"
  end

  @problems.map! do |problem|
    line = diff_line_from_backtrace(problem["backtrace"])
    next if line.nil?

    [ line, problem ]
  end
  @problems.compact!

  @problems
end