tapioca 0.11.4 → 0.11.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/tapioca/dsl/compilers/active_record_scope.rb +1 -1
- data/lib/tapioca/dsl/compilers/identity_cache.rb +9 -12
- data/lib/tapioca/dsl/compilers/protobuf.rb +2 -1
- data/lib/tapioca/dsl/extensions/active_record.rb +1 -1
- data/lib/tapioca/executor.rb +9 -1
- data/lib/tapioca/gem/listeners/methods.rb +1 -1
- data/lib/tapioca/helpers/rbi_helper.rb +1 -1
- data/lib/tapioca/runtime/dynamic_mixin_compiler.rb +2 -2
- data/lib/tapioca/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8ee3bcaf55b533576a46aa60a0a03b946552ee3fba42f8b136108dea8d0888ba
|
4
|
+
data.tar.gz: b0d12f84750676a3b99eb7e76e10d3be64a92359f5a440c0c8c5ef9c7f3e5ac9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cf6bb9e139fabc27048c5237f0e8662f5972051ae01fd1fcaae34f11c23fceb471f7d7118df9dabd507b24f7fccf8d4a6208dfd02d08ed37453b1ef2679ba04f
|
7
|
+
data.tar.gz: 2860aaa02b120a10182e7928fdc54f48d6eca933f4eee8ec51df78ae59043bc59c6cc839b1a65d2fe610c3ec545ad68b2caf400821b32c7ee029ca0046b88009
|
@@ -172,7 +172,6 @@ module Tapioca
|
|
172
172
|
).void
|
173
173
|
end
|
174
174
|
def create_index_fetch_by_methods(field, klass)
|
175
|
-
field_length = field.key_fields.length
|
176
175
|
fields_name = field.key_fields.join("_and_")
|
177
176
|
name = "fetch_by_#{fields_name}"
|
178
177
|
parameters = field.key_fields.map do |arg|
|
@@ -205,17 +204,15 @@ module Tapioca
|
|
205
204
|
)
|
206
205
|
end
|
207
206
|
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
)
|
218
|
-
end
|
207
|
+
klass.create_method(
|
208
|
+
"fetch_multi_by_#{fields_name}",
|
209
|
+
class_method: true,
|
210
|
+
parameters: [
|
211
|
+
create_param("index_values", type: "T::Enumerable[T.untyped]"),
|
212
|
+
create_kw_opt_param("includes", default: "nil", type: "T.untyped"),
|
213
|
+
],
|
214
|
+
return_type: COLLECTION_TYPE.call(constant),
|
215
|
+
)
|
219
216
|
end
|
220
217
|
|
221
218
|
sig do
|
@@ -231,7 +231,8 @@ module Tapioca
|
|
231
231
|
# Here we're going to check if the submsg_name is named according to
|
232
232
|
# how Google names map entries.
|
233
233
|
# https://github.com/protocolbuffers/protobuf/blob/f82e26/ruby/ext/google/protobuf_c/defs.c#L1963-L1966
|
234
|
-
if descriptor.submsg_name.to_s.end_with?("_MapEntry_#{descriptor.name}")
|
234
|
+
if descriptor.submsg_name.to_s.end_with?("_MapEntry_#{descriptor.name}") ||
|
235
|
+
descriptor.submsg_name.to_s.end_with?("FieldsEntry")
|
235
236
|
key = descriptor.subtype.lookup("key")
|
236
237
|
value = descriptor.subtype.lookup("value")
|
237
238
|
|
@@ -23,7 +23,7 @@ module Tapioca
|
|
23
23
|
|
24
24
|
attr_reader :__tapioca_secure_tokens
|
25
25
|
|
26
|
-
def has_secure_token(attribute = :token,
|
26
|
+
def has_secure_token(attribute = :token, **)
|
27
27
|
@__tapioca_secure_tokens ||= []
|
28
28
|
@__tapioca_secure_tokens << attribute
|
29
29
|
|
data/lib/tapioca/executor.rb
CHANGED
@@ -15,7 +15,7 @@ module Tapioca
|
|
15
15
|
# be the minimum between the number of available processors (max) or the number of workers to make sure that each
|
16
16
|
# one has at least 4 items to process
|
17
17
|
@number_of_workers = T.let(
|
18
|
-
number_of_workers || [
|
18
|
+
number_of_workers || [max_processors, (queue.length.to_f / MINIMUM_ITEMS_PER_WORKER).ceil].min,
|
19
19
|
Integer,
|
20
20
|
)
|
21
21
|
end
|
@@ -30,5 +30,13 @@ module Tapioca
|
|
30
30
|
number_of_processes = @number_of_workers == 1 ? 0 : @number_of_workers
|
31
31
|
Parallel.map(@queue, { in_processes: number_of_processes }, &block)
|
32
32
|
end
|
33
|
+
|
34
|
+
private
|
35
|
+
|
36
|
+
sig { returns(Integer) }
|
37
|
+
def max_processors
|
38
|
+
env_max_processors = ENV["PARALLEL_PROCESSOR_COUNT"].to_i
|
39
|
+
env_max_processors.positive? ? env_max_processors : Etc.nprocessors
|
40
|
+
end
|
33
41
|
end
|
34
42
|
end
|
@@ -118,7 +118,7 @@ module Tapioca
|
|
118
118
|
sanitized_parameters.each do |type, name|
|
119
119
|
case type
|
120
120
|
when :req
|
121
|
-
rbi_method << RBI::
|
121
|
+
rbi_method << RBI::ReqParam.new(name)
|
122
122
|
when :opt
|
123
123
|
rbi_method << RBI::OptParam.new(name, "T.unsafe(nil)")
|
124
124
|
when :rest
|
@@ -40,7 +40,7 @@ module Tapioca
|
|
40
40
|
|
41
41
|
sig { params(name: String, type: String).returns(RBI::TypedParam) }
|
42
42
|
def create_param(name, type:)
|
43
|
-
create_typed_param(RBI::
|
43
|
+
create_typed_param(RBI::ReqParam.new(name), type)
|
44
44
|
end
|
45
45
|
|
46
46
|
sig { params(name: String, type: String, default: String).returns(RBI::TypedParam) }
|
@@ -145,7 +145,7 @@ module Tapioca
|
|
145
145
|
|
146
146
|
class_attribute_writers.each do |attribute|
|
147
147
|
mod << RBI::Method.new("#{attribute}=") do |method|
|
148
|
-
method << RBI::
|
148
|
+
method << RBI::ReqParam.new("value")
|
149
149
|
end
|
150
150
|
end
|
151
151
|
|
@@ -162,7 +162,7 @@ module Tapioca
|
|
162
162
|
|
163
163
|
instance_attribute_writers.each do |attribute|
|
164
164
|
mod << RBI::Method.new("#{attribute}=") do |method|
|
165
|
-
method << RBI::
|
165
|
+
method << RBI::ReqParam.new("value")
|
166
166
|
end
|
167
167
|
end
|
168
168
|
|
data/lib/tapioca/version.rb
CHANGED
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.11.
|
4
|
+
version: 0.11.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ufuk Kayserilioglu
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: exe
|
13
13
|
cert_chain: []
|
14
|
-
date: 2023-
|
14
|
+
date: 2023-05-12 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: bundler
|
@@ -281,7 +281,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
281
281
|
- !ruby/object:Gem::Version
|
282
282
|
version: '0'
|
283
283
|
requirements: []
|
284
|
-
rubygems_version: 3.4.
|
284
|
+
rubygems_version: 3.4.12
|
285
285
|
signing_key:
|
286
286
|
specification_version: 4
|
287
287
|
summary: A Ruby Interface file generator for gems, core types and the Ruby standard
|