OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
The openapi-generator is creating import statements and documentation that have duplicate "modelNameSuffix" references in the class name and in the file name. As an example:
from sales_openapi.model.error_response_dto_dto import ErrorResponseDtoDto
Run the docker command above on the yaml file provided in gist.github.com.
Examine the generated file openapi_client/api/test_api.py. There will be an import like this:
from openapi_client.model.foo_schema_dto_dto import FooSchemaDtoDto
Note: The filename ends in _dto_dto and the imported class name ends in DtoDto.
Note: Running the openapi-generator-cli command without a model-name-suffix will generate a working set of files. However, the maven wrapper around the openapi generator defaults to a modelNameSuffix of "Dto" when no suffix is specified. The interaction between the maven wrapper and openapi generator always generates errant code.
Description
The openapi-generator is creating import statements and documentation that have duplicate "modelNameSuffix" references in the class name and in the file name. As an example:
openapi-generator version
5.1.0 This is a regression from 4.3.1.
OpenAPI declaration file content or url
https://gist.github.com/ben5448/40aa828072214fd2e490708985debfb8
Command line used for generation
Using the 5.1 generator docker image from: "docker pull openapitools/openapi-generator-cli"
docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli:v5.1.0 generate -i /local/test.yaml -g python -o /local --model-name-suffix Dto
Steps to reproduce
Run the docker command above on the yaml file provided in gist.github.com.
Examine the generated file openapi_client/api/test_api.py. There will be an import like this:
Note: The filename ends in _dto_dto and the imported class name ends in DtoDto.
Note: Running the openapi-generator-cli command without a model-name-suffix will generate a working set of files. However, the maven wrapper around the openapi generator defaults to a modelNameSuffix of "Dto" when no suffix is specified. The interaction between the maven wrapper and openapi generator always generates errant code.
Related issues/PRs
Suggest a fix/enhancement