sorbet-runtime 0.5.6376 → 0.5.6388

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5c854428b35639b1e955696a4065f640958957dc814d45748bae2b4cb2ced337
4
- data.tar.gz: 10840ab5b0af9be599d6cb1e41b2ca731f5215e3eafac7b78482e6f52d41137c
3
+ metadata.gz: f79e0141596ff1174b709d656b66cec0bb8a2a422b49b180e59b1d8569312971
4
+ data.tar.gz: 752d3a475759175886f2641a57710b2618348d117c7b7747471a20ae5a8a6621
5
5
  SHA512:
6
- metadata.gz: bbcf5145b27fb4ed4e2a0076b41000627580d4437c8dae5f03fe2d05d47d91c359f8461dc02acb828f10716141dd72117363c77d4fe8f484be4d322c55c00eb4
7
- data.tar.gz: b265f2d4a1d1d391ed4a28ebcf77403a17f2816c8fc6353784975774e3da97da9c065fad97bdc30d1097a98591b6455d787eb200f63cdd1828573d88cd06c333
6
+ metadata.gz: 72b36842e6cd4565f969a73a6fa4f66176b6f2ea398401829a5eaeff675f0b6c06a4be25c4bf040dd1e73f28295b286f8878b5df1d40a4d914abecbe4a3a67b4
7
+ data.tar.gz: 8fc70b0186214df41ee364855007a217bf77db24e9c5ec69eb43ba3dfece2a613c87116c65a348cd1423e3e5dd7911b2a71106f16fa043c9e0180bb570006351
@@ -162,7 +162,16 @@ module T::Props
162
162
  exceptions.children.each {|c| assert_equal(:const, c.type)}
163
163
  assert_equal(:lvasgn, assignment.type)
164
164
  assert_equal([:e], assignment.children)
165
- validate_lack_of_side_effects(handler, whitelisted_methods_for_deserialize)
165
+
166
+ deserialization_error, val_return = handler.children
167
+
168
+ assert_equal(:send, deserialization_error.type)
169
+ receiver, method, *args = deserialization_error.children
170
+ assert_equal(nil, receiver)
171
+ assert_equal(:raise_deserialization_error, method)
172
+ args.each {|a| validate_lack_of_side_effects(a, whitelisted_methods_for_deserialize)}
173
+
174
+ validate_lack_of_side_effects(val_return, whitelisted_methods_for_deserialize)
166
175
  else
167
176
  validate_lack_of_side_effects(else_body, whitelisted_methods_for_deserialize)
168
177
  end
@@ -261,7 +270,7 @@ module T::Props
261
270
  private_class_method def self.whitelisted_methods_for_deserialize
262
271
  @whitelisted_methods_for_deserialize ||= {
263
272
  lvar: %i{dup map transform_values transform_keys each_with_object nil? []= to_f},
264
- const: %i[deserialize from_hash deep_clone_object soft_assert_handler],
273
+ const: %i[deserialize from_hash deep_clone_object],
265
274
  }
266
275
  end
267
276
  end
@@ -57,15 +57,10 @@ module T::Props
57
57
  begin
58
58
  #{transformation}
59
59
  rescue NoMethodError => e
60
- T::Configuration.soft_assert_handler(
61
- 'Deserialization error (probably unexpected stored type)',
62
- storytime: {
63
- klass: self.class,
64
- prop: #{prop.inspect},
65
- value: val,
66
- error: e.message,
67
- notify: 'djudd'
68
- }
60
+ raise_deserialization_error(
61
+ #{prop.inspect},
62
+ val,
63
+ e,
69
64
  )
70
65
  val
71
66
  end
@@ -156,6 +156,19 @@ module T::Props::Serializable
156
156
  @_required_props_missing_from_deserialize << prop
157
157
  nil
158
158
  end
159
+
160
+ private def raise_deserialization_error(prop_name, value, orig_error)
161
+ T::Configuration.soft_assert_handler(
162
+ 'Deserialization error (probably unexpected stored type)',
163
+ storytime: {
164
+ klass: self.class,
165
+ prop: prop_name,
166
+ value: value,
167
+ error: orig_error.message,
168
+ notify: 'djudd'
169
+ }
170
+ )
171
+ end
159
172
  end
160
173
 
161
174
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sorbet-runtime
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.6376
4
+ version: 0.5.6388
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-16 00:00:00.000000000 Z
11
+ date: 2021-04-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest