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,