Merge pull request #20309 from Homebrew/dependabot/all-f8dbd9efe6
Bump the "all" group with 3 updates across multiple ecosystems
This commit is contained in:
commit
4d14be89e9
2
.github/workflows/actionlint.yml
vendored
2
.github/workflows/actionlint.yml
vendored
@ -93,7 +93,7 @@ jobs:
|
|||||||
path: results.sarif
|
path: results.sarif
|
||||||
|
|
||||||
- name: Upload SARIF file
|
- name: Upload SARIF file
|
||||||
uses: github/codeql-action/upload-sarif@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
|
uses: github/codeql-action/upload-sarif@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||||
with:
|
with:
|
||||||
sarif_file: results.sarif
|
sarif_file: results.sarif
|
||||||
category: zizmor
|
category: zizmor
|
||||||
|
4
.github/workflows/codeql-analysis.yml
vendored
4
.github/workflows/codeql-analysis.yml
vendored
@ -27,7 +27,7 @@ jobs:
|
|||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
uses: github/codeql-action/init@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
|
uses: github/codeql-action/init@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||||
with:
|
with:
|
||||||
languages: ruby
|
languages: ruby
|
||||||
config: |
|
config: |
|
||||||
@ -35,4 +35,4 @@ jobs:
|
|||||||
- Library/Homebrew/vendor
|
- Library/Homebrew/vendor
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
- name: Perform CodeQL Analysis
|
||||||
uses: github/codeql-action/analyze@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
|
uses: github/codeql-action/analyze@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||||
|
@ -32,9 +32,9 @@ GEM
|
|||||||
minitest (5.25.5)
|
minitest (5.25.5)
|
||||||
netrc (0.11.0)
|
netrc (0.11.0)
|
||||||
parallel (1.27.0)
|
parallel (1.27.0)
|
||||||
parallel_tests (5.3.0)
|
parallel_tests (5.3.1)
|
||||||
parallel
|
parallel
|
||||||
parser (3.3.8.0)
|
parser (3.3.9.0)
|
||||||
ast (~> 2.4.1)
|
ast (~> 2.4.1)
|
||||||
racc
|
racc
|
||||||
patchelf (1.5.1)
|
patchelf (1.5.1)
|
||||||
@ -90,7 +90,7 @@ GEM
|
|||||||
rubocop-ast (>= 1.45.1, < 2.0)
|
rubocop-ast (>= 1.45.1, < 2.0)
|
||||||
ruby-progressbar (~> 1.7)
|
ruby-progressbar (~> 1.7)
|
||||||
unicode-display_width (>= 2.4.0, < 4.0)
|
unicode-display_width (>= 2.4.0, < 4.0)
|
||||||
rubocop-ast (1.45.1)
|
rubocop-ast (1.46.0)
|
||||||
parser (>= 3.3.7.2)
|
parser (>= 3.3.7.2)
|
||||||
prism (~> 1.4)
|
prism (~> 1.4)
|
||||||
rubocop-md (2.0.1)
|
rubocop-md (2.0.1)
|
||||||
@ -124,16 +124,16 @@ GEM
|
|||||||
simplecov-html (0.13.2)
|
simplecov-html (0.13.2)
|
||||||
simplecov_json_formatter (0.1.4)
|
simplecov_json_formatter (0.1.4)
|
||||||
simpleidn (0.2.3)
|
simpleidn (0.2.3)
|
||||||
sorbet (0.5.12230)
|
sorbet (0.5.12357)
|
||||||
sorbet-static (= 0.5.12230)
|
sorbet-static (= 0.5.12357)
|
||||||
sorbet-runtime (0.5.12230)
|
sorbet-runtime (0.5.12357)
|
||||||
sorbet-static (0.5.12230-aarch64-linux)
|
sorbet-static (0.5.12357-aarch64-linux)
|
||||||
sorbet-static (0.5.12230-universal-darwin)
|
sorbet-static (0.5.12357-universal-darwin)
|
||||||
sorbet-static (0.5.12230-x86_64-linux)
|
sorbet-static (0.5.12357-x86_64-linux)
|
||||||
sorbet-static-and-runtime (0.5.12230)
|
sorbet-static-and-runtime (0.5.12357)
|
||||||
sorbet (= 0.5.12230)
|
sorbet (= 0.5.12357)
|
||||||
sorbet-runtime (= 0.5.12230)
|
sorbet-runtime (= 0.5.12357)
|
||||||
spoom (1.7.4)
|
spoom (1.7.5)
|
||||||
erubi (>= 1.10.0)
|
erubi (>= 1.10.0)
|
||||||
prism (>= 0.28.0)
|
prism (>= 0.28.0)
|
||||||
rbi (>= 0.3.3)
|
rbi (>= 0.3.3)
|
||||||
@ -167,7 +167,8 @@ GEM
|
|||||||
PLATFORMS
|
PLATFORMS
|
||||||
aarch64-linux
|
aarch64-linux
|
||||||
arm-linux
|
arm-linux
|
||||||
universal-darwin
|
arm64-darwin
|
||||||
|
x86_64-darwin
|
||||||
x86_64-linux
|
x86_64-linux
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
@ -219,4 +220,4 @@ RUBY VERSION
|
|||||||
ruby 3.4.5p51
|
ruby 3.4.5p51
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.6.9
|
2.6.8
|
||||||
|
@ -4,9 +4,9 @@
|
|||||||
#
|
#
|
||||||
# pip-compile --allow-unsafe --generate-hashes --strip-extras requirements.in
|
# pip-compile --allow-unsafe --generate-hashes --strip-extras requirements.in
|
||||||
#
|
#
|
||||||
certifi==2025.7.9 \
|
certifi==2025.7.14 \
|
||||||
--hash=sha256:c1d2ec05395148ee10cf672ffc28cd37ea0ab0d99f9cc74c43e588cbd111b079 \
|
--hash=sha256:6b31f564a415d79ee77df69d757bb49a5bb53bd9f756cbbe24394ffd6fc1f4b2 \
|
||||||
--hash=sha256:d842783a14f8fdd646895ac26f719a061408834473cfc10203f6a575beb15d39
|
--hash=sha256:8ea99dbdfaaf2ba2f9bac77b9249ef62ec5218e7c2b2e903378ed5fccf765995
|
||||||
# via influxdb3-python
|
# via influxdb3-python
|
||||||
influxdb3-python==0.14.0 \
|
influxdb3-python==0.14.0 \
|
||||||
--hash=sha256:63318c1eb53e026d1d793ef00fef51510acd40dd80bd69b528bf05332757dc67 \
|
--hash=sha256:63318c1eb53e026d1d793ef00fef51510acd40dd80bd69b528bf05332757dc67 \
|
||||||
|
@ -235,7 +235,7 @@ class RuboCop::AST::AsgnNode < ::RuboCop::AST::Node
|
|||||||
end
|
end
|
||||||
|
|
||||||
# Common functionality for primitive literal nodes: `sym`, `str`,
|
# Common functionality for primitive literal nodes: `sym`, `str`,
|
||||||
# `int`, `float`, `rational`...
|
# `int`, `float`, `rational`, `complex`...
|
||||||
#
|
#
|
||||||
# source://rubocop-ast//lib/rubocop/ast/node/mixin/basic_literal_node.rb#7
|
# source://rubocop-ast//lib/rubocop/ast/node/mixin/basic_literal_node.rb#7
|
||||||
module RuboCop::AST::BasicLiteralNode
|
module RuboCop::AST::BasicLiteralNode
|
||||||
@ -452,7 +452,7 @@ end
|
|||||||
# parser = Parser::Ruby25.new(builder)
|
# parser = Parser::Ruby25.new(builder)
|
||||||
# root_node = parser.parse(buffer)
|
# root_node = parser.parse(buffer)
|
||||||
#
|
#
|
||||||
# source://rubocop-ast//lib/rubocop/ast/builder.rb#128
|
# source://rubocop-ast//lib/rubocop/ast/builder.rb#129
|
||||||
class RuboCop::AST::Builder < ::Parser::Builders::Default
|
class RuboCop::AST::Builder < ::Parser::Builders::Default
|
||||||
include ::RuboCop::AST::BuilderExtensions
|
include ::RuboCop::AST::BuilderExtensions
|
||||||
end
|
end
|
||||||
@ -468,7 +468,7 @@ module RuboCop::AST::BuilderExtensions
|
|||||||
# @api private
|
# @api private
|
||||||
# @return [Node] the generated node
|
# @return [Node] the generated node
|
||||||
#
|
#
|
||||||
# source://rubocop-ast//lib/rubocop/ast/builder.rb#100
|
# source://rubocop-ast//lib/rubocop/ast/builder.rb#101
|
||||||
def n(type, children, source_map); end
|
def n(type, children, source_map); end
|
||||||
|
|
||||||
# Overwrite the base method to allow strings with invalid encoding
|
# Overwrite the base method to allow strings with invalid encoding
|
||||||
@ -476,14 +476,14 @@ module RuboCop::AST::BuilderExtensions
|
|||||||
#
|
#
|
||||||
# @api private
|
# @api private
|
||||||
#
|
#
|
||||||
# source://rubocop-ast//lib/rubocop/ast/builder.rb#106
|
# source://rubocop-ast//lib/rubocop/ast/builder.rb#107
|
||||||
def string_value(token); end
|
def string_value(token); end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# @api private
|
# @api private
|
||||||
#
|
#
|
||||||
# source://rubocop-ast//lib/rubocop/ast/builder.rb#112
|
# source://rubocop-ast//lib/rubocop/ast/builder.rb#113
|
||||||
def node_klass(type); end
|
def node_klass(type); end
|
||||||
|
|
||||||
class << self
|
class << self
|
||||||
@ -1088,6 +1088,16 @@ end
|
|||||||
# source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#9
|
# source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#9
|
||||||
RuboCop::AST::CollectionNode::ARRAY_METHODS = T.let(T.unsafe(nil), Array)
|
RuboCop::AST::CollectionNode::ARRAY_METHODS = T.let(T.unsafe(nil), Array)
|
||||||
|
|
||||||
|
# A node extension for `complex` nodes. This will be used in place of a plain
|
||||||
|
# node when the builder constructs the AST, making its methods available to
|
||||||
|
# all `complex` nodes within RuboCop.
|
||||||
|
#
|
||||||
|
# source://rubocop-ast//lib/rubocop/ast/node/complex_node.rb#8
|
||||||
|
class RuboCop::AST::ComplexNode < ::RuboCop::AST::Node
|
||||||
|
include ::RuboCop::AST::BasicLiteralNode
|
||||||
|
include ::RuboCop::AST::NumericNode
|
||||||
|
end
|
||||||
|
|
||||||
# Common functionality for nodes that have conditions:
|
# Common functionality for nodes that have conditions:
|
||||||
# `if`, `while`, `until`, `case`.
|
# `if`, `while`, `until`, `case`.
|
||||||
# This currently doesn't include `when` nodes, because they have multiple
|
# This currently doesn't include `when` nodes, because they have multiple
|
||||||
@ -5828,7 +5838,7 @@ RuboCop::AST::NodePattern::Sets::SET_____2 = T.let(T.unsafe(nil), Set)
|
|||||||
# source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#55
|
# source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#55
|
||||||
RuboCop::AST::NodePattern::VAR = T.let(T.unsafe(nil), String)
|
RuboCop::AST::NodePattern::VAR = T.let(T.unsafe(nil), String)
|
||||||
|
|
||||||
# Common functionality for primitive numeric nodes: `int`, `float`, `rational`...
|
# Common functionality for primitive numeric nodes: `int`, `float`, `rational`, `complex`...
|
||||||
#
|
#
|
||||||
# source://rubocop-ast//lib/rubocop/ast/node/mixin/numeric_node.rb#6
|
# source://rubocop-ast//lib/rubocop/ast/node/mixin/numeric_node.rb#6
|
||||||
module RuboCop::AST::NumericNode
|
module RuboCop::AST::NumericNode
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
# DO NOT EDIT MANUALLY
|
# DO NOT EDIT MANUALLY
|
||||||
# This is an autogenerated file for types exported from the `spoom` gem.
|
# This is an autogenerated file for types exported from the `spoom` gem.
|
||||||
# Please instead update this file by running `spoom srb sigs export`.
|
# Please instead update this file by running `bundle exec spoom srb sigs export`.
|
||||||
|
|
||||||
# source://spoom//lib/spoom.rb#7
|
# source://spoom//lib/spoom.rb#7
|
||||||
module Spoom
|
module Spoom
|
||||||
@ -189,10 +189,10 @@ class Spoom::Cli::Srb::Assertions < ::Thor
|
|||||||
# source://spoom//lib/spoom/cli/srb.rb#17
|
# source://spoom//lib/spoom/cli/srb.rb#17
|
||||||
def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
|
def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/assertions.rb#29
|
# source://spoom//lib/spoom/cli/srb/assertions.rb#42
|
||||||
def transform_files(files, &block); end
|
def transform_files(files, &block); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/assertions.rb#13
|
# source://spoom//lib/spoom/cli/srb/assertions.rb#18
|
||||||
def translate(*paths); end
|
def translate(*paths); end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -353,22 +353,22 @@ class Spoom::Cli::Srb::Sigs < ::Thor
|
|||||||
include ::Spoom::Colorize
|
include ::Spoom::Colorize
|
||||||
include ::Spoom::Cli::Helper
|
include ::Spoom::Cli::Helper
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/sigs.rb#216
|
# source://spoom//lib/spoom/cli/srb/sigs.rb#222
|
||||||
def exec(context, command); end
|
def exec(context, command); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/sigs.rb#87
|
# source://spoom//lib/spoom/cli/srb/sigs.rb#93
|
||||||
def export(output_path = T.unsafe(nil)); end
|
def export(output_path = T.unsafe(nil)); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb.rb#32
|
# source://spoom//lib/spoom/cli/srb.rb#32
|
||||||
def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
|
def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/sigs.rb#68
|
# source://spoom//lib/spoom/cli/srb/sigs.rb#74
|
||||||
def strip(*paths); end
|
def strip(*paths); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/sigs.rb#193
|
# source://spoom//lib/spoom/cli/srb/sigs.rb#199
|
||||||
def transform_files(files, &block); end
|
def transform_files(files, &block); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/cli/srb/sigs.rb#20
|
# source://spoom//lib/spoom/cli/srb/sigs.rb#23
|
||||||
def translate(*paths); end
|
def translate(*paths); end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -898,6 +898,7 @@ class Spoom::Coverage::Cards::Erb < ::Spoom::Coverage::Cards::Card
|
|||||||
def initialize; end
|
def initialize; end
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/coverage/report.rb#109
|
# source://spoom//lib/spoom/coverage/report.rb#109
|
||||||
sig { abstract.returns(::String) }
|
sig { abstract.returns(::String) }
|
||||||
@ -1062,6 +1063,7 @@ class Spoom::Coverage::D3::Base
|
|||||||
def id; end
|
def id; end
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/coverage/d3/base.rb#45
|
# source://spoom//lib/spoom/coverage/d3/base.rb#45
|
||||||
sig { abstract.returns(::String) }
|
sig { abstract.returns(::String) }
|
||||||
@ -1230,6 +1232,7 @@ class Spoom::Coverage::D3::Timeline < ::Spoom::Coverage::D3::Base
|
|||||||
def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
|
def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/coverage/d3/timeline.rb#122
|
# source://spoom//lib/spoom/coverage/d3/timeline.rb#122
|
||||||
sig { abstract.returns(::String) }
|
sig { abstract.returns(::String) }
|
||||||
@ -1404,6 +1407,7 @@ class Spoom::Coverage::Page < ::Spoom::Coverage::Template
|
|||||||
def body_html; end
|
def body_html; end
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/coverage/report.rb#73
|
# source://spoom//lib/spoom/coverage/report.rb#73
|
||||||
sig { abstract.returns(T::Array[::Spoom::Coverage::Cards::Card]) }
|
sig { abstract.returns(T::Array[::Spoom::Coverage::Cards::Card]) }
|
||||||
@ -3152,6 +3156,7 @@ module Spoom::LSP::PrintableSymbol
|
|||||||
interface!
|
interface!
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/lsp/structures.rb#13
|
# source://spoom//lib/spoom/sorbet/lsp/structures.rb#13
|
||||||
sig { abstract.params(printer: ::Spoom::LSP::SymbolPrinter).void }
|
sig { abstract.params(printer: ::Spoom::LSP::SymbolPrinter).void }
|
||||||
@ -4702,30 +4707,43 @@ module Spoom::Sorbet::Translate
|
|||||||
# Converts all the RBS comments in the given Ruby code to `sig` nodes.
|
# Converts all the RBS comments in the given Ruby code to `sig` nodes.
|
||||||
# It also handles type members and class annotations.
|
# It also handles type members and class annotations.
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate.rb#36
|
# source://spoom//lib/spoom/sorbet/translate.rb#57
|
||||||
sig { params(ruby_contents: ::String, file: ::String, max_line_length: T.nilable(::Integer)).returns(::String) }
|
sig { params(ruby_contents: ::String, file: ::String, max_line_length: T.nilable(::Integer)).returns(::String) }
|
||||||
def rbs_comments_to_sorbet_sigs(ruby_contents, file:, max_line_length: T.unsafe(nil)); end
|
def rbs_comments_to_sorbet_sigs(ruby_contents, file:, max_line_length: T.unsafe(nil)); end
|
||||||
|
|
||||||
# Converts all `T.let` and `T.cast` nodes to RBS comments in the given Ruby code.
|
# Converts all `T.let` and `T.cast` nodes to RBS comments in the given Ruby code.
|
||||||
# It also handles type members and class annotations.
|
# It also handles type members and class annotations.
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate.rb#43
|
# source://spoom//lib/spoom/sorbet/translate.rb#72
|
||||||
sig { params(ruby_contents: ::String, file: ::String).returns(::String) }
|
sig do
|
||||||
def sorbet_assertions_to_rbs_comments(ruby_contents, file:); end
|
params(
|
||||||
|
ruby_contents: ::String,
|
||||||
|
file: ::String,
|
||||||
|
translate_t_let: T::Boolean,
|
||||||
|
translate_t_cast: T::Boolean,
|
||||||
|
translate_t_bind: T::Boolean,
|
||||||
|
translate_t_must: T::Boolean,
|
||||||
|
translate_t_unsafe: T::Boolean
|
||||||
|
).returns(::String)
|
||||||
|
end
|
||||||
|
def sorbet_assertions_to_rbs_comments(ruby_contents, file:, translate_t_let: T.unsafe(nil), translate_t_cast: T.unsafe(nil), translate_t_bind: T.unsafe(nil), translate_t_must: T.unsafe(nil), translate_t_unsafe: T.unsafe(nil)); end
|
||||||
|
|
||||||
# Converts all `sig` nodes to RBS comments in the given Ruby code.
|
# Converts all `sig` nodes to RBS comments in the given Ruby code.
|
||||||
# It also handles type members and class annotations.
|
# It also handles type members and class annotations.
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate.rb#29
|
# source://spoom//lib/spoom/sorbet/translate.rb#37
|
||||||
sig do
|
sig do
|
||||||
params(
|
params(
|
||||||
ruby_contents: ::String,
|
ruby_contents: ::String,
|
||||||
file: ::String,
|
file: ::String,
|
||||||
positional_names: T::Boolean,
|
positional_names: T::Boolean,
|
||||||
max_line_length: T.nilable(::Integer)
|
max_line_length: T.nilable(::Integer),
|
||||||
|
translate_generics: T::Boolean,
|
||||||
|
translate_helpers: T::Boolean,
|
||||||
|
translate_abstract_methods: T::Boolean
|
||||||
).returns(::String)
|
).returns(::String)
|
||||||
end
|
end
|
||||||
def sorbet_sigs_to_rbs_comments(ruby_contents, file:, positional_names: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
|
def sorbet_sigs_to_rbs_comments(ruby_contents, file:, positional_names: T.unsafe(nil), max_line_length: T.unsafe(nil), translate_generics: T.unsafe(nil), translate_helpers: T.unsafe(nil), translate_abstract_methods: T.unsafe(nil)); end
|
||||||
|
|
||||||
# Deletes all `sig` nodes from the given Ruby code.
|
# Deletes all `sig` nodes from the given Ruby code.
|
||||||
# It doesn't handle type members and class annotations.
|
# It doesn't handle type members and class annotations.
|
||||||
@ -4749,7 +4767,7 @@ class Spoom::Sorbet::Translate::RBSCommentsToSorbetSigs < ::Spoom::Sorbet::Trans
|
|||||||
sig { params(ruby_contents: ::String, file: ::String, max_line_length: T.nilable(::Integer)).void }
|
sig { params(ruby_contents: ::String, file: ::String, max_line_length: T.nilable(::Integer)).void }
|
||||||
def initialize(ruby_contents, file:, max_line_length: T.unsafe(nil)); end
|
def initialize(ruby_contents, file:, max_line_length: T.unsafe(nil)); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#73
|
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#49
|
||||||
sig { override.params(node: ::Prism::CallNode).void }
|
sig { override.params(node: ::Prism::CallNode).void }
|
||||||
def visit_call_node(node); end
|
def visit_call_node(node); end
|
||||||
|
|
||||||
@ -4773,7 +4791,7 @@ class Spoom::Sorbet::Translate::RBSCommentsToSorbetSigs < ::Spoom::Sorbet::Trans
|
|||||||
|
|
||||||
# @return [Boolean]
|
# @return [Boolean]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#242
|
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#260
|
||||||
sig do
|
sig do
|
||||||
params(
|
params(
|
||||||
node: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode),
|
node: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode),
|
||||||
@ -4782,15 +4800,19 @@ class Spoom::Sorbet::Translate::RBSCommentsToSorbetSigs < ::Spoom::Sorbet::Trans
|
|||||||
end
|
end
|
||||||
def already_extends?(node, constant_regex); end
|
def already_extends?(node, constant_regex); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#123
|
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#141
|
||||||
sig { params(node: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode)).void }
|
sig { params(node: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode)).void }
|
||||||
def apply_class_annotations(node); end
|
def apply_class_annotations(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#221
|
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#239
|
||||||
sig { params(annotations: T::Array[::Spoom::RBS::Annotation], sig: ::RBI::Sig).void }
|
sig { params(annotations: T::Array[::Spoom::RBS::Annotation], sig: ::RBI::Sig).void }
|
||||||
def apply_member_annotations(annotations, sig); end
|
def apply_member_annotations(annotations, sig); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#85
|
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#105
|
||||||
|
sig { params(def_node: ::Prism::DefNode, comments: ::Spoom::RBS::Comments).void }
|
||||||
|
def rewrite_def(def_node, comments); end
|
||||||
|
|
||||||
|
# source://spoom//lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs.rb#67
|
||||||
sig { params(node: ::Prism::CallNode).void }
|
sig { params(node: ::Prism::CallNode).void }
|
||||||
def visit_attr(node); end
|
def visit_attr(node); end
|
||||||
end
|
end
|
||||||
@ -4799,11 +4821,27 @@ end
|
|||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#8
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#8
|
||||||
class Spoom::Sorbet::Translate::SorbetAssertionsToRBSComments < ::Spoom::Sorbet::Translate::Translator
|
class Spoom::Sorbet::Translate::SorbetAssertionsToRBSComments < ::Spoom::Sorbet::Translate::Translator
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#22
|
# @return [SorbetAssertionsToRBSComments] a new instance of SorbetAssertionsToRBSComments
|
||||||
|
#
|
||||||
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#20
|
||||||
|
sig do
|
||||||
|
params(
|
||||||
|
ruby_contents: ::String,
|
||||||
|
file: ::String,
|
||||||
|
translate_t_let: T::Boolean,
|
||||||
|
translate_t_cast: T::Boolean,
|
||||||
|
translate_t_bind: T::Boolean,
|
||||||
|
translate_t_must: T::Boolean,
|
||||||
|
translate_t_unsafe: T::Boolean
|
||||||
|
).void
|
||||||
|
end
|
||||||
|
def initialize(ruby_contents, file:, translate_t_let: T.unsafe(nil), translate_t_cast: T.unsafe(nil), translate_t_bind: T.unsafe(nil), translate_t_must: T.unsafe(nil), translate_t_unsafe: T.unsafe(nil)); end
|
||||||
|
|
||||||
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#49
|
||||||
sig { override.params(node: ::Prism::IfNode).void }
|
sig { override.params(node: ::Prism::IfNode).void }
|
||||||
def visit_if_node(node); end
|
def visit_if_node(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#13
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#40
|
||||||
sig { override.params(node: ::Prism::StatementsNode).void }
|
sig { override.params(node: ::Prism::StatementsNode).void }
|
||||||
def visit_statements_node(node); end
|
def visit_statements_node(node); end
|
||||||
|
|
||||||
@ -4811,19 +4849,19 @@ class Spoom::Sorbet::Translate::SorbetAssertionsToRBSComments < ::Spoom::Sorbet:
|
|||||||
|
|
||||||
# @return [Boolean]
|
# @return [Boolean]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#135
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#166
|
||||||
sig { params(node: ::Prism::Node).returns(T::Boolean) }
|
sig { params(node: ::Prism::Node).returns(T::Boolean) }
|
||||||
def at_end_of_line?(node); end
|
def at_end_of_line?(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#81
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#108
|
||||||
sig { params(call: ::Prism::CallNode).returns(::String) }
|
sig { params(call: ::Prism::CallNode).returns(::String) }
|
||||||
def build_rbs_annotation(call); end
|
def build_rbs_annotation(call); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#142
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#173
|
||||||
sig { params(assign: ::Prism::Node, value: ::Prism::Node).returns(::String) }
|
sig { params(assign: ::Prism::Node, value: ::Prism::Node).returns(::String) }
|
||||||
def dedent_value(assign, value); end
|
def dedent_value(assign, value); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#44
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#71
|
||||||
sig { params(node: ::Prism::Node).returns(T::Boolean) }
|
sig { params(node: ::Prism::Node).returns(T::Boolean) }
|
||||||
def maybe_translate_assertion(node); end
|
def maybe_translate_assertion(node); end
|
||||||
|
|
||||||
@ -4831,7 +4869,7 @@ class Spoom::Sorbet::Translate::SorbetAssertionsToRBSComments < ::Spoom::Sorbet:
|
|||||||
#
|
#
|
||||||
# @return [Boolean]
|
# @return [Boolean]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#106
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#133
|
||||||
sig { params(node: T.nilable(::Prism::Node)).returns(T::Boolean) }
|
sig { params(node: T.nilable(::Prism::Node)).returns(T::Boolean) }
|
||||||
def t?(node); end
|
def t?(node); end
|
||||||
|
|
||||||
@ -4839,9 +4877,9 @@ class Spoom::Sorbet::Translate::SorbetAssertionsToRBSComments < ::Spoom::Sorbet:
|
|||||||
#
|
#
|
||||||
# @return [Boolean]
|
# @return [Boolean]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#119
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#146
|
||||||
sig { params(node: ::Prism::CallNode).returns(T::Boolean) }
|
sig { params(node: ::Prism::CallNode).returns(T::Boolean) }
|
||||||
def t_annotation?(node); end
|
def translatable_annotation?(node); end
|
||||||
end
|
end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#9
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_assertions_to_rbs_comments.rb#9
|
||||||
@ -4854,44 +4892,47 @@ Spoom::Sorbet::Translate::SorbetAssertionsToRBSComments::LINE_BREAK = T.let(T.un
|
|||||||
class Spoom::Sorbet::Translate::SorbetSigsToRBSComments < ::Spoom::Sorbet::Translate::Translator
|
class Spoom::Sorbet::Translate::SorbetSigsToRBSComments < ::Spoom::Sorbet::Translate::Translator
|
||||||
# @return [SorbetSigsToRBSComments] a new instance of SorbetSigsToRBSComments
|
# @return [SorbetSigsToRBSComments] a new instance of SorbetSigsToRBSComments
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#11
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#19
|
||||||
sig do
|
sig do
|
||||||
params(
|
params(
|
||||||
ruby_contents: ::String,
|
ruby_contents: ::String,
|
||||||
file: ::String,
|
file: ::String,
|
||||||
positional_names: T::Boolean,
|
positional_names: T::Boolean,
|
||||||
max_line_length: T.nilable(::Integer)
|
max_line_length: T.nilable(::Integer),
|
||||||
|
translate_generics: T::Boolean,
|
||||||
|
translate_helpers: T::Boolean,
|
||||||
|
translate_abstract_methods: T::Boolean
|
||||||
).void
|
).void
|
||||||
end
|
end
|
||||||
def initialize(ruby_contents, file:, positional_names:, max_line_length: T.unsafe(nil)); end
|
def initialize(ruby_contents, file:, positional_names:, max_line_length: T.unsafe(nil), translate_generics: T.unsafe(nil), translate_helpers: T.unsafe(nil), translate_abstract_methods: T.unsafe(nil)); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#66
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#100
|
||||||
sig { override.params(node: ::Prism::CallNode).void }
|
sig { override.params(node: ::Prism::CallNode).void }
|
||||||
def visit_call_node(node); end
|
def visit_call_node(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#26
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#46
|
||||||
sig { override.params(node: ::Prism::ClassNode).void }
|
sig { override.params(node: ::Prism::ClassNode).void }
|
||||||
def visit_class_node(node); end
|
def visit_class_node(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#85
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#119
|
||||||
sig { override.params(node: ::Prism::ConstantWriteNode).void }
|
sig { override.params(node: ::Prism::ConstantWriteNode).void }
|
||||||
def visit_constant_write_node(node); end
|
def visit_constant_write_node(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#44
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#64
|
||||||
sig { override.params(node: ::Prism::DefNode).void }
|
sig { override.params(node: ::Prism::DefNode).void }
|
||||||
def visit_def_node(node); end
|
def visit_def_node(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#32
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#52
|
||||||
sig { override.params(node: ::Prism::ModuleNode).void }
|
sig { override.params(node: ::Prism::ModuleNode).void }
|
||||||
def visit_module_node(node); end
|
def visit_module_node(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#38
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#58
|
||||||
sig { override.params(node: ::Prism::SingletonClassNode).void }
|
sig { override.params(node: ::Prism::SingletonClassNode).void }
|
||||||
def visit_singleton_class_node(node); end
|
def visit_singleton_class_node(node); end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#193
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#233
|
||||||
sig do
|
sig do
|
||||||
params(
|
params(
|
||||||
parent: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode),
|
parent: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode),
|
||||||
@ -4900,45 +4941,45 @@ class Spoom::Sorbet::Translate::SorbetSigsToRBSComments < ::Spoom::Sorbet::Trans
|
|||||||
end
|
end
|
||||||
def apply_class_annotation(parent, node); end
|
def apply_class_annotation(parent, node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#234
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#274
|
||||||
sig { params(sigs: T::Array[[::Prism::CallNode, ::RBI::Sig]]).void }
|
sig { params(sigs: T::Array[[::Prism::CallNode, ::RBI::Sig]]).void }
|
||||||
def apply_member_annotations(sigs); end
|
def apply_member_annotations(sigs); end
|
||||||
|
|
||||||
# @raise [Error]
|
# @raise [Error]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#266
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#308
|
||||||
sig { params(node: ::Prism::ConstantWriteNode).returns(::String) }
|
sig { params(node: ::Prism::ConstantWriteNode).returns(::String) }
|
||||||
def build_type_member_string(node); end
|
def build_type_member_string(node); end
|
||||||
|
|
||||||
# Collects the last signatures visited and clears the current list
|
# Collects the last signatures visited and clears the current list
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#337
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#379
|
||||||
sig { returns(T::Array[[::Prism::CallNode, ::RBI::Sig]]) }
|
sig { returns(T::Array[[::Prism::CallNode, ::RBI::Sig]]) }
|
||||||
def collect_last_sigs; end
|
def collect_last_sigs; end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#324
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#366
|
||||||
sig { void }
|
sig { void }
|
||||||
def delete_extend_t_generics; end
|
def delete_extend_t_generics; end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#312
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#354
|
||||||
sig { void }
|
sig { void }
|
||||||
def delete_extend_t_helpers; end
|
def delete_extend_t_helpers; end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#344
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#386
|
||||||
sig { params(indent: ::Integer, block: T.proc.params(arg0: ::RBI::RBSPrinter).void).returns(::String) }
|
sig { params(indent: ::Integer, block: T.proc.params(arg0: ::RBI::RBSPrinter).void).returns(::String) }
|
||||||
def rbs_print(indent, &block); end
|
def rbs_print(indent, &block); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#151
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#191
|
||||||
sig { params(node: ::Prism::CallNode).void }
|
sig { params(node: ::Prism::CallNode).void }
|
||||||
def visit_attr(node); end
|
def visit_attr(node); end
|
||||||
|
|
||||||
# @raise [Error]
|
# @raise [Error]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#175
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#215
|
||||||
sig { params(node: ::Prism::CallNode).void }
|
sig { params(node: ::Prism::CallNode).void }
|
||||||
def visit_extend(node); end
|
def visit_extend(node); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#102
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#138
|
||||||
sig do
|
sig do
|
||||||
params(
|
params(
|
||||||
node: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode),
|
node: T.any(::Prism::ClassNode, ::Prism::ModuleNode, ::Prism::SingletonClassNode),
|
||||||
@ -4947,7 +4988,7 @@ class Spoom::Sorbet::Translate::SorbetSigsToRBSComments < ::Spoom::Sorbet::Trans
|
|||||||
end
|
end
|
||||||
def visit_scope(node, &block); end
|
def visit_scope(node, &block); end
|
||||||
|
|
||||||
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#139
|
# source://spoom//lib/spoom/sorbet/translate/sorbet_sigs_to_rbs_comments.rb#179
|
||||||
sig { params(node: ::Prism::CallNode).void }
|
sig { params(node: ::Prism::CallNode).void }
|
||||||
def visit_sig(node); end
|
def visit_sig(node); end
|
||||||
end
|
end
|
||||||
@ -5062,12 +5103,14 @@ class Spoom::Source::Edit
|
|||||||
abstract!
|
abstract!
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/source/rewriter.rb#32
|
# source://spoom//lib/spoom/source/rewriter.rb#32
|
||||||
sig { abstract.params(bytes: T::Array[::Integer]).void }
|
sig { abstract.params(bytes: T::Array[::Integer]).void }
|
||||||
def apply(bytes); end
|
def apply(bytes); end
|
||||||
|
|
||||||
# @abstract
|
# @abstract
|
||||||
|
# @raise [NotImplementedError]
|
||||||
#
|
#
|
||||||
# source://spoom//lib/spoom/source/rewriter.rb#36
|
# source://spoom//lib/spoom/source/rewriter.rb#36
|
||||||
sig { abstract.returns([::Integer, ::Integer]) }
|
sig { abstract.returns([::Integer, ::Integer]) }
|
@ -10,7 +10,7 @@ Homebrew::FastBootRequire.from_rubylibdir("English")
|
|||||||
module Homebrew
|
module Homebrew
|
||||||
# Keep in sync with the `Gemfile.lock`'s BUNDLED WITH.
|
# Keep in sync with the `Gemfile.lock`'s BUNDLED WITH.
|
||||||
# After updating this, run `brew vendor-gems --update=--bundler`.
|
# After updating this, run `brew vendor-gems --update=--bundler`.
|
||||||
HOMEBREW_BUNDLER_VERSION = "2.6.9"
|
HOMEBREW_BUNDLER_VERSION = "2.6.8" # Pinned to <2.6.9 until Ruby 3.5.
|
||||||
|
|
||||||
# Bump this whenever a committed vendored gem is later added to or exclusion removed from gitignore.
|
# Bump this whenever a committed vendored gem is later added to or exclusion removed from gitignore.
|
||||||
# This will trigger it to reinstall properly if `brew install-bundler-gems` needs it.
|
# This will trigger it to reinstall properly if `brew install-bundler-gems` needs it.
|
||||||
|
16
Library/Homebrew/vendor/bundle/bundler/setup.rb
vendored
16
Library/Homebrew/vendor/bundle/bundler/setup.rb
vendored
@ -64,10 +64,10 @@ $:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version
|
|||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/minitest-5.25.5/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/minitest-5.25.5/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/netrc-0.11.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/netrc-0.11.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/parallel-1.27.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/parallel-1.27.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/parallel_tests-5.3.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/parallel_tests-5.3.1/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/racc-1.8.1")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/racc-1.8.1")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/racc-1.8.1/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/racc-1.8.1/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/parser-3.3.8.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/parser-3.3.9.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/patchelf-1.5.1/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/patchelf-1.5.1/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/plist-3.7.2/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/plist-3.7.2/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/prism-1.4.0")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/prism-1.4.0")
|
||||||
@ -89,10 +89,10 @@ $:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version
|
|||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-3.13.1/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-3.13.1/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-github-3.0.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-github-3.0.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-retry-0.6.2/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-retry-0.6.2/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-runtime-0.5.12230/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-runtime-0.5.12357/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-sorbet-1.9.2/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec-sorbet-1.9.2/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec_junit_formatter-0.6.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rspec_junit_formatter-0.6.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-ast-1.45.1/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-ast-1.46.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/ruby-progressbar-1.13.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/ruby-progressbar-1.13.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/unicode-emoji-4.0.4/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/unicode-emoji-4.0.4/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/unicode-display_width-3.1.4/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/unicode-display_width-3.1.4/lib")
|
||||||
@ -109,11 +109,11 @@ $:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version
|
|||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov_json_formatter-0.1.4/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov_json_formatter-0.1.4/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov-0.22.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov-0.22.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov-cobertura-2.1.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov-cobertura-2.1.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-static-0.5.12230-universal-darwin/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-static-0.5.12357-universal-darwin/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-0.5.12230/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-0.5.12357/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-static-and-runtime-0.5.12230/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/sorbet-static-and-runtime-0.5.12357/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/thor-1.4.0/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/thor-1.4.0/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/spoom-1.7.4/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/spoom-1.7.5/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/stackprof-0.2.27")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/extensions/arm64-darwin-20/#{Gem.extension_api_version}/stackprof-0.2.27")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/stackprof-0.2.27/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/stackprof-0.2.27/lib")
|
||||||
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/yard-0.9.37/lib")
|
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/yard-0.9.37/lib")
|
||||||
|
@ -545,15 +545,15 @@ module T::Private::Methods
|
|||||||
|
|
||||||
module MethodHooks
|
module MethodHooks
|
||||||
def method_added(name)
|
def method_added(name)
|
||||||
super(name)
|
|
||||||
::T::Private::Methods._on_method_added(self, self, name)
|
::T::Private::Methods._on_method_added(self, self, name)
|
||||||
|
super(name)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
module SingletonMethodHooks
|
module SingletonMethodHooks
|
||||||
def singleton_method_added(name)
|
def singleton_method_added(name)
|
||||||
super(name)
|
|
||||||
::T::Private::Methods._on_method_added(self, singleton_class, name)
|
::T::Private::Methods._on_method_added(self, singleton_class, name)
|
||||||
|
super(name)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
@ -14,12 +14,28 @@ class T::Props::Decorator
|
|||||||
DecoratedInstance = T.type_alias { Object } # Would be T::Props, but that produces circular reference errors in some circumstances
|
DecoratedInstance = T.type_alias { Object } # Would be T::Props, but that produces circular reference errors in some circumstances
|
||||||
PropType = T.type_alias { T::Types::Base }
|
PropType = T.type_alias { T::Types::Base }
|
||||||
PropTypeOrClass = T.type_alias { T.any(PropType, Module) }
|
PropTypeOrClass = T.type_alias { T.any(PropType, Module) }
|
||||||
|
OverrideRules = T.type_alias { T::Hash[Symbol, {allow_incompatible: T::Boolean}] }
|
||||||
|
|
||||||
class NoRulesError < StandardError; end
|
class NoRulesError < StandardError; end
|
||||||
|
|
||||||
EMPTY_PROPS = T.let({}.freeze, T::Hash[Symbol, Rules], checked: false)
|
EMPTY_PROPS = T.let({}.freeze, T::Hash[Symbol, Rules], checked: false)
|
||||||
private_constant :EMPTY_PROPS
|
private_constant :EMPTY_PROPS
|
||||||
|
|
||||||
|
OVERRIDE_TRUE = T.let({
|
||||||
|
reader: {allow_incompatible: false}.freeze,
|
||||||
|
writer: {allow_incompatible: false}.freeze,
|
||||||
|
}.freeze, OverrideRules)
|
||||||
|
|
||||||
|
OVERRIDE_READER = T.let({
|
||||||
|
reader: {allow_incompatible: false}.freeze,
|
||||||
|
}.freeze, OverrideRules)
|
||||||
|
|
||||||
|
OVERRIDE_WRITER = T.let({
|
||||||
|
writer: {allow_incompatible: false}.freeze,
|
||||||
|
}.freeze, OverrideRules)
|
||||||
|
|
||||||
|
OVERRIDE_EMPTY = T.let({}.freeze, OverrideRules)
|
||||||
|
|
||||||
sig { params(klass: T.untyped).void.checked(:never) }
|
sig { params(klass: T.untyped).void.checked(:never) }
|
||||||
def initialize(klass)
|
def initialize(klass)
|
||||||
@class = T.let(klass, T.all(Module, T::Props::ClassMethods))
|
@class = T.let(klass, T.all(Module, T::Props::ClassMethods))
|
||||||
@ -45,17 +61,15 @@ class T::Props::Decorator
|
|||||||
end
|
end
|
||||||
|
|
||||||
# checked(:never) - Rules hash is expensive to check
|
# checked(:never) - Rules hash is expensive to check
|
||||||
sig { params(prop: Symbol, rules: Rules).void.checked(:never) }
|
sig { params(name: Symbol, rules: Rules).void.checked(:never) }
|
||||||
def add_prop_definition(prop, rules)
|
def add_prop_definition(name, rules)
|
||||||
override = rules.delete(:override)
|
override = rules.delete(:override)
|
||||||
|
|
||||||
if props.include?(prop) && !override
|
if props.include?(name) && !override
|
||||||
raise ArgumentError.new("Attempted to redefine prop #{prop.inspect} on class #{@class} that's already defined without specifying :override => true: #{prop_rules(prop)}")
|
raise ArgumentError.new("Attempted to redefine prop #{name.inspect} on class #{@class} that's already defined without specifying :override => true: #{prop_rules(name)}")
|
||||||
elsif !props.include?(prop) && override
|
|
||||||
raise ArgumentError.new("Attempted to override a prop #{prop.inspect} on class #{@class} that doesn't already exist")
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@props = @props.merge(prop => rules.freeze).freeze
|
@props = @props.merge(name => rules.freeze).freeze
|
||||||
end
|
end
|
||||||
|
|
||||||
# Heads up!
|
# Heads up!
|
||||||
@ -302,6 +316,27 @@ class T::Props::Decorator
|
|||||||
T::Utils::Nilable.is_union_with_nilclass(cls) || ((cls == T.untyped || cls == NilClass) && rules.key?(:default) && rules[:default].nil?)
|
T::Utils::Nilable.is_union_with_nilclass(cls) || ((cls == T.untyped || cls == NilClass) && rules.key?(:default) && rules[:default].nil?)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig(:final) { params(name: Symbol).returns(T::Boolean).checked(:never) }
|
||||||
|
private def method_defined_on_ancestor?(name)
|
||||||
|
@class.method_defined?(name) && !@class.method_defined?(name, false)
|
||||||
|
end
|
||||||
|
|
||||||
|
sig(:final) { params(name: Symbol, rules: Rules).void.checked(:never) }
|
||||||
|
private def validate_overrides(name, rules)
|
||||||
|
override = elaborate_override(name, rules[:override])
|
||||||
|
|
||||||
|
return if rules[:without_accessors]
|
||||||
|
|
||||||
|
if override[:reader] && !method_defined_on_ancestor?(name) && !props.include?(name)
|
||||||
|
raise ArgumentError.new("You marked the getter for prop #{name.inspect} as `override`, but the method `#{name}` doesn't exist to be overridden.")
|
||||||
|
end
|
||||||
|
|
||||||
|
# Properly, we should also check whether `props[name]` is immutable, but the old code didn't either.
|
||||||
|
if !rules[:immutable] && override[:writer] && !method_defined_on_ancestor?("#{name}=".to_sym) && !props.include?(name)
|
||||||
|
raise ArgumentError.new("You marked the setter for prop #{name.inspect} as `override`, but the method `#{name}=` doesn't exist to be overridden.")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
# checked(:never) - Rules hash is expensive to check
|
# checked(:never) - Rules hash is expensive to check
|
||||||
sig do
|
sig do
|
||||||
params(
|
params(
|
||||||
@ -381,6 +416,7 @@ class T::Props::Decorator
|
|||||||
rules[:setter_proc] = setter_proc
|
rules[:setter_proc] = setter_proc
|
||||||
rules[:value_validate_proc] = value_validate_proc
|
rules[:value_validate_proc] = value_validate_proc
|
||||||
|
|
||||||
|
validate_overrides(name, rules)
|
||||||
add_prop_definition(name, rules)
|
add_prop_definition(name, rules)
|
||||||
|
|
||||||
# NB: using `without_accessors` doesn't make much sense unless you also define some other way to
|
# NB: using `without_accessors` doesn't make much sense unless you also define some other way to
|
||||||
@ -405,6 +441,7 @@ class T::Props::Decorator
|
|||||||
# Fast path (~4x faster as of Ruby 2.6)
|
# Fast path (~4x faster as of Ruby 2.6)
|
||||||
@class.send(:define_method, "#{name}=", &rules.fetch(:setter_proc))
|
@class.send(:define_method, "#{name}=", &rules.fetch(:setter_proc))
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
if method(:prop_get).owner != T::Props::Decorator || rules.key?(:ifunset)
|
if method(:prop_get).owner != T::Props::Decorator || rules.key?(:ifunset)
|
||||||
@ -627,7 +664,7 @@ class T::Props::Decorator
|
|||||||
|
|
||||||
props.each do |name, rules|
|
props.each do |name, rules|
|
||||||
copied_rules = rules.dup
|
copied_rules = rules.dup
|
||||||
# NB: Calling `child.decorator` here is a timb bomb that's going to give someone a really bad
|
# NB: Calling `child.decorator` here is a time bomb that's going to give someone a really bad
|
||||||
# time. Any class that defines props and also overrides the `decorator_class` method is going
|
# time. Any class that defines props and also overrides the `decorator_class` method is going
|
||||||
# to reach this line before its override take effect, turning it into a no-op.
|
# to reach this line before its override take effect, turning it into a no-op.
|
||||||
child.decorator.add_prop_definition(name, copied_rules)
|
child.decorator.add_prop_definition(name, copied_rules)
|
||||||
@ -656,6 +693,52 @@ class T::Props::Decorator
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sig(:final) do
|
||||||
|
params(key: Symbol, d: T.untyped, out: T::Hash[Symbol, {allow_incompatible: T::Boolean}])
|
||||||
|
.void
|
||||||
|
.checked(:never)
|
||||||
|
end
|
||||||
|
private def elaborate_override_entry(key, d, out)
|
||||||
|
# It's written this way so that `{reader: false}` will omit the entry for `reader` in the
|
||||||
|
# result entirely
|
||||||
|
case d[key]
|
||||||
|
when TrueClass
|
||||||
|
out[key] = {allow_incompatible: false}
|
||||||
|
when Hash
|
||||||
|
out[key] = {allow_incompatible: !!d[key][:allow_incompatible]}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
sig(:final) do
|
||||||
|
params(name: Symbol, d: T.untyped)
|
||||||
|
.returns(T::Hash[Symbol, {allow_incompatible: T::Boolean}])
|
||||||
|
.checked(:never)
|
||||||
|
end
|
||||||
|
private def elaborate_override(name, d)
|
||||||
|
return OVERRIDE_TRUE if d == true
|
||||||
|
return OVERRIDE_READER if d == :reader
|
||||||
|
return OVERRIDE_WRITER if d == :writer
|
||||||
|
return OVERRIDE_EMPTY if d == false || d.nil?
|
||||||
|
unless d.is_a?(Hash)
|
||||||
|
raise ArgumentError.new("`override` only accepts `true`, `:reader`, `:writer`, or a Hash in prop #{@class.name}.#{name} (got #{d.class})")
|
||||||
|
end
|
||||||
|
|
||||||
|
# cwong: should we check for bad keys? `sig { override(not_real: true) }` on a normal function
|
||||||
|
# errors statically but not at runtime.
|
||||||
|
|
||||||
|
# XX cwong: this means {reader: false, allow_incompatible: true} will become {allow_incompatible: true},
|
||||||
|
# is that fine?
|
||||||
|
unless (allow_incompatible = d[:allow_incompatible]).nil?
|
||||||
|
return {reader: {allow_incompatible: !!allow_incompatible},
|
||||||
|
writer: {allow_incompatible: !!allow_incompatible}}.to_h
|
||||||
|
end
|
||||||
|
|
||||||
|
result = {}
|
||||||
|
elaborate_override_entry(:reader, d, result)
|
||||||
|
elaborate_override_entry(:writer, d, result)
|
||||||
|
result
|
||||||
|
end
|
||||||
|
|
||||||
sig { params(child: T.all(Module, T::Props::ClassMethods), prop: Symbol).returns(T::Boolean).checked(:never) }
|
sig { params(child: T.all(Module, T::Props::ClassMethods), prop: Symbol).returns(T::Boolean).checked(:never) }
|
||||||
private def clobber_getter?(child, prop)
|
private def clobber_getter?(child, prop)
|
||||||
!!(child.decorator.method(:prop_get).owner != method(:prop_get).owner &&
|
!!(child.decorator.method(:prop_get).owner != method(:prop_get).owner &&
|
Loading…
x
Reference in New Issue
Block a user