tapioca 0.16.10 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/ruby_lsp/tapioca/addon.rb +24 -20
- data/lib/ruby_lsp/tapioca/run_gem_rbi_check.rb +20 -20
- data/lib/tapioca/bundler_ext/auto_require_hook.rb +5 -10
- data/lib/tapioca/commands/abstract_dsl.rb +36 -62
- data/lib/tapioca/commands/abstract_gem.rb +23 -43
- data/lib/tapioca/commands/annotations.rb +27 -33
- data/lib/tapioca/commands/check_shims.rb +4 -13
- data/lib/tapioca/commands/command.rb +8 -20
- data/lib/tapioca/commands/command_without_tracker.rb +1 -1
- data/lib/tapioca/commands/configure.rb +11 -16
- data/lib/tapioca/commands/dsl_compiler_list.rb +2 -1
- data/lib/tapioca/commands/dsl_generate.rb +2 -1
- data/lib/tapioca/commands/dsl_verify.rb +2 -1
- data/lib/tapioca/commands/gem_generate.rb +4 -8
- data/lib/tapioca/commands/gem_sync.rb +2 -1
- data/lib/tapioca/commands/gem_verify.rb +3 -2
- data/lib/tapioca/commands/require.rb +3 -7
- data/lib/tapioca/commands/todo.rb +6 -10
- data/lib/tapioca/dsl/compiler.rb +28 -53
- data/lib/tapioca/dsl/compilers/aasm.rb +31 -41
- data/lib/tapioca/dsl/compilers/action_controller_helpers.rb +7 -5
- data/lib/tapioca/dsl/compilers/action_mailer.rb +5 -3
- data/lib/tapioca/dsl/compilers/action_text.rb +5 -3
- data/lib/tapioca/dsl/compilers/active_job.rb +5 -8
- data/lib/tapioca/dsl/compilers/active_model_attributes.rb +9 -7
- data/lib/tapioca/dsl/compilers/active_model_secure_password.rb +4 -2
- data/lib/tapioca/dsl/compilers/active_model_validations_confirmation.rb +4 -2
- data/lib/tapioca/dsl/compilers/active_record_associations.rb +16 -42
- data/lib/tapioca/dsl/compilers/active_record_columns.rb +19 -24
- data/lib/tapioca/dsl/compilers/active_record_delegated_types.rb +7 -5
- data/lib/tapioca/dsl/compilers/active_record_enum.rb +6 -4
- data/lib/tapioca/dsl/compilers/active_record_fixtures.rb +53 -61
- data/lib/tapioca/dsl/compilers/active_record_relations.rb +86 -119
- data/lib/tapioca/dsl/compilers/active_record_scope.rb +7 -11
- data/lib/tapioca/dsl/compilers/active_record_secure_token.rb +4 -2
- data/lib/tapioca/dsl/compilers/active_record_store.rb +4 -2
- data/lib/tapioca/dsl/compilers/active_record_typed_store.rb +18 -26
- data/lib/tapioca/dsl/compilers/active_resource.rb +18 -19
- data/lib/tapioca/dsl/compilers/active_storage.rb +5 -5
- data/lib/tapioca/dsl/compilers/active_support_concern.rb +8 -6
- data/lib/tapioca/dsl/compilers/active_support_current_attributes.rb +7 -5
- data/lib/tapioca/dsl/compilers/active_support_time_ext.rb +4 -2
- data/lib/tapioca/dsl/compilers/config.rb +4 -2
- data/lib/tapioca/dsl/compilers/frozen_record.rb +6 -9
- data/lib/tapioca/dsl/compilers/graphql_input_object.rb +8 -8
- data/lib/tapioca/dsl/compilers/graphql_mutation.rb +5 -8
- data/lib/tapioca/dsl/compilers/identity_cache.rb +10 -37
- data/lib/tapioca/dsl/compilers/json_api_client_resource.rb +8 -16
- data/lib/tapioca/dsl/compilers/kredis.rb +6 -4
- data/lib/tapioca/dsl/compilers/mixed_in_class_attributes.rb +4 -2
- data/lib/tapioca/dsl/compilers/protobuf.rb +12 -24
- data/lib/tapioca/dsl/compilers/rails_generators.rb +8 -9
- data/lib/tapioca/dsl/compilers/sidekiq_worker.rb +22 -11
- data/lib/tapioca/dsl/compilers/smart_properties.rb +11 -20
- data/lib/tapioca/dsl/compilers/state_machines.rb +14 -24
- data/lib/tapioca/dsl/compilers/url_helpers.rb +9 -7
- data/lib/tapioca/dsl/compilers.rb +4 -7
- data/lib/tapioca/dsl/helpers/active_model_type_helper.rb +13 -16
- data/lib/tapioca/dsl/helpers/active_record_column_type_helper.rb +13 -28
- data/lib/tapioca/dsl/helpers/active_record_constants_helper.rb +19 -15
- data/lib/tapioca/dsl/helpers/graphql_type_helper.rb +5 -24
- data/lib/tapioca/dsl/pipeline.rb +30 -58
- data/lib/tapioca/executor.rb +6 -12
- data/lib/tapioca/gem/events.rb +22 -28
- data/lib/tapioca/gem/listeners/base.rb +6 -6
- data/lib/tapioca/gem/listeners/dynamic_mixins.rb +4 -2
- data/lib/tapioca/gem/listeners/foreign_constants.rb +5 -7
- data/lib/tapioca/gem/listeners/methods.rb +15 -34
- data/lib/tapioca/gem/listeners/mixins.rb +6 -18
- data/lib/tapioca/gem/listeners/remove_empty_payload_scopes.rb +4 -2
- data/lib/tapioca/gem/listeners/sorbet_enums.rb +4 -2
- data/lib/tapioca/gem/listeners/sorbet_helpers.rb +4 -2
- data/lib/tapioca/gem/listeners/sorbet_props.rb +4 -2
- data/lib/tapioca/gem/listeners/sorbet_required_ancestors.rb +4 -2
- data/lib/tapioca/gem/listeners/sorbet_signatures.rb +7 -5
- data/lib/tapioca/gem/listeners/sorbet_type_variables.rb +6 -4
- data/lib/tapioca/gem/listeners/source_location.rb +7 -4
- data/lib/tapioca/gem/listeners/subconstants.rb +5 -4
- data/lib/tapioca/gem/listeners/yard_doc.rb +23 -22
- data/lib/tapioca/gem/pipeline.rb +57 -72
- data/lib/tapioca/gem_info.rb +1 -1
- data/lib/tapioca/gemfile.rb +64 -73
- data/lib/tapioca/helpers/cli_helper.rb +3 -3
- data/lib/tapioca/helpers/config_helper.rb +15 -24
- data/lib/tapioca/helpers/env_helper.rb +1 -1
- data/lib/tapioca/helpers/gem_helper.rb +5 -5
- data/lib/tapioca/helpers/git_attributes.rb +3 -3
- data/lib/tapioca/helpers/rbi_files_helper.rb +73 -67
- data/lib/tapioca/helpers/rbi_helper.rb +14 -22
- data/lib/tapioca/helpers/sorbet_helper.rb +9 -18
- data/lib/tapioca/helpers/source_uri.rb +15 -25
- data/lib/tapioca/helpers/test/content.rb +6 -6
- data/lib/tapioca/helpers/test/dsl_compiler.rb +19 -29
- data/lib/tapioca/helpers/test/isolation.rb +4 -4
- data/lib/tapioca/helpers/test/template.rb +5 -7
- data/lib/tapioca/internal.rb +5 -1
- data/lib/tapioca/loaders/dsl.rb +11 -19
- data/lib/tapioca/loaders/gem.rb +6 -21
- data/lib/tapioca/loaders/loader.rb +15 -27
- data/lib/tapioca/rbi_ext/model.rb +12 -37
- data/lib/tapioca/rbi_formatter.rb +10 -19
- data/lib/tapioca/rbs/rewriter.rb +55 -0
- data/lib/tapioca/repo_index.rb +7 -7
- data/lib/tapioca/runtime/attached_class_of_32.rb +1 -1
- data/lib/tapioca/runtime/attached_class_of_legacy.rb +1 -1
- data/lib/tapioca/runtime/dynamic_mixin_compiler.rb +23 -23
- data/lib/tapioca/runtime/generic_type_registry.rb +13 -23
- data/lib/tapioca/runtime/reflection.rb +48 -56
- data/lib/tapioca/runtime/trackers/autoload.rb +4 -8
- data/lib/tapioca/runtime/trackers/mixin.rb +6 -10
- data/lib/tapioca/runtime/trackers/required_ancestor.rb +3 -3
- data/lib/tapioca/runtime/trackers/tracker.rb +2 -2
- data/lib/tapioca/runtime/trackers.rb +4 -8
- data/lib/tapioca/sorbet_ext/generic_name_patch.rb +9 -15
- data/lib/tapioca/sorbet_ext/name_patch.rb +1 -1
- data/lib/tapioca/sorbet_ext/proc_bind_patch.rb +1 -1
- data/lib/tapioca/static/requires_compiler.rb +6 -6
- data/lib/tapioca/static/symbol_loader.rb +14 -16
- data/lib/tapioca/static/symbol_table_parser.rb +8 -8
- data/lib/tapioca/version.rb +1 -1
- data/lib/tapioca.rb +22 -29
- metadata +25 -10
@@ -130,19 +130,12 @@ module Tapioca
|
|
130
130
|
end
|
131
131
|
end
|
132
132
|
|
133
|
-
DEFAULT_BOUNDS_PROC =
|
133
|
+
DEFAULT_BOUNDS_PROC = -> { {} } #: ^-> Hash[Symbol, untyped]
|
134
134
|
|
135
|
-
|
135
|
+
#: Type
|
136
136
|
attr_reader :type
|
137
137
|
|
138
|
-
|
139
|
-
params(
|
140
|
-
context: Module,
|
141
|
-
type: Type,
|
142
|
-
variance: Symbol,
|
143
|
-
bounds_proc: T.nilable(T.proc.returns(T::Hash[Symbol, T.untyped])),
|
144
|
-
).void
|
145
|
-
end
|
138
|
+
#: (Module context, Type type, Symbol variance, (^-> Hash[Symbol, untyped])? bounds_proc) -> void
|
146
139
|
def initialize(context, type, variance, bounds_proc)
|
147
140
|
@context = context
|
148
141
|
@type = type
|
@@ -151,18 +144,19 @@ module Tapioca
|
|
151
144
|
|
152
145
|
super()
|
153
146
|
end
|
154
|
-
|
147
|
+
|
148
|
+
#: -> String?
|
155
149
|
def name
|
156
150
|
constant_name = super
|
157
151
|
constant_name&.split("::")&.last
|
158
152
|
end
|
159
153
|
|
160
|
-
|
154
|
+
#: -> bool
|
161
155
|
def fixed?
|
162
156
|
bounds.key?(:fixed)
|
163
157
|
end
|
164
158
|
|
165
|
-
|
159
|
+
#: -> String
|
166
160
|
def serialize
|
167
161
|
fixed = bounds[:fixed].to_s if fixed?
|
168
162
|
lower = bounds[:lower].to_s if bounds.key?(:lower)
|
@@ -177,14 +171,14 @@ module Tapioca
|
|
177
171
|
)
|
178
172
|
end
|
179
173
|
|
180
|
-
|
174
|
+
#: -> Tapioca::TypeVariable
|
181
175
|
def coerce_to_type_variable
|
182
176
|
TypeVariable.new(name, @variance)
|
183
177
|
end
|
184
178
|
|
185
179
|
private
|
186
180
|
|
187
|
-
|
181
|
+
#: -> Hash[Symbol, untyped]
|
188
182
|
def bounds
|
189
183
|
@bounds ||= @bounds_proc.call
|
190
184
|
end
|
@@ -5,7 +5,7 @@ module T
|
|
5
5
|
module Types
|
6
6
|
class Simple
|
7
7
|
module NamePatch
|
8
|
-
NAME_METHOD =
|
8
|
+
NAME_METHOD = Module.instance_method(:name) #: UnboundMethod
|
9
9
|
|
10
10
|
def name
|
11
11
|
# Sorbet memoizes this method into the `@name` instance variable but
|
@@ -6,12 +6,12 @@ module Tapioca
|
|
6
6
|
class RequiresCompiler
|
7
7
|
extend T::Sig
|
8
8
|
|
9
|
-
|
9
|
+
#: (String sorbet_path) -> void
|
10
10
|
def initialize(sorbet_path)
|
11
11
|
@sorbet_path = sorbet_path
|
12
12
|
end
|
13
13
|
|
14
|
-
|
14
|
+
#: -> String
|
15
15
|
def compile
|
16
16
|
config = Spoom::Sorbet::Config.parse_file(@sorbet_path)
|
17
17
|
files = collect_files(config)
|
@@ -25,7 +25,7 @@ module Tapioca
|
|
25
25
|
|
26
26
|
private
|
27
27
|
|
28
|
-
|
28
|
+
#: (Spoom::Sorbet::Config config) -> Array[String]
|
29
29
|
def collect_files(config)
|
30
30
|
config.paths.flat_map do |path|
|
31
31
|
path = (Pathname.new(@sorbet_path) / "../.." / path).cleanpath
|
@@ -40,14 +40,14 @@ module Tapioca
|
|
40
40
|
end.sort.uniq
|
41
41
|
end
|
42
42
|
|
43
|
-
|
43
|
+
#: (String file_path) -> T::Enumerable[String]
|
44
44
|
def collect_requires(file_path)
|
45
45
|
File.binread(file_path).lines.filter_map do |line|
|
46
46
|
/^\s*require\s*(\(\s*)?['"](?<name>[^'"]+)['"](\s*\))?/.match(line) { |m| m["name"] }
|
47
47
|
end.reject { |require| require.include?('#{') } # ignore interpolation
|
48
48
|
end
|
49
49
|
|
50
|
-
|
50
|
+
#: (Spoom::Sorbet::Config config, Pathname file_path) -> bool
|
51
51
|
def file_ignored_by_sorbet?(config, file_path)
|
52
52
|
file_path_parts = path_parts(file_path)
|
53
53
|
|
@@ -76,7 +76,7 @@ module Tapioca
|
|
76
76
|
end
|
77
77
|
end
|
78
78
|
|
79
|
-
|
79
|
+
#: (Pathname path) -> Array[String]
|
80
80
|
def path_parts(path)
|
81
81
|
T.unsafe(path).descend.map { |part| part.basename.to_s }
|
82
82
|
end
|
@@ -9,17 +9,17 @@ module Tapioca
|
|
9
9
|
include SorbetHelper
|
10
10
|
include Runtime::Reflection
|
11
11
|
|
12
|
-
|
12
|
+
#: -> Set[String]
|
13
13
|
def payload_symbols
|
14
14
|
unless @payload_symbols
|
15
15
|
output = symbol_table_json_from("-e ''", table_type: "symbol-table-full-json")
|
16
|
-
@payload_symbols =
|
16
|
+
@payload_symbols = SymbolTableParser.parse_json(output) #: Set[String]?
|
17
17
|
end
|
18
18
|
|
19
19
|
T.must(@payload_symbols)
|
20
20
|
end
|
21
21
|
|
22
|
-
|
22
|
+
#: (Gemfile::GemSpec gem) -> Set[String]
|
23
23
|
def engine_symbols(gem)
|
24
24
|
gem_engine = engines.find do |engine|
|
25
25
|
gem.full_gem_path == engine.config.root.to_s
|
@@ -44,12 +44,12 @@ module Tapioca
|
|
44
44
|
Set.new
|
45
45
|
end
|
46
46
|
|
47
|
-
|
47
|
+
#: (Gemfile::GemSpec gem) -> Set[String]
|
48
48
|
def gem_symbols(gem)
|
49
49
|
symbols_from_paths(gem.files)
|
50
50
|
end
|
51
51
|
|
52
|
-
|
52
|
+
#: (Array[Pathname] paths) -> Set[String]
|
53
53
|
def symbols_from_paths(paths)
|
54
54
|
return Set.new if paths.empty?
|
55
55
|
|
@@ -67,20 +67,18 @@ module Tapioca
|
|
67
67
|
|
68
68
|
private
|
69
69
|
|
70
|
-
|
70
|
+
# @without_runtime
|
71
|
+
#: -> Array[singleton(Rails::Engine)]
|
71
72
|
def engines
|
72
|
-
@engines ||=
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
end,
|
79
|
-
T.nilable(T::Array[T.class_of(Rails::Engine)]),
|
80
|
-
)
|
73
|
+
@engines ||= if Object.const_defined?("Rails::Engine")
|
74
|
+
descendants_of(Object.const_get("Rails::Engine"))
|
75
|
+
.reject(&:abstract_railtie?)
|
76
|
+
else
|
77
|
+
[]
|
78
|
+
end #: Array[singleton(Rails::Engine)]?
|
81
79
|
end
|
82
80
|
|
83
|
-
|
81
|
+
#: (String input, ?table_type: String) -> String
|
84
82
|
def symbol_table_json_from(input, table_type: "symbol-table-json")
|
85
83
|
sorbet("--no-config", "--quiet", "--print=#{table_type}", input).out
|
86
84
|
end
|
@@ -6,12 +6,12 @@ module Tapioca
|
|
6
6
|
class SymbolTableParser
|
7
7
|
extend T::Sig
|
8
8
|
|
9
|
-
SKIP_PARSE_KINDS =
|
9
|
+
SKIP_PARSE_KINDS = ["CLASS_OR_MODULE", "STATIC_FIELD"].freeze #: Array[String]
|
10
10
|
|
11
11
|
class << self
|
12
12
|
extend T::Sig
|
13
13
|
|
14
|
-
|
14
|
+
#: (String json_string) -> Set[String]
|
15
15
|
def parse_json(json_string)
|
16
16
|
obj = JSON.parse(json_string)
|
17
17
|
|
@@ -23,16 +23,16 @@ module Tapioca
|
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
|
-
|
26
|
+
#: Set[String]
|
27
27
|
attr_reader :symbols
|
28
28
|
|
29
|
-
|
29
|
+
#: -> void
|
30
30
|
def initialize
|
31
|
-
@symbols =
|
32
|
-
@parents =
|
31
|
+
@symbols = Set.new #: Set[String]
|
32
|
+
@parents = [] #: Array[String]
|
33
33
|
end
|
34
34
|
|
35
|
-
|
35
|
+
#: (Hash[String, untyped] object) -> void
|
36
36
|
def parse_object(object)
|
37
37
|
children = object.fetch("children", [])
|
38
38
|
|
@@ -61,7 +61,7 @@ module Tapioca
|
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
64
|
-
|
64
|
+
#: (String name) -> String
|
65
65
|
def fully_qualified_name(name)
|
66
66
|
[*@parents, name].join("::")
|
67
67
|
end
|
data/lib/tapioca/version.rb
CHANGED
data/lib/tapioca.rb
CHANGED
@@ -7,16 +7,12 @@ require "rubygems/user_interaction"
|
|
7
7
|
module Tapioca
|
8
8
|
extend T::Sig
|
9
9
|
|
10
|
-
@traces =
|
10
|
+
@traces = [] #: Array[TracePoint]
|
11
11
|
|
12
12
|
class << self
|
13
13
|
extend T::Sig
|
14
14
|
|
15
|
-
|
16
|
-
type_parameters(:Result)
|
17
|
-
.params(blk: T.proc.returns(T.type_parameter(:Result)))
|
18
|
-
.returns(T.type_parameter(:Result))
|
19
|
-
end
|
15
|
+
#: [Result] { -> Result } -> Result
|
20
16
|
def silence_warnings(&blk)
|
21
17
|
original_verbosity = $VERBOSE
|
22
18
|
$VERBOSE = nil
|
@@ -30,29 +26,26 @@ module Tapioca
|
|
30
26
|
|
31
27
|
class Error < StandardError; end
|
32
28
|
|
33
|
-
LIB_ROOT_DIR = T.
|
34
|
-
SORBET_DIR =
|
35
|
-
SORBET_CONFIG_FILE =
|
36
|
-
TAPIOCA_DIR =
|
37
|
-
TAPIOCA_CONFIG_FILE =
|
38
|
-
|
39
|
-
BINARY_FILE =
|
40
|
-
DEFAULT_POSTREQUIRE_FILE =
|
41
|
-
DEFAULT_RBI_DIR =
|
42
|
-
DEFAULT_DSL_DIR =
|
43
|
-
DEFAULT_GEM_DIR =
|
44
|
-
DEFAULT_SHIM_DIR =
|
45
|
-
DEFAULT_TODO_FILE =
|
46
|
-
DEFAULT_ANNOTATIONS_DIR =
|
47
|
-
|
48
|
-
DEFAULT_OVERRIDES =
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
}.freeze,
|
54
|
-
T::Hash[String, String],
|
55
|
-
)
|
29
|
+
LIB_ROOT_DIR = T.must(__dir__) #: String
|
30
|
+
SORBET_DIR = "sorbet" #: String
|
31
|
+
SORBET_CONFIG_FILE = "#{SORBET_DIR}/config" #: String
|
32
|
+
TAPIOCA_DIR = "#{SORBET_DIR}/tapioca" #: String
|
33
|
+
TAPIOCA_CONFIG_FILE = "#{TAPIOCA_DIR}/config.yml" #: String
|
34
|
+
|
35
|
+
BINARY_FILE = "bin/tapioca" #: String
|
36
|
+
DEFAULT_POSTREQUIRE_FILE = "#{TAPIOCA_DIR}/require.rb" #: String
|
37
|
+
DEFAULT_RBI_DIR = "#{SORBET_DIR}/rbi" #: String
|
38
|
+
DEFAULT_DSL_DIR = "#{DEFAULT_RBI_DIR}/dsl" #: String
|
39
|
+
DEFAULT_GEM_DIR = "#{DEFAULT_RBI_DIR}/gems" #: String
|
40
|
+
DEFAULT_SHIM_DIR = "#{DEFAULT_RBI_DIR}/shims" #: String
|
41
|
+
DEFAULT_TODO_FILE = "#{DEFAULT_RBI_DIR}/todo.rbi" #: String
|
42
|
+
DEFAULT_ANNOTATIONS_DIR = "#{DEFAULT_RBI_DIR}/annotations" #: String
|
43
|
+
|
44
|
+
DEFAULT_OVERRIDES = {
|
45
|
+
# ActiveSupport overrides some core methods with different signatures
|
46
|
+
# so we generate a typed: false RBI for it to suppress errors
|
47
|
+
"activesupport" => "false",
|
48
|
+
}.freeze #: Hash[String, String]
|
56
49
|
|
57
50
|
DEFAULT_RBI_MAX_LINE_LENGTH = 120
|
58
51
|
DEFAULT_ENVIRONMENT = "development"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tapioca
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ufuk Kayserilioglu
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
- Peter Zhu
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: benchmark
|
@@ -72,16 +72,30 @@ dependencies:
|
|
72
72
|
name: rbi
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
|
-
- - "
|
75
|
+
- - ">="
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
77
|
+
version: 0.3.1
|
78
78
|
type: :runtime
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
|
-
- - "
|
82
|
+
- - ">="
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version:
|
84
|
+
version: 0.3.1
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: require-hooks
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: 0.2.2
|
92
|
+
type: :runtime
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: 0.2.2
|
85
99
|
- !ruby/object:Gem::Dependency
|
86
100
|
name: sorbet-static-and-runtime
|
87
101
|
requirement: !ruby/object:Gem::Requirement
|
@@ -102,14 +116,14 @@ dependencies:
|
|
102
116
|
requirements:
|
103
117
|
- - ">="
|
104
118
|
- !ruby/object:Gem::Version
|
105
|
-
version: 1.
|
119
|
+
version: 1.7.0
|
106
120
|
type: :runtime
|
107
121
|
prerelease: false
|
108
122
|
version_requirements: !ruby/object:Gem::Requirement
|
109
123
|
requirements:
|
110
124
|
- - ">="
|
111
125
|
- !ruby/object:Gem::Version
|
112
|
-
version: 1.
|
126
|
+
version: 1.7.0
|
113
127
|
- !ruby/object:Gem::Dependency
|
114
128
|
name: thor
|
115
129
|
requirement: !ruby/object:Gem::Requirement
|
@@ -260,6 +274,7 @@ files:
|
|
260
274
|
- lib/tapioca/loaders/loader.rb
|
261
275
|
- lib/tapioca/rbi_ext/model.rb
|
262
276
|
- lib/tapioca/rbi_formatter.rb
|
277
|
+
- lib/tapioca/rbs/rewriter.rb
|
263
278
|
- lib/tapioca/repo_index.rb
|
264
279
|
- lib/tapioca/runtime/attached_class_of_32.rb
|
265
280
|
- lib/tapioca/runtime/attached_class_of_legacy.rb
|
@@ -292,14 +307,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
292
307
|
requirements:
|
293
308
|
- - ">="
|
294
309
|
- !ruby/object:Gem::Version
|
295
|
-
version: '3.
|
310
|
+
version: '3.2'
|
296
311
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
297
312
|
requirements:
|
298
313
|
- - ">="
|
299
314
|
- !ruby/object:Gem::Version
|
300
315
|
version: '0'
|
301
316
|
requirements: []
|
302
|
-
rubygems_version: 3.6.
|
317
|
+
rubygems_version: 3.6.9
|
303
318
|
specification_version: 4
|
304
319
|
summary: A Ruby Interface file generator for gems, core types and the Ruby standard
|
305
320
|
library
|