diff --git a/Library/Homebrew/language/perl.rb b/Library/Homebrew/language/perl.rb index 3aea71dbf5fb6..f4822239add02 100644 --- a/Library/Homebrew/language/perl.rb +++ b/Library/Homebrew/language/perl.rb @@ -8,7 +8,9 @@ module Language module Perl # Helper module for replacing `perl` shebangs. module Shebang - def self.detected_perl_shebang(formula = self) + module_function + + def detected_perl_shebang(formula = self) perl_path = if formula.deps.map(&:name).include? "perl" Formula["perl"].opt_bin/"perl" elsif formula.uses_from_macos_names.include? "perl" diff --git a/Library/Homebrew/language/perl.rbi b/Library/Homebrew/language/perl.rbi new file mode 100644 index 0000000000000..9be98f1896413 --- /dev/null +++ b/Library/Homebrew/language/perl.rbi @@ -0,0 +1,9 @@ +# typed: strict + +module Language + module Perl + module Shebang + include Kernel + end + end +end diff --git a/Library/Homebrew/language/python.rb b/Library/Homebrew/language/python.rb index a5082f2f9069e..b8d890e840a27 100644 --- a/Library/Homebrew/language/python.rb +++ b/Library/Homebrew/language/python.rb @@ -92,8 +92,10 @@ def self.setup_install_args(prefix, python = "python3") # Mixin module for {Formula} adding shebang rewrite features. module Shebang + module_function + # @private - def self.python_shebang_rewrite_info(python_path) + def python_shebang_rewrite_info(python_path) Utils::Shebang::RewriteInfo.new( %r{^#! ?/usr/bin/(?:env )?python(?:[23](?:\.\d{1,2})?)?( |$)}, 28, # the length of "#! /usr/bin/env pythonx.yyy " @@ -101,7 +103,7 @@ def self.python_shebang_rewrite_info(python_path) ) end - def self.detected_python_shebang(formula = self, use_python_from_path: false) + def detected_python_shebang(formula = self, use_python_from_path: false) python_path = if use_python_from_path "/usr/bin/env python3" else diff --git a/Library/Homebrew/language/python.rbi b/Library/Homebrew/language/python.rbi index ad9e51f69d0dd..ab011b8db7311 100644 --- a/Library/Homebrew/language/python.rbi +++ b/Library/Homebrew/language/python.rbi @@ -1,5 +1,11 @@ # typed: strict -module Language::Python::Virtualenv - requires_ancestor { Formula } +module Language::Python + module Shebang + include Kernel + end + + module Virtualenv + requires_ancestor { Formula } + end end