Always prefer default tap.

This commit is contained in:
Markus Reiter 2024-02-12 21:45:07 +01:00
parent 48c9897081
commit c39abef045
No known key found for this signature in database
GPG Key ID: 245293B51702655B

View File

@ -458,19 +458,12 @@ module Cask
when 1 when 1
loaders.first loaders.first
when 2..Float::INFINITY when 2..Float::INFINITY
default_tap_loaders, other_loaders = *loaders.partition { _1.tap.core_cask_tap? } # Always prefer the default tap, i.e. behave the same as if loading from the API.
default_tap_loader = default_tap_loaders.first if default_tap_loaders.count if (default_tap_loader = loaders.find { _1.tap.core_cask_tap? })
return default_tap_loader
end
# Put default tap last so that the error message always recommends raise TapCaskAmbiguityError.new(token, loaders.map(&:tap))
# using the fully-qualified name for non-default taps.
taps = other_loaders.map(&:tap) + default_tap_loaders.map(&:tap)
error = TapCaskAmbiguityError.new(token, taps)
raise error unless default_tap_loader
opoo error if warn
default_tap_loader
end end
end end
end end