サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
新年度はじまる
www.ruby-lang.org
Posted by naruse on 25 Dec 2025 We are pleased to announce the release of Ruby 4.0.0. Ruby 4.0 introduces “Ruby Box” and “ZJIT”, and adds many improvements. Ruby Box Ruby Box is a new (experimental) feature to provide separation about definitions. Ruby Box is enabled when an environment variable RUBY_BOX=1 is specified. The class is Ruby::Box. Definitions loaded in a box are isolated in the box. R
Posted by naruse on 25 Dec 2025 Ruby 4.0.0 が公開されました。 Ruby 4.0 には “Ruby Box”、”ZJIT” ほか多数の改善が含まれています。 Ruby Box Ruby Boxはクラス等の定義の分離/隔離のための機能を提供する、実験的機能です。Ruby Boxは環境変数として RUBY_BOX=1 を指定することで有効化できます。クラス名は Ruby::Box です。 Boxの中で読み込まれた定義はそのBox内に閉じた状態となります。Ruby Boxが隔離できる定義としては、既存クラスへのモンキーパッチ、グローバル変数やクラス変数の操作、クラスやモジュールの定義、そして.rbファイルや拡張ライブラリとして実装されたライブラリ類です。 Ruby Boxの主要なユースケースとしては、次のものが想定されています: テストのために何かの挙動
Posted by Hiroshi SHIBATA on 22 Dec 2025 サイトの包括的なデザインのアップデートを発表できることを嬉しく思います。今回の更新ではTaeko Akatsukaさんにデザインを担当していただきました。 サイトの更新をするにあたり、サイトのアイデンティティを 「人が集まる言語、人が見えるサイト」として再設計しました。 Rubyは30年間、「プログラマの幸福」を中心に据えてきた言語です。新しいキービジュアルでは、Rubyを取り巻く人々の存在を視覚的に表現しました。 手描きのイラストで描かれた多様な人物たちが、中心のRubyロゴから放射状に広がる構図は、世界中の開発者がRubyを通じてつながり、それぞれの現場で価値を生み出し、また身近なモチーフとともに Ruby を楽しんでいる様子を表しています。 現代のRubyが誇る エコシステム・生産性・コミュニティ とい
Posted by naruse on 17 Nov 2025 Ruby 4.0.0-preview2 が公開されました。Ruby 4.0では、Unicodeバージョンの17.0.0へのアップデートなど様々な改善が行われています。 言語機能の変更 *nil no longer calls nil.to_a, similar to how **nil does not call nil.to_hash. [Feature #21047] コアクラスのアップデート 注: 複数のアップデートの中から注目すべきアップデートのみを掲載しています。 Binding Binding#local_variables does no longer include numbered parameters. Also, Binding#local_variable_get and Binding#local_v
Posted by matz on 17 Oct 2025 Rubyコミュニティの皆様へ RubyGemsとBundlerは、rubygems.orgとRubyエコシステムにおいて必要不可欠な公式クライアントであり、長年にわたってRuby言語にバンドルされ、標準ライブラリの一部として機能してきました。 このような重要な役割を担っているにもかかわらず、RubyGemsとBundlerは、Rubyエコシステムの他の主要コンポーネントとは異なり、これまでGitHub上のRuby organizationの外で開発されてきました。 コミュニティに長期的な安定性と継続性を提供するため、Matzが率いるRubyコアチームは、これらのプロジェクトの管理をRuby Centralから引き継ぐことを決定しました。今後もRuby Centralおよびコミュニティ全体と緊密に協力しながら、開発を継続してまいりま
Posted by k0kubun on 16 Sep 2025 Ruby 3.4.6 has been released. This is a routine update that includes bug fixes. Please refer to the release notes on GitHub for further details. Release Schedule We intend to release the latest stable Ruby version (currently Ruby 3.4) every two months following the most recent release. Ruby 3.4.7 is scheduled for November and 3.4.8 for January. If a change arises t
Posted by k0kubun on 14 May 2025 Ruby 3.4.4 has been released. This release includes a fix for a YJIT bug related to local variables and addresses a build issue on Windows when using GCC 15. It was released ahead of schedule to make these fixes available as soon as possible. A few other bug fixes are also included. Please see the release notes on GitHub for further details. Release Schedule We int
Posted by k0kubun on 14 Feb 2025 Ruby 3.4.2 has been released. This is a routine update that includes bug fixes. Please refer to the release notes on GitHub for further details. Release Schedule We intend to release the latest stable Ruby version (currently Ruby 3.4) every 2 months. Ruby 3.4.3 will be released in April, 3.4.4 in June, 3.4.5 in August, 3.4.6 in October, and 3.4.7 in December. If th
Posted by naruse on 25 Dec 2024 Ruby 3.4.1 がリリースされました。 このリリースではバージョン表記を修正しています。 詳しくは GitHub releases を参照してください。 ダウンロード https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.1.tar.gz SIZE: 23152739 SHA1: dc42fe22bcdfbd30f63cd93296d893c53b1dadcc SHA256: 3d385e5d22d368b064c817a13ed8e3cc3f71a7705d7ed1bae78013c33aa7c87f SHA512: 93acc262e3b7cf86aeddebdad5b8938c187b9c44a73b0c252b6f873745964001459ae45ece73767
Posted by naruse on 25 Dec 2024 Ruby 3.4.0 が公開されました。Ruby 3.4では、ブロックパラメータ参照の it の追加、 デフォルトパーサーのPrismへの変更、Socket ライブラリの Happy Eyeballs Version 2 (RFC 8305) 対応、YJITの改善、 Modular GCの導入など様々な改善が行われています。 it の追加 ブロックパラメータに名前をつけずに参照する it が追加されました。 [Feature #18980] ary = ["foo", "bar", "baz"] p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"] it は _1 とほとんど同じように動作します。ブロック内で _1 のみを使用する意図がある場合に _1 を使うと、_2 や _3 な
Posted by naruse on 25 Dec 2024 We are pleased to announce the release of Ruby 3.4.0. Ruby 3.4 adds it block parameter reference, changes Prism as default parser, adds Happy Eyeballs Version 2 support to socket library, improves YJIT, adds Modular GC, and so on. it is introduced it is added to reference a block parameter with no variable name. [Feature #18980] ary = ["foo", "bar", "baz"] p ary.map
Posted by k0kubun on 12 Jun 2024 Ruby 3.3.3 has been released. This release includes: RubyGems 3.5.11 Bundler 2.5.11 REXML 3.2.8 strscan 3.0.9 --dump=prism_parsetree is replaced by --parser=prism --dump=parsetree Invalid encoding symbols raise SyntaxError instead of EncodingError Memory leak fix in Ripper parsing Bugfixes for YJIT, **{}, Ripper.tokenize, RubyVM::InstructionSequence#to_binary, --wi
Posted by hsbt on 30 May 2024 We are excited to announce that Ruby’s official website, ruby-lang.org, has adopted Datadog for monitoring by Datadog OSS community support. This allows us to effectively monitor the performance and availability of the site in real time for Ruby users. This key benefits of using Datadog include the following. CDN Visibility cache.ruby-lang.org provided by Fastly is mo
Posted by naruse on 16 May 2024 We are pleased to announce the release of Ruby 3.4.0-preview1. Language changes String literals in files without a frozen_string_literal comment now behave as if they were frozen. If they are mutated a deprecation warning is emitted. These warnings can be enabled with -W:deprecated or by setting Warning[:deprecated] = true. To disable this change, you can run Ruby w
CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search Posted by hsbt on 23 Apr 2024 We have released the Ruby version 3.0.7, 3.1.5, 3.2.4 and 3.3.1 that have a security fix for an arbitrary memory address read vulnerability in Regex search. This vulnerability has been assigned the CVE identifier CVE-2024-27282. Details An issue was discovered in Ruby 3.x through 3.3.0. If a
Posted by naruse on 23 Apr 2024 Ruby 3.3.1 has been released. This release includes security fixes. Please check the topics below for details. CVE-2024-27282: Arbitrary memory address read vulnerability with Regex search CVE-2024-27281: RCE vulnerability with .rdoc_options in RDoc See the GitHub releases for further details. Download https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.1.tar.gz SIZE:
Posted by naruse on 25 Dec 2023 Ruby 3.3.0 が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 Prism default gemとしてPrismパーサを導入しました。 Prismは、Ruby言語のためのポータブルで、エラートレラントで、保守可能な再帰下降パーサです。 Prismは本番環境で使用する準備が整っており、積極的にメンテナンスされています。Ripperの代わりに使用することができます。 Prismの使用方法については、詳細なドキュメンテーションがあります。 Prismは、CRubyに内部的に使用されるCライブラリと、Rubyコードを解析する必要がある任意
Posted by naruse on 11 Dec 2023 Ruby 3.3.0-rc1 が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 このRC1リリース以降はABIの変更を極力行いません。何らかの理由でABIを変更した場合はリリース時にお知らせします。 Prism Introduced the Prism parser as a default gem Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language Prism is production r
Posted by naruse on 12 Nov 2023 Ruby 3.3.0-preview3 が公開されました。Ruby 3.3ではPrismという新しいパーサーの追加、新しいパーサージェネレーターであるLramaによるBisonの置き換え、RJITという新たなJITの仕組みを追加、YJITの高速化など様々な改善が行われています。 Prism Introduced the Prism parser as a default gem Prism is a portable, error tolerant, and maintainable recursive descent parser for the Ruby language Prism is production ready and actively maintained, you can use it in place o
このページでは Ruby の各ブランチについてメンテナンス状況を記載します。 より詳細な情報についてはリリースページを見てください。 以下は Ruby のブランチとそのメンテナンス状況の暫定リストです。 EOL の日付等は予定として掲載しています。 Ruby の各ブランチは以下のフェーズに別れてメンテナンスされています: ノーマルメンテナンス (不具合修正): これらのブランチのバージョンは機能修正と脆弱性の修正が行われます。 セキュリティメンテナンス (脆弱性の修正): これらのブランチは脆弱性の修正のみ行われます。 EOL (end-of-life): これらのブランチは Ruby 開発チームによる修正は種類を問わず行われません。 Ruby Lifecycle Timelines Ruby 4.0 ステータス: normal maintenance リリース: 2025-12-25 ノ
Posted by naruse on 25 Dec 2022 We are pleased to announce the release of Ruby 3.2.0. Ruby 3.2 adds many features and performance improvements. WASI based WebAssembly support This is an initial port of WASI based WebAssembly support. This enables a CRuby binary to be available on a Web browser, a Serverless Edge environment, or other kinds of WebAssembly/WASI embedders. Currently this port passes
Posted by naruse on 25 Dec 2022 Ruby 3.2.0 が公開されました。Ruby 3.2では多くの機能を追加するとともに、様々な改善が行われています。 WASIベースのWebAssemblyサポート WASIベースのWebAssemblyへのコンパイルがサポートされました。これにより、ブラウザやサーバーレスエッジ環境、その他のWebAssembly/WASI環境でCRubyのバイナリが利用できるようになります。現在この移植版はThread API以外のbasic testとbootstrap testをパスしています。 Background もともとWebAssembly (Wasm)が導入されたのは、プログラムをブラウザの上で安全かつ高速に実行するためでした。しかし、様々な環境で安全かつ効率的にプログラムを実行するという目的は、Webだけでなく一般的なアプ
Posted by naruse on 6 Dec 2022 Ruby 3.2.0 Release Candidate 1 が公開されました。Ruby 3.2では多くの機能を追加しています。 WASIベースのWebAssemblyサポート WASIベースのWebAssemblyへのコンパイルがサポートされました。これにより、ブラウザやサーバーレスエッジ環境、その他のWebAssembly/WASI環境でCRubyのバイナリが利用できるようになります。現在この移植版はThread API以外のbasic testとbootstrap testをパスしています。 Background もともとWebAssembly (Wasm)が導入されたのは、プログラムをブラウザの上で安全かつ高速に実行するためでした。しかし、様々な環境で安全かつ効率的にプログラムを実行するという目的は、Webだけでなく一般
Posted by mame on 22 Nov 2022 We have released the cgi gem version 0.3.5, 0.2.2, and 0.1.0.2 that has a security fix for a HTTP response splitting vulnerability. This vulnerability has been assigned the CVE identifier CVE-2021-33621. Details If an application that generates HTTP responses using the cgi gem with untrusted user input, an attacker can exploit it to inject a malicious HTTP response he
Posted by naruse on 11 Nov 2022 Ruby 3.2系のプレビューリリースである、Ruby 3.2.0 Preview 3 が公開されました。Ruby 3.2では多くの機能を追加しています。 WASIベースのWebAssemblyサポート WASIベースのWebAssemblyへのコンパイルがサポートされました。これにより、ブラウザやサーバーレスエッジ環境、その他のWebAssembly/WASI環境でCRubyのバイナリが利用できるようになります。現在この移植版はThread API以外のbasic testとbootstrap testをパスしています。 Background もともとWebAssembly (Wasm)が導入されたのは、プログラムをブラウザの上で安全かつ高速に実行するためでした。しかし、様々な環境で安全かつ効率的にプログラムを実行するという
Posted by mame on 12 Dec 2019 Translated by hachi8833 本記事では、Ruby 3.0で予定されているキーワード引数の非互換性について解説します。 概要 この文書では便宜上、必須引数、オプション引数、rest引数、後置引数(つまり、キーワード引数とブロック引数以外の引数)をまとめて「位置引数」と呼びます。 Ruby 3.0では、位置引数とキーワード引数が分離されます。Ruby 3.0で変更される振る舞いはRuby 2.7で警告を表示します。以下のいずれかの警告が表示される場合は、コードのアップデートが必要です。 Using the last argument as keyword parameters is deprecated Passing the keyword argument as the last hash parameter
Posted by naruse on 9 Sep 2022 We are pleased to announce the release of Ruby 3.2.0-preview2. Ruby 3.2 adds many features and performance improvements. WASI based WebAssembly support This is an initial port of WASI based WebAssembly support. This enables a CRuby binary to be available on Web browser, Serverless Edge environment, and other WebAssembly/WASI embedders. Currently this port passes basi
Posted by naruse on 3 Apr 2022 Ruby 3.2系最初のプレビューリリースである、Ruby 3.2.0 Preview 1 が公開されました。Ruby 3.2では多くの機能を追加しています。 WASIベースのWebAssemblyサポート WASIベースのWebAssemblyへのコンパイルがサポートされました。これにより、ブラウザやサーバーレスエッジ環境、その他のWebAssembly/WASI環境でCRubyのバイナリが利用できるようになります。現在この移植版はThread API以外のbasic testとbootstrap testをパスしています。 Background もともとWebAssembly (Wasm)が導入されたのは、プログラムをブラウザの上で安全かつ高速に実行するためでした。しかし、様々な環境で安全かつ効率的にプログラムを実行するとい
Posted by naruse on 25 Dec 2021 Ruby 3.1系初のリリースである、Ruby 3.1.0 が公開されました。Ruby 3.1は3.0と高い互換性を保ちながら、多くの機能を追加しています。 YJIT: New experimental in-process JIT compiler Ruby 3.1では、Shopifyが開発した新しいプロセス内JITコンパイラであるYJITをマージしました。 2018年のRuby 2.6でMJITをマージして以来、そのパフォーマンスは年々改善され、去年にはRuby3x3を無事達成しました。比較的大規模なOptcarrotベンチマークでは輝かしい高速化を達成したMJITですが、一方で現実の業務アプリケーションの性能はこれまで改善出来ていませんでした。 近年Shopifyは彼らのRailsアプリケーションを高速化するため、Rub
次のページ
このページを最初にブックマークしてみませんか?
『Ruby Programming Language』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く