Preparing report...

Report for github.com/prologic/getsong

A+    Excellent!    Found 2 issues across 3 files

Tweet

gofmt100%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command

No problems detected. Good job!


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo66%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

    • getsong/getsong.go
    • Line 427: warning: cyclomatic complexity 32 of function GetMusicVideoID() is high (> 15) (gocyclo)
    • Line 631: warning: cyclomatic complexity 18 of function getFfmpegBinary() is high (> 15) (gocyclo)

golint66%

Golint is a linter for Go source code.

    • getsong/getsong.go
    • Line 30: warning: exported const CHUNK_SIZE should have comment or be unexported (golint)
    • Line 33: warning: exported var OptionShowProgressBar should have comment or be unexported (golint)
    • Line 177: warning: comment on exported function ConvertToMp3 should be of the form "ConvertToMp3 ..." (golint)
    • Line 777: warning: exported type YouTubeInfo should have comment or be unexported (golint)
    • Line 837: warning: exported function SetID3Tags should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign66%

IneffAssign detects ineffectual assignments in Go code.

    • getsong/getsong_test.go
    • Line 13: warning: cannot use "Allen Toussaint" (untyped string constant) as Options value in argument to GetSong (ineffassign)
    • Line 18: warning: cannot use "Haerts" (untyped string constant) as Options value in argument to GetSong (ineffassign)
    • Line 27: warning: cannot use "debug" (untyped string constant) as logrus.Level value in argument to log.SetLevel (ineffassign)
    • Line 43: warning: cannot use "debug" (untyped string constant) as logrus.Level value in argument to log.SetLevel (ineffassign)
    • Line 50: warning: cannot use "trace" (untyped string constant) as logrus.Level value in argument to log.SetLevel (ineffassign)
    • Line 59: warning: cannot use "trace" (untyped string constant) as logrus.Level value in argument to log.SetLevel (ineffassign)

misspell66%

Misspell Finds commonly misspelled English words

    • getsong/getsong.go
    • Line 286: warning: "paramter" is a misspelling of "parameter" (misspell)
    • Line 391: warning: "Downlaoding" is a misspelling of "Downloading" (misspell)