dev-cmd/create: add types
Signed-off-by: Michael Cho <michael@michaelcho.dev>
This commit is contained in:
parent
bb753a6c48
commit
3021ba91fd
@ -70,6 +70,7 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
# Create a formula from a tarball URL.
|
# Create a formula from a tarball URL.
|
||||||
|
sig { void }
|
||||||
def create
|
def create
|
||||||
args = create_args.parse
|
args = create_args.parse
|
||||||
|
|
||||||
@ -82,6 +83,7 @@ module Homebrew
|
|||||||
exec_editor path
|
exec_editor path
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig { params(args: CLI::Args).returns(Pathname) }
|
||||||
def create_cask(args:)
|
def create_cask(args:)
|
||||||
url = args.named.first
|
url = args.named.first
|
||||||
name = if args.set_name.blank?
|
name = if args.set_name.blank?
|
||||||
@ -91,7 +93,7 @@ module Homebrew
|
|||||||
else
|
else
|
||||||
args.set_name
|
args.set_name
|
||||||
end
|
end
|
||||||
token = Cask::Utils.token_from(name)
|
token = Cask::Utils.token_from(T.must(name))
|
||||||
|
|
||||||
cask_tap = Tap.fetch(args.tap || "homebrew/cask")
|
cask_tap = Tap.fetch(args.tap || "homebrew/cask")
|
||||||
raise TapUnavailableError, cask_tap.name unless cask_tap.installed?
|
raise TapUnavailableError, cask_tap.name unless cask_tap.installed?
|
||||||
@ -101,7 +103,7 @@ module Homebrew
|
|||||||
raise Cask::CaskAlreadyCreatedError, token if cask_path.exist?
|
raise Cask::CaskAlreadyCreatedError, token if cask_path.exist?
|
||||||
|
|
||||||
version = if args.set_version
|
version = if args.set_version
|
||||||
Version.new(args.set_version)
|
Version.new(T.must(args.set_version))
|
||||||
else
|
else
|
||||||
Version.detect(url.gsub(token, "").gsub(/x86(_64)?/, ""))
|
Version.detect(url.gsub(token, "").gsub(/x86(_64)?/, ""))
|
||||||
end
|
end
|
||||||
@ -153,6 +155,7 @@ module Homebrew
|
|||||||
cask_path
|
cask_path
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig { params(args: CLI::Args).returns(Pathname) }
|
||||||
def create_formula(args:)
|
def create_formula(args:)
|
||||||
mode = if args.autotools?
|
mode = if args.autotools?
|
||||||
:autotools
|
:autotools
|
||||||
@ -229,6 +232,7 @@ module Homebrew
|
|||||||
path
|
path
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig { returns(T.nilable(String)) }
|
||||||
def __gets
|
def __gets
|
||||||
gots = $stdin.gets.chomp
|
gots = $stdin.gets.chomp
|
||||||
gots.empty? ? nil : gots
|
gots.empty? ? nil : gots
|
||||||
|
|||||||
@ -31,6 +31,7 @@ module Homebrew
|
|||||||
raise TapUnavailableError, @tap.name unless @tap.installed?
|
raise TapUnavailableError, @tap.name unless @tap.installed?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig { params(url: String).returns(T.nilable(String)) }
|
||||||
def self.name_from_url(url)
|
def self.name_from_url(url)
|
||||||
stem = Pathname.new(url).stem
|
stem = Pathname.new(url).stem
|
||||||
# special cases first
|
# special cases first
|
||||||
@ -47,6 +48,7 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig { void }
|
||||||
def parse_url
|
def parse_url
|
||||||
@name = FormulaCreator.name_from_url(@url) if @name.blank?
|
@name = FormulaCreator.name_from_url(@url) if @name.blank?
|
||||||
odebug "name_from_url: #{@name}"
|
odebug "name_from_url: #{@name}"
|
||||||
@ -65,6 +67,7 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig { returns(Pathname) }
|
||||||
def write_formula!
|
def write_formula!
|
||||||
raise ArgumentError, "name is blank!" if @name.blank?
|
raise ArgumentError, "name is blank!" if @name.blank?
|
||||||
raise ArgumentError, "tap is blank!" if @tap.blank?
|
raise ArgumentError, "tap is blank!" if @tap.blank?
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user