wip
This commit is contained in:
parent
352f57d753
commit
b2dc842238
@ -60,6 +60,7 @@ group :tests, optional: true do
|
|||||||
gem "simplecov-cobertura", require: false
|
gem "simplecov-cobertura", require: false
|
||||||
end
|
end
|
||||||
group :typecheck, optional: true do
|
group :typecheck, optional: true do
|
||||||
|
gem "method_source", require: false
|
||||||
gem "parlour", require: false
|
gem "parlour", require: false
|
||||||
gem "sorbet-static-and-runtime", require: false
|
gem "sorbet-static-and-runtime", require: false
|
||||||
gem "spoom", require: false
|
gem "spoom", require: false
|
||||||
|
|||||||
@ -176,6 +176,7 @@ DEPENDENCIES
|
|||||||
bootsnap
|
bootsnap
|
||||||
byebug
|
byebug
|
||||||
json_schemer
|
json_schemer
|
||||||
|
method_source
|
||||||
minitest
|
minitest
|
||||||
parallel_tests
|
parallel_tests
|
||||||
parlour
|
parlour
|
||||||
|
|||||||
@ -45,6 +45,7 @@ module Homebrew
|
|||||||
|
|
||||||
HOMEBREW_LIBRARY_PATH.cd do
|
HOMEBREW_LIBRARY_PATH.cd do
|
||||||
if update
|
if update
|
||||||
|
safe_system "bundle", "exec", "tapioca", "dsl"
|
||||||
excluded_gems = [
|
excluded_gems = [
|
||||||
"json", # RBI file is already provided by Sorbet
|
"json", # RBI file is already provided by Sorbet
|
||||||
]
|
]
|
||||||
|
|||||||
@ -2,4 +2,5 @@
|
|||||||
|
|
||||||
module RuboCop::Cop::Cask::CaskHelp
|
module RuboCop::Cop::Cask::CaskHelp
|
||||||
requires_ancestor { RuboCop::Cop::Base }
|
requires_ancestor { RuboCop::Cop::Base }
|
||||||
|
# requires_ancestor { RuboCop::Cop::CommentsHelp }
|
||||||
end
|
end
|
||||||
|
|||||||
1
Library/Homebrew/sorbet/rbi/dsl/.gitattributes
vendored
Normal file
1
Library/Homebrew/sorbet/rbi/dsl/.gitattributes
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
**/*.rbi linguist-generated=true
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/cask/variables.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/cask/variables.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Cask::Variables`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Cask::Variables`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Cask::Variables
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def variable_assignment(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/components_order.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/components_order.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::ComponentsOrder`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::ComponentsOrder`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::ComponentsOrder
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def depends_on_node?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
34
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/dependency_order.rbi
generated
Normal file
34
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/dependency_order.rbi
generated
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::DependencyOrder`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::DependencyOrder`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::DependencyOrder
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def build_with_dependency_node(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def buildtime_dependency?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def dependency_name_node(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def depends_on_node?(*node, **kwargs, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def negate_normal_dependency?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def optional_dependency?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def recommended_dependency?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def test_dependency?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def uses_from_macos_node?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/deprecate_disable_date.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/deprecate_disable_date.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::DeprecateDisableDate`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::DeprecateDisableDate`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::DeprecateDisableDate
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def date(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/deprecate_disable_reason.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/deprecate_disable_reason.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::DeprecateDisableReason`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::DeprecateDisableReason`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::DeprecateDisableReason
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def reason(*node, &block); end
|
||||||
|
end
|
||||||
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/generate_completions_dsl.rbi
generated
Normal file
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/generate_completions_dsl.rbi
generated
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::GenerateCompletionsDSL`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::GenerateCompletionsDSL`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::GenerateCompletionsDSL
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def correctable_shell_completion_node(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def shell_completion_node(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/git_urls.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/git_urls.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::GitUrls`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::GitUrls`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::GitUrls
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def url_has_revision?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/licenses.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/licenses.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::Licenses`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::Licenses`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::Licenses
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def license_exception?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
22
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/miscellaneous.rbi
generated
Normal file
22
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/miscellaneous.rbi
generated
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::Miscellaneous`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::Miscellaneous`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::Miscellaneous
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def conditional_dependencies(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def destructure_hash(*node, **kwargs, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def formula_path_strings(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def hash_dep(*node, **kwargs, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def languageNodeModule?(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/option_declarations.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/option_declarations.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::OptionDeclarations`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::OptionDeclarations`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::OptionDeclarations
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def depends_on_build_with(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/patches.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/patches.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::Patches`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::Patches`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::Patches
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def patch_data?(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/test.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/test.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::Test`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::Test`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::Test
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def test_calls(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/text.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit/text.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAudit::Text`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAudit::Text`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAudit::Text
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def prefix_path(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit_strict/git_urls.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit_strict/git_urls.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAuditStrict::GitUrls`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAuditStrict::GitUrls`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAuditStrict::GitUrls
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def url_has_tag?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit_strict/text.rbi
generated
Normal file
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_audit_strict/text.rbi
generated
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaAuditStrict::Text`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaAuditStrict::Text`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaAuditStrict::Text
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def interpolated_share_path_starts_with(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def share_path_starts_with(*node, &block); end
|
||||||
|
end
|
||||||
19
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_cop.rbi
generated
Normal file
19
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/formula_cop.rbi
generated
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::FormulaCop`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::FormulaCop`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::FormulaCop
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def dependency_name_hash_match?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def dependency_type_hash_match?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def required_dependency?(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T::Boolean) }
|
||||||
|
def required_dependency_name?(*node, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/blank.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/blank.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::Blank`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::Blank`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::Blank
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def nil_or_empty?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/compact_blank.rbi
generated
Normal file
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/compact_blank.rbi
generated
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::CompactBlank`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::CompactBlank`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::CompactBlank
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def reject_with_block?(*node, **kwargs, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def reject_with_block_pass?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/move_to_extend_os.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/move_to_extend_os.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::MoveToExtendOS`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::MoveToExtendOS`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::MoveToExtendOS
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def os_check?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/negate_include.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/negate_include.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::NegateInclude`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::NegateInclude`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::NegateInclude
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def negate_include_call?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/presence.rbi
generated
Normal file
13
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/presence.rbi
generated
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::Presence`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::Presence`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::Presence
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def redundant_negative_receiver_and_other(*node, **kwargs, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def redundant_receiver_and_other(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/present.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/present.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::Present`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::Present`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::Present
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def exists_and_not_empty?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/safe_navigation_with_blank.rbi
generated
Normal file
10
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/homebrew/safe_navigation_with_blank.rbi
generated
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::Homebrew::SafeNavigationWithBlank`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::Homebrew::SafeNavigationWithBlank`.
|
||||||
|
|
||||||
|
class RuboCop::Cop::Homebrew::SafeNavigationWithBlank
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def safe_navigation_blank_in_conditional?(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
28
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/on_system_conditionals_helper.rbi
generated
Normal file
28
Library/Homebrew/sorbet/rbi/dsl/rubo_cop/cop/on_system_conditionals_helper.rbi
generated
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# typed: true
|
||||||
|
|
||||||
|
# DO NOT EDIT MANUALLY
|
||||||
|
# This is an autogenerated file for dynamic methods in `RuboCop::Cop::OnSystemConditionalsHelper`.
|
||||||
|
# Please instead update this file by running `bin/tapioca dsl RuboCop::Cop::OnSystemConditionalsHelper`.
|
||||||
|
|
||||||
|
module RuboCop::Cop::OnSystemConditionalsHelper
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def hardware_cpu_search(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def if_arch_node_search(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def if_base_os_node_search(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def if_macos_version_node_search(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def macos_version_comparison_search(*node, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def on_macos_version_method_call(*node, **kwargs, &block); end
|
||||||
|
|
||||||
|
sig { params(node: RuboCop::AST::Node, kwargs: T.untyped, block: T.untyped).returns(T.untyped) }
|
||||||
|
def on_system_method_call(*node, **kwargs, &block); end
|
||||||
|
end
|
||||||
@ -5035,6 +5035,14 @@ end
|
|||||||
module Homebrew
|
module Homebrew
|
||||||
extend ::T::Private::Methods::MethodHooks
|
extend ::T::Private::Methods::MethodHooks
|
||||||
extend ::T::Private::Methods::SingletonMethodHooks
|
extend ::T::Private::Methods::SingletonMethodHooks
|
||||||
|
extend ::FileUtils::StreamUtils_
|
||||||
|
end
|
||||||
|
|
||||||
|
module HostEnvironmentSimulatorHelper
|
||||||
|
def in_its_own_process_with(*files); end
|
||||||
|
end
|
||||||
|
|
||||||
|
module HostEnvironmentSimulatorHelper
|
||||||
end
|
end
|
||||||
|
|
||||||
class IO
|
class IO
|
||||||
@ -8431,26 +8439,6 @@ module RuboCop::AST::CollectionNode
|
|||||||
def to_sentence(*args, **arg, &block); end
|
def to_sentence(*args, **arg, &block); end
|
||||||
end
|
end
|
||||||
|
|
||||||
class RuboCop::AST::Node
|
|
||||||
def arch_variable?(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def begin_block?(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def block_args(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def block_body(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def cask_block?(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def key_node(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def method_node(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def on_system_block?(param0=T.unsafe(nil)); end
|
|
||||||
|
|
||||||
def val_node(param0=T.unsafe(nil)); end
|
|
||||||
end
|
|
||||||
|
|
||||||
module RuboCop::AST::NodePattern::Sets
|
module RuboCop::AST::NodePattern::Sets
|
||||||
SET_ARM_INTEL = ::T.let(nil, ::T.untyped)
|
SET_ARM_INTEL = ::T.let(nil, ::T.untyped)
|
||||||
SET_BASH_COMPLETION_ZSH_COMPLETION_FISH_COMPLETION = ::T.let(nil, ::T.untyped)
|
SET_BASH_COMPLETION_ZSH_COMPLETION_FISH_COMPLETION = ::T.let(nil, ::T.untyped)
|
||||||
@ -8637,7 +8625,12 @@ end
|
|||||||
|
|
||||||
class RuboCop::Cop::Cask::Variables
|
class RuboCop::Cop::Cask::Variables
|
||||||
include ::RuboCop::Cop::CommentsHelp
|
include ::RuboCop::Cop::CommentsHelp
|
||||||
def variable_assignment(param0); end
|
end
|
||||||
|
|
||||||
|
class RuboCop::Cop::Cop
|
||||||
|
def highlights(); end
|
||||||
|
|
||||||
|
def messages(); end
|
||||||
end
|
end
|
||||||
|
|
||||||
class RuboCop::Cop::FormulaAudit::ComponentsOrder
|
class RuboCop::Cop::FormulaAudit::ComponentsOrder
|
||||||
@ -8791,6 +8784,56 @@ module RuboCop::Cop::OnSystemConditionalsHelper
|
|||||||
def on_system_method_call(param0=T.unsafe(nil)); end
|
def on_system_method_call(param0=T.unsafe(nil)); end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
module RuboCop::RSpec::ExpectOffense
|
||||||
|
def expect_correction(correction, loop: T.unsafe(nil), source: T.unsafe(nil)); end
|
||||||
|
|
||||||
|
def expect_no_corrections(); end
|
||||||
|
|
||||||
|
def expect_no_offenses(source, file=T.unsafe(nil)); end
|
||||||
|
|
||||||
|
def expect_offense(source, file=T.unsafe(nil), severity: T.unsafe(nil), chomp: T.unsafe(nil), **replacements); end
|
||||||
|
|
||||||
|
def format_offense(source, **replacements); end
|
||||||
|
|
||||||
|
def parse_annotations(source, raise_error: T.unsafe(nil), **replacements); end
|
||||||
|
|
||||||
|
def parse_processed_source(source, file=T.unsafe(nil)); end
|
||||||
|
|
||||||
|
def set_formatter_options(); end
|
||||||
|
end
|
||||||
|
|
||||||
|
class RuboCop::RSpec::ExpectOffense::AnnotatedSource
|
||||||
|
def ==(other); end
|
||||||
|
|
||||||
|
def annotations(); end
|
||||||
|
|
||||||
|
def initialize(lines, annotations); end
|
||||||
|
|
||||||
|
def lines(); end
|
||||||
|
|
||||||
|
def match_annotations?(other); end
|
||||||
|
|
||||||
|
def plain_source(); end
|
||||||
|
|
||||||
|
def with_offense_annotations(offenses); end
|
||||||
|
ABBREV = ::T.let(nil, ::T.untyped)
|
||||||
|
ANNOTATION_PATTERN = ::T.let(nil, ::T.untyped)
|
||||||
|
end
|
||||||
|
|
||||||
|
class RuboCop::RSpec::ExpectOffense::AnnotatedSource
|
||||||
|
def self.parse(annotated_source); end
|
||||||
|
end
|
||||||
|
|
||||||
|
module RuboCop::RSpec::ExpectOffense
|
||||||
|
end
|
||||||
|
|
||||||
|
class RuboCop::RSpec::ParallelFormatter
|
||||||
|
def dump_pending(*arg); end
|
||||||
|
end
|
||||||
|
|
||||||
|
class RuboCop::RSpec::ParallelFormatter
|
||||||
|
end
|
||||||
|
|
||||||
class RubyLex
|
class RubyLex
|
||||||
def check_code_block(code, tokens=T.unsafe(nil)); end
|
def check_code_block(code, tokens=T.unsafe(nil)); end
|
||||||
|
|
||||||
|
|||||||
81
Library/Homebrew/sorbet/tapioca/compilers/rubocop.rb
Normal file
81
Library/Homebrew/sorbet/tapioca/compilers/rubocop.rb
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
# typed: strict
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require "method_source"
|
||||||
|
require "rubocop"
|
||||||
|
require_relative "../../../rubocops"
|
||||||
|
|
||||||
|
module Tapioca
|
||||||
|
module Compilers
|
||||||
|
class Rubocop < Tapioca::Dsl::Compiler
|
||||||
|
# FIXME: Enable cop again when https://github.com/sorbet/sorbet/issues/3532 is fixed.
|
||||||
|
# rubocop:disable Style/MutableConstant
|
||||||
|
ConstantType = type_member { { fixed: T::Class[T.anything] } }
|
||||||
|
# rubocop:enable Style/MutableConstant
|
||||||
|
|
||||||
|
sig { override.returns(T::Enumerable[Module]) }
|
||||||
|
def self.gather_constants
|
||||||
|
[
|
||||||
|
RuboCop::Cop::Cask::Variables,
|
||||||
|
RuboCop::Cop::Homebrew::Blank,
|
||||||
|
RuboCop::Cop::Homebrew::CompactBlank,
|
||||||
|
RuboCop::Cop::Homebrew::MoveToExtendOS,
|
||||||
|
RuboCop::Cop::Homebrew::NegateInclude,
|
||||||
|
RuboCop::Cop::Homebrew::Presence,
|
||||||
|
RuboCop::Cop::Homebrew::Present,
|
||||||
|
RuboCop::Cop::Homebrew::SafeNavigationWithBlank,
|
||||||
|
RuboCop::Cop::FormulaAudit::ComponentsOrder,
|
||||||
|
RuboCop::Cop::FormulaAudit::DependencyOrder,
|
||||||
|
RuboCop::Cop::FormulaAudit::DeprecateDisableDate,
|
||||||
|
RuboCop::Cop::FormulaAudit::DeprecateDisableReason,
|
||||||
|
RuboCop::Cop::FormulaAudit::Licenses,
|
||||||
|
RuboCop::Cop::FormulaAudit::OptionDeclarations,
|
||||||
|
RuboCop::Cop::FormulaAudit::GenerateCompletionsDSL,
|
||||||
|
RuboCop::Cop::FormulaAudit::GitUrls,
|
||||||
|
RuboCop::Cop::FormulaAudit::Miscellaneous,
|
||||||
|
RuboCop::Cop::FormulaAudit::Patches,
|
||||||
|
RuboCop::Cop::FormulaAudit::Test,
|
||||||
|
RuboCop::Cop::FormulaAudit::Text,
|
||||||
|
RuboCop::Cop::FormulaAuditStrict::GitUrls,
|
||||||
|
RuboCop::Cop::FormulaAuditStrict::Text,
|
||||||
|
RuboCop::Cop::FormulaCop,
|
||||||
|
RuboCop::Cop::OnSystemConditionalsHelper,
|
||||||
|
]
|
||||||
|
end
|
||||||
|
|
||||||
|
sig { override.void }
|
||||||
|
def decorate
|
||||||
|
root.create_path(constant) do |klass|
|
||||||
|
# For each encrypted attribute we find in the class
|
||||||
|
constant.instance_methods(false).each do |method_name|
|
||||||
|
source = constant.instance_method(method_name).source.lstrip
|
||||||
|
# https://www.rubydoc.info/gems/rubocop-ast/RuboCop/AST/NodePattern/Macros
|
||||||
|
# https://github.com/rubocop/rubocop-ast/blob/master/lib/rubocop/ast/node_pattern.rb
|
||||||
|
# https://github.com/rubocop/rubocop-ast/blob/master/lib/rubocop/ast/node_pattern/method_definer.rb
|
||||||
|
if source.start_with?("def_node_matcher")
|
||||||
|
# https://github.com/Shopify/tapioca/blob/3341a9b/lib/tapioca/rbi_ext/model.rb#L89
|
||||||
|
klass.create_method(
|
||||||
|
method_name.to_s,
|
||||||
|
parameters: [
|
||||||
|
create_rest_param("node", type: "RuboCop::AST::Node"),
|
||||||
|
create_kw_rest_param("kwargs", type: "T.untyped"),
|
||||||
|
create_block_param("block", type: "T.untyped"),
|
||||||
|
],
|
||||||
|
return_type: "T.untyped",
|
||||||
|
)
|
||||||
|
elsif source.start_with?("def_node_search")
|
||||||
|
klass.create_method(
|
||||||
|
method_name.to_s,
|
||||||
|
parameters: [
|
||||||
|
create_rest_param("node", type: "T.untyped"),
|
||||||
|
create_block_param("block", type: "T.untyped"),
|
||||||
|
],
|
||||||
|
return_type: method_name.to_s.end_with?("?") ? "T::Boolean" : "T.untyped",
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
Loading…
x
Reference in New Issue
Block a user