Showing 92 of 92 total issues

Function Create has 5 return statements (exceeds 4 allowed).
Open

func Create() error {
    var in struct {
        Name    string `json:"name"`
        Profile string `json:"profile"`
        Region  string `json:"region"`
Severity: Major
Found in internal/setup/setup.go - About 35 mins to fix

    Function delete has 5 return statements (exceeds 4 allowed).
    Open

    func delete(cmd *kingpin.Cmd) {
        c := cmd.Command("delete", "Delete configured resources.")
        c.Example(`up stack delete`, "Delete stack with confirmation prompt.")
        c.Example(`up stack delete --force`, "Delete stack without confirmation prompt.")
        c.Example(`up stack delete --async`, "Don't wait for deletion to complete.")
    Severity: Major
    Found in internal/cli/stack/stack.go - About 35 mins to fix

      Method Stack.Show has 5 return statements (exceeds 4 allowed).
      Open

      func (s *Stack) Show() error {
          defer s.events.Time("platform.stack.show", nil)()
      
          // show stack status
          stack, err := s.getStack()
      Severity: Major
      Found in platform/lambda/stack/stack.go - About 35 mins to fix

        Method Platform.createFunction has 5 return statements (exceeds 4 allowed).
        Open

        func (p *Platform) createFunction(c *lambda.Lambda, a *apigateway.APIGateway, up *s3manager.Uploader, region string, d up.Deploy) (version string, err error) {
            // ensure bucket exists
            if err := p.createBucket(region); err != nil && !util.IsBucketExists(err) {
                return "", errors.Wrap(err, "creating s3 bucket")
            }
        Severity: Major
        Found in platform/lambda/lambda.go - About 35 mins to fix

          Method Platform.createCerts has 5 return statements (exceeds 4 allowed).
          Open

          func (p *Platform) createCerts() error {
              s := session.New(aws.NewConfig().WithRegion("us-east-1"))
              a := acm.New(s)
              var domains []string
          
          
          Severity: Major
          Found in platform/lambda/lambda.go - About 35 mins to fix

            Function changeCard has 5 return statements (exceeds 4 allowed).
            Open

            func changeCard(cmd *kingpin.Cmd) {
                c := cmd.Command("change", "Change the default card.")
            
                c.Action(func(_ *kingpin.ParseContext) error {
                    t, err := userconfig.Require()
            Severity: Major
            Found in internal/cli/team/team.go - About 35 mins to fix

              Function getCert has 5 return statements (exceeds 4 allowed).
              Open

              func getCert(certs []*acm.CertificateDetail, domain string) string {
                  // exact domain
                  for _, c := range certs {
                      if *c.DomainName == domain {
                          return *c.CertificateArn
              Severity: Major
              Found in platform/lambda/lambda.go - About 35 mins to fix

                Method Stack.Apply has 5 return statements (exceeds 4 allowed).
                Open

                func (s *Stack) Apply() error {
                    c := s.config
                    name := c.Name
                
                    res, err := s.client.DescribeChangeSet(&cloudformation.DescribeChangeSetInput{
                Severity: Major
                Found in platform/lambda/stack/stack.go - About 35 mins to fix

                  Similar blocks of code found in 3 locations. Consider refactoring.
                  Open

                                      {
                                          position143 := position
                                          if buffer[position] != rune('!') {
                                              goto l15
                                          }
                  Severity: Minor
                  Found in internal/logs/parser/grammar.peg.go and 2 other locations - About 35 mins to fix
                  internal/logs/parser/grammar.peg.go on lines 1947..1967
                  internal/logs/parser/grammar.peg.go on lines 2001..2021

                  Duplicated Code

                  Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                  Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                  When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                  Tuning

                  This issue has a mass of 103.

                  We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                  The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                  If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                  See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                  Refactorings

                  Further Reading

                  Similar blocks of code found in 3 locations. Consider refactoring.
                  Open

                                          {
                                              position155 := position
                                              if buffer[position] != rune('>') {
                                                  goto l154
                                              }
                  Severity: Minor
                  Found in internal/logs/parser/grammar.peg.go and 2 other locations - About 35 mins to fix
                  internal/logs/parser/grammar.peg.go on lines 1874..1894
                  internal/logs/parser/grammar.peg.go on lines 2001..2021

                  Duplicated Code

                  Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                  Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                  When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                  Tuning

                  This issue has a mass of 103.

                  We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                  The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                  If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                  See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                  Refactorings

                  Further Reading

                  Similar blocks of code found in 3 locations. Consider refactoring.
                  Open

                                          {
                                              position161 := position
                                              if buffer[position] != rune('<') {
                                                  goto l149
                                              }
                  Severity: Minor
                  Found in internal/logs/parser/grammar.peg.go and 2 other locations - About 35 mins to fix
                  internal/logs/parser/grammar.peg.go on lines 1874..1894
                  internal/logs/parser/grammar.peg.go on lines 1947..1967

                  Duplicated Code

                  Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                  Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                  When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                  Tuning

                  This issue has a mass of 103.

                  We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                  The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                  If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                  See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                  Refactorings

                  Further Reading

                  Function handleLine has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                  Open

                  function handleLine(line) {
                    if (debug) {
                      console.log('[shim] parsing: `%s`', line);
                    }
                  
                  
                  Severity: Minor
                  Found in internal/shim/index.js - About 25 mins to fix

                  Cognitive Complexity

                  Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                  A method's cognitive complexity is based on a few simple rules:

                  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                  • Code is considered more complex for each "break in the linear flow of the code"
                  • Code is considered more complex when "flow breaking structures are nested"

                  Further reading

                  Severity
                  Category
                  Status
                  Source
                  Language