Skip to content

Releases: ruby/rbs

3.3.0

09 Nov 05:18
Compare
Choose a tag to compare

Release note

Library changes

  • Stop exiting with error when syntax error detected during validation (#1603)
  • [rbs diff] Load dependencies from manifest.yaml (#1602)
  • [rbs diff] Resolve constants name (#1601)

3.3.0.pre.2

02 Nov 13:48
Compare
Choose a tag to compare
3.3.0.pre.2 Pre-release
Pre-release

Release note

Signature updates

Library changes

  • Fixup validation (#1596)
  • Print type syntax errors instead of raising error (#1594)

rbs prototype

  • Fix error when MASGN (#1593)
  • Support cases where Module#constants has been redefined (#1591)
  • [prototype runtime] Fix error if direct inherited (#1590)

3.3.0.pre.1

31 Oct 06:21
Compare
Choose a tag to compare
3.3.0.pre.1 Pre-release
Pre-release

Release note

Signature updates

Language updates

  • Add __todo__ type (#1520)

Library changes

  • Colored diff (#1589)
  • Fix the issue where ::array[T] would be interpreted as ::array, and type mismatch (#1491)
  • Add Abbrev to runtime dependency (#1573)
  • Avoid an error when parsing files including SyntaxError (#1574)
  • Implement rbs diff command (#1459)
  • Add another type syntax validation (#1566)
  • Mark global variables (#1551)
  • Show location of type by method command (#1537)
  • Make alias and interface names absolute (#1502)
  • Better record type format (#1501)
  • Should keep escape of alias and attr family (#1486)
  • Fix error when undefined interface or alias (#1465)

rbs prototype

  • [prototype runtime --todo] Consider accessibility mismatch (#1539)
  • Better support for inherited class of Struct or Data by prototype runtime (#1571)
  • prototype rb: Ignore ITER (method call with block) (#1562)
  • [prototype runtime] Add --autoload option (#1561)
  • Implement todo option (#1470)
  • [prototype runtime] Fix error when constant is a BasicObject instance. (#1485)
  • [prototype runtime] Const name should be absolute (#1490)
  • [prototype runtime] Optimize performance (#1495)
  • [prototype runtime] Fix error when output Object constants (#1472)
  • [prototype runtime] Support prepend mixin (#1460)
  • [prototype runtime] Avoid alias for methods defined in another module (#1457)

rbs collection

  • [Collection] Simple colorize collection text like Bundler (#1558)
  • Delete sources section from lockfile (#1544)

Miscellaneous

  • Add in with_XXX methods (#1492)
  • Updated binding to use modern kernel tests (#1507)
  • Remove all non-required methods from testing types (#1541)
  • Add assert_type assertion to confirm if the value has a type (#1532)
  • Add #assert_const_type and guide to use type assertions (#1514)
  • Improve skip test message (#1476)
  • Type check (#1467)
  • Type check RDoc related Ruby code (#1466)
  • Fix CI failure (#1464)

3.2.2

28 Sep 01:38
Compare
Choose a tag to compare

Release note

Library changes

3.2.1

29 Aug 06:00
Compare
Choose a tag to compare

Release note

Signature updates

Library changes

  • Fix error when undefined interface or alias (Backport #1465)

Miscellaneous

  • Improve skip test message (Backport #1476)
  • Fix CI failure (Backport #1464)

3.2.0

22 Aug 08:48
Compare
Choose a tag to compare

Release note

Signature updates

Library changes

rbs collection

  • Fix LockfileGenerator crashes if failed to get deps for locked source (#1413)

3.2.0.pre.1

18 Aug 06:17
Compare
Choose a tag to compare
3.2.0.pre.1 Pre-release
Pre-release

Release note

Signature updates

  • observable (#1424)
  • uri (#1371)
  • zlib (#1389)
  • IO (#1399)
  • ::DATA (#1395)
  • $DEBUG (#1427)
  • ConditionVariable#wait (#1397)
  • Kernel::exit! (#1396)
  • Kernel#exec (#1368)
  • Kernel#p, Kernel#pp (#1342)
  • Logger.new (#1423)
  • Module (#1321)
  • Object#define_singleton_method (#1431)
  • Object#enum_for (#1327)
  • StringIO#truncate (#1425)
  • Thread#raise (#1426)
  • Time#round, Time#floor, Time#ceil (#1337)
  • Remove TRUE, FALSE, and NIL constants (#1432)
  • Updated builtin.rbs's interfaces (#1429)
  • Convert | nil to ? in global_variables.rbs (#1430)
  • Remove references to the transient heap (#1374)

Library changes

  • subtract: Remove RBS file if the subtracted definition is empty (#1385)
  • subtract: Filter redundant access modifiers (#1384)
  • Fix module alias normalizations (#1393)
  • Reduce memory allocation on TypeName#initialize (#1363)
  • Fix a type error in FileFinder (#1326)
  • Add signatures about DetailedMessage (#1323)
  • Make TypeNameResolver more compatible with Ruby (#1373)
  • Drop support of Ruby 2.x (#1364)
  • Print detailed_message on parse command (#1329)
  • Relax rdoc version requirement (#1333)
  • Support keyword argument to #detailed_message (#1328)

rbs prototype

  • Avoid to generate anonymous or internal module (#1421)
  • Fix type name for prototype rbi (#1386)
  • Support type params for known signatures (#1408)
  • Super class should be absolute paths. (#1415)
  • prototype rb: Fix a crash by "include foo" (#1419)
  • Add --outline option to prototype runtime to skip generating method definition (#1404)
  • [rbs prototype] Follow up ivar/cvar feature (#1361)
  • prototype rb: Extract instance variables and class variables (#1343)

rbs collection

  • Print warning when specified gem not found (#1367)
  • Generate gem specific sources in lockfile (#1402)
  • Spec may be missing when rbs_collection.yaml declares dependency (#1378)

Miscellaneous

  • Remove ruby-lsp && bundle update --bundler (#1420)
  • Delete all remaining set-related descriptions. (#1324)
  • Add customized test runner to accept minitest options (#1392)
  • Specify rbs syntax to code snippets in Markdown files (#1366)
  • Fix typo in parser.rbs (#1352)
  • Fix broken CI (#1353)
  • Handle connection error with Resolv_test.rb (#1356)
  • Removed Prime signature and tests (#1355)

3.1.3

31 Jul 02:14
Compare
Choose a tag to compare

Release note

Library changes

rbs collection

  • Generate gem specific sources in lockfile (Backport #1402)

3.1.2

27 Jul 08:16
Compare
Choose a tag to compare

Release note

⚠️ Note that this patch level release may report additional validation errors that is caused by fix of type name resolution (#1373).

Library changes

  • Make TypeNameResolver more compatible with Ruby (#1373)
  • Fix module alias normalizations (#1393)

3.1.1

18 Jul 14:01
Compare
Choose a tag to compare

Release note

Signature updates

  • Removed GC.verify_transient_heap_internal_consistency (#1374)

Library changes

  • Relax rdoc version requirement in RDoc plugin (#1333)

rbs collection

  • Spec may be missing when rbs_collection.yaml declares dependency (#1378)

Miscellaneous

  • Handle connection error with Resolv_test.rb (#1356)
  • Fix broken CI (#1353)