lib/spoom/sorbet.rb in spoom-1.1.8 vs lib/spoom/sorbet.rb in spoom-1.1.9
- old
+ new
@@ -1,6 +1,6 @@
-# typed: true
+# typed: strict
# frozen_string_literal: true
require "spoom/sorbet/config"
require "spoom/sorbet/errors"
require "spoom/sorbet/lsp"
@@ -10,12 +10,12 @@
require "open3"
module Spoom
module Sorbet
CONFIG_PATH = "sorbet/config"
- GEM_PATH = Gem::Specification.find_by_name("sorbet-static").full_gem_path
- BIN_PATH = (Pathname.new(GEM_PATH) / "libexec" / "sorbet").to_s
+ GEM_PATH = T.let(Gem::Specification.find_by_name("sorbet-static").full_gem_path, String)
+ BIN_PATH = T.let((Pathname.new(GEM_PATH) / "libexec" / "sorbet").to_s, String)
SEGFAULT_CODE = 139
class << self
extend T::Sig
@@ -24,32 +24,32 @@
params(
arg: String,
path: String,
capture_err: T::Boolean,
sorbet_bin: T.nilable(String)
- ).returns([String, T::Boolean, Integer])
+ ).returns(ExecResult)
end
def srb(*arg, path: '.', capture_err: false, sorbet_bin: nil)
if sorbet_bin
arg.prepend(sorbet_bin)
else
arg.prepend("bundle", "exec", "srb")
end
- T.unsafe(Spoom).exec(*arg, path: path, capture_err: capture_err)
+ Spoom.exec(*T.unsafe(arg), path: path, capture_err: capture_err)
end
sig do
params(
arg: String,
path: String,
capture_err: T::Boolean,
sorbet_bin: T.nilable(String)
- ).returns([String, T::Boolean, Integer])
+ ).returns(ExecResult)
end
def srb_tc(*arg, path: '.', capture_err: false, sorbet_bin: nil)
arg.prepend("tc") unless sorbet_bin
- T.unsafe(self).srb(*arg, path: path, capture_err: capture_err, sorbet_bin: sorbet_bin)
+ srb(*T.unsafe(arg), path: path, capture_err: capture_err, sorbet_bin: sorbet_bin)
end
# List all files typechecked by Sorbet from its `config`
sig { params(config: Config, path: String).returns(T::Array[String]) }
def srb_files(config, path: '.')
@@ -67,19 +67,19 @@
capture_err: T::Boolean,
sorbet_bin: T.nilable(String)
).returns(T.nilable(String))
end
def srb_version(*arg, path: '.', capture_err: false, sorbet_bin: nil)
- out, res = T.unsafe(self).srb_tc(
+ result = T.let(T.unsafe(self).srb_tc(
"--no-config",
"--version",
*arg,
path: path,
capture_err: capture_err,
sorbet_bin: sorbet_bin
- )
- return nil unless res
- out.split(" ")[2]
+ ), ExecResult)
+ return nil unless result.status
+ result.out.split(" ")[2]
end
sig do
params(
arg: String,