Preparing report...

Report for github.com/codeactual/boone

A+    Excellent!    Found 39 issues across 71 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.

    • boone/internal/boone/dispatch.go
    • Line 328: warning: cyclomatic complexity 25 of function (*Dispatcher).runTarget() is high (> 15) (gocyclo)
    • Line 145: warning: cyclomatic complexity 20 of function (*Dispatcher).Start() is high (> 15) (gocyclo)
    • boone/internal/boone/ui.go
    • Line 442: warning: cyclomatic complexity 20 of function (*UI).InputCapture() is high (> 15) (gocyclo)
    • Line 241: warning: cyclomatic complexity 17 of function (*UI).maintainStatusList() is high (> 15) (gocyclo)

golint52%

Golint is a linter for Go source code.

    • boone/cmd/boone/eval/eval.go
    • Line 7: warning: package comment should be of the form "Package eval ..." (golint)
    • Line 56: warning: receiver name l should be consistent with previous receiver name h for Handler (golint)
    • Line 64: warning: receiver name l should be consistent with previous receiver name h for Handler (golint)
    • Line 71: warning: receiver name l should be consistent with previous receiver name h for Handler (golint)
    • Line 112: warning: comment on exported function NewCommand should be of the form "NewCommand ..." (golint)
    • boone/internal/cage/os/file/finder.go
    • Line 19: warning: exported type FinderFile should have comment or be unexported (golint)
    • Line 24: warning: exported type DirMatcher should have comment or be unexported (golint)
    • Line 25: warning: exported type FileMatcher should have comment or be unexported (golint)
    • Line 33: warning: exported type Finder should have comment or be unexported (golint)
    • Line 40: warning: exported function NewFinder should have comment or be unexported (golint)
    • Line 64: warning: exported method Finder.Clear should have comment or be unexported (golint)
    • Line 71: warning: exported method Finder.WalkHiddenDir should have comment or be unexported (golint)
    • Line 76: warning: exported method Finder.Dir should have comment or be unexported (golint)
    • Line 81: warning: exported method Finder.DirMatcher should have comment or be unexported (golint)
    • Line 156: warning: exported method Finder.GetFileMatches should have comment or be unexported (golint)
    • Line 199: warning: exported method Finder.GetFilenameMatches should have comment or be unexported (golint)
    • Line 213: warning: exported method Finder.GetFileObjectMatches should have comment or be unexported (golint)
    • boone/internal/cage/os/file/watcher/fsnotify.go
    • Line 23: warning: exported type Fsnotify should have comment or be unexported (golint)
    • Line 34: warning: exported method Fsnotify.AddSubscriber should have comment or be unexported (golint)
    • Line 42: warning: exported method Fsnotify.AddPath should have comment or be unexported (golint)
    • Line 66: warning: exported method Fsnotify.RemovePath should have comment or be unexported (golint)
    • Line 80: warning: exported method Fsnotify.Close should have comment or be unexported (golint)
    • Line 170: warning: exported method Fsnotify.Debounce should have comment or be unexported (golint)
    • boone/internal/cage/os/exec/exec.go
    • Line 7: warning: package comment should be of the form "Package exec ..." (golint)
    • Line 31: warning: exported const SigIntDelay should have comment (or a comment on this block) or be unexported (golint)
    • Line 35: warning: exported type Result should have comment or be unexported (golint)
    • Line 52: warning: exported type PipelineResult should have comment or be unexported (golint)
    • Line 406: warning: exported function ArgToCmd should have comment or be unexported (golint)
    • boone/doc.go
    • Line 14: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • boone/internal/cage/os/file/matcher/matcher.go
    • Line 14: warning: exported function InvertDir should have comment or be unexported (golint)
    • Line 24: warning: exported function InvertFile should have comment or be unexported (golint)
    • Line 34: warning: exported function GoDir should have comment or be unexported (golint)
    • Line 43: warning: exported function PopulatedDir should have comment or be unexported (golint)
    • Line 47: warning: exported function DirWithFile should have comment or be unexported (golint)
    • Line 56: warning: exported function GoFile should have comment or be unexported (golint)
    • boone/internal/cage/cli/handler/handler.go
    • Line 7: warning: package comment should be of the form "Package handler ..." (golint)
    • Line 38: warning: exported type Mixin should have comment or be unexported (golint)
    • Line 110: warning: exported method DefaultSession.Err should have comment or be unexported (golint)
    • Line 117: warning: exported method DefaultSession.Out should have comment or be unexported (golint)
    • Line 124: warning: exported method DefaultSession.In should have comment or be unexported (golint)
    • Line 144: warning: exported method DefaultSession.SetErr should have comment or be unexported (golint)
    • Line 148: warning: exported method DefaultSession.SetOut should have comment or be unexported (golint)
    • Line 152: warning: exported method DefaultSession.SetIn should have comment or be unexported (golint)
    • Line 156: warning: exported method DefaultSession.OnSignal should have comment or be unexported (golint)
    • Line 176: warning: exported method DefaultSession.ExitOnErr should have comment or be unexported (golint)
    • Line 190: warning: exported method DefaultSession.ExitOnErrShort should have comment or be unexported (golint)
    • Line 204: warning: exported method DefaultSession.ExitOnErrsShort should have comment or be unexported (golint)
    • Line 219: warning: exported method DefaultSession.Exitf should have comment or be unexported (golint)
    • Line 230: warning: exported function Version should have comment or be unexported (golint)
    • boone/internal/cage/strings/set.go
    • Line 11: warning: exported type Set should have comment or be unexported (golint)
    • Line 26: warning: exported method Set.Add should have comment or be unexported (golint)
    • Line 39: warning: exported method Set.AddSet should have comment or be unexported (golint)
    • Line 52: warning: exported method Set.AddSlice should have comment or be unexported (golint)
    • Line 65: warning: exported method Set.Remove should have comment or be unexported (golint)
    • Line 77: warning: exported method Set.Contains should have comment or be unexported (golint)
    • Line 85: warning: exported method Set.Len should have comment or be unexported (golint)
    • Line 92: warning: exported method Set.Slice should have comment or be unexported (golint)
    • Line 103: warning: exported method Set.Copy should have comment or be unexported (golint)
    • Line 114: warning: exported method Set.Equals should have comment or be unexported (golint)
    • Line 134: warning: exported method Set.Clear should have comment or be unexported (golint)
    • Line 143: warning: exported method Set.SortedSlice should have comment or be unexported (golint)
    • Line 151: warning: exported method Set.SortedReverseSlice should have comment or be unexported (golint)
    • boone/cmd/boone/run/run.go
    • Line 7: warning: package comment should be of the form "Package run ..." (golint)
    • Line 158: warning: comment on exported function NewCommand should be of the form "NewCommand ..." (golint)
    • boone/internal/cage/errors/errors.go
    • Line 51: warning: exported type Location should have comment or be unexported (golint)
    • Line 60: warning: exported type Error should have comment or be unexported (golint)
    • Line 74: warning: exported type Config should have comment or be unexported (golint)
    • Line 92: warning: exported function DefaultConfig should have comment or be unexported (golint)
    • Line 100: warning: exported function NewConfiguredEvent should have comment or be unexported (golint)
    • Line 104: warning: exported function NewEvent should have comment or be unexported (golint)
    • Line 223: warning: exported function WriteErrList should have comment or be unexported (golint)
    • boone/internal/cage/strings/strings.go
    • Line 15: warning: comment on exported function TruncateAppendHint should be of the form "TruncateAppendHint ..." (golint)
    • Line 23: warning: comment on exported function TruncatePrependHint should be of the form "TruncatePrependHint ..." (golint)
    • Line 66: warning: exported function SliceOfSlice should have comment or be unexported (golint)
    • Line 82: warning: exported function SortStable should have comment or be unexported (golint)
    • Line 86: warning: exported function SortReverseStable should have comment or be unexported (golint)
    • Line 90: warning: comment on exported function StringKeyPtr should be of the form "StringKeyPtr ..." (golint)
    • boone/internal/cage/time/clock.go
    • Line 7: warning: package comment should be of the form "Package time ..." (golint)
    • Line 14: warning: exported type Clock should have comment or be unexported (golint)
    • Line 19: warning: exported type RealClock should have comment or be unexported (golint)
    • Line 26: warning: exported method RealClock.NewTimer should have comment or be unexported (golint)
    • boone/internal/cage/os/os.go
    • Line 18: warning: exported function StringPidToProcess should have comment or be unexported (golint)
    • Line 26: warning: exported function FindProcess should have comment or be unexported (golint)
    • boone/internal/cage/testkit/os/file/file.go
    • Line 24: warning: exported function FixtureDataDir should have comment or be unexported (golint)
    • Line 28: warning: exported function DynamicDataDir should have comment or be unexported (golint)
    • Line 32: warning: exported function DynamicDataDirAbs should have comment or be unexported (golint)
    • boone/cmd/boone/root/root.go
    • Line 7: warning: package comment should be of the form "Package root ..." (golint)
    • Line 68: warning: receiver name l should be consistent with previous receiver name h for Handler (golint)
    • Line 235: warning: comment on exported function NewCommand should be of the form "NewCommand ..." (golint)
    • boone/internal/cage/cli/handler/mixin/log/zap/zap.go
    • Line 36: warning: exported type Mixin should have comment or be unexported (golint)
    • Line 46: warning: comment on exported method Mixin.BindCobraFlags should be of the form "BindCobraFlags ..." (golint)
    • Line 54: warning: comment on exported method Mixin.Name should be of the form "Name ..." (golint)
    • Line 59: warning: comment on exported method Mixin.PreRun should be of the form "PreRun ..." (golint)
    • Line 133: warning: exported method Mixin.ErrToFile should have comment or be unexported (golint)
    • Line 152: warning: comment on exported method Mixin.PostRun should be of the form "PostRun ..." (golint)
    • Line 159: warning: exported method Mixin.ExitOnErr should have comment or be unexported (golint)
    • boone/internal/cage/os/file/file.go
    • Line 62: warning: exported function Readdir should have comment or be unexported (golint)
    • Line 74: warning: exported function ValidateRemove should have comment or be unexported (golint)
    • Line 89: warning: exported function RemoveAllSafer should have comment or be unexported (golint)
    • boone/internal/cage/time/timer.go
    • Line 13: warning: exported type Timer should have comment or be unexported (golint)
    • Line 19: warning: exported type RealTimer should have comment or be unexported (golint)
    • Line 23: warning: exported method RealTimer.Reset should have comment or be unexported (golint)
    • Line 27: warning: exported method RealTimer.Stop should have comment or be unexported (golint)
    • Line 31: warning: exported method RealTimer.C should have comment or be unexported (golint)
    • boone/internal/cage/structs/structs.go
    • Line 13: warning: exported type MergeMode should have comment or be unexported (golint)
    • Line 16: warning: exported const MergeModeCombine should have comment (or a comment on this block) or be unexported (golint)
    • Line 20: warning: exported function ToStringMap should have comment or be unexported (golint)
    • Line 28: warning: exported function MergeStringMap should have comment or be unexported (golint)
    • Line 48: warning: exported function MergeAsStringMap should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign100%

IneffAssign detects ineffectual assignments in Go code.

No problems detected. Good job!


misspell98%

Misspell Finds commonly misspelled English words