Accelerating the GraalVM Release Train

原文はこちら。
The original article was written by Shaun Smith (product management of Oracle Lab’s GraalVM).
https://medium.com/graalvm/accelerating-the-graalvm-release-train-26b0d7cff2ab

AIや急速に進化する開発者向けツールの台頭により、ソフトウェアの進化はかつてない速さで進んでいます。この流れに遅れずについていき、新機能や改善点をより早く皆様にお届けするため、GraalVMのリリーススケジュールを加速させます。四半期ごとのクリティカル・パッチ・アップデート(CPU)の提供を継続しつつ、メジャーバージョンごとに1つの安定版リリース・トレインを維持しながら、月次での機能リリースを導入します。

What this means moving forward:

  • Oracle GraalVM 25.0は、引き続きセキュリティ修正や軽微なバグ修正を受け、安定版リリーストレインとして維持します。
  • GraalVM 25.1以降では、新機能をいち早く利用したいユーザー向けに、月次機能リリースを提供します。2026年5月に25.1をリリースし、その後25.2、25.3、およびそれ以降のリリースを順次提供していく予定です。

What’s changing

  • GraalVM Community Editionはこれまで、6ヶ月ごとに機能リリースを提供しており、各リリースは次の機能リリースに置き換えられるまで、四半期ごとに2回のCPU(累積更新プログラム)を受け取っていました。今後は、GraalVM Community Editionが月次機能リリースに移行し、四半期ごとに利用可能なCPUを組み込むことになります。
  • Oracle GraalVMおよびGraalVM Community Editionの両方において、機能リリースは今後、25.1以降のリリーストレインに基づき毎月提供されます。機能リリースは安定性を確保するため、徹底的なテストが行われます。

What stays the same

  • 四半期ごとのCPUは、OracleおよびOpenJDKのスケジュールに合わせて提供され、すべてのアクティブなリリースには関連するセキュリティベースラインが適用されます。
  • GA前のフィードバックを得るためのチャネルとして、毎週のEarly Access(EA)ビルドの提供は継続されます。

Why we’re doing this

月次リリースにより、アイデアから影響が出るまでの時間が短縮されます。リリースの規模を小さくし頻度を高めることで、皆様が機能を試し、実用的なフィードバックを提供しやすくなり、私たちのイテレーションを加速させることができます。AIを活用した開発やランタイム最適化を取り巻くエコシステムは毎週進化しており、私たちのリリースサイクルもその現実を反映すべきです。同時に、広範なOracleおよびOpenJDKエコシステムと連携した四半期ごとのCPUを通じて、セキュリティ更新の予測可能性は維持されます。

Schedule for adopting new features for GraalVM languages

GraalVM言語の新機能は、その言語が安定し、ライブラリエコシステムでの採用が始まった段階で採用します。Pythonの場合、一般的に、以下のリリースチャートにおいて、そのPythonバージョンがセキュリティ修正フェーズ(黄色)に入った時点でサポートを開始します。

Status of Python versions
https://devguide.python.org/versions/

GraalVMで現在サポートされているPythonのバージョンはPython 3.12であり、これは2025年に黄色のセキュリティ修正フェーズに入りました。Python 3.13は2026年にサポートされる予定です。

Python release schedule.
Python Release Schedule

JavaScriptについては、新しいECMAScript標準が一般的に毎年6月に公開され、GraalVMでのサポートは数ヶ月以内に実装されます。この方針は今後も継続されます。

ECMA-262 – Ecma International
https://ecma-international.org/publications-and-standards/standards/ecma-262/

Javaライブラリのエコシステムは、一般的にJavaのLTSリリース以外をサポートしていないため、以前発表された通り、GraalVMによるJDK 26、27、28のリリース予定はありません。GraalVMはアップストリームの変更を追跡し、Java 29のリリース直後にサポートを提供する予定です。

Understanding release numbers

GraalVMは、JEP 223(MAJOR.MINOR.SECURITY)で規定されているJDKのバージョン番号体系を引き続き採用しています。

JEP 223: New Version-String Scheme
https://openjdk.org/jeps/223

MAJOR番号はJava言語仕様のベースラインを示します。MINOR番号は、25.1、25.2などの機能リリース・トレインを示します。SECURITY番号は、基盤となるJDKの更新からのCPUレベルを示します。例えば、.3は2026年4月を表します。

What this looks like on the calendar

Oracle GraalVM 25 LTS

Oracle GraalVM 25 (LTS) の更新は、従来の四半期ごとのCPUスケジュールに従って引き続きリリースされます。例えば、2026年には4回のCPUリリースがあります(いずれも太平洋時間を基準にしています)。

  • 1月20日:25.0.2
  • 4月21日:25.0.3
  • 7月21日:25.0.4
  • 10月20日:25.0.5

GraalVM feature releases

Oracle GraalVMおよびGraalVM Community Editionの月次機能リリースは、同じマイナー機能/セキュリティレベルの番号付けに従います。各四半期の機能リリースには、最新のJDKクリティカル・パッチ・アップデート(CPU)が含まれ、これはバージョンのSECURITY桁に反映されます。例:

  • 2026年5月(機能リリース):25.1.3
  • 2026年6月(機能リリース):25.2.3
  • 2026年7月(機能リリース+CPU):25.3.4
  • 2026年8月(機能リリース):25.1.4

正確なCPUの日程と予定されているバージョンについては、リリースカレンダーを参照してください。

GraalVM Release Calendar
https://www.graalvm.org/release-calendar/x

What’s coming in monthly feature releases

毎月の25.1+機能ラインを使用して、Native Imageおよび言語ランタイム全体に段階的な機能を提供していきます。以下のハイライトに焦点を当てています。

Truffle — 新しいバイトコードインタプリタが、GraalPy、GraalJS、GraalWasmに導入されています。これらのインタプリタは、JITコンパイルが実行される前のウォームアップ性能を向上させ、メモリ使用量を大幅に削減します。詳細は以下をご覧ください。

graal/truffle/docs/bytecode_dsl/BytecodeDSL.md at master · oracle/graal
https://github.com/oracle/graal/blob/master/truffle/docs/bytecode_dsl/BytecodeDSL.md

GraalPy (Python) — 主な焦点は、バイトコードインタプリタおよびその他の最適化にあり、Pythonのウォームアップを改善するとともに、ネイティブメソッド間の移行コストを削減します。エコシステムの互換性とJVMとの相互運用性(例:`java.util.List`をPythonのリストオブジェクトとして使用するためのサポート)の向上も継続しています。詳細は以下をご覧ください。

GraalPy
https://www.graalvm.org/python/

Native Image — Layers は、JDK、フレームワーク、ライブラリを含む共有ベースレイヤーを備えた階層型ネイティブイメージを実現することで、デプロイメントを改善します。これらのレイヤーをマッピングして再利用することで、メモリ使用量を削減し、コンテナの効率を向上させることができます。詳細については、https://github.com/oracle/graal/issues/7626 をご覧ください。

[GR-48103] Native Image Layers · Issue #7626 · oracle/graal
https://github.com/oracle/graal/issues/7626

Native Image — Crema は、実行時の動的なクラス読み込みと実行をサポートする「Open World」モデルを実現します。AOT コンパイルされたベースレイヤーの上に、動的に読み込まれたクラス用のバイトコードインタプリタと JIT コンパイラを追加します。詳細については、以下を参照してください。

Project Crema: Open World for Native Image · Issue #11327 · oracle/graal
https://github.com/oracle/graal/issues/11327

Native Image — Terminusは、native-imageツールをセルフホスティング化し、ツール自体をネイティブで実行できるようにします。Espressoによるホストとゲストのヒープの厳格な分離に依存しており、より高速で移植性の高いビルドの実現を目指しています。詳細については、以下を参照してください。

Project Terminus: Self-hosting Native Image · Issue #12236 · oracle/graal
https://github.com/oracle/graal/issues/12236

Native Image — Web Imageは、WebAssemblyを対象としてWasmモジュールとJavaScriptラッパーを生成し、JavaアプリケーションをブラウザやNode.js上で実行できるようにします。詳細は以下を参照してください。

Web Image
https://www.graalvm.org/latest/reference-manual/web-image/

GraalJS (JavaScript/Node) — 最新の ECMAScript サポートと、多言語環境におけるファーストクラスの組み込み機能を提供します。以下を参照してください。

GraalJS
https://www.graalvm.org/latest/reference-manual/js/

GraalWasm (WebAssembly) — JVM アプリケーション内で Wasm モジュールを実行および組み込み、安全で高性能なプラグインアーキテクチャを実現します。詳細は以下をご覧ください。

GraalWasm – Documentation
https://www.graalvm.org/webassembly/docs/

Guidance for different users

  • 本番環境のアプリケーションは、25.0 LTS リリーストレインに留まり、四半期ごとに最新の CPU にアップグレードしてください。
  • 機能トレイン上のアプリケーションは、独自のスケジュールで毎月の機能リリースを採用し、新しい機能を取り入れることができますが、セキュリティを最大限に確保するためには、常に最新の CPU を含むリリースにアップグレードしてください。
  • フレームワーク、ライブラリ、およびツールの開発者は、月次リリースが段階的かつ予測可能であると感じるはずです。注目すべき変更については EA で事前告知を行い、CPU ウィーク中の連携を歓迎します。
  • アーリーアダプターには、今後の月次リリースに向けた EA ビルドを試用し、自身のワークロードに対して変更を検証し、早期にフィードバックを提供することを推奨します。

Frequently asked questions

QA
セキュリティ修正は月次リリースにどのように反映されますか?各リリースにおいて、バージョン番号の3桁目(すなわち「SECURITY」桁)はJDKのCPUレベルと一致します。各CPU Tuesdayの後、次の月次機能リリースにはそのCPUレベルが適用されます。例えば、2026年7月のリリースは25.3.4です。
各月次機能リリース(25.1以降)のサポート期間はどのくらいですか?各機能リリースは、次のリリースによって置き換えられます。古い機能リリースへの修正のバックポートは行わないため、ユーザーは新しいバージョンへアップグレードする必要があります。
以前の月次リリースへのバックポートはありますか?いいえ、バグ修正やセキュリティパッチを受け取るには、最新の月次リリースへアップグレードする必要があります。ただし、Oracle GraalVM 25.0をご利用のお客様は、LTSラインのポリシーに基づき引き続きサポートを受けられます。

All aboard!

私たちは皆、より速く進む必要があります。新しい高速GraalVMリリーストレインにぜひご参加ください!

早期アクセスビルドをお試しいただき、動作する点や不具合についてご意見をお寄せください。毎月の機能リリースを採用することで、改善点をいち早く活用できます。最新のセキュリティ修正プログラムについては、常に最新のCPU(リリース)をご利用ください。

Related News

Oracle GraalVM 25およびそれ以降のリリース(GraalPy、GraalJS、GraalWasm、ならびにMicronaut向けGraal Development Kitを含む)に対する商用サポートが、Oracle Database製品に含まれるようになりました。

Graal Commercial Support Entitlements for Oracle Database Products | Graal
https://blogs.oracle.com/graal/graal-db-entitlements

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください