Merge pull request #8286 from MLH-Fellowship/use-cask-args-cache-home
--cache, home: Use convenience methods to load formulae and casks
This commit is contained in:
commit
3eba477b7c
@ -2,8 +2,7 @@
|
||||
|
||||
require "fetch"
|
||||
require "cli/parser"
|
||||
require "cask/cmd"
|
||||
require "cask/cask_loader"
|
||||
require "cask/download"
|
||||
|
||||
module Homebrew
|
||||
extend Fetch
|
||||
@ -37,29 +36,27 @@ module Homebrew
|
||||
|
||||
if args.no_named?
|
||||
puts HOMEBREW_CACHE
|
||||
elsif args.formula?
|
||||
args.named.each do |name|
|
||||
print_formula_cache name, args: args
|
||||
end
|
||||
return
|
||||
end
|
||||
|
||||
formulae_or_casks = if args.formula?
|
||||
args.formulae
|
||||
elsif args.cask?
|
||||
args.named.each do |name|
|
||||
print_cask_cache name
|
||||
end
|
||||
args.loaded_casks
|
||||
else
|
||||
args.named.each do |name|
|
||||
print_formula_cache name, args: args
|
||||
rescue FormulaUnavailableError
|
||||
begin
|
||||
print_cask_cache name
|
||||
rescue Cask::CaskUnavailableError
|
||||
odie "No available formula or cask with the name \"#{name}\""
|
||||
end
|
||||
args.formulae_and_casks
|
||||
end
|
||||
|
||||
formulae_or_casks.each do |formula_or_cask|
|
||||
if formula_or_cask.is_a? Formula
|
||||
print_formula_cache formula_or_cask, args: args
|
||||
else
|
||||
print_cask_cache formula_or_cask
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def print_formula_cache(name, args:)
|
||||
formula = Formulary.factory(name, force_bottle: args.force_bottle?, flags: args.flags_only)
|
||||
def print_formula_cache(formula, args:)
|
||||
if fetch_bottle?(formula, args: args)
|
||||
puts formula.bottle.cached_download
|
||||
else
|
||||
@ -67,8 +64,7 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
def print_cask_cache(name)
|
||||
cask = Cask::CaskLoader.load name
|
||||
puts Cask::Cmd::Cache.cached_location(cask)
|
||||
def print_cask_cache(cask)
|
||||
puts Cask::Download.new(cask).downloader.cached_location
|
||||
end
|
||||
end
|
||||
|
||||
@ -1,8 +1,6 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require "cli/parser"
|
||||
require "cask/cask_loader"
|
||||
require "cask/exceptions"
|
||||
|
||||
module Homebrew
|
||||
module_function
|
||||
@ -23,21 +21,22 @@ module Homebrew
|
||||
|
||||
if args.no_named?
|
||||
exec_browser HOMEBREW_WWW
|
||||
return
|
||||
end
|
||||
|
||||
homepages = args.formulae_and_casks.map do |formula_or_cask|
|
||||
puts "Opening homepage for #{name_of(formula_or_cask)}"
|
||||
formula_or_cask.homepage
|
||||
end
|
||||
|
||||
exec_browser(*homepages)
|
||||
end
|
||||
|
||||
def name_of(formula_or_cask)
|
||||
if formula_or_cask.is_a? Formula
|
||||
"Formula #{formula_or_cask.name}"
|
||||
else
|
||||
homepages = args.named.map do |name|
|
||||
f = Formulary.factory(name)
|
||||
puts "Opening homepage for formula #{name}"
|
||||
f.homepage
|
||||
rescue FormulaUnavailableError
|
||||
begin
|
||||
c = Cask::CaskLoader.load(name)
|
||||
puts "Opening homepage for cask #{name}"
|
||||
c.homepage
|
||||
rescue Cask::CaskUnavailableError
|
||||
odie "No available formula or cask with the name \"#{name}\""
|
||||
end
|
||||
end
|
||||
exec_browser(*homepages)
|
||||
"Cask #{formula_or_cask.token}"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user