Bug Report Checklist
Description
All responses are assumed to have non-empty content, and generated Haskell code tries to parse the missing response body.
This makes responses with no body non-functional.
openapi-generator version
Git commit: 77e1ca56cf329bfb22b05f853587263fd0ff6503 (June 16th 2021)
Version in pom.xml is 5.2.0-SNAPSHOT.
OpenAPI declaration file content or url
Here is an example input spec:
openapi: 3.0.0
info:
description: Minimal failing example
version: "1.0.0"
title: Minimal API
contact:
email: [email protected]
paths:
/session:
post:
summary: start session
operationId: startSession
responses:
'201':
description: session created
'404':
description: service offline
Generation Details
This will generate API that declares JSON object on the output:
type MinimalAPI
= "session" :> Verb 'POST 200 '[JSON] () -- 'startSession' route
:<|> Raw
This suggests that we have a content that conforms to InlineResponse201.
Attempt to use this endpoint when fail when trying to parse missing response body.
Steps to reproduce
Copy paste spec.yaml above and run:
openapi-generator-cli generate -i spec.yaml -g haskell
Suggest a fix
This change of the generated code works:
type MinimalAPI
= "session" :> Verb 'POST 204 '[JSON] NoContent -- 'startSession' route
:<|> Raw
Bug Report Checklist
Have you provided a full/minimal spec to reproduce the issue?
Have you validated the input using an OpenAPI validator (example)?
Have you tested with the latest master to confirm the issue still exists?
Have you searched for related issues/PRs?
What's the actual output vs expected output?
[Optional] Sponsorship to speed up the bug fix or feature request (example)
Description
All responses are assumed to have non-empty content, and generated Haskell code tries to parse the missing response body.
This makes responses with no body non-functional.
openapi-generator version
Git commit:
77e1ca56cf329bfb22b05f853587263fd0ff6503(June 16th 2021)Version in
pom.xmlis5.2.0-SNAPSHOT.OpenAPI declaration file content or url
Here is an example input spec:
Generation Details
This will generate API that declares JSON object on the output:
This suggests that we have a content that conforms to
InlineResponse201.Attempt to use this endpoint when fail when trying to parse missing response body.
Steps to reproduce
Copy paste
spec.yamlabove and run:Suggest a fix
This change of the generated code works: