Preparing report...

Report for github.com/cavaliercoder/go-rpm

A+    Excellent!    Found 7 issues across 24 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!


gocyclo87%

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.

    • go-rpm/header.go
    • Line 56: warning: cyclomatic complexity 36 of function ReadPackageHeader() is high (> 15) (gocyclo)

golint83%

Golint is a linter for Go source code.

    • go-rpm/header.go
    • Line 20: warning: don't use underscores in Go names; const r_MaxHeaderSize should be rMaxHeaderSize (golint)
    • Line 21: warning: don't use underscores in Go names; const r_HeaderHeaderLength should be rHeaderHeaderLength (golint)
    • Line 22: warning: don't use underscores in Go names; const r_IndexHeaderLength should be rIndexHeaderLength (golint)
    • go-rpm/lead.go
    • Line 23: warning: don't use underscores in Go names; const r_LeadLength should be rLeadLength (golint)
    • go-rpm/packagefile.go
    • Line 31: warning: don't use underscores in Go names; const r_headerCount should be rHeaderCount (golint)
    • Line 283: warning: exported method PackageFile.GPGSignature should have comment or be unexported (golint)
    • Line 290: warning: exported method PackageFile.Name should have comment or be unexported (golint)
    • Line 294: warning: exported method PackageFile.Version should have comment or be unexported (golint)
    • Line 298: warning: exported method PackageFile.Release should have comment or be unexported (golint)
    • Line 302: warning: exported method PackageFile.Epoch should have comment or be unexported (golint)
    • Line 306: warning: exported method PackageFile.Requires should have comment or be unexported (golint)
    • Line 310: warning: exported method PackageFile.Provides should have comment or be unexported (golint)
    • Line 314: warning: exported method PackageFile.Conflicts should have comment or be unexported (golint)
    • Line 318: warning: exported method PackageFile.Obsoletes should have comment or be unexported (golint)
    • Line 322: warning: exported method PackageFile.Suggests should have comment or be unexported (golint)
    • Line 326: warning: exported method PackageFile.Enhances should have comment or be unexported (golint)
    • Line 330: warning: exported method PackageFile.Recommends should have comment or be unexported (golint)
    • Line 334: warning: exported method PackageFile.Supplements should have comment or be unexported (golint)
    • Line 420: warning: exported method PackageFile.Summary should have comment or be unexported (golint)
    • Line 424: warning: exported method PackageFile.Description should have comment or be unexported (golint)
    • Line 428: warning: exported method PackageFile.BuildTime should have comment or be unexported (golint)
    • Line 432: warning: exported method PackageFile.BuildHost should have comment or be unexported (golint)
    • Line 436: warning: exported method PackageFile.InstallTime should have comment or be unexported (golint)
    • Line 455: warning: exported method PackageFile.Distribution should have comment or be unexported (golint)
    • Line 459: warning: exported method PackageFile.Vendor should have comment or be unexported (golint)
    • Line 463: warning: exported method PackageFile.GIFImage should have comment or be unexported (golint)
    • Line 467: warning: exported method PackageFile.XPMImage should have comment or be unexported (golint)
    • Line 471: warning: exported method PackageFile.License should have comment or be unexported (golint)
    • Line 475: warning: exported method PackageFile.Packager should have comment or be unexported (golint)
    • Line 479: warning: exported method PackageFile.Groups should have comment or be unexported (golint)
    • Line 483: warning: exported method PackageFile.ChangeLog should have comment or be unexported (golint)
    • Line 487: warning: exported method PackageFile.Source should have comment or be unexported (golint)
    • Line 491: warning: exported method PackageFile.Patch should have comment or be unexported (golint)
    • Line 495: warning: exported method PackageFile.URL should have comment or be unexported (golint)
    • Line 499: warning: exported method PackageFile.OperatingSystem should have comment or be unexported (golint)
    • Line 503: warning: exported method PackageFile.Architecture should have comment or be unexported (golint)
    • Line 507: warning: exported method PackageFile.PreInstallScript should have comment or be unexported (golint)
    • Line 511: warning: exported method PackageFile.PostInstallScript should have comment or be unexported (golint)
    • Line 515: warning: exported method PackageFile.PreUninstallScript should have comment or be unexported (golint)
    • Line 519: warning: exported method PackageFile.PostUninstallScript should have comment or be unexported (golint)
    • Line 523: warning: exported method PackageFile.OldFilenames should have comment or be unexported (golint)
    • Line 527: warning: exported method PackageFile.Icon should have comment or be unexported (golint)
    • Line 531: warning: exported method PackageFile.SourceRPM should have comment or be unexported (golint)
    • Line 535: warning: exported method PackageFile.RPMVersion should have comment or be unexported (golint)
    • Line 539: warning: exported method PackageFile.Platform should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign95%

IneffAssign detects ineffectual assignments in Go code.

    • go-rpm/index_test.go
    • Line 26: warning: ineffectual assignment to V (ineffassign)
    • Line 27: warning: ineffectual assignment to V (ineffassign)
    • Line 28: warning: ineffectual assignment to V (ineffassign)
    • Line 29: warning: ineffectual assignment to V (ineffassign)
    • Line 30: warning: ineffectual assignment to V (ineffassign)
    • Line 31: warning: ineffectual assignment to V (ineffassign)
    • Line 32: warning: ineffectual assignment to V (ineffassign)

misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!