You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Optional] Sponsorship to speed up the bug fix or feature request (example)
Description
If an inline oneOf or anyOf definition is used below an allOf or oneOf, the generated code will contain the name of the inline defined structure, but the structure itself will not be generated.
If the schema is rearranged to avoid using the inline definition, the missing part is also generated.
One possible way to do this is to define the inline oneOf or anyOf at the top level and reference it from below allOf or oneOf.
Nothing special is needed beyond the steps specified in the next section. That is, download the 4 samples and compile them with the linked generator. Two of the samples are the wrongly compilable inline version, while two of them are the properly compilable referenced version.
A slightly different embedded inline/referenced spec issue is found. If an allOf is embedded in another allOf inline, then the generated type is *interface{}. If it is defined on top level and just referenced, the proper type is generated and applied in the go code.
If an inline oneOf or anyOf definition is used below an allOf or oneOf, the generated code will contain the name of the inline defined structure, but the structure itself will not be generated.
please give it another try with the latest master as I've just fixed it with #17141
Bug Report Checklist
Description
If an inline oneOf or anyOf definition is used below an allOf or oneOf, the generated code will contain the name of the inline defined structure, but the structure itself will not be generated.
If the schema is rearranged to avoid using the inline definition, the missing part is also generated.
One possible way to do this is to define the inline oneOf or anyOf at the top level and reference it from below allOf or oneOf.
openapi-generator version
6.4.0
OpenAPI declaration file content or url
oneOf below allOf
Inline version
Referenced version
anyOf below oneOf
Inline version
Referenced version
Generation Details
Nothing special is needed beyond the steps specified in the next section. That is, download the 4 samples and compile them with the linked generator. Two of the samples are the wrongly compilable inline version, while two of them are the properly compilable referenced version.
Steps to reproduce
generate.sh
AnyOfstringstring
is missing fromgo-anyOf-below-oneOf-inline
directory, while it is referenced inmodel_b.go
OneOfDE
andNullableOneOfDE
are missing fromgo-oneOf-below-allOf-inline
directory, while it is referenced inmodel_a_all_of_attributes.go
Related issues/PRs
#11842
#6161
Suggest a fix
The text was updated successfully, but these errors were encountered: