rbs 2.0.0.pre1 → 2.0.0.pre2

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: df2f2f119ca85f630c640b201ebf9ce72322db96223de2fb1d4ba77df68aee59
4
- data.tar.gz: 82943e12963a10f2a4dbd30096fe40fb90ee4b23d6239bd515526a39d2af3b97
3
+ metadata.gz: d69ba0591c817c21a42f8bcd95f993fda8574e753f48bf05fd03f34dfa77b65b
4
+ data.tar.gz: 07dfb19e31c6d275bf51ce0391d161befde331dcdbc071bf8455239b94be9aaf
5
5
  SHA512:
6
- metadata.gz: 9dbd99091da5e5d116a5bb428383c3e63e8b8ee4207ea859e177577b33a1d1dc3d312bb31f03fcda61d90993b4a9ab1ccab69855e7ecb8e986f9696a638c618d
7
- data.tar.gz: dc05caaa25da531bbe353eb0294fbe016a90039eef12a040f2c5b07f409683c9fbc6c3406beba8c8d76f25f5b0ed7bbc3501967cc84fcc000a2e49fda85e84a3
6
+ metadata.gz: 4c5efd986d31b8fbcbc0c50b7625fc743dbf3de0f82ef955909644653d6ec41ca9208fb89f5e0d2359a76f82f15aa627aeccc6ac43a62d9589c818a5d38fa12e
7
+ data.tar.gz: de8bab99ebb3a68ed3d61e261900d822e5f1fee8c5678bea38fd3e2e180138909181da2a769b147497e069c6c6b813edb24eef83f1a433cffc3c6ed79beeee23
data/CHANGELOG.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ### Bounded Generics
8
8
 
9
- RBS 2.0 ships with _bounded generics_, which improves the expressiveness of the language by adding new syntax to define the constraint on type parameters.
9
+ RBS 2.0 ships with _bounded generics_, which improves the expressiveness of the language by adding a new syntax to define constraints on type parameters.
10
10
 
11
11
  ```rbs
12
12
  class PrettyPrint[T < _Output]
@@ -28,7 +28,31 @@ It means _`T` has to be compatible with `_Output` interface._
28
28
 
29
29
  See [the PR for details](https://github.com/ruby/rbs/pull/844).
30
30
 
31
- `manifest.yaml` allows declaring the dependencies from your gems to standard libraries explicitly.
31
+ ### RBS Collection manager
32
+
33
+ RBS Collection feature is generally available on RBS 2.0. In short, it is Bundler for RBS. You can manage RBSs of standard libraries and third party gems with `rbs collection` subcommand.
34
+
35
+ ```bash
36
+ $ rbs collection init
37
+ created: rbs_collection.yaml
38
+
39
+ # The `install` command set up RBS files and creates `rbs_collection.lock.yaml` file
40
+ $ rbs collection install
41
+ Installing actionpack:6.0 (actionpack@ce6664cec73)
42
+ (...snip...)
43
+ Using tsort:0 (/path/to/rbs-2.0.0/stdlib/tsort/0)
44
+ It's done! 21 gems' RBSs now installed.
45
+
46
+ # Now you can use `rbs`, `typeprof` and `steep` commands with the dependencies out of the box!
47
+ $ rbs validate
48
+ $ typeprof app.rb
49
+ $ steep check
50
+ ```
51
+
52
+ RBS 2.0 also introduces `manifest.yaml` to declare the dependencies from your gems to standard libraries explicitly.
53
+ See [the documentation](https://github.com/ruby/rbs/blob/master/docs/collection.md) for more information.
54
+
55
+ ### Breaking changes
32
56
 
33
57
  This version contains a bug fix, which potentially breaks the compatibility with older versions.
34
58
  The super class names in class definitions are now resolved in _outer_ context.
data/lib/rbs/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module RBS
2
- VERSION = "2.0.0.pre1"
2
+ VERSION = "2.0.0.pre2"
3
3
  end
@@ -193,14 +193,14 @@ module URI
193
193
  #
194
194
  # Creates a new URI::Generic instance from ``generic'' components without check.
195
195
  #
196
- def initialize: (String scheme, String userinfo, String host, Integer port, String? registry, String path, String? opaque, String query, String fragment, ?untyped parser, ?boolish arg_check) -> URI::Generic
196
+ def initialize: (String? scheme, String? userinfo, String? host, (String | Integer)? port, nil registry, String? path, String? opaque, String? query, String? fragment, ?untyped parser, ?boolish arg_check) -> void
197
197
 
198
198
  #
199
199
  # Returns the scheme component of the URI.
200
200
  #
201
201
  # URI("http://foo/bar/baz").scheme #=> "http"
202
202
  #
203
- attr_reader scheme: String
203
+ attr_reader scheme: String?
204
204
 
205
205
  # Returns the host component of the URI.
206
206
  #
@@ -222,14 +222,14 @@ module URI
222
222
  # URI("http://[::1]/bar/baz").host #=> "[::1]"
223
223
  # URI("http://[::1]/bar/baz").hostname #=> "::1"
224
224
  #
225
- attr_reader host: String
225
+ attr_reader host: String?
226
226
 
227
227
  # Returns the port component of the URI.
228
228
  #
229
229
  # URI("http://foo/bar/baz").port #=> 80
230
230
  # URI("http://foo:8080/bar/baz").port #=> 8080
231
231
  #
232
- attr_reader port: Integer
232
+ attr_reader port: Integer?
233
233
 
234
234
  def registry: () -> nil
235
235
 
@@ -237,13 +237,13 @@ module URI
237
237
  #
238
238
  # URI("http://foo/bar/baz").path #=> "/bar/baz"
239
239
  #
240
- attr_reader path: String
240
+ attr_reader path: String?
241
241
 
242
242
  # Returns the query component of the URI.
243
243
  #
244
244
  # URI("http://foo/bar/baz?search=FooBar").query #=> "search=FooBar"
245
245
  #
246
- attr_reader query: String
246
+ attr_reader query: String?
247
247
 
248
248
  # Returns the opaque part of the URI.
249
249
  #
@@ -280,13 +280,13 @@ module URI
280
280
  #
281
281
  # Checks the scheme +v+ component against the URI::Parser Regexp for :SCHEME.
282
282
  #
283
- def check_scheme: (String v) -> true
283
+ def check_scheme: (String? v) -> true
284
284
 
285
285
  # Protected setter for the scheme component +v+.
286
286
  #
287
287
  # See also URI::Generic.scheme=.
288
288
  #
289
- def set_scheme: (String v) -> String
289
+ def set_scheme: (String? v) -> String?
290
290
 
291
291
  #
292
292
  # == Args
@@ -309,7 +309,7 @@ module URI
309
309
  # uri.scheme = "https"
310
310
  # uri.to_s #=> "https://my.example.com"
311
311
  #
312
- def scheme=: (String v) -> String
312
+ def scheme=: (String? v) -> String?
313
313
 
314
314
  #
315
315
  # Checks the +user+ and +password+.
@@ -338,12 +338,12 @@ module URI
338
338
  # Can not have a registry or opaque component defined,
339
339
  # with a user component defined.
340
340
  #
341
- def check_password: (String v, ?String user) -> (String | true)
341
+ def check_password: (String? v, ?String user) -> (String? | true)
342
342
 
343
343
  #
344
344
  # Sets userinfo, argument is string like 'name:pass'.
345
345
  #
346
- def userinfo=: (String? userinfo) -> Array[String | nil]?
346
+ def userinfo=: (String? userinfo) -> String?
347
347
 
348
348
  #
349
349
  # == Args
@@ -366,7 +366,7 @@ module URI
366
366
  # uri.user = "sam"
367
367
  # uri.to_s #=> "http://sam:V3ry_S3nsit1ve@my.example.com"
368
368
  #
369
- def user=: (String user) -> String
369
+ def user=: (String? user) -> String?
370
370
 
371
371
  #
372
372
  # == Args
@@ -389,26 +389,26 @@ module URI
389
389
  # uri.password = "V3ry_S3nsit1ve"
390
390
  # uri.to_s #=> "http://john:V3ry_S3nsit1ve@my.example.com"
391
391
  #
392
- def password=: (String password) -> String
392
+ def password=: (String? password) -> String?
393
393
 
394
394
  # Protected setter for the +user+ component, and +password+ if available
395
395
  # (with validation).
396
396
  #
397
397
  # See also URI::Generic.userinfo=.
398
398
  #
399
- def set_userinfo: (String user, ?String? password) -> Array[String | nil]
399
+ def set_userinfo: (String? user, ?String? password) -> [String?, String?]
400
400
 
401
401
  # Protected setter for the user component +v+.
402
402
  #
403
403
  # See also URI::Generic.user=.
404
404
  #
405
- def set_user: (String v) -> String
405
+ def set_user: (String? v) -> String?
406
406
 
407
407
  # Protected setter for the password component +v+.
408
408
  #
409
409
  # See also URI::Generic.password=.
410
410
  #
411
- def set_password: (String v) -> String
411
+ def set_password: (String? v) -> String?
412
412
 
413
413
  # Returns the userinfo +ui+ as <code>[user, password]</code>
414
414
  # if properly formatted as 'user:password'.
@@ -421,10 +421,10 @@ module URI
421
421
  def userinfo: () -> String?
422
422
 
423
423
  # Returns the user component.
424
- def user: () -> String
424
+ def user: () -> String?
425
425
 
426
426
  # Returns the password component.
427
- def password: () -> String
427
+ def password: () -> String?
428
428
 
429
429
  #
430
430
  # Checks the host +v+ component for RFC2396 compliance
@@ -433,13 +433,13 @@ module URI
433
433
  # Can not have a registry or opaque component defined,
434
434
  # with a host component defined.
435
435
  #
436
- def check_host: (String v) -> (String | true)
436
+ def check_host: (String? v) -> true?
437
437
 
438
438
  # Protected setter for the host component +v+.
439
439
  #
440
440
  # See also URI::Generic.host=.
441
441
  #
442
- def set_host: (String v) -> String
442
+ def set_host: (String? v) -> String?
443
443
 
444
444
  #
445
445
  # == Args
@@ -462,7 +462,7 @@ module URI
462
462
  # uri.host = "foo.com"
463
463
  # uri.to_s #=> "http://foo.com"
464
464
  #
465
- def host=: (String v) -> String
465
+ def host=: (String? v) -> String?
466
466
 
467
467
  # Extract the host part of the URI and unwrap brackets for IPv6 addresses.
468
468
  #
@@ -473,7 +473,7 @@ module URI
473
473
  # uri.hostname #=> "::1"
474
474
  # uri.host #=> "[::1]"
475
475
  #
476
- def hostname: () -> String
476
+ def hostname: () -> String?
477
477
 
478
478
  # Sets the host part of the URI as the argument with brackets for IPv6 addresses.
479
479
  #
@@ -487,7 +487,7 @@ module URI
487
487
  # If the argument seems to be an IPv6 address,
488
488
  # it is wrapped with brackets.
489
489
  #
490
- def hostname=: (String v) -> String
490
+ def hostname=: (String? v) -> String?
491
491
 
492
492
  #
493
493
  # Checks the port +v+ component for RFC2396 compliance
@@ -496,13 +496,13 @@ module URI
496
496
  # Can not have a registry or opaque component defined,
497
497
  # with a port component defined.
498
498
  #
499
- def check_port: (Integer v) -> (Integer | true)
499
+ def check_port: ((String | Integer)? v) -> true?
500
500
 
501
501
  # Protected setter for the port component +v+.
502
502
  #
503
503
  # See also URI::Generic.port=.
504
504
  #
505
- def set_port: (Integer v) -> Integer
505
+ def set_port: ((String | Integer)? v) -> (String | Integer)?
506
506
 
507
507
  #
508
508
  # == Args
@@ -525,7 +525,7 @@ module URI
525
525
  # uri.port = 8080
526
526
  # uri.to_s #=> "http://my.example.com:8080"
527
527
  #
528
- def port=: (Integer v) -> Integer
528
+ def port=: ((String | Integer)? v) -> (String | Integer)?
529
529
 
530
530
  def check_registry: (String v) -> nil
531
531
 
@@ -541,13 +541,13 @@ module URI
541
541
  # Can not have a opaque component defined,
542
542
  # with a path component defined.
543
543
  #
544
- def check_path: (String v) -> true
544
+ def check_path: (String? v) -> true
545
545
 
546
546
  # Protected setter for the path component +v+.
547
547
  #
548
548
  # See also URI::Generic.path=.
549
549
  #
550
- def set_path: (String v) -> String
550
+ def set_path: (String? v) -> String?
551
551
 
552
552
  #
553
553
  # == Args
@@ -570,7 +570,7 @@ module URI
570
570
  # uri.path = "/faq/"
571
571
  # uri.to_s #=> "http://my.example.com/faq/"
572
572
  #
573
- def path=: (String v) -> String
573
+ def path=: (String? v) -> String?
574
574
 
575
575
  #
576
576
  # == Args
@@ -590,7 +590,7 @@ module URI
590
590
  # uri.query = "id=1"
591
591
  # uri.to_s #=> "http://my.example.com/?id=1"
592
592
  #
593
- def query=: (String v) -> String
593
+ def query=: (String? v) -> String?
594
594
 
595
595
  #
596
596
  # Checks the opaque +v+ component for RFC2396 compliance and
@@ -599,13 +599,13 @@ module URI
599
599
  # Can not have a host, port, user, or path component defined,
600
600
  # with an opaque component defined.
601
601
  #
602
- def check_opaque: (String v) -> (String | true)
602
+ def check_opaque: (String? v) -> true?
603
603
 
604
604
  # Protected setter for the opaque component +v+.
605
605
  #
606
606
  # See also URI::Generic.opaque=.
607
607
  #
608
- def set_opaque: (String v) -> String
608
+ def set_opaque: (String? v) -> String?
609
609
 
610
610
  #
611
611
  # == Args
@@ -620,7 +620,7 @@ module URI
620
620
  #
621
621
  # See also URI::Generic.check_opaque.
622
622
  #
623
- def opaque=: (String v) -> String
623
+ def opaque=: (String? v) -> String?
624
624
 
625
625
  #
626
626
  # Checks the fragment +v+ component against the URI::Parser Regexp for :FRAGMENT.
@@ -644,7 +644,7 @@ module URI
644
644
  # uri.fragment = "time=1305212086"
645
645
  # uri.to_s #=> "http://my.example.com/?id=25#time=1305212086"
646
646
  #
647
- def fragment=: (String v) -> String
647
+ def fragment=: (String? v) -> String?
648
648
 
649
649
  #
650
650
  # Returns true if URI is hierarchical.
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: 2.0.0.pre1
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-12-23 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.