2025-08-19 13:03:08 +01:00
|
|
|
# typed: strict
|
2025-03-18 17:38:37 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module Homebrew
|
|
|
|
module Bundle
|
|
|
|
module Checker
|
|
|
|
class TapChecker < Homebrew::Bundle::Checker::Base
|
|
|
|
PACKAGE_TYPE = :tap
|
|
|
|
PACKAGE_TYPE_NAME = "Tap"
|
|
|
|
|
2025-08-19 13:03:08 +01:00
|
|
|
sig {
|
|
|
|
params(entries: T::Array[Homebrew::Bundle::Dsl::Entry], exit_on_first_error: T::Boolean,
|
|
|
|
no_upgrade: T::Boolean, verbose: T::Boolean).returns(T::Array[String])
|
|
|
|
}
|
2025-03-18 17:38:37 +00:00
|
|
|
def find_actionable(entries, exit_on_first_error: false, no_upgrade: false, verbose: false)
|
|
|
|
requested_taps = format_checkable(entries)
|
|
|
|
return [] if requested_taps.empty?
|
|
|
|
|
2025-03-24 21:55:47 +08:00
|
|
|
require "bundle/tap_dumper"
|
2025-03-18 17:38:37 +00:00
|
|
|
current_taps = Homebrew::Bundle::TapDumper.tap_names
|
|
|
|
(requested_taps - current_taps).map { |entry| "Tap #{entry} needs to be tapped." }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|