rbs 1.7.1 → 2.0.0.pre2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +104 -3
  3. data/core/array.rbs +3 -3
  4. data/core/builtin.rbs +4 -0
  5. data/core/enumerable.rbs +3 -3
  6. data/docs/collection.md +23 -1
  7. data/docs/syntax.md +117 -61
  8. data/ext/rbs_extension/constants.c +2 -6
  9. data/ext/rbs_extension/constants.h +1 -2
  10. data/ext/rbs_extension/parser.c +220 -184
  11. data/ext/rbs_extension/parserstate.c +6 -2
  12. data/ext/rbs_extension/parserstate.h +10 -0
  13. data/ext/rbs_extension/ruby_objs.c +17 -17
  14. data/ext/rbs_extension/ruby_objs.h +3 -4
  15. data/lib/rbs/ast/declarations.rb +6 -99
  16. data/lib/rbs/ast/type_param.rb +134 -0
  17. data/lib/rbs/cli.rb +33 -5
  18. data/lib/rbs/collection/config/lockfile_generator.rb +26 -18
  19. data/lib/rbs/collection/sources/git.rb +18 -7
  20. data/lib/rbs/collection/sources/rubygems.rb +7 -0
  21. data/lib/rbs/collection/sources/stdlib.rb +6 -0
  22. data/lib/rbs/definition.rb +9 -0
  23. data/lib/rbs/definition_builder.rb +78 -16
  24. data/lib/rbs/environment.rb +32 -8
  25. data/lib/rbs/environment_loader.rb +0 -2
  26. data/lib/rbs/environment_walker.rb +4 -1
  27. data/lib/rbs/errors.rb +31 -6
  28. data/lib/rbs/location_aux.rb +2 -0
  29. data/lib/rbs/method_type.rb +29 -6
  30. data/lib/rbs/prototype/rb.rb +3 -3
  31. data/lib/rbs/prototype/rbi.rb +8 -6
  32. data/lib/rbs/prototype/runtime.rb +4 -4
  33. data/lib/rbs/type_alias_regularity.rb +115 -0
  34. data/lib/rbs/types.rb +99 -22
  35. data/lib/rbs/validator.rb +99 -15
  36. data/lib/rbs/variance_calculator.rb +60 -31
  37. data/lib/rbs/version.rb +1 -1
  38. data/lib/rbs/writer.rb +2 -14
  39. data/lib/rbs.rb +2 -0
  40. data/schema/decls.json +19 -46
  41. data/schema/methodType.json +1 -1
  42. data/schema/typeParam.json +36 -0
  43. data/schema/types.json +8 -2
  44. data/sig/collection/collections.rbs +11 -2
  45. data/sig/collection/config.rbs +2 -2
  46. data/sig/declarations.rbs +15 -62
  47. data/sig/definition.rbs +11 -1
  48. data/sig/definition_builder.rbs +37 -1
  49. data/sig/environment.rbs +7 -1
  50. data/sig/environment_walker.rbs +26 -0
  51. data/sig/errors.rbs +28 -3
  52. data/sig/location.rbs +3 -1
  53. data/sig/locator.rbs +1 -1
  54. data/sig/method_types.rbs +25 -4
  55. data/sig/type_alias_regularity.rbs +92 -0
  56. data/sig/type_param.rbs +74 -0
  57. data/sig/types.rbs +37 -8
  58. data/sig/validator.rbs +38 -2
  59. data/sig/variance_calculator.rbs +50 -0
  60. data/sig/writer.rbs +1 -1
  61. data/stdlib/bigdecimal-math/0/manifest.yaml +2 -0
  62. data/stdlib/csv/0/manifest.yaml +2 -0
  63. data/stdlib/date/0/date.rbs +2 -2
  64. data/stdlib/logger/0/manifest.yaml +2 -0
  65. data/stdlib/net-http/0/manifest.yaml +2 -0
  66. data/stdlib/openssl/0/manifest.yaml +2 -0
  67. data/stdlib/prime/0/manifest.yaml +2 -0
  68. data/stdlib/resolv/0/manifest.yaml +3 -0
  69. data/stdlib/set/0/set.rbs +3 -3
  70. data/stdlib/uri/0/common.rbs +10 -5
  71. data/stdlib/uri/0/ftp.rbs +10 -0
  72. data/stdlib/uri/0/generic.rbs +34 -34
  73. data/stdlib/uri/0/mailto.rbs +5 -0
  74. data/stdlib/uri/0/ws.rbs +10 -0
  75. data/stdlib/uri/0/wss.rbs +7 -0
  76. data/stdlib/yaml/0/manifest.yaml +3 -0
  77. data/steep/Gemfile.lock +10 -10
  78. metadata +21 -4
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.1
4
+ version: 2.0.0.pre2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Soutaro Matsumoto
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-11-18 00:00:00.000000000 Z
11
+ date: 2021-12-24 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: RBS is the language for type signatures for Ruby and standard library
14
14
  definitions.
@@ -124,6 +124,7 @@ files:
124
124
  - lib/rbs/ast/comment.rb
125
125
  - lib/rbs/ast/declarations.rb
126
126
  - lib/rbs/ast/members.rb
127
+ - lib/rbs/ast/type_param.rb
127
128
  - lib/rbs/buffer.rb
128
129
  - lib/rbs/builtin_names.rb
129
130
  - lib/rbs/char_scanner.rb
@@ -174,6 +175,7 @@ files:
174
175
  - lib/rbs/test/tester.rb
175
176
  - lib/rbs/test/type_check.rb
176
177
  - lib/rbs/type_alias_dependency.rb
178
+ - lib/rbs/type_alias_regularity.rb
177
179
  - lib/rbs/type_name.rb
178
180
  - lib/rbs/type_name_resolver.rb
179
181
  - lib/rbs/types.rb
@@ -190,6 +192,7 @@ files:
190
192
  - schema/location.json
191
193
  - schema/members.json
192
194
  - schema/methodType.json
195
+ - schema/typeParam.json
193
196
  - schema/types.json
194
197
  - sig/ancestor_builder.rbs
195
198
  - sig/ancestor_graph.rbs
@@ -225,7 +228,9 @@ files:
225
228
  - sig/repository.rbs
226
229
  - sig/substitution.rbs
227
230
  - sig/type_alias_dependency.rbs
231
+ - sig/type_alias_regularity.rbs
228
232
  - sig/type_name_resolver.rbs
233
+ - sig/type_param.rbs
229
234
  - sig/typename.rbs
230
235
  - sig/types.rbs
231
236
  - sig/util.rbs
@@ -238,10 +243,12 @@ files:
238
243
  - stdlib/base64/0/base64.rbs
239
244
  - stdlib/benchmark/0/benchmark.rbs
240
245
  - stdlib/bigdecimal-math/0/big_math.rbs
246
+ - stdlib/bigdecimal-math/0/manifest.yaml
241
247
  - stdlib/bigdecimal/0/big_decimal.rbs
242
248
  - stdlib/cgi/0/core.rbs
243
249
  - stdlib/coverage/0/coverage.rbs
244
250
  - stdlib/csv/0/csv.rbs
251
+ - stdlib/csv/0/manifest.yaml
245
252
  - stdlib/date/0/date.rbs
246
253
  - stdlib/date/0/date_time.rbs
247
254
  - stdlib/dbm/0/dbm.rbs
@@ -257,20 +264,25 @@ files:
257
264
  - stdlib/logger/0/formatter.rbs
258
265
  - stdlib/logger/0/log_device.rbs
259
266
  - stdlib/logger/0/logger.rbs
267
+ - stdlib/logger/0/manifest.yaml
260
268
  - stdlib/logger/0/period.rbs
261
269
  - stdlib/logger/0/severity.rbs
262
270
  - stdlib/monitor/0/monitor.rbs
263
271
  - stdlib/mutex_m/0/mutex_m.rbs
272
+ - stdlib/net-http/0/manifest.yaml
264
273
  - stdlib/net-http/0/net-http.rbs
265
274
  - stdlib/objspace/0/objspace.rbs
275
+ - stdlib/openssl/0/manifest.yaml
266
276
  - stdlib/openssl/0/openssl.rbs
267
277
  - stdlib/optparse/0/optparse.rbs
268
278
  - stdlib/pathname/0/pathname.rbs
269
279
  - stdlib/prettyprint/0/prettyprint.rbs
270
280
  - stdlib/prime/0/integer-extension.rbs
281
+ - stdlib/prime/0/manifest.yaml
271
282
  - stdlib/prime/0/prime.rbs
272
283
  - stdlib/pstore/0/pstore.rbs
273
284
  - stdlib/pty/0/pty.rbs
285
+ - stdlib/resolv/0/manifest.yaml
274
286
  - stdlib/resolv/0/resolv.rbs
275
287
  - stdlib/rubygems/0/basic_specification.rbs
276
288
  - stdlib/rubygems/0/config_file.rbs
@@ -309,14 +321,19 @@ files:
309
321
  - stdlib/tsort/0/tsort.rbs
310
322
  - stdlib/uri/0/common.rbs
311
323
  - stdlib/uri/0/file.rbs
324
+ - stdlib/uri/0/ftp.rbs
312
325
  - stdlib/uri/0/generic.rbs
313
326
  - stdlib/uri/0/http.rbs
314
327
  - stdlib/uri/0/https.rbs
315
328
  - stdlib/uri/0/ldap.rbs
316
329
  - stdlib/uri/0/ldaps.rbs
330
+ - stdlib/uri/0/mailto.rbs
317
331
  - stdlib/uri/0/rfc2396_parser.rbs
318
332
  - stdlib/uri/0/rfc3986_parser.rbs
333
+ - stdlib/uri/0/ws.rbs
334
+ - stdlib/uri/0/wss.rbs
319
335
  - stdlib/yaml/0/dbm.rbs
336
+ - stdlib/yaml/0/manifest.yaml
320
337
  - stdlib/yaml/0/store.rbs
321
338
  - stdlib/zlib/0/zlib.rbs
322
339
  - steep/Gemfile
@@ -340,9 +357,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
340
357
  version: '2.6'
341
358
  required_rubygems_version: !ruby/object:Gem::Requirement
342
359
  requirements:
343
- - - ">="
360
+ - - ">"
344
361
  - !ruby/object:Gem::Version
345
- version: '0'
362
+ version: 1.3.1
346
363
  requirements: []
347
364
  rubygems_version: 3.2.22
348
365
  signing_key: