Add type signatures for Caskroom
.
This commit is contained in:
parent
181baaafb0
commit
64a0e9a721
@ -18,6 +18,7 @@ AllCops:
|
|||||||
- 'Homebrew/sorbet/rbi/gems/**/*.rbi'
|
- 'Homebrew/sorbet/rbi/gems/**/*.rbi'
|
||||||
- 'Homebrew/sorbet/rbi/hidden-definitions/**/*.rbi'
|
- 'Homebrew/sorbet/rbi/hidden-definitions/**/*.rbi'
|
||||||
- 'Homebrew/sorbet/rbi/todo.rbi'
|
- 'Homebrew/sorbet/rbi/todo.rbi'
|
||||||
|
- 'Homebrew/sorbet/rbi/upstream.rbi'
|
||||||
- 'Homebrew/bin/*'
|
- 'Homebrew/bin/*'
|
||||||
- 'Homebrew/vendor/**/*'
|
- 'Homebrew/vendor/**/*'
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# typed: false
|
# typed: true
|
||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
require "utils/user"
|
require "utils/user"
|
||||||
@ -10,13 +10,13 @@ module Cask
|
|||||||
module Caskroom
|
module Caskroom
|
||||||
extend T::Sig
|
extend T::Sig
|
||||||
|
|
||||||
module_function
|
sig { returns(Pathname) }
|
||||||
|
def self.path
|
||||||
def path
|
|
||||||
@path ||= HOMEBREW_PREFIX.join("Caskroom")
|
@path ||= HOMEBREW_PREFIX.join("Caskroom")
|
||||||
end
|
end
|
||||||
|
|
||||||
def ensure_caskroom_exists
|
sig { void }
|
||||||
|
def self.ensure_caskroom_exists
|
||||||
return if path.exist?
|
return if path.exist?
|
||||||
|
|
||||||
sudo = !path.parent.writable?
|
sudo = !path.parent.writable?
|
||||||
@ -32,8 +32,8 @@ module Cask
|
|||||||
SystemCommand.run("/usr/bin/chgrp", args: ["admin", path], sudo: sudo)
|
SystemCommand.run("/usr/bin/chgrp", args: ["admin", path], sudo: sudo)
|
||||||
end
|
end
|
||||||
|
|
||||||
sig { params(config: Config).returns(T::Array[Cask]) }
|
sig { params(config: T.nilable(Config)).returns(T::Array[Cask]) }
|
||||||
def casks(config: nil)
|
def self.casks(config: nil)
|
||||||
return [] unless path.exist?
|
return [] unless path.exist?
|
||||||
|
|
||||||
Pathname.glob(path.join("*")).sort.select(&:directory?).map do |path|
|
Pathname.glob(path.join("*")).sort.select(&:directory?).map do |path|
|
||||||
|
7
Library/Homebrew/sorbet/rbi/upstream.rbi
Normal file
7
Library/Homebrew/sorbet/rbi/upstream.rbi
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# typed: strict
|
||||||
|
|
||||||
|
class Pathname
|
||||||
|
# https://github.com/sorbet/sorbet/pull/3676
|
||||||
|
sig { params(p1: T.any(String, Pathname), p2: String).returns(T::Array[Pathname]) }
|
||||||
|
def self.glob(p1, p2 = T.unsafe(nil)); end
|
||||||
|
end
|
Loading…
x
Reference in New Issue
Block a user