|
1 | 1 | # CHANGELOG |
2 | 2 |
|
| 3 | +## 3.10.3 (2026-01-30) |
| 4 | + |
| 5 | +This is a minor fix around the dependency to `tsort`. |
| 6 | + |
| 7 | +## Pull Requests |
| 8 | + |
| 9 | +* Merge pull request #2601 from ima1zumi/add-tsort-dep ([#2834](https://github.com/ruby/rbs/pull/2834)) |
| 10 | + |
| 11 | +## 3.10.2 (2026-01-07) |
| 12 | + |
| 13 | +This is a minor fix on arena allocator alignment. |
| 14 | + |
| 15 | +### Pull Requests |
| 16 | + |
| 17 | +* Merge pull request #2788 from ruby/fix-alloc-alignment ([#2790](https://github.com/ruby/rbs/pull/2790)) |
| 18 | + |
| 19 | +## 3.10.1 (2026-01-07) |
| 20 | + |
| 21 | +This is a follow-up release for Ruby 4.0.0 with documentation update based on Ruby 4.0.0, and bugfixes related to set/pathname library loading. |
| 22 | + |
| 23 | +### Pull Requests |
| 24 | + |
| 25 | +* Merge pull request #2777 from ksss/pathname-ext ([#2786](https://github.com/ruby/rbs/pull/2786)) |
| 26 | +* Ruby 4.0.0 backports ([#2785](https://github.com/ruby/rbs/pull/2785)) |
| 27 | +* [Backport] Fix subtraction of civar ([#2783](https://github.com/ruby/rbs/pull/2783)) |
| 28 | +* [Backport] Update ruby to 4.0 ([#2778](https://github.com/ruby/rbs/pull/2778)) |
| 29 | + |
| 30 | +## 3.10.0 (2025-12-23) |
| 31 | + |
| 32 | +RBS 3.10.0 ships with a pure C parser implementation, signature updates for Ruby 4.0, and various bug fixes. |
| 33 | + |
| 34 | +### Pure C parser implementation |
| 35 | + |
| 36 | +The new parser implementation was announced at [RubyKaigi 2025](https://rubykaigi.org/2025/presentations/amomchilov.html) and is finally shipped as a RubyGem! |
| 37 | + |
| 38 | +The new parser is faster than the one in 3.9 and is portable — it is independent of the Ruby runtime and is used to implement Sorbet’s RBS support. |
| 39 | + |
| 40 | +### Type definition of bundled gems |
| 41 | + |
| 42 | +The type definitions of `cgi` have been moved to [gem_rbs_collection](https://github.com/ruby/gem_rbs_collection/tree/main/gems/cgi), as it has been migrated to a bundled gem in Ruby 4.0 |
| 43 | + |
| 44 | +`cgi-escape` has been added to `stdlib`. You may need to declare a dependency on `cgi-escape` in your `manifest.yaml`, add `-r cgi-escape` to your command line, or update your type checker configuration. |
| 45 | + |
| 46 | +```yaml |
| 47 | +dependencies: |
| 48 | + - name: cgi-escape |
| 49 | +``` |
| 50 | +
|
| 51 | +The type definitions for `pathname` have also been moved from `stdlib` to `core`, as it is now implemented as part of the core library. |
| 52 | + |
| 53 | +### Pull Requests |
| 54 | + |
| 55 | +* [Backport] Support rdoc v7 ([#2770](https://github.com/ruby/rbs/pull/2770)) |
| 56 | +* [Backport] Check tuple type length ([#2766](https://github.com/ruby/rbs/pull/2766)) |
| 57 | +* Backport update to 4.0.0-preview3 ([#2768](https://github.com/ruby/rbs/pull/2768)) |
| 58 | +* [Backport] Remove test code for bundled gems ([#2762](https://github.com/ruby/rbs/pull/2762)) |
| 59 | +* Merge pull request #2761 from ruby/update-minitest ([#2763](https://github.com/ruby/rbs/pull/2763)) |
| 60 | +* [Backport] Support BigDecimal v4 ([#2759](https://github.com/ruby/rbs/pull/2759)) |
| 61 | +* Parser/lexer backports ([#2756](https://github.com/ruby/rbs/pull/2756)) |
| 62 | +* Merge pull request #2753 from ruby/delete-printf ([#2754](https://github.com/ruby/rbs/pull/2754)) |
| 63 | +* Backports ([#2751](https://github.com/ruby/rbs/pull/2751)) |
| 64 | +* Merge pull request #2728 from ruby/cgi ([#2747](https://github.com/ruby/rbs/pull/2747)) |
| 65 | +* Merge pull request #2729 from ruby/rbs-assert ([#2748](https://github.com/ruby/rbs/pull/2748)) |
| 66 | +* Merge pull request #2749 from ruby/fix-test ([#2750](https://github.com/ruby/rbs/pull/2750)) |
| 67 | +* Backport RBS file updates ([#2742](https://github.com/ruby/rbs/pull/2742)) |
| 68 | +* Backport JSON PRs ([#2740](https://github.com/ruby/rbs/pull/2740)) |
| 69 | +* Merge pull request #2718 from ruby/ruby-4 ([#2741](https://github.com/ruby/rbs/pull/2741)) |
| 70 | +* [Backport] Move Pathname to core from stdlib ([#2730](https://github.com/ruby/rbs/pull/2730)) |
| 71 | +* Backport rdoc 6.16 ([#2722](https://github.com/ruby/rbs/pull/2722)) |
| 72 | +* Backport rdoc support ([#2719](https://github.com/ruby/rbs/pull/2719)) |
| 73 | +* Backport "Remove sig for IO#{ready?,nread}" ([#2720](https://github.com/ruby/rbs/pull/2720)) |
| 74 | +* Backport more pure C parsers ([#2679](https://github.com/ruby/rbs/pull/2679)) |
| 75 | +* Backport module name normalization ([#2673](https://github.com/ruby/rbs/pull/2673)) |
| 76 | +* Backport pure-C parser ([#2671](https://github.com/ruby/rbs/pull/2671)) |
| 77 | +* Fix test failure ([#2672](https://github.com/ruby/rbs/pull/2672)) |
| 78 | + |
| 79 | +## 3.9.5 (2025-09-08) |
| 80 | + |
| 81 | +### Signature updates |
| 82 | + |
| 83 | +* Merge pull request #2655 from ruby/silence-string-deprecation ([#2656](https://github.com/ruby/rbs/pull/2656)) |
| 84 | + |
| 85 | +### Miscellaneous |
| 86 | + |
| 87 | +* Allows the use of a path list as RBS_SKIP_TESTS ([#2641](https://github.com/ruby/rbs/pull/2641)) |
| 88 | +* Suppress to GCC warning with multi-line comment ([#2646](https://github.com/ruby/rbs/pull/2646)) |
| 89 | +* Backport to 3.9 ([#2487](https://github.com/ruby/rbs/pull/2487)) |
| 90 | +* Use erb instead of set for load path testing ([#2468](https://github.com/ruby/rbs/pull/2468)) |
| 91 | + |
| 92 | +## 3.9.4 (2025-05-15) |
| 93 | + |
| 94 | +### Miscellaneous |
| 95 | + |
| 96 | +* Backport test/CI fixes to 3.9 ([#2487](https://github.com/ruby/rbs/pull/2487)) |
| 97 | +* Use erb instead of set for load path testing ([#2468](https://github.com/ruby/rbs/pull/2468)) |
| 98 | + |
| 99 | +## 3.9.3 (2025-05-09) |
| 100 | + |
| 101 | +### Miscellaneous |
| 102 | + |
| 103 | +* Use erb instead of set for load path testing ([#2468](https://github.com/ruby/rbs/pull/2468)) |
| 104 | + |
| 105 | +## 3.9.2 (2025-03-31) |
| 106 | + |
| 107 | +### Library changes |
| 108 | + |
| 109 | +* Change `{}` to `{ 0 }` ([#2354](https://github.com/ruby/rbs/pull/2354)) |
| 110 | + |
| 111 | +## 3.9.1 (2025-03-24) |
| 112 | + |
| 113 | +### Miscellaneous |
| 114 | + |
| 115 | +* `did_you_mean` is a default gem ([#2348](https://github.com/ruby/rbs/pull/2348)) |
| 116 | +* Skip loading ruby_memcheck ([#2347](https://github.com/ruby/rbs/pull/2347)) |
| 117 | + |
3 | 118 | ## 3.9.0 (2025-03-18) |
4 | 119 |
|
5 | 120 | ### Miscellaneous |
|
0 commit comments