Quarkus 2.0.0.Alpha1 リリース - Vert.x 4、MicroProfile 4、継続的テスト
本日、Quarkus 2.0.0.Alpha1のリリースを少しの感慨を持って発表したいと思います。
以前に紹介したように、Quarkus 2.0はQuarkus 1.xの連続性の中にあり、ユーザー側ではあまり多くの変更を必要としません。しかし、インフラの主要部分が変更されたため、メジャーリリースと考えています。
-
Vert.x 4
-
Eclipse MicroProfile 4とSmallRyeコンポーネントの大幅な変更
2.0は、日々のコーディングをより良いものに変えてくれると信じている新機能を提供する良い機会でもあります。最初に登場するのは、「継続的テスト」と呼ばれるものです。
Quarkus 1.xを使ったアプリケーションをお持ちの場合は、ぜひQuarkus 2.0を試してみてください。また、バグや互換性の低下、使い勝手など、何か問題があればGitHubに報告してください。私たちは、これまでで最高のQuarkusリリースを作るために一緒に取り組んでいます。
移行ガイド
マイグレーションガイドは、こちら: https://github.com/quarkusio/quarkus/wiki/Migration-Guide-2.0 で随時更新していきます。
変更点
最小バージョンとしてのJDK 11
JDK 11が、Quarkus 2.0を使用するための最小バージョンになりました。
JDK 8はもうサポートされていません(ただし、1.13.xにこだわっている方は使い続けることができます!)。
Eclipse MicroProfile 4
MicroProfile 4は、 MicroProfile仕様の最新版です。
QuarkusのSmallRyeコンポーネントはすべて最新のものにアップデートされており、MicroProfile 4を実装しているだけでなく、追加の新機能も搭載されています。
継続的テスト
この素晴らしい新機能を開発したのはStuart Douglas氏なので、彼にお任せします。
このリリースには、継続的テストのアルファ版の実装が含まれています。これにより、開発モードでもテストを実行できるようになり、コンソールで「e」を押すことで(または Dev UI で)有効にすることができます。テストを有効にすると、テストスイートは最初に一度だけ実行され、その後はコーディング中に継続的テストがテストを実行し、変更によってテストが壊れるかどうかを教えてくれます。これにより、ブラウザに切り替えることなく、変更内容を即座にフィードバックすることができます。可能な限り、変更されたコードに関連するテストのみを実行します。
これはアルファリリースであり、いくつかの既知の制限があります。
-
ドキュメントはまだ完成していません (次回のブログ記事をお楽しみに)
-
Dev UIビューは非常に基本的なものですが、次のリリースでは改善される予定です
-
Gradleでテストフィクスチャがまだ正しく動作しません
また、この機能はいくつか変更点をもたらすため、お客様のアプリケーションに影響を与える可能性があります。
-
テスト用のクラス・ローディング・モデルは、開発モードと同じになりました(テストはホット・リロードが必要なため)。もしこのモデルがアプリケーションに問題を起こすようであれば、
quarkus.test.flat-class-path=true
を設定して古いモデルに戻すことができますが、継続的なテストは無効になります。 -
互換性のある端末が検出された場合、Quarkusはコンソールウィンドウの下部にステータスメッセージを表示し、Enterキーを押すことなく入力に反応します。これがアプリケーションの邪魔になる場合は、
quarkus.test.basic-console=true
で無効にすることができます(現時点では、gradleは常に基本コンソールを使用することに注意してください)。 -
コンソールでのテスト出力を必要とせず、開発者用のUIで対話したい場合は、
quarkus.test.console=false
を設定します。
これはアルファ・フェーズの機能であり、是非試して、何かフィードバックがあればメーリングリストでお知らせください、何か問題が発生した場合はGitHub に課題登録ください。
ここでは、継続的テストの動作を紹介するビデオを紹介します。
完全な変更履歴
2.0.0.Alpha1の完全な変更履歴はGitHubでご覧いただけます。
参加のお誘い
私達は皆様からのフィードバックに重きを置いています。バグ報告、改善要望を是非お願いします。一緒に素晴らしいものを作り上げていきましょう!
Quarkusユーザーの場合でも、単に興味を持っているだけの場合でも、恥ずかしがらずにコミュニティに参加して下さい!:
-
GitHub でフィードバック
-
コードを作成し、 プルリクエスト を送信
-
Stack Overflow で質問