Try non-nil params
This commit is contained in:
parent
6c18f5c265
commit
899a6c5977
@ -23,7 +23,7 @@ module Homebrew
|
|||||||
PROCESS_TYPE_ADAPTIVE = :adaptive
|
PROCESS_TYPE_ADAPTIVE = :adaptive
|
||||||
|
|
||||||
KEEP_ALIVE_KEYS = [:always, :successful_exit, :crashed, :path].freeze
|
KEEP_ALIVE_KEYS = [:always, :successful_exit, :crashed, :path].freeze
|
||||||
SOCKET_STRING_REGEX = %r{^([a-z]+)://(.+):([0-9]+)$}i
|
SOCKET_STRING_REGEX = %r{^(?<type>[a-z]+)://(?<host>.+):(?<port>[0-9]+)$}i
|
||||||
|
|
||||||
RunParam = T.type_alias { T.nilable(T.any(T::Array[T.any(String, Pathname)], String, Pathname)) }
|
RunParam = T.type_alias { T.nilable(T.any(T::Array[T.any(String, Pathname)], String, Pathname)) }
|
||||||
Sockets = T.type_alias { T::Hash[Symbol, { host: String, port: String, type: String }] }
|
Sockets = T.type_alias { T::Hash[Symbol, { host: String, port: String, type: String }] }
|
||||||
@ -107,8 +107,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||||
def working_dir(path = nil)
|
def working_dir(path = T.unsafe(nil))
|
||||||
if path
|
if path
|
||||||
@working_dir = path.to_s
|
@working_dir = path.to_s
|
||||||
else
|
else
|
||||||
@ -116,8 +116,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||||
def root_dir(path = nil)
|
def root_dir(path = T.unsafe(nil))
|
||||||
if path
|
if path
|
||||||
@root_dir = path.to_s
|
@root_dir = path.to_s
|
||||||
else
|
else
|
||||||
@ -125,8 +125,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||||
def input_path(path = nil)
|
def input_path(path = T.unsafe(nil))
|
||||||
if path
|
if path
|
||||||
@input_path = path.to_s
|
@input_path = path.to_s
|
||||||
else
|
else
|
||||||
@ -134,8 +134,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||||
def log_path(path = nil)
|
def log_path(path = T.unsafe(nil))
|
||||||
if path
|
if path
|
||||||
@log_path = path.to_s
|
@log_path = path.to_s
|
||||||
else
|
else
|
||||||
@ -143,8 +143,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||||
def error_log_path(path = nil)
|
def error_log_path(path = T.unsafe(nil))
|
||||||
if path
|
if path
|
||||||
@error_log_path = path.to_s
|
@error_log_path = path.to_s
|
||||||
else
|
else
|
||||||
@ -153,10 +153,10 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
sig {
|
sig {
|
||||||
params(value: T.nilable(T.any(T::Boolean, T::Hash[Symbol, T.untyped])))
|
params(value: T.any(T::Boolean, T::Hash[Symbol, T.untyped]))
|
||||||
.returns(T.nilable(T::Hash[Symbol, T.untyped]))
|
.returns(T.nilable(T::Hash[Symbol, T.untyped]))
|
||||||
}
|
}
|
||||||
def keep_alive(value = nil)
|
def keep_alive(value = T.unsafe(nil))
|
||||||
case value
|
case value
|
||||||
when nil
|
when nil
|
||||||
@keep_alive
|
@keep_alive
|
||||||
@ -171,8 +171,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(T::Boolean)).returns(T::Boolean) }
|
sig { params(value: T::Boolean).returns(T::Boolean) }
|
||||||
def require_root(value = nil)
|
def require_root(value = T.unsafe(nil))
|
||||||
if value.nil?
|
if value.nil?
|
||||||
@require_root
|
@require_root
|
||||||
else
|
else
|
||||||
@ -186,8 +186,8 @@ module Homebrew
|
|||||||
@require_root.present? && @require_root == true
|
@require_root.present? && @require_root == true
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(T::Boolean)).returns(T.nilable(T::Boolean)) }
|
sig { params(value: T::Boolean).returns(T.nilable(T::Boolean)) }
|
||||||
def run_at_load(value = nil)
|
def run_at_load(value = T.unsafe(nil))
|
||||||
if value.nil?
|
if value.nil?
|
||||||
@run_at_load
|
@run_at_load
|
||||||
else
|
else
|
||||||
@ -196,32 +196,30 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
sig {
|
sig {
|
||||||
params(value: T.nilable(T.any(String, T::Hash[Symbol, String])))
|
params(value: T.any(String, T::Hash[Symbol, String]))
|
||||||
.returns(T::Hash[Symbol, T::Hash[Symbol, String]])
|
.returns(T::Hash[Symbol, T::Hash[Symbol, String]])
|
||||||
}
|
}
|
||||||
def sockets(value = nil)
|
def sockets(value = T.unsafe(nil))
|
||||||
return @sockets if value.nil?
|
return @sockets if value.nil?
|
||||||
|
|
||||||
@sockets = case value
|
value_hash = case value
|
||||||
when String
|
when String
|
||||||
{ listeners: value }
|
{ listeners: value }
|
||||||
when Hash
|
when Hash
|
||||||
value
|
value
|
||||||
end.transform_values do |socket_string|
|
end
|
||||||
|
|
||||||
|
@sockets = T.must(value_hash).transform_values do |socket_string|
|
||||||
match = socket_string.match(SOCKET_STRING_REGEX)
|
match = socket_string.match(SOCKET_STRING_REGEX)
|
||||||
raise TypeError, "Service#sockets a formatted socket definition as <type>://<host>:<port>" unless match
|
raise TypeError, "Service#sockets a formatted socket definition as <type>://<host>:<port>" unless match
|
||||||
|
|
||||||
type = T.must(match[1])
|
|
||||||
host = T.must(match[2])
|
|
||||||
port = T.must(match[3])
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
IPAddr.new(host)
|
IPAddr.new(match[:host])
|
||||||
rescue IPAddr::InvalidAddressError
|
rescue IPAddr::InvalidAddressError
|
||||||
raise TypeError, "Service#sockets expects a valid ipv4 or ipv6 host address"
|
raise TypeError, "Service#sockets expects a valid ipv4 or ipv6 host address"
|
||||||
end
|
end
|
||||||
|
|
||||||
{ host:, port:, type: }
|
{ host: match[:host], port: match[:port], type: match[:type] }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -231,8 +229,8 @@ module Homebrew
|
|||||||
!@keep_alive.empty? && @keep_alive[:always] != false
|
!@keep_alive.empty? && @keep_alive[:always] != false
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(T::Boolean)).returns(T::Boolean) }
|
sig { params(value: T::Boolean).returns(T::Boolean) }
|
||||||
def launch_only_once(value = nil)
|
def launch_only_once(value = T.unsafe(nil))
|
||||||
if value.nil?
|
if value.nil?
|
||||||
@launch_only_once
|
@launch_only_once
|
||||||
else
|
else
|
||||||
@ -240,17 +238,17 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(Integer)).returns(T.nilable(Integer)) }
|
sig { params(value: Integer).returns(T.nilable(Integer)) }
|
||||||
def restart_delay(value = nil)
|
def restart_delay(value = T.unsafe(nil))
|
||||||
if restart_delay
|
if value
|
||||||
@restart_delay = value
|
@restart_delay = value
|
||||||
else
|
else
|
||||||
@restart_delay
|
@restart_delay
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(Symbol)).returns(T.nilable(Symbol)) }
|
sig { params(value: Symbol).returns(T.nilable(Symbol)) }
|
||||||
def process_type(value = nil)
|
def process_type(value = T.unsafe(nil))
|
||||||
case value
|
case value
|
||||||
when nil
|
when nil
|
||||||
@process_type
|
@process_type
|
||||||
@ -263,8 +261,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(Symbol)).returns(T.nilable(Symbol)) }
|
sig { params(value: Symbol).returns(T.nilable(Symbol)) }
|
||||||
def run_type(value = nil)
|
def run_type(value = T.unsafe(nil))
|
||||||
case value
|
case value
|
||||||
when nil
|
when nil
|
||||||
@run_type
|
@run_type
|
||||||
@ -275,8 +273,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(Integer)).returns(T.nilable(Integer)) }
|
sig { params(value: Integer).returns(T.nilable(Integer)) }
|
||||||
def interval(value = nil)
|
def interval(value = T.unsafe(nil))
|
||||||
if value
|
if value
|
||||||
@interval = value
|
@interval = value
|
||||||
else
|
else
|
||||||
@ -284,8 +282,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(String)).returns(T::Hash[Symbol, T.any(Integer, String)]) }
|
sig { params(value: String).returns(T::Hash[Symbol, T.any(Integer, String)]) }
|
||||||
def cron(value = nil)
|
def cron(value = T.unsafe(nil))
|
||||||
if value
|
if value
|
||||||
@cron = parse_cron(value)
|
@cron = parse_cron(value)
|
||||||
else
|
else
|
||||||
@ -344,8 +342,8 @@ module Homebrew
|
|||||||
@environment_variables = variables.transform_values(&:to_s)
|
@environment_variables = variables.transform_values(&:to_s)
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(value: T.nilable(T::Boolean)).returns(T::Boolean) }
|
sig { params(value: T::Boolean).returns(T::Boolean) }
|
||||||
def macos_legacy_timers(value = nil)
|
def macos_legacy_timers(value = T.unsafe(nil))
|
||||||
if value.nil?
|
if value.nil?
|
||||||
@macos_legacy_timers
|
@macos_legacy_timers
|
||||||
else
|
else
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user