openapi-generators / openapi-generators/openapi-python-client

Unable to process schema when title is ambiguous

未關閉
#1,355 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

主要語言
Python
星號
2k
分支
293
平均合併
34 分鐘
30 天內合併 PR
1

描述

Describe the bug

Unable to process schema /components/schemas/ActualApprovement:

Could not find reference in parsed models or enums

Failure to process schema has resulted in the removal of:
/components/schemas/ActualApprovement

Reference(ref='#/components/schemas/backend__server__src__models__types__approvement__ApprovementStatus')

OpenAPI Spec File
A link to an OpenAPI document which produces this issue. Ideally, write a minimal reproduction only containing the problematic pieces.

{
  "components": {
    "schemas": {
      "backend__gateways__types__ApprovementStatus": {
        "type": "string",
        "enum": [
          "in_progress",
          "suspended",
          "rejected",
          "closed"
        ],
        "title": "ApprovementStatus"
      },
      "backend__server__src__models__types__approvement__ApprovementStatus": {
        "type": "string",
        "enum": [
          "pending",
          "approved",
          "rejected",
          "cancelled"
        ],
        "title": "ApprovementStatus"
      },
"ActualApprovement": {
        "properties": {
          "status": {
            "$ref": "#/components/schemas/backend__server__src__models__types__approvement__ApprovementStatus"
          }
        },
        "type": "object",
        "required": [
          "status",
        ],
        "title": "ActualApprovement"
      },
}}}

Desktop (please complete the following information):

  • OS: Ubuntu 22.04
  • Python Version: 3.9
  • openapi-python-client version 0.27.1

Additional context
Add any other context about the problem here.

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

研究方向

首先使用 issue 中的 OpenAPI 文件重現該失敗,重點檢查共用標題 "ApprovementStatus" 的兩個 schema 的 schema 解析與參照解析。完成的標準是被參照的 enum 能夠正確解析,且 ActualApprovement schema 不會被移除。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
python
領域
tooling
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。