Add sanity check for cask token
This commit is contained in:
parent
4b3d64d307
commit
4917a35413
@ -10,14 +10,20 @@ module Homebrew
|
|||||||
class << self
|
class << self
|
||||||
extend T::Sig
|
extend T::Sig
|
||||||
|
|
||||||
|
CASK_TOKEN_REGEX = %r{^(homebrew/cask/)?[a-z0-9\-_]+$}.freeze
|
||||||
|
|
||||||
sig { params(token: String).returns(Hash) }
|
sig { params(token: String).returns(Hash) }
|
||||||
def fetch(token)
|
def fetch(token)
|
||||||
token = token.sub(%r{^homebrew/cask/}, "")
|
token = token.delete_prefix("homebrew/cask/")
|
||||||
Homebrew::API.fetch "cask-source/#{token}.rb", json: false
|
Homebrew::API.fetch "cask-source/#{token}.rb", json: false
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(token: String).returns(T::Boolean) }
|
sig { params(token: String).returns(T::Boolean) }
|
||||||
def available?(token)
|
def available?(token)
|
||||||
|
# Sanity check before hitting the API
|
||||||
|
return false unless token.match?(CASK_TOKEN_REGEX)
|
||||||
|
|
||||||
|
begin
|
||||||
fetch token
|
fetch token
|
||||||
true
|
true
|
||||||
rescue ArgumentError
|
rescue ArgumentError
|
||||||
@ -26,4 +32,5 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user