`anyOf` in responses generates invalid body parser
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 38/100
調査の方向性
Issue にリンクされている OpenAPI Spec File から始め、anyOf を使用するレスポンススキーマについて、生成された parse_response_200 の例を再現します。生成された parser の分岐を比較し、出力が有効で、fixed-value と Response200 の両方の選択肢をパースできることを確認します。
索引モデルが issue の本文から書いたものです。
説明
Describe the bug
When a response media type has an anyOf schema, the generated code does not parse it properly/is not valid. (see add'l context)
OpenAPI Spec File
https://gist.github.com/nkrishnaswami/8c4a2068d8ac59cab153136a6069b44d
Desktop (please complete the following information):
- OS: macOS 15.6
- Python Version: 3.12.8
- openapi-python-client version: git revision
13bf2e8
Additional context
def _parse_response_200(data: object) -> Union["Response200", Literal["Why have a fixed response? I dunno"]]:
response_200_type_0 = cast(Literal["Why have a fixed response? I dunno"], data)
if response_200_type_0 != "Why have a fixed response? I dunno":
raise ValueError(
f"response_200_type_0 must match const 'Why have a fixed response? I dunno', got '{response_200_type_0}'"
)
return response_200_type_0
if not isinstance(data, dict):
raise TypeError()
response_200_type_1 = Response200.from_dict(data)
return response_200_type_1
- 主要言語
- Python
- スター
- 2k
- フォーク
- 293
- 平均マージ
- 34分
- マージ済み PR(30日)
- 1
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
openapi-generators/openapi-python-client のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 72/100
openapi-generators/openapi-python-client#1451 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 52/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 64/100
openapi-generators/openapi-python-client#1435 · コメント 1 件 ·
openapi-generators/openapi-python-client の issue をすべて見る
似ている issue
-
essnmx good first issue
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
-
[Feature] 奇物选择添加优先级 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
syfoud/Simulated_Scepter#174 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
Giskard-AI/giskard-oss#2840 · コメント 1 件 ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success オープンarea: repo bug perceived difficulty: 2
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
yeti-platform/yeti#1380 ·