updated/feedback fixes

This commit is contained in:
Elizabeth Tackett 2020-07-02 13:34:47 -05:00
parent fe71d89153
commit aa4134a830
3 changed files with 26 additions and 36 deletions

View File

@ -31,10 +31,10 @@ module Homebrew
outdated_packages.each do |formula, package_details|
ohai formula
ohai "Current formula version: #{package_details["current_formula_version"]}"
ohai "Latest repology version: #{package_details["repology_latest_version"]}"
ohai "Latest livecheck version: #{package_details["livecheck_latest_version"]}"
ohai "Open pull requests: #{package_details["open_pull_requests"]}"
ohai "Current formula version: #{package_details[:current_formula_version]}"
ohai "Latest repology version: #{package_details[:repology_latest_version]}"
ohai "Latest livecheck version: #{package_details[:livecheck_latest_version]}"
ohai "Open pull requests: #{package_details[:open_pull_requests]}"
end
end
end

View File

@ -2,13 +2,16 @@
require "utils/curl"
require "utils/versions"
require "formula_info"
module RepologyParser
module_function
MAX_PAGINATION = 15
def query_api(last_package_in_response = "")
last_package_in_response += "/" unless last_package_in_response.empty?
url = "https://repology.org/api/v1/projects/#{last_package_in_response}?inrepo=homebrew&outdated=1"
ohai "Calling API #{url}" if Homebrew.args.verbose?
@ -18,24 +21,22 @@ module RepologyParser
def parse_api_response
ohai "Querying outdated packages from Repology"
page_no = 1
ohai "Paginating repology api page: #{page_no}" if Homebrew.args.verbose?
outdated_packages = query_api
last_pacakge_index = outdated_packages.size - 1
last_package_index = outdated_packages.size - 1
response_size = outdated_packages.size
page_limit = 15
page_no = 1
while response_size > 1 && page_no <= page_limit
page_no += 1
ohai "Paginating repology api page: #{page_no}" if Homebrew.args.verbose?
while response_size > 1 && page_no <= MAX_PAGINATION
ohai "Paginating Repology api page: #{page_no}" if Homebrew.args.verbose?
last_package_in_response = outdated_packages.keys[last_pacakge_index]
response = query_api("#{last_package_in_response}/")
last_package_in_response = outdated_packages.keys[last_package_index]
response = query_api(last_package_in_response)
response_size = response.size
outdated_packages.merge!(response)
last_pacakge_index = outdated_packages.size - 1
last_package_index = outdated_packages.size - 1
page_no += 1
end
ohai "#{outdated_packages.size} outdated packages identified"
@ -44,7 +45,7 @@ module RepologyParser
end
def validate_and_format_packages(outdated_repology_packages)
ohai "Verifying outdated repology packages as Homebrew Formulae"
ohai "Verifying outdated Repology packages as Homebrew Formulae"
packages = {}
outdated_repology_packages.each do |_name, repositories|
@ -73,13 +74,11 @@ module RepologyParser
livecheck_response = Versions.livecheck_formula(package_name)
pull_requests = Versions.check_for_duplicate_pull_requests(package_name, latest_version)
formatted_package = {
"repology_latest_version" => latest_version,
"current_formula_version" => current_version.to_s,
"livecheck_latest_version" => livecheck_response["livecheck_latest_version"],
"open_pull_requests" => pull_requests,
{
repoology_latest_version: latest_version,
current_formula_version: current_version.to_s,
livecheck_latest_version: livecheck_response[:livecheck_version],
open_pull_requests: pull_requests,
}
formatted_package
end
end

View File

@ -12,15 +12,6 @@ module Versions
formula_name, "--url=#{url}").chomp
end
def check_for_open_pr(formula_name)
# ohai "- Checking for open PRs for formula : #{formula_name}"
# response = bump_formula_pr(formula_name, download_url)
# !response.include? "Error: These open pull requests may be duplicates"
# check_for_duplicate_pull_requests(formula, tap_full_name, new_formula_version.to_s)
end
def livecheck_formula(formula)
ohai "Checking livecheck formula : #{formula}" if Homebrew.args.verbose?
@ -36,9 +27,9 @@ module Versions
package_name, brew_version, latest_version = output
{
"formula" => package_name,
"current_brew_version" => brew_version,
"livecheck_latest_version" => latest_version,
name: package_name,
formula_version: brew_version,
livecheck_version: latest_version,
}
end
@ -63,6 +54,6 @@ module Versions
pull_requests = fetch_pull_requests("#{formula.name} #{version}", tap_full_name) if pull_requests.blank?
return if pull_requests.blank?
pull_requests.map { |pr| { "title" => pr["title"], "url" => pr["html_url"] } }
pull_requests.map { |pr| { title: pr["title"], url: pr["html_url"] } }
end
end