steep 1.10.0.pre.3 → 2.0.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.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +87 -0
  3. data/CLAUDE.md +114 -0
  4. data/README.md +1 -1
  5. data/Rakefile +15 -3
  6. data/Steepfile +13 -13
  7. data/lib/steep/annotation_parser.rb +5 -1
  8. data/lib/steep/annotations_helper.rb +12 -2
  9. data/lib/steep/ast/node/type_application.rb +22 -16
  10. data/lib/steep/ast/node/type_assertion.rb +7 -4
  11. data/lib/steep/ast/types/factory.rb +3 -2
  12. data/lib/steep/cli.rb +246 -2
  13. data/lib/steep/daemon/configuration.rb +19 -0
  14. data/lib/steep/daemon/server.rb +476 -0
  15. data/lib/steep/daemon.rb +201 -0
  16. data/lib/steep/diagnostic/ruby.rb +50 -8
  17. data/lib/steep/diagnostic/signature.rb +31 -8
  18. data/lib/steep/drivers/check.rb +301 -140
  19. data/lib/steep/drivers/print_project.rb +9 -10
  20. data/lib/steep/drivers/query.rb +102 -0
  21. data/lib/steep/drivers/start_server.rb +19 -0
  22. data/lib/steep/drivers/stop_server.rb +20 -0
  23. data/lib/steep/drivers/watch.rb +2 -2
  24. data/lib/steep/index/rbs_index.rb +38 -13
  25. data/lib/steep/index/signature_symbol_provider.rb +24 -3
  26. data/lib/steep/interface/builder.rb +48 -15
  27. data/lib/steep/interface/shape.rb +13 -5
  28. data/lib/steep/locator.rb +377 -0
  29. data/lib/steep/project/dsl.rb +26 -5
  30. data/lib/steep/project/group.rb +8 -2
  31. data/lib/steep/project/target.rb +16 -2
  32. data/lib/steep/project.rb +21 -2
  33. data/lib/steep/server/base_worker.rb +2 -2
  34. data/lib/steep/server/change_buffer.rb +2 -1
  35. data/lib/steep/server/custom_methods.rb +12 -0
  36. data/lib/steep/server/inline_source_change_detector.rb +94 -0
  37. data/lib/steep/server/interaction_worker.rb +51 -74
  38. data/lib/steep/server/lsp_formatter.rb +48 -12
  39. data/lib/steep/server/master.rb +100 -18
  40. data/lib/steep/server/target_group_files.rb +124 -151
  41. data/lib/steep/server/type_check_controller.rb +276 -123
  42. data/lib/steep/server/type_check_worker.rb +104 -3
  43. data/lib/steep/services/completion_provider/rbs.rb +74 -0
  44. data/lib/steep/services/completion_provider/ruby.rb +652 -0
  45. data/lib/steep/services/completion_provider/type_name.rb +243 -0
  46. data/lib/steep/services/completion_provider.rb +39 -662
  47. data/lib/steep/services/content_change.rb +14 -1
  48. data/lib/steep/services/file_loader.rb +4 -2
  49. data/lib/steep/services/goto_service.rb +271 -68
  50. data/lib/steep/services/hover_provider/content.rb +67 -0
  51. data/lib/steep/services/hover_provider/rbs.rb +8 -9
  52. data/lib/steep/services/hover_provider/ruby.rb +123 -64
  53. data/lib/steep/services/hover_provider/singleton_methods.rb +4 -0
  54. data/lib/steep/services/signature_service.rb +129 -54
  55. data/lib/steep/services/type_check_service.rb +72 -27
  56. data/lib/steep/signature/validator.rb +30 -18
  57. data/lib/steep/source/ignore_ranges.rb +14 -4
  58. data/lib/steep/source.rb +16 -2
  59. data/lib/steep/tagged_logging.rb +39 -0
  60. data/lib/steep/type_construction.rb +94 -21
  61. data/lib/steep/type_inference/block_params.rb +7 -7
  62. data/lib/steep/type_inference/context.rb +4 -2
  63. data/lib/steep/type_inference/logic_type_interpreter.rb +21 -3
  64. data/lib/steep/type_inference/method_call.rb +4 -0
  65. data/lib/steep/type_inference/type_env.rb +1 -1
  66. data/lib/steep/typing.rb +0 -2
  67. data/lib/steep/version.rb +1 -1
  68. data/lib/steep.rb +42 -32
  69. data/manual/ruby-diagnostics.md +67 -0
  70. data/sample/Steepfile +1 -0
  71. data/sample/lib/conference.rb +1 -0
  72. data/sample/lib/deprecated.rb +6 -0
  73. data/sample/lib/inline.rb +43 -0
  74. data/sample/sig/generics.rbs +3 -0
  75. data/steep.gemspec +4 -5
  76. metadata +26 -26
  77. data/lib/steep/services/type_name_completion.rb +0 -236
data/lib/steep.rb CHANGED
@@ -2,9 +2,7 @@ require "steep/version"
2
2
 
3
3
  require "pathname"
4
4
  require "parser/ruby33"
5
- require "active_support"
6
- require "active_support/core_ext/object/try"
7
- require "active_support/core_ext/string/inflections"
5
+ require "prism"
8
6
  require "logger"
9
7
  require "rainbow"
10
8
  require "listen"
@@ -15,7 +13,6 @@ require "stringio"
15
13
  require 'uri'
16
14
  require "yaml"
17
15
  require "securerandom"
18
- require "base64"
19
16
  require "time"
20
17
  require 'socket'
21
18
 
@@ -26,6 +23,7 @@ require "rbs"
26
23
 
27
24
  require "steep/path_helper"
28
25
  require "steep/located_value"
26
+ require "steep/tagged_logging"
29
27
  require "steep/thread_waiter"
30
28
  require "steep/equatable"
31
29
  require "steep/method_name"
@@ -99,6 +97,8 @@ require "steep/type_inference/multiple_assignment"
99
97
  require "steep/type_inference/method_call"
100
98
  require "steep/type_inference/case_when"
101
99
 
100
+ require "steep/locator.rb"
101
+
102
102
  require "steep/index/rbs_index"
103
103
  require "steep/index/signature_symbol_provider"
104
104
  require "steep/index/source_index"
@@ -107,11 +107,14 @@ require "steep/services/content_change"
107
107
  require "steep/services/path_assignment"
108
108
  require "steep/services/signature_service"
109
109
  require "steep/services/type_check_service"
110
+ require "steep/services/hover_provider/content"
110
111
  require "steep/services/hover_provider/singleton_methods"
111
112
  require "steep/services/hover_provider/ruby"
112
113
  require "steep/services/hover_provider/rbs"
113
- require "steep/services/type_name_completion"
114
114
  require "steep/services/completion_provider"
115
+ require "steep/services/completion_provider/type_name"
116
+ require "steep/services/completion_provider/ruby"
117
+ require "steep/services/completion_provider/rbs"
115
118
  require "steep/services/signature_help_provider"
116
119
  require "steep/services/stats_calculator"
117
120
  require "steep/services/file_loader"
@@ -128,7 +131,9 @@ require "steep/server/interaction_worker"
128
131
  require "steep/server/type_check_worker"
129
132
  require "steep/server/target_group_files"
130
133
  require "steep/server/type_check_controller"
134
+ require "steep/server/inline_source_change_detector"
131
135
  require "steep/server/master"
136
+ require "steep/daemon"
132
137
 
133
138
  require "steep/project"
134
139
  require "steep/project/pattern"
@@ -150,6 +155,9 @@ require "steep/drivers/print_project"
150
155
  require "steep/drivers/init"
151
156
  require "steep/drivers/vendor"
152
157
  require "steep/drivers/worker"
158
+ require "steep/drivers/start_server"
159
+ require "steep/drivers/stop_server"
160
+ require "steep/drivers/query"
153
161
  require "steep/drivers/diagnostic_printer"
154
162
  require "steep/drivers/diagnostic_printer/base_formatter"
155
163
  require "steep/drivers/diagnostic_printer/code_formatter"
@@ -173,19 +181,7 @@ module Steep
173
181
  end
174
182
 
175
183
  def self.new_logger(output, prev_level)
176
- logger = Logger.new(output)
177
- logger.formatter = proc do |severity, datetime, progname, msg|
178
- # @type var severity: String
179
- # @type var datetime: Time
180
- # @type var progname: untyped
181
- # @type var msg: untyped
182
- # @type block: String
183
- "#{datetime.strftime('%Y-%m-%d %H:%M:%S.%L')}: #{severity}: #{msg}\n"
184
- end
185
- ActiveSupport::TaggedLogging.new(logger).tap do |logger|
186
- logger.push_tags "Steep #{VERSION}"
187
- logger.level = prev_level || Logger::ERROR
188
- end
184
+ TaggedLogging.new(output, level: prev_level || Logger::ERROR)
189
185
  end
190
186
 
191
187
  def self.log_output
@@ -195,11 +191,17 @@ module Steep
195
191
  def self.log_output=(output)
196
192
  @log_output = output
197
193
 
194
+ if output.is_a?(String)
195
+ io = File.open(output, "a")
196
+ else
197
+ io = output
198
+ end
199
+
198
200
  prev_level = @logger&.level
199
- @logger = new_logger(output, prev_level)
201
+ @logger = new_logger(io, prev_level)
200
202
 
201
203
  prev_level = @ui_logger&.level
202
- @ui_logger = new_logger(output, prev_level)
204
+ @ui_logger = new_logger(io, prev_level)
203
205
 
204
206
  output
205
207
  end
@@ -233,7 +235,15 @@ module Steep
233
235
  end
234
236
 
235
237
  def self.can_fork?
236
- defined?(fork)
238
+ return @can_fork if defined?(@can_fork)
239
+
240
+ @can_fork = begin
241
+ pid = fork { exit!(0) }
242
+ Process.waitpid(pid) if pid
243
+ true
244
+ rescue NotImplementedError
245
+ false
246
+ end
237
247
  end
238
248
 
239
249
  class Sampler
@@ -299,17 +309,17 @@ module Steep
299
309
  end
300
310
  end
301
311
 
302
- klasses = [
303
- # Steep::Interface::MethodType
304
- ] #: Array[Class]
305
-
306
- klasses.each do |klass|
307
- klass.instance_eval do
308
- def self.new(*_a, **_b, &_c)
309
- super
310
- end
311
- end
312
- end
312
+ # klasses = [
313
+ # # Steep::Interface::MethodType
314
+ # ] #: Array[Class]
315
+ #
316
+ # klasses.each do |klass|
317
+ # klass.instance_eval do
318
+ # def self.new(*_a, **_b, &_c)
319
+ # super
320
+ # end
321
+ # end
322
+ # end
313
323
 
314
324
  module GCCounter
315
325
  module_function
@@ -667,6 +667,45 @@ test.rb:1:0: [error] Invalid ignore comment
667
667
  | - | - | - | - | - |
668
668
  | error | warning | warning | warning | - |
669
669
 
670
+ <a name='Ruby::LibraryRBSError'></a>
671
+ ## Ruby::LibraryRBSError
672
+
673
+ Type checking failed because of errors in library RBS files.
674
+
675
+ This diagnostic is reported on source files when RBS signatures from library or standard library
676
+ have validation errors, such as superclass mismatches. Each error is reported as a separate diagnostic.
677
+
678
+ ### RBS
679
+
680
+ ```rbs
681
+ class Integer < String
682
+ end
683
+ ```
684
+
685
+ ### Ruby code
686
+
687
+ ```ruby
688
+ 1 + 2
689
+ ```
690
+
691
+ ### Diagnostic
692
+
693
+ ```
694
+ a.rb:1:0: [error] Type checking failed due to error in library RBS file
695
+ │ Different superclasses are specified for `::Integer`
696
+ │ Diagnostic ID: Ruby::LibraryRBSError
697
+
698
+ └ 1 + 2
699
+ ~~~~~
700
+ ```
701
+
702
+
703
+ ### Severity
704
+
705
+ | all_error | strict | default | lenient | silent |
706
+ | - | - | - | - | - |
707
+ | error | error | error | error | - |
708
+
670
709
  <a name='Ruby::MethodArityMismatch'></a>
671
710
  ## Ruby::MethodArityMismatch
672
711
 
@@ -1022,6 +1061,34 @@ test.rb:1:9: [error] Cannot find type `::Int`
1022
1061
  | - | - | - | - | - |
1023
1062
  | error | error | information | information | - |
1024
1063
 
1064
+ <a name='Ruby::RedundantIgnoreComment'></a>
1065
+ ## Ruby::RedundantIgnoreComment
1066
+
1067
+ `steep:ignore` comment is redundant.
1068
+
1069
+ ### Ruby code
1070
+
1071
+ ```ruby
1072
+ 1 + 1 # steep:ignore
1073
+ ```
1074
+
1075
+ ### Diagnostic
1076
+
1077
+ ```
1078
+ test.rb:1:6: [hint] Redundant ignore comment
1079
+ │ Diagnostic ID: Ruby::RedundantIgnoreComment
1080
+
1081
+ └ 1 + 1 # steep:ignore
1082
+ ~~~~~~~~~~~~~~
1083
+ ```
1084
+
1085
+
1086
+ ### Severity
1087
+
1088
+ | all_error | strict | default | lenient | silent |
1089
+ | - | - | - | - | - |
1090
+ | error | warning | warning | hint | - |
1091
+
1025
1092
  <a name='Ruby::RequiredBlockMissing'></a>
1026
1093
  ## Ruby::RequiredBlockMissing
1027
1094
 
data/sample/Steepfile CHANGED
@@ -3,6 +3,7 @@ D = Steep::Diagnostic
3
3
  target :lib do
4
4
  signature "sig"
5
5
 
6
+ check "lib/inline.rb", inline: true
6
7
  check "lib" # Directory name
7
8
 
8
9
  # configure_code_diagnostics(D::Ruby.strict) # `strict` diagnostics setting
@@ -47,3 +47,4 @@ end
47
47
 
48
48
  conference = nil #: Conference?
49
49
 
50
+ [].map { "" } #$ Array[Symbol]
@@ -5,3 +5,9 @@ Bar.bar()
5
5
  Bar.new.hogehoge("")
6
6
 
7
7
  foo = nil #: Foo
8
+
9
+ # steep:ignore:start
10
+
11
+ 1
12
+
13
+ # steep:ignore:end
@@ -0,0 +1,43 @@
1
+ module Inline
2
+ # This is a bar class
3
+ class Bar
4
+ # @rbs () -> Integer
5
+ def from_bar
6
+ 123
7
+ end
8
+ end
9
+
10
+ class Foo < HelloWorld #[String]
11
+ # @rbs (Integer, Integer) -> String
12
+ def foo(x, y)
13
+ (x + y).to_s
14
+ end
15
+
16
+ #: () -> untyped
17
+ def bar
18
+
19
+ end
20
+
21
+ # @rbs return: String?
22
+ def baz
23
+
24
+ end
25
+
26
+ # @rbs (Integer) -> void
27
+ def initialize(x)
28
+ @name
29
+ end
30
+
31
+ # @rbs @name: String -- the name of something
32
+ end
33
+
34
+
35
+ foo = Foo.new(1)
36
+ foo.foo(1, 2)
37
+ foo.foo(1, "2")
38
+ foo.foo(1, 2, "3")
39
+
40
+ foo.hello_world
41
+
42
+ x = nil #: String?
43
+ end
@@ -13,3 +13,6 @@ class StringGeneric[X < Integer, Y < Integer = String]
13
13
  extend LocationHelper
14
14
  end
15
15
 
16
+ class HelloWorld[T]
17
+ def hello_world: () -> T
18
+ end
data/steep.gemspec CHANGED
@@ -35,14 +35,14 @@ Gem::Specification.new do |spec|
35
35
  spec.required_ruby_version = ">= 3.3.0"
36
36
  end
37
37
 
38
- spec.required_ruby_version = '>= 3.1.0'
38
+ spec.required_ruby_version = '>= 3.2.0'
39
39
 
40
- spec.add_runtime_dependency "parser", ">= 3.1"
41
- spec.add_runtime_dependency "activesupport", ">= 5.1"
40
+ spec.add_runtime_dependency "parser", ">= 3.2"
41
+ spec.add_runtime_dependency "prism", ">= 0.25.0"
42
42
  spec.add_runtime_dependency "rainbow", ">= 2.2.2", "< 4.0"
43
43
  spec.add_runtime_dependency "listen", "~> 3.0"
44
44
  spec.add_runtime_dependency "language_server-protocol", ">= 3.17.0.4", "< 4.0"
45
- spec.add_runtime_dependency "rbs", "~> 3.9.pre"
45
+ spec.add_runtime_dependency "rbs", "~> 4.0"
46
46
  spec.add_runtime_dependency "concurrent-ruby", ">= 1.1.10"
47
47
  spec.add_runtime_dependency "terminal-table", ">= 2", "< 5"
48
48
  spec.add_runtime_dependency "securerandom", ">= 0.1"
@@ -52,5 +52,4 @@ Gem::Specification.new do |spec|
52
52
  spec.add_runtime_dependency "strscan", ">= 1.0.0"
53
53
  spec.add_runtime_dependency "csv", ">= 3.0.9"
54
54
  spec.add_runtime_dependency "uri", ">= 0.12.0"
55
- spec.add_runtime_dependency "mutex_m", ">= 0.3.0"
56
55
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: steep
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0.pre.3
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Soutaro Matsumoto
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2025-03-14 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: parser
@@ -15,28 +15,28 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '3.1'
18
+ version: '3.2'
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: '3.1'
25
+ version: '3.2'
26
26
  - !ruby/object:Gem::Dependency
27
- name: activesupport
27
+ name: prism
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: '5.1'
32
+ version: 0.25.0
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '5.1'
39
+ version: 0.25.0
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: rainbow
42
42
  requirement: !ruby/object:Gem::Requirement
@@ -97,14 +97,14 @@ dependencies:
97
97
  requirements:
98
98
  - - "~>"
99
99
  - !ruby/object:Gem::Version
100
- version: 3.9.pre
100
+ version: '4.0'
101
101
  type: :runtime
102
102
  prerelease: false
103
103
  version_requirements: !ruby/object:Gem::Requirement
104
104
  requirements:
105
105
  - - "~>"
106
106
  - !ruby/object:Gem::Version
107
- version: 3.9.pre
107
+ version: '4.0'
108
108
  - !ruby/object:Gem::Dependency
109
109
  name: concurrent-ruby
110
110
  requirement: !ruby/object:Gem::Requirement
@@ -237,20 +237,6 @@ dependencies:
237
237
  - - ">="
238
238
  - !ruby/object:Gem::Version
239
239
  version: 0.12.0
240
- - !ruby/object:Gem::Dependency
241
- name: mutex_m
242
- requirement: !ruby/object:Gem::Requirement
243
- requirements:
244
- - - ">="
245
- - !ruby/object:Gem::Version
246
- version: 0.3.0
247
- type: :runtime
248
- prerelease: false
249
- version_requirements: !ruby/object:Gem::Requirement
250
- requirements:
251
- - - ">="
252
- - !ruby/object:Gem::Version
253
- version: 0.3.0
254
240
  description: Gradual Typing for Ruby
255
241
  email:
256
242
  - matsumoto@soutaro.com
@@ -262,6 +248,7 @@ files:
262
248
  - ".gitignore"
263
249
  - ".gitmodules"
264
250
  - CHANGELOG.md
251
+ - CLAUDE.md
265
252
  - LICENSE
266
253
  - README.md
267
254
  - Rakefile
@@ -317,6 +304,9 @@ files:
317
304
  - lib/steep/ast/types/var.rb
318
305
  - lib/steep/ast/types/void.rb
319
306
  - lib/steep/cli.rb
307
+ - lib/steep/daemon.rb
308
+ - lib/steep/daemon/configuration.rb
309
+ - lib/steep/daemon/server.rb
320
310
  - lib/steep/diagnostic/deprecated/else_on_exhaustive_case.rb
321
311
  - lib/steep/diagnostic/deprecated/unknown_constant_assigned.rb
322
312
  - lib/steep/diagnostic/helper.rb
@@ -334,7 +324,10 @@ files:
334
324
  - lib/steep/drivers/init.rb
335
325
  - lib/steep/drivers/langserver.rb
336
326
  - lib/steep/drivers/print_project.rb
327
+ - lib/steep/drivers/query.rb
328
+ - lib/steep/drivers/start_server.rb
337
329
  - lib/steep/drivers/stats.rb
330
+ - lib/steep/drivers/stop_server.rb
338
331
  - lib/steep/drivers/utils/driver_helper.rb
339
332
  - lib/steep/drivers/utils/jobs_option.rb
340
333
  - lib/steep/drivers/vendor.rb
@@ -353,6 +346,7 @@ files:
353
346
  - lib/steep/interface/substitution.rb
354
347
  - lib/steep/interface/type_param.rb
355
348
  - lib/steep/located_value.rb
349
+ - lib/steep/locator.rb
356
350
  - lib/steep/method_name.rb
357
351
  - lib/steep/module_helper.rb
358
352
  - lib/steep/node_helper.rb
@@ -369,6 +363,7 @@ files:
369
363
  - lib/steep/server/change_buffer.rb
370
364
  - lib/steep/server/custom_methods.rb
371
365
  - lib/steep/server/delay_queue.rb
366
+ - lib/steep/server/inline_source_change_detector.rb
372
367
  - lib/steep/server/interaction_worker.rb
373
368
  - lib/steep/server/lsp_formatter.rb
374
369
  - lib/steep/server/master.rb
@@ -378,9 +373,13 @@ files:
378
373
  - lib/steep/server/work_done_progress.rb
379
374
  - lib/steep/server/worker_process.rb
380
375
  - lib/steep/services/completion_provider.rb
376
+ - lib/steep/services/completion_provider/rbs.rb
377
+ - lib/steep/services/completion_provider/ruby.rb
378
+ - lib/steep/services/completion_provider/type_name.rb
381
379
  - lib/steep/services/content_change.rb
382
380
  - lib/steep/services/file_loader.rb
383
381
  - lib/steep/services/goto_service.rb
382
+ - lib/steep/services/hover_provider/content.rb
384
383
  - lib/steep/services/hover_provider/rbs.rb
385
384
  - lib/steep/services/hover_provider/ruby.rb
386
385
  - lib/steep/services/hover_provider/singleton_methods.rb
@@ -389,7 +388,6 @@ files:
389
388
  - lib/steep/services/signature_service.rb
390
389
  - lib/steep/services/stats_calculator.rb
391
390
  - lib/steep/services/type_check_service.rb
392
- - lib/steep/services/type_name_completion.rb
393
391
  - lib/steep/signature/validator.rb
394
392
  - lib/steep/source.rb
395
393
  - lib/steep/source/ignore_ranges.rb
@@ -399,6 +397,7 @@ files:
399
397
  - lib/steep/subtyping/relation.rb
400
398
  - lib/steep/subtyping/result.rb
401
399
  - lib/steep/subtyping/variable_variance.rb
400
+ - lib/steep/tagged_logging.rb
402
401
  - lib/steep/test.rb
403
402
  - lib/steep/thread_waiter.rb
404
403
  - lib/steep/type_construction.rb
@@ -421,6 +420,7 @@ files:
421
420
  - sample/Steepfile
422
421
  - sample/lib/conference.rb
423
422
  - sample/lib/deprecated.rb
423
+ - sample/lib/inline.rb
424
424
  - sample/lib/length.rb
425
425
  - sample/sig/conference.rbs
426
426
  - sample/sig/deprecated.rbs
@@ -441,14 +441,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
441
441
  requirements:
442
442
  - - ">="
443
443
  - !ruby/object:Gem::Version
444
- version: 3.1.0
444
+ version: 3.2.0
445
445
  required_rubygems_version: !ruby/object:Gem::Requirement
446
446
  requirements:
447
447
  - - ">="
448
448
  - !ruby/object:Gem::Version
449
449
  version: '0'
450
450
  requirements: []
451
- rubygems_version: 3.6.2
451
+ rubygems_version: 4.0.6
452
452
  specification_version: 4
453
453
  summary: Gradual Typing for Ruby
454
454
  test_files: []