sorbet-runtime 0.5.11267 → 0.5.11274

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: 62eef630524c0b1ad1f2a3d8749bd5f821a28ebfabbe7e4909010d530ffa698b
4
- data.tar.gz: eb3fb942cb3ead21ec80e425726f823a6eb2cef834354ae2279a00c7fc5bf599
3
+ metadata.gz: 0d4d3e6a04ff9cebce0007a2a78cf4795a520e36dc87b4781889a34987c0ef76
4
+ data.tar.gz: 1621a36d1dcf36e412620160f7c7a169d9f8113d142444b35792ef09577bd33c
5
5
  SHA512:
6
- metadata.gz: 62855bc96c970aab1e89be225e336d6e7adc53b486137bb2f09457abdd9f932d23d4e6a37d05d6c8dad5d1fe098fad3b8cd4c529fcb7926e0bfefdc7b63249f3
7
- data.tar.gz: d14d50ff7afbcad3fb245d2e9f815857c389b90a619fce352eca24da6be967728b748c89bac041ab71beed0f9bf4bf690c19a08b193d9ec701f0364026b7bc2b
6
+ metadata.gz: f26fd6ff92c8e03a1c225538555c2d9ba3da92a71a59110a40a65aa6f2577cc78dcd71884d5e0d77fc50b603adb0629a97707c11e56cc55141d6f55402f57f58
7
+ data.tar.gz: 484efcf5d392bdc926ff9058235076cda9677c0833a0a672569415ada2c492d2d65a875fad0fbd889c3658c07d1b353ea3df0d037ccd2b712ee8be4fae1d8e9c
@@ -4,7 +4,13 @@
4
4
  module T::Private::CallerUtils
5
5
  if Thread.respond_to?(:each_caller_location) # RUBY_VERSION >= "3.2"
6
6
  def self.find_caller
7
+ skiped_first = false
7
8
  Thread.each_caller_location do |loc|
9
+ unless skiped_first
10
+ skiped_first = true
11
+ next
12
+ end
13
+
8
14
  next if loc.path&.start_with?("<internal:")
9
15
 
10
16
  return loc if yield(loc)
@@ -65,7 +65,7 @@ module T::Private::ClassUtils
65
65
  elsif mod.private_method_defined?(name)
66
66
  :private
67
67
  else
68
- raise NameError.new("undefined method `#{name}` for `#{mod}`")
68
+ mod.method(name) # Raises
69
69
  end
70
70
  end
71
71
 
@@ -318,7 +318,7 @@ module T::Private::Methods::CallValidation
318
318
  elsif mod.private_method_defined?(name)
319
319
  :private
320
320
  else
321
- raise NameError.new("undefined method `#{name}` for `#{mod}`")
321
+ mod.method(name) # Raises
322
322
  end
323
323
  end
324
324
  end
@@ -5,8 +5,8 @@ module T::Private::Sealed
5
5
  module NoInherit
6
6
  def inherited(child)
7
7
  super
8
- caller_loc = T::Private::CallerUtils.find_caller {|loc| !loc.to_s.match(/in `inherited'$/)}
9
- T::Private::Sealed.validate_inheritance(caller_loc&.to_s, self, child, 'inherited')
8
+ caller_loc = T::Private::CallerUtils.find_caller {|loc| loc.base_label != 'inherited'}
9
+ T::Private::Sealed.validate_inheritance(caller_loc, self, child, 'inherited')
10
10
  @sorbet_sealed_module_all_subclasses << child
11
11
  end
12
12
 
@@ -23,14 +23,14 @@ module T::Private::Sealed
23
23
  def included(child)
24
24
  super
25
25
  caller_loc = T::Private::CallerUtils.find_caller {|loc| !loc.to_s.match(/in `included'$/)}
26
- T::Private::Sealed.validate_inheritance(caller_loc&.to_s, self, child, 'included')
26
+ T::Private::Sealed.validate_inheritance(caller_loc, self, child, 'included')
27
27
  @sorbet_sealed_module_all_subclasses << child
28
28
  end
29
29
 
30
30
  def extended(child)
31
31
  super
32
32
  caller_loc = T::Private::CallerUtils.find_caller {|loc| !loc.to_s.match(/in `extended'$/)}
33
- T::Private::Sealed.validate_inheritance(caller_loc&.to_s, self, child, 'extended')
33
+ T::Private::Sealed.validate_inheritance(caller_loc, self, child, 'extended')
34
34
  @sorbet_sealed_module_all_subclasses << child
35
35
  end
36
36
 
@@ -68,8 +68,8 @@ module T::Private::Sealed
68
68
  mod.instance_variable_defined?(:@sorbet_sealed_module_decl_file)
69
69
  end
70
70
 
71
- def self.validate_inheritance(this_line, parent, child, verb)
72
- this_file = this_line&.split(':')&.first
71
+ def self.validate_inheritance(caller_loc, parent, child, verb)
72
+ this_file = caller_loc&.path
73
73
  decl_file = parent.instance_variable_get(:@sorbet_sealed_module_decl_file) if sealed_module?(parent)
74
74
 
75
75
  if !this_file
@@ -261,16 +261,11 @@ module T::Props::Serializable::DecoratorMethods
261
261
  end
262
262
 
263
263
  def message_with_generated_source_context(error, generated_method, generate_source_method)
264
- line_label = error.backtrace.find {|l| l.end_with?("in `#{generated_method}'")}
265
- return unless line_label
264
+ generated_method = generated_method.to_s
265
+ line_loc = error.backtrace_locations.find {|l| l.base_label == generated_method}
266
+ return unless line_loc
266
267
 
267
- line_num = if line_label.start_with?("(eval)")
268
- # (eval):13:in `__t_props_generated_serialize'
269
- line_label.split(':')[1]&.to_i
270
- else
271
- # (eval at /Users/jez/stripe/sorbet/gems/sorbet-runtime/lib/types/props/has_lazily_specialized_methods.rb:65):13:in `__t_props_generated_serialize'
272
- line_label.split(':')[2]&.to_i
273
- end
268
+ line_num = line_loc.lineno
274
269
  return unless line_num
275
270
 
276
271
  source_lines = self.send(generate_source_method).split("\n")
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.11267
4
+ version: 0.5.11274
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-23 00:00:00.000000000 Z
11
+ date: 2024-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest