sorbet-runtime 0.5.11267 → 0.5.11274

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 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