KDOC 131: 今さらOpenAPI v3.1の変更点を知る
この文書のステータス
- 作成
- 2024-03-25 貴島
- レビュー
- 2024-04-27 貴島
概要
雰囲気でOpenAPIを使ってコード生成していた。コード生成ライブラリのバージョンを上げたところnullableまわりの生成コードが変になり、動かなくなった。具体的には、nullableにしてもバリデーションされる。何かライブラリの不具合だろうか、と考えてバージョンアップせずそのままにしていた。しばらくしても直らない。ちゃんとチェックしている人とっては当然なのだろうが、これはOpenAPI v3.0->v3.1の破壊的変更である。
自分は最初からv3.1で書いているつもりだったので、何も気づかなかった。おそらくコード生成ライブラリがOpenAPI v3.1に対応してから、今まで動いていたコードが壊れた。v2->v3の変更にだけ気をつけていればよく、v2時代に書いてないので関係ないと考えていた。
教訓。
- ちゃんとドキュメントを読んでキャッチアップしよう
- ネット情報はバージョンを確認しよう
- 生成コードをちゃんとテストしよう
nullable
まさにこれだった。変更したところ、元の通り生成されるようになった。
type: string
nullable: true
type: - "string" - "null"
関連
なし。