Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Merge requests
  • !466

[Golang][client] fix CacheExpires ineffassign, Fix #464

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Administrator requested to merge github/fork/grokify/go/client/fix/cache-expires-ineffassign into master Jul 05, 2018
  • Overview 0
  • Commits 2
  • Pipelines 0
  • Changes 2

Created by: grokify

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 and ./bin/security/{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\.
  • Filed the PR against the correct branch: master, 3.1.x, 4.0.x. Default: master.
  • Copied the technical committee to review the pull request if your PR is targeting a particular programming language.

@antihax @bvwells

Description of the PR

fix https://github.com/OpenAPITools/openapi-generator/issues/464

client.go has an ineffectual if statement in the CacheExpires function. This results in a lower score on Go Report Card for the generated code described here: https://github.com/OpenAPITools/openapi-generator/issues/464 . Go Report Card is a commonly used app with it's shield on many GitHub repo READMEs.

Here is an example:

https://goreportcard.com/report/github.com/grokify/go-stackexchange

Two options to resolve this include:

Option 1

lifetime, err := time.ParseDuration(maxAge + "s") 
if err != nil {
    expires = now
} else {
    expires = now.Add(lifetime)
}

Option 2

This option works because an error will return a 0s duration, but it may be better to not rely on this behavior.

lifetime, _ := time.ParseDuration(maxAge + "s")
expires = now.Add(lifetime)

Either approach will resolve the issue on Go Report Card for the generated code.

This PR uses option 1 since it is easier to understand, explicitly handles the error and is similar to other error handling in the function.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/grokify/go/client/fix/cache-expires-ineffassign