refactor github module duplicate
This commit is contained in:
parent
af117fab25
commit
53643870a3
@ -314,7 +314,26 @@ module Homebrew
|
||||
|
||||
new_formula_version = formula_version(formula, requested_spec, new_contents)
|
||||
|
||||
GitHub.check_for_duplicate_pull_requests(formula, tap_full_name, new_formula_version.to_s)
|
||||
pull_requests = GitHub.check_for_duplicate_pull_requests(formula, tap_full_name, new_formula_version.to_s)
|
||||
|
||||
duplicates_message = <<~EOS
|
||||
These pull requests may be duplicates:
|
||||
#{pull_requests.join("\n")}
|
||||
EOS
|
||||
error_message = "Duplicate PRs should not be opened. Use --force to override this error."
|
||||
|
||||
unless !pull_requests.blank?
|
||||
if args.force? && !args.quiet?
|
||||
opoo duplicates_message
|
||||
elsif !args.force? && args.quiet?
|
||||
odie error_message
|
||||
elsif !args.force?
|
||||
odie <<~EOS
|
||||
#{duplicates_message.chomp}
|
||||
#{error_message}
|
||||
EOS
|
||||
end
|
||||
end
|
||||
|
||||
if !new_mirrors && !formula_spec.mirrors.empty?
|
||||
if args.force?
|
||||
|
||||
@ -53,13 +53,13 @@ module Homebrew
|
||||
tap_full_name = formula.tap&.full_name
|
||||
current_version = current_formula_version(formula)
|
||||
livecheck_response = livecheck_formula(package_name)
|
||||
pull_requests = GitHub.check_for_duplicate_pull_requests(formula, tap_full_name, latest_version, true)
|
||||
pull_requests = GitHub.check_for_duplicate_pull_requests(formula, tap_full_name, latest_version)
|
||||
|
||||
{
|
||||
repology_latest_version: latest_version,
|
||||
current_formula_version: current_version.to_s,
|
||||
livecheck_latest_version: livecheck_response[:livecheck_version],
|
||||
open_pull_requests: pull_requests,
|
||||
open_pull_requests: pull_requests.join(", "),
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
@ -356,7 +356,7 @@ module GitHub
|
||||
[]
|
||||
end
|
||||
|
||||
def check_for_duplicate_pull_requests(formula, tap_full_name, version, fetch_pr = false)
|
||||
def check_for_duplicate_pull_requests(formula, tap_full_name, version)
|
||||
# check for open requests
|
||||
pull_requests = fetch_pull_requests(formula.name, tap_full_name, state: "open")
|
||||
|
||||
@ -364,23 +364,7 @@ module GitHub
|
||||
pull_requests = fetch_pull_requests("#{formula.name} #{version}", tap_full_name) if pull_requests.blank?
|
||||
return if pull_requests.blank?
|
||||
|
||||
return pull_requests.map { |pr| { title: pr["title"], url: pr["html_url"] } } if fetch_pr
|
||||
|
||||
duplicates_message = <<~EOS
|
||||
These pull requests may be duplicates:
|
||||
#{pull_requests.map { |pr| "#{pr["title"]} #{pr["html_url"]}" }.join("\n")}
|
||||
EOS
|
||||
error_message = "Duplicate PRs should not be opened. Use --force to override this error."
|
||||
if Homebrew.args.force? && !Homebrew.args.quiet?
|
||||
opoo duplicates_message
|
||||
elsif !Homebrew.args.force? && Homebrew.args.quiet?
|
||||
odie error_message
|
||||
elsif !Homebrew.args.force?
|
||||
odie <<~EOS
|
||||
#{duplicates_message.chomp}
|
||||
#{error_message}
|
||||
EOS
|
||||
end
|
||||
pull_requests.map { |pr| { title: pr["title"], url: pr["html_url"] } }
|
||||
end
|
||||
|
||||
def create_fork(repo)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user