cask_loader: do not auto-tap in FromTapLoader
This commit is contained in:
parent
5240afbbb5
commit
585ec90878
@ -157,7 +157,7 @@ module Cask
|
||||
end
|
||||
|
||||
def load(config:)
|
||||
tap.install unless tap.installed?
|
||||
raise TapCaskUnavailableError.new(tap, token) unless tap.installed?
|
||||
|
||||
super
|
||||
end
|
||||
|
||||
@ -103,6 +103,27 @@ module Cask
|
||||
end
|
||||
end
|
||||
|
||||
# Error when a cask in a specific tap is not available.
|
||||
#
|
||||
# @api private
|
||||
class TapCaskUnavailableError < CaskUnavailableError
|
||||
extend T::Sig
|
||||
|
||||
attr_reader :tap
|
||||
|
||||
def initialize(tap, token)
|
||||
super("#{tap}/#{token}")
|
||||
@tap = tap
|
||||
end
|
||||
|
||||
sig { returns(String) }
|
||||
def to_s
|
||||
s = super
|
||||
s += "\nPlease tap it and then try again: brew tap #{tap}" unless tap.installed?
|
||||
s
|
||||
end
|
||||
end
|
||||
|
||||
# Error when a cask already exists.
|
||||
#
|
||||
# @api private
|
||||
|
||||
@ -132,6 +132,12 @@ module Homebrew
|
||||
|
||||
raise unreadable_error if unreadable_error.present?
|
||||
|
||||
user, repo, short_name = name.downcase.split("/", 3)
|
||||
if repo.present? && short_name.present?
|
||||
tap = Tap.fetch(user, repo)
|
||||
raise TapFormulaOrCaskUnavailableError.new(tap, short_name)
|
||||
end
|
||||
|
||||
raise FormulaOrCaskUnavailableError, name
|
||||
end
|
||||
private :load_formula_or_cask
|
||||
|
||||
@ -97,6 +97,25 @@ class FormulaOrCaskUnavailableError < RuntimeError
|
||||
end
|
||||
end
|
||||
|
||||
# Raised when a formula or cask in a specific tap is not available.
|
||||
class TapFormulaOrCaskUnavailableError < FormulaOrCaskUnavailableError
|
||||
extend T::Sig
|
||||
|
||||
attr_reader :tap
|
||||
|
||||
def initialize(tap, name)
|
||||
super "#{tap}/#{name}"
|
||||
@tap = tap
|
||||
end
|
||||
|
||||
sig { returns(String) }
|
||||
def to_s
|
||||
s = super
|
||||
s += "\nPlease tap it and then try again: brew tap #{tap}" unless tap.installed?
|
||||
s
|
||||
end
|
||||
end
|
||||
|
||||
# Raised when a formula is not available.
|
||||
class FormulaUnavailableError < FormulaOrCaskUnavailableError
|
||||
extend T::Sig
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user