Ruby 4.0.0 preview2 リリース
Posted by naruse on 17 Nov 2025
Ruby 4.0.0-preview2 が公開されました。Ruby 4.0では、Unicodeバージョンの17.0.0へのアップデートなど様々な改善が行われています。
言語機能の変更
*nilno longer callsnil.to_a, similar to how**nildoes not callnil.to_hash. [Feature #21047]
コアクラスのアップデート
注: 複数のアップデートの中から注目すべきアップデートのみを掲載しています。
-
Binding
Binding#local_variablesdoes no longer include numbered parameters. Also,Binding#local_variable_getandBinding#local_variable_setreject to handle numbered parameters. [Bug #21049]
-
IO
IO.selectaccepts +Float::INFINITY+ as a timeout argument. [Feature #20610]
-
String
- Update Unicode to Version 17.0.0 and Emoji Version 17.0. [Feature #19908][Feature #20724][Feature #21275] (also applies to Regexp)
標準ライブラリのアップデート
注: 複数のアップデートの中から注目すべき標準ライブラリのアップデートのみを掲載しています。
互換性に関する変更
注: 不具合修正を除きます。
標準ライブラリの互換性の変更
C API のアップデート
JIT
- YJIT
- YJIT stats
- デフォルトビルドでは
ratio_in_yjitが機能しなくなりました。--yjit-statsで有効にするためには、configureで--enable-yjit=statsを使用してください。 - トレースポイントによってすべてのコードが無効化されたときに増加する
invalidate_everythingをYJIT statsにデフォルトで追加します。
- デフォルトビルドでは
RubyVM::YJIT.enableにmem_size:とcall_threshold:オプションを追加します。
- YJIT stats
- ZJIT
- 実験的なメソッドベースのJITコンパイラを追加しました。
--enable-zjitをconfigureで使用して--zjitのサポートを有効にしてください。 - Ruby 4.0.0-preview2の時点で、ZJITはまだほとんどのベンチマークを高速化する準備が整っていません。 ZJITの性能評価はRuby 4.0のリリースまでお控えください。
- 実験的なメソッドベースのJITコンパイラを追加しました。
- RJIT
--rjitは削除されました。サードパーティのJIT APIの実装を ruby/rjit リポジトリに移行します。
その他の変更点
より詳細な情報は NEWS か commit logs を参照してください。
これらの変更により、Ruby 3.4.0から 3607 ファイルが変更され、 197451 行が追加され、 285607 行が削除されました!deletions(-)
Download
-
https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.0-preview2.tar.gz
SIZE: 23444451 SHA1: 132e450bbee3f61ed0b463ed1e2bd3a3a324339c SHA256: 0a3330dae710302e11f7f0323e83219ab3c6517984691a312c662f329c5120e1 SHA512: b5e681cc84be59148485b9a2212dcf54d61cfee27431ceddb49bedc8baa913ec8b36da43242cb4f1791b25e4bfc1dcf72b5527288a0656f2933da898d0e0b40f -
https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.0-preview2.tar.xz
SIZE: 17554228 SHA1: f8e8b98ea85ac82610ab601a21dc9a90c5c56a97 SHA256: 0b92b15466d77a9d7e59e4a75f050d42cd50fe96c951d2b3b9f8029394cd9a43 SHA512: 7afaa8d8e832ef0ded28f1caf874da69f16105e1b3aad5947c6911364159b4c6ebd3d7ea5d7d86708e9f2f06a047921b8302ca6e75ec429a3da846845f896976 -
https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.0-preview2.zip
SIZE: 28933540 SHA1: 48a235cfbfd4252dce81da870c792e32309e62b9 SHA256: f5c68ee44dfcb76b61c07c437fa945814dfc516570b1c921506ac886960160ca SHA512: 508c685e46a641c74e2968daf650559503ce2bcaac3403654713adb2345c3ede2bace929294a1367afecac5edd6b2c42fa833f5313456f78c79151d310c860cf
What is Ruby
Rubyはまつもとゆきひろ (Matz) によって1993年に開発が始められ、今もオープンソースソフトウェアとして開発が続けられています。Rubyは様々なプラットフォームで動き、世界中で、特にWebアプリケーション開発のために使われています。
最近のニュース
Ruby 4.0.0 リリース
Ruby 4.0.0 が公開されました。 Ruby 4.0 には “Ruby Box”、”ZJIT” ほか多数の改善が含まれています。
Posted by naruse on 25 Dec 2025
サイトのアイデンティティの再設計
サイトの包括的なデザインのアップデートを発表できることを嬉しく思います。今回の更新ではTaeko Akatsukaさんにデザインを担当していただきました。
Posted by Hiroshi SHIBATA on 22 Dec 2025
Ruby 4.0.0 preview3 リリース
Ruby 4.0.0-preview3 が公開されました。
Posted by naruse on 18 Dec 2025
RubyGemsリポジトリ所有権の移行
Rubyコミュニティの皆様へ
Posted by matz on 17 Oct 2025