Preparing report...

Report for github.com/tsingsun/xbase

(v0.1.0)

A    Great!    Found 11 issues across 19 files

Tweet

gofmt94%

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


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!


gocyclo68%

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.

    • decode.go
    • Line 198: warning: cyclomatic complexity 18 of function decodeFn() is high (> 15) (gocyclo)
    • tag.go
    • Line 23: warning: cyclomatic complexity 17 of function parseTag() is high (> 15) (gocyclo)
    • field.go
    • Line 345: warning: cyclomatic complexity 16 of function (*field).setValue() is high (> 15) (gocyclo)
    • encode.go
    • Line 146: warning: cyclomatic complexity 25 of function encodeFn() is high (> 15) (gocyclo)
    • cache.go
    • Line 78: warning: cyclomatic complexity 22 of function buildFields() is high (> 15) (gocyclo)
    • decoder.go
    • Line 359: warning: cyclomatic complexity 20 of function (*Decoder).unmarshal() is high (> 15) (gocyclo)

golint78%

Golint is a linter for Go source code.

    • error.go
    • Line 15: warning: error var BOF should have name of the form ErrFoo (golint)
    • Line 15: warning: exported var BOF should have comment or be unexported (golint)
    • field.go
    • Line 30: warning: don't use underscores in Go names; const FieldType_Character should be FieldTypeCharacter (golint)
    • Line 31: warning: don't use underscores in Go names; const FieldType_Numeric should be FieldTypeNumeric (golint)
    • Line 32: warning: don't use underscores in Go names; const FieldType_Date should be FieldTypeDate (golint)
    • Line 33: warning: don't use underscores in Go names; const FieldType_Float should be FieldTypeFloat (golint)
    • Line 34: warning: don't use underscores in Go names; const FieldType_Logical should be FieldTypeLogical (golint)
    • Line 36: warning: don't use underscores in Go names; const FieldType_Binary should be FieldTypeBinary (golint)
    • Line 37: warning: don't use underscores in Go names; const FieldType_Memo should be FieldTypeMemo (golint)
    • Line 38: warning: don't use underscores in Go names; const FieldType_Timestamp should be FieldTypeTimestamp (golint)
    • Line 39: warning: don't use underscores in Go names; const FieldType_Long should be FieldTypeLong (golint)
    • Line 40: warning: don't use underscores in Go names; const FieldType_Double should be FieldTypeDouble (golint)
    • Line 41: warning: don't use underscores in Go names; const FieldType_OLE should be FieldTypeOLE (golint)
    • Line 42: warning: don't use underscores in Go names; const FieldType_Autoincrement should be FieldTypeAutoincrement (golint)
    • xbase.go
    • Line 105: warning: exported method XBase.Flush should have comment or be unexported (golint)
    • Line 167: warning: exported method XBase.Fields should have comment or be unexported (golint)
    • encoder.go
    • Line 147: warning: receiver name enc should be consistent with previous receiver name e for Encoder (golint)

license0%

Checks whether your project has a LICENSE file.


ineffassign100%

IneffAssign detects ineffectual assignments in Go code.

No problems detected. Good job!


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!