2016年5月とされていたJava 9のフィーチャーコンプリート期日を逃し、JavaプラットフォームのチーフアーキテクトMark Reinhold氏は、未完了のJEPの残作業をまとめて見直し、プロジェクトのさらなる遅延を受け入れるか、もしくはスコープから外すかを決める方法を提案した。プロセスはまだ終わっていないが、今のところ両者の組み合わせになりそうだ。
Mark Reinhold氏は以前、Javaの新バージョンが期日に間に合わない場合に取るべき措置について、自らの見解を述べている。機能のなかには、新バージョンに意味を与えるコアなものがある。そのコア機能を入れる必要があるなら、リリースを延期するべきだ。その一方で、彼はある程度予測可能なリズムで新バージョンをリリースすることの重要性を強調する。そこで、非コア機能が間に合いそうにないなら、スコープから外すべきだと主張している。この理由付けが、Java 9が待つべきJEPと後回しにすべきJEPを選ぶために提案されたプロセスのもとになっている。
このプロセスは、JEPのオーナーがリリース予定日を示して期日延期を要求するか、Java 9をそのターゲットからドロップすることを期待している。延期を要求する場合、それが認められるかどうかはレビュープロセスによって決定される。このプロセスは82のJEPのうち11に影響を及ぼす。
本記事執筆時点のイシュートラッカーの状態から判断すると、リスクのあるJEPのうち、10が期日延期を要求し、うち7つが認められている。残りの3つはまだペンディングの状態だ。受け入れられたJEPの期日は9月1日に見直された。およそ3ヶ月遅れるということだ。もしこれが最終決定だとすると、Java 9はさらに3ヶ月遅れて、一般提供が2017年6月に延びる恐れがある。また、さらなる遅延を避けるため、おそらく4つのJEPがスコープから外されるだろう。スコープ外になりそうなJEPは以下の通りだ。
- JEP 110: HTTP/2 Client、統合日は9月1日、期日の提示なし。
- JEP 277: Enhanced Deprecation、統合日は9月1日、期日は9月29日。
- JEP 282: jlink, The Java Linker、期日の提示なし。
- JEP 284: New HotSpot Build System、延期は要求されず。
まだ決定的なことは何もないが、現在の開発はJava 9をこの最終形に近づけようとしているようだ。もし前記のJEPが最終的にドロップするなら、その影響を評価するためにさらなる分析が必要になるだろう。特に、JEP 282 (jlink) に関しては、モジュールシステムの基本コンポーネントだと考えられる。
Rate this Article
- Editor Review
- Chief Editor Action