Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

typescript-fetch: Fix type errors in generated code #3605

Merged

Conversation

gbark
Copy link
Contributor

@gbark gbark commented Aug 9, 2019

PR checklist

  • Read the contribution guidelines.
  • Ran the shell script under ./bin/ to update Petstore sample so that CIs can verify the change. (For instance, only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in .\bin\windows\. If contributing template-only or documentation-only changes which will change sample output, be sure to build the project first.
  • Filed the PR against the correct branch: master, 4.1.x, 5.0.x. Default: master.
  • Copied the technical committee to review the pull request if your PR is targeting a particular programming language.

@TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @nicokoenig (2018/09) @topce (2018/10) @akehir (2019/07)

Description of the PR

Fixes an issue where typescript-fetch in 4.1.0 generates Typescript code which doesn't compile.

src/api/petstore/src/runtime.ts:186:9 - error TS2322: Type 'HTTPHeaders | undefined' is not assignable to type 'HTTPHeaders'.
  Type 'undefined' is not assignable to type 'HTTPHeaders'.

186         return this.configuration.headers;
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

src/api/petstore/src/runtime.ts:190:9 - error TS2322: Type '"omit" | "same-origin" | "include" | undefined' is not assignable to type 'RequestCredentials'.
  Type 'undefined' is not assignable to type 'RequestCredentials'.

190         return this.configuration.credentials;
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The solution is to simply add undefined as a potential return type to headers and credentials properties of the Configurationclass in runtime.ts.

fixes #3604

Copy link
Member

@macjohnny macjohnny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@macjohnny macjohnny merged commit ac85c8f into OpenAPITools:master Aug 10, 2019
jimschubert added a commit that referenced this pull request Aug 11, 2019
* master: (122 commits)
  Fix #3604 by adding undefined as return type to headers and credentials methods in runtime.ts (#3605)
  Prepare 4.1.1-SNAPSHOT (#3603)
  Prepare 4.1.0 release (#3597)
  [java][client][jax-rs] Add a constant for Jackson @JsonProperty (#3560)
  restore openapi3 petstore.yaml (#3590)
  Add a new NodeJS Express server generator (#3567)
  [C#][client][csharp-netcore] Fix csharp netcore defaultheaders (#3562)
  Fix issue deserializing to nullptr (#3572)
  [OCaml] Add file post-processing (#3583)
  [dart2] Fix up test code generation, double deserialization, 'new' keyword deprecation (#3576)
  Run Qt5 client sample test (#3415)
  typescript-fetch: allow configuration of headers and credentials (#3586)
  using partials in ruby api_client (#3564)
  [OCaml] Added optional params support in API operations (#3568)
  [Rust Server] Generate valid Rustdocs for lazy_static items (#3556)
  Fix NPM build for Typescript-fetch (#3403)
  Expand path templates via resttemplate's uriTemplateHandler (#3500)
  Readme updated with a new tutorial and company using OpenAPI Generator (#3566)
  Fix logic of `getNullableType` of csharp server and client. (#3537)
  [Ruby] clean up Ruby dev dependencies (#3551)
  ...
@wing328 wing328 added this to the 4.1.1 milestone Aug 26, 2019
@wing328
Copy link
Member

wing328 commented Aug 26, 2019

@gbark thanks for the PR, which has been included in the v4.1.1 release: https://twitter.com/oas_generator/status/1165944867391860737

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG][typescript-fetch] HTTPHeaders and RequestCredentials type errors
3 participants