Skip to content

Unable to parse schema Errors #648

Open
@jsciame

Description

@jsciame

Describe the bug
I'm attempting to convert a rather large open api schema to Pyhton bindings and am running across warnings that are dropping endpoints on the floor. I believe there is a couple of issues.

  1. Refs not supported: Do you know if there are plans to add support for references in request body? I'll look at ways to flatten this schema out without references and try this again
"requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/MetadataFieldGroupType"
                            }
                        },
                        "application/xml": {
                            "schema": {
                                "$ref": "#/components/schemas/MetadataFieldGroupType"
                            }
                        }
                    },
                    "required": true,
                    "description": ""
                }
WARNING` parsing PUT /collection within collection. Endpoint will not be generated.
Could not find reference in parsed models or enums

Reference(ref='#/components/schemas/ItemSearchType')
WARNING parsing POST /collection within collection. Endpoint will not be generated.

Could not find reference in parsed models or enums
Reference(ref='#/components/schemas/CollectionType')
  1. Parth parameters not match with path. I believe this may be due to the open "in path" vs "in query" issue.
WARNING parsing GET /collection/{collection-id}/item within collection. Endpoint will not be generated.

Incorrect path templating for /collection/{collection-id}/item (Path parameters do not match with path)
{
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "in": "path",
                        "name": "collection-id",
                        "description": "The collection id."
                    }
  1. Generic cannot parse parameter of endpoint getAccessGraphDot

cannot parse parameter of endpoint getAccessGraphDot

Schema(title=None, multipleOf=None, maximum=None, exclusiveMaximum=None, minimum=None, exclusiveMinimum=None, maxLength=None, minLength=None, pattern=None, maxItems=None, minItems=None, uniqueItems=None, maxProperties=None, minProperties=None, required=None, enum=['ancestor', 'grant'], type=<DataType.STRING: 'string'>, allOf=[], oneOf=[], anyOf=[], schema_not=None, items=None, properties=None, additionalProperties=None, description=None, schema_format=None, default=None, nullable=False, discriminator=None, readOnly=None, writeOnly=None, xml=None, externalDocs=None, example=None, deprecated=None)

To Reproduce
Steps to reproduce the behavior:

  1. Run openapi-python-client generate --path openapi/spec.json
  2. Run openapi-python-client generate --path openapi/spec.yaml

Expected behavior
A full python client should be generated without warnings.

OpenAPI Spec File
Standby. Making sure I have approval to share this schema since its coming from a 3rd party vendor.

Desktop (please complete the following information):

  • OS: macOS 12.4
  • Python Version: 3.8.9
  • openapi-python-client version: 0.11.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    🐞bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions