Keycloak のリリースとバージョン管理

2019年4月24日 Stian Thorgersen 著

私たちは Keycloak で継続的デリバリーモデルの実現を目指しています。それは、Keycloak のリリース間のアップグレードがシームレスであり、最新リリースに常に追いつけるようにすることを意味します。

これには破壊的な変更は必要なく、むしろ古い API を非推奨とし、新しい API への移行期間を設けることが必要です。

従来のセマンティックバージョニングはこのモデルにはあまり適合しません。継続的デリバリーの理念に従うと、私たちは永遠にメジャーバージョンに留まり、マイナーバージョンのみを更新することになります。また、長期間非推奨とされていた API が削除された場合にメジャーバージョンを更新することが正しいかどうか議論の余地があるでしょう。

これを踏まえ、私たちはリリース頻度とバージョン管理スキーマに若干の変更を加えました。

当面の間、私たちは年に約4回、新機能リリースを行う予定です。各リリースごとにメジャーバージョン番号が上がります。それは破壊的な変更があるという意味ではありませんが、継続的デリバリーモデルを完璧にするまでは一部存在する可能性があるため、アップグレードする前に必ず移行ガイドを参照してください!

また、リリースから Final サフィックスを削除することにしました。これは、ベータ版やリリース候補版を長期間行っていないため、単に不要になったためです。継続的デリバリーの精神に基づき、リリース全体ではなく、個々の機能をプレビューとしてマークします。

最後に、リリース頻度を減らすことに伴い、マイクロリリースを増やす予定です。これは、重大なバグとセキュリティ脆弱性に焦点を当てます。ただし、修正が十分にテストされ、リグレッションのリスクが低い場合は、それほど重大でないバグに対する貢献も受け入れる可能性があります。