module Airbrake::Rake::Task

def task_info

rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize
def task_info
  info = {}
  info[:name] = name
  info[:timestamp] = timestamp.to_s
  info[:investigation] = investigation
  info[:full_comment] = full_comment if full_comment
  info[:arg_names] = arg_names if arg_names.any?
  info[:arg_description] = arg_description if arg_description
  info[:locations] = locations if locations.any?
  info[:sources] = sources if sources.any?
  if prerequisite_tasks.any?
    info[:prerequisite_tasks] = prerequisite_tasks.map do |p|
      p.__send__(:task_info)
    end
  end
  info
end