概要
本ドキュメントでは、Scalebase としての破壊的変更の告知、及びScalebase APIとBig Queryにおける破壊的変更の定義とバージョン管理についてご案内いたします。
※Scalebaseのサービス提供の都合上、本ドキュメントに記載されている内容の一部が変更となる場合がありますので、ご了承ください。
Scalebaseとしての破壊的変更の告知
- Scalebaseの各種機能や仕様にて破壊的変更が予定される場合、遅くとも1ヶ月前に告知いたします。
- 上記告知期間より前に確定した変更(例:影響の大きい内容等)につきましては、上記告知タイミングを待たず、確定した段階で可及的速やかに告知いたします。
- 新規エンドポイントの追加等の対応を基本的な開発方針とすることで、可能な限り破壊的変更を回避いたします。
Scalebase APIの破壊的変更の定義とバージョン管理について
破壊的変更の定義
Scalebase APIにおける破壊的変更は以下を指します。
| Rate limit |
減少 |
| エンドポイント |
URL・HTTP メソッドの廃止・変更 |
| リクエスト |
パラメータの解釈の変更 |
| 必須パラメータ・ヘッダの追加 |
|
| レスポンス |
プロパティ名の変更 |
| プロパティの削除 |
|
| データのフォーマット変更や記録条件の変更 |
|
| (今後検討)非推奨通知の返却 |
|
一方で、以下の場合は破壊的な変更とはせず、随時リリースを行います。
| Rate limit |
増加 |
| エンドポイント |
新規エンドポイントの追加 |
| リクエスト |
オプショナルパラメータの追加 |
| ※未指定の場合にはこれまでと挙動の変更なし |
|
| レスポンス |
ステータスコードの種別などの増加 |
| プロパティの追加 |
|
バージョン管理について
- バージョン更新の実施
- 破壊的変更が発生する場合のみバージョンの更新を行います。
- 非破壊的変更が発生する場合はバージョンの更新を行いません。
- バージョン更新の対応方法
- バージョンの更新を行う場合は、エンドポイントのURLにバージョン番号を含めます。
- semverに従い、下位互換を満たさないメジャーバージョンのみ
/v1/xxx の形式でバージョン番号をURLに含めます。
- インターフェイスの互換性を保てない場合、新バージョンのエンドポイントを追加する場合があります。
- この場合、新規エンドポイント追加扱いになるため、非破壊的変更とみなします。
- 旧バージョンのエンドポイントの維持コストが見合わないと判断された場合、エンドポイントの削除を行うことがあります。
- 上記判断は都度行います。
- この場合、エンドポイントの削除扱いになるため、破壊的変更とみなします。
Big Queryの破壊的変更の定義とバージョン管理について