display version data when formula is up-to-date
This commit is contained in:
parent
82787c8499
commit
ce721f43a8
@ -28,34 +28,34 @@ module Homebrew
|
|||||||
requested_formula = Homebrew.args.formula
|
requested_formula = Homebrew.args.formula
|
||||||
requested_formula&.downcase!
|
requested_formula&.downcase!
|
||||||
|
|
||||||
raise FormulaUnavailableError, requested_formula if requested_formula && !get_formula_details(requested_formula)
|
raise FormulaUnavailableError, requested_formula if requested_formula && !validate_formula(requested_formula)
|
||||||
|
|
||||||
outdated_repology_packages = if requested_formula
|
repology_data = if requested_formula
|
||||||
Repology.single_package_query(requested_formula)
|
Repology.single_package_query(requested_formula)
|
||||||
else
|
else
|
||||||
Repology.parse_api_response
|
Repology.parse_api_response
|
||||||
end
|
end
|
||||||
|
|
||||||
if requested_formula && outdated_repology_packages.nil?
|
validated_formulae = Repology.validate_and_format_packages(repology_data)
|
||||||
ohai "#{requested_formula} is up-to-date!"
|
display(validated_formulae)
|
||||||
puts "Current version: #{get_formula_details(requested_formula).version}"
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
outdated_packages = Repology.validate_and_format_packages(outdated_repology_packages)
|
|
||||||
display(outdated_packages)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def get_formula_details(formula_name)
|
def validate_formula(formula_name)
|
||||||
Formula[formula_name]
|
Formula[formula_name]
|
||||||
rescue
|
rescue
|
||||||
nil
|
nil
|
||||||
end
|
end
|
||||||
|
|
||||||
def display(outdated_packages)
|
def up_to_date?(package)
|
||||||
|
package[:current_formula_version] == package[:repology_latest_version] &&
|
||||||
|
package[:current_formula_version] == package[:livecheck_latest_version]
|
||||||
|
end
|
||||||
|
|
||||||
|
def display(formulae)
|
||||||
puts
|
puts
|
||||||
outdated_packages.each do |formula, package_details|
|
formulae.each do |formula, package_details|
|
||||||
ohai formula
|
title = (up_to_date?(package_details) ? formula + " is up to date!" : formula).to_s
|
||||||
|
ohai title
|
||||||
puts "Current formula version: #{package_details[:current_formula_version]}"
|
puts "Current formula version: #{package_details[:current_formula_version]}"
|
||||||
puts "Latest Repology version: #{package_details[:repology_latest_version]}"
|
puts "Latest Repology version: #{package_details[:repology_latest_version]}"
|
||||||
puts "Latest livecheck version: #{package_details[:livecheck_latest_version] || "Not found"}"
|
puts "Latest livecheck version: #{package_details[:livecheck_latest_version] || "Not found"}"
|
||||||
|
@ -21,11 +21,11 @@ module Repology
|
|||||||
output, _errors, _status = curl_output(url.to_s)
|
output, _errors, _status = curl_output(url.to_s)
|
||||||
data = JSON.parse(output)
|
data = JSON.parse(output)
|
||||||
|
|
||||||
outdated_homebrew = data.select do |repo|
|
homebrew = data.select do |repo|
|
||||||
repo["repo"] == "homebrew" && repo["status"] == "outdated"
|
repo["repo"] == "homebrew"
|
||||||
end
|
end
|
||||||
|
|
||||||
outdated_homebrew.empty? ? nil : { name: data }
|
homebrew.empty? ? nil : { name: data }
|
||||||
end
|
end
|
||||||
|
|
||||||
def parse_api_response
|
def parse_api_response
|
||||||
@ -75,7 +75,7 @@ module Repology
|
|||||||
end
|
end
|
||||||
|
|
||||||
def format_package(package_name, latest_version)
|
def format_package(package_name, latest_version)
|
||||||
formula = Formula[package_name]
|
formula = formula_data(package_name)
|
||||||
|
|
||||||
return if formula.blank?
|
return if formula.blank?
|
||||||
|
|
||||||
@ -95,4 +95,10 @@ module Repology
|
|||||||
open_pull_requests: pull_requests,
|
open_pull_requests: pull_requests,
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def formula_data(package_name)
|
||||||
|
Formula[package_name]
|
||||||
|
rescue
|
||||||
|
nil
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user