Preparing report...

Report for github.com/nanobox-io/nanobox

A+    Excellent!    Found 123 issues across 281 files

Tweet

gofmt99%

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!


gocyclo98%

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.


golint62%

Golint is a linter for Go source code.

    • nanobox/util/provider/share/share_linux.go
    • Line 21: warning: exported type Request should have comment or be unexported (golint)
    • Line 87: warning: comment on exported method ShareRPC.Add should be of the form "Add ..." (golint)
    • Line 139: warning: comment on exported method ShareRPC.Remove should be of the form "Remove ..." (golint)
    • nanobox/util/display/prompt.go
    • Line 10: warning: comment on exported function ReadUsername should be of the form "ReadUsername ..." (golint)
    • Line 15: warning: exported function Ask should have comment or be unexported (golint)
    • nanobox/util/provider/dockermachine.go
    • Line 37: warning: error should be the last type when returning multiple items (golint)
    • Line 109: warning: exported method DockerMachine.Status should have comment or be unexported (golint)
    • Line 115: warning: exported method DockerMachine.BridgeRequired should have comment or be unexported (golint)
    • Line 249: warning: comment on exported method DockerMachine.Implode should be of the form "Implode ..." (golint)
    • Line 555: warning: exported method DockerMachine.SetDefaultIP should have comment or be unexported (golint)
    • Line 555: warning: receiver name dockermachine should be consistent with previous receiver name machine for DockerMachine (golint)
    • Line 725: warning: comment on exported method DockerMachine.RemoveEnvDir should be of the form "RemoveEnvDir ..." (golint)
    • Line 775: warning: exported method DockerMachine.ReservedIPs should have comment or be unexported (golint)
    • nanobox/processors/provider/bridge/bridge.go
    • Line 14: warning: exported function BridgeConfig should have comment or be unexported (golint)
    • Line 41: warning: exported function ConfigFile should have comment or be unexported (golint)
    • Line 45: warning: exported function CaCrt should have comment or be unexported (golint)
    • Line 49: warning: exported function ClientKey should have comment or be unexported (golint)
    • Line 53: warning: exported function ClientCrt should have comment or be unexported (golint)
    • Line 57: warning: comment on exported function Connected should be of the form "Connected ..." (golint)
    • nanobox/util/config/dirs.go
    • Line 50: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 160: warning: exported function EtcDir should have comment or be unexported (golint)
    • nanobox/commands/registry/registry.go
    • Line 10: warning: exported function Set should have comment or be unexported (golint)
    • Line 14: warning: exported function Get should have comment or be unexported (golint)
    • Line 18: warning: exported function GetBool should have comment or be unexported (golint)
    • Line 22: warning: exported function GetDuration should have comment or be unexported (golint)
    • Line 26: warning: exported function GetFloat64 should have comment or be unexported (golint)
    • Line 30: warning: exported function GetInt should have comment or be unexported (golint)
    • Line 34: warning: exported function GetString should have comment or be unexported (golint)
    • Line 38: warning: exported function GetStringMap should have comment or be unexported (golint)
    • Line 42: warning: exported function GetStringMapString should have comment or be unexported (golint)
    • Line 46: warning: exported function GetStringMapStringSlice should have comment or be unexported (golint)
    • Line 50: warning: exported function GetStringSlice should have comment or be unexported (golint)
    • Line 54: warning: exported function GetTime should have comment or be unexported (golint)
    • nanobox/util/display/messages.go
    • Line 9: warning: exported function MOTD should have comment or be unexported (golint)
    • Line 29: warning: exported function InfoProductionHost should have comment or be unexported (golint)
    • Line 42: warning: exported function InfoProductionContainer should have comment or be unexported (golint)
    • Line 54: warning: exported function InfoLocalContainer should have comment or be unexported (golint)
    • Line 64: warning: exported function TunnelEstablished should have comment or be unexported (golint)
    • Line 79: warning: exported function InfoDevContainer should have comment or be unexported (golint)
    • Line 90: warning: exported function InfoDevRunContainer should have comment or be unexported (golint)
    • Line 109: warning: exported function InfoSimDeploy should have comment or be unexported (golint)
    • Line 119: warning: exported function DevRunEmpty should have comment or be unexported (golint)
    • Line 129: warning: exported function FirstDeploy should have comment or be unexported (golint)
    • Line 140: warning: exported function FirstBuild should have comment or be unexported (golint)
    • Line 151: warning: exported function ProviderSetup should have comment or be unexported (golint)
    • Line 162: warning: exported function MigrateOldRequired should have comment or be unexported (golint)
    • Line 175: warning: exported function MigrateProviderRequired should have comment or be unexported (golint)
    • Line 186: warning: exported function BadTerminal should have comment or be unexported (golint)
    • Line 195: warning: exported function MissingDependencies should have comment or be unexported (golint)
    • Line 201: warning: exported function DeployComplete should have comment or be unexported (golint)
    • Line 209: warning: exported function LoginComplete should have comment or be unexported (golint)
    • Line 215: warning: exported function NetworkCreateError should have comment or be unexported (golint)
    • Line 228: warning: exported function VMCommunicationError should have comment or be unexported (golint)
    • Line 238: warning: exported function NoGonanaUser should have comment or be unexported (golint)
    • Line 245: warning: exported function MissingBoxfile should have comment or be unexported (golint)
    • Line 257: warning: exported function InvalidBoxfile should have comment or be unexported (golint)
    • Line 267: warning: exported function TooManyKeys should have comment or be unexported (golint)
    • Line 280: warning: exported function WorldWritable should have comment or be unexported (golint)
    • Line 290: warning: exported function LoginRequired should have comment or be unexported (golint)
    • Line 297: warning: exported function UnexpectedPrivilage should have comment or be unexported (golint)
    • Line 308: warning: exported function BadPortType should have comment or be unexported (golint)
    • Line 317: warning: exported function PortInUse should have comment or be unexported (golint)
    • Line 327: warning: exported function PortPrivileged should have comment or be unexported (golint)
    • Line 337: warning: exported function ConsoleNodeNotFound should have comment or be unexported (golint)
    • Line 348: warning: exported function ConsoleLocalCode should have comment or be unexported (golint)
    • Line 358: warning: exported function LocalEngineNotFound should have comment or be unexported (golint)
    • nanobox/util/retry.go
    • Line 7: warning: exported type Retryable should have comment or be unexported (golint)
    • Line 9: warning: exported function Retry should have comment or be unexported (golint)
    • nanobox/util/display/download_percent.go
    • Line 12: warning: exported type DownloadPercent should have comment or be unexported (golint)
    • Line 18: warning: exported method DownloadPercent.Copy should have comment or be unexported (golint)
    • Line 67: warning: exported method DownloadPercent.UpdateDisplay should have comment or be unexported (golint)
    • Line 85: warning: exported method DownloadPercent.SimpleDisplay should have comment or be unexported (golint)
    • nanobox/models/auth.go
    • Line 13: warning: comment on exported method Auth.IsNew should be of the form "IsNew ..." (golint)
    • Line 48: warning: comment on exported function LoadAuthByEndpoint should be of the form "LoadAuthByEndpoint ..." (golint)
    • nanobox/util/provider/native.go
    • Line 28: warning: error should be the last type when returning multiple items (golint)
    • Line 36: warning: exported method Native.Status should have comment or be unexported (golint)
    • Line 40: warning: exported method Native.BridgeRequired should have comment or be unexported (golint)
    • Line 62: warning: comment on exported method Native.Implode should be of the form "Implode ..." (golint)
    • Line 196: warning: exported method Native.IsReady should have comment or be unexported (golint)
    • Line 221: warning: exported method Native.ReservedIPs should have comment or be unexported (golint)
    • Line 243: warning: exported method Native.SetDefaultIP should have comment or be unexported (golint)
    • Line 260: warning: exported method Native.RequiresMount should have comment or be unexported (golint)
    • Line 318: warning: comment on exported method Native.RemoveEnvDir should be of the form "RemoveEnvDir ..." (golint)
    • nanobox/util/provider/provider.go
    • Line 57: warning: error should be the last type when returning multiple items (golint)
    • Line 67: warning: exported function ValidReady should have comment or be unexported (golint)
    • Line 326: warning: exported function IsReady should have comment or be unexported (golint)
    • Line 336: warning: exported function BridgeRequired should have comment or be unexported (golint)
    • Line 356: warning: exported function Name should have comment or be unexported (golint)
    • nanobox/util/odin/odin.go
    • Line 23: warning: exported const NANOBOX should have comment (or a comment on this block) or be unexported (golint)
    • Line 43: warning: comment on exported function SetEndpoint should be of the form "SetEndpoint ..." (golint)
    • Line 109: warning: exported function ListEvars should have comment or be unexported (golint)
    • Line 126: warning: exported function AddEvar should have comment or be unexported (golint)
    • Line 149: warning: exported function RemoveEvar should have comment or be unexported (golint)
    • Line 275: warning: exported function GetPreviousBuild should have comment or be unexported (golint)
    • Line 301: warning: exported function SubmitEvent should have comment or be unexported (golint)
    • nanobox/util/watch/watch.go
    • Line 30: warning: comment on exported function Watch should be of the form "Watch ..." (golint)
    • Line 89: warning: should omit 2nd value from range; this loop is equivalent to `for k := range ...` (golint)
    • nanobox/util/dns/dns.go
    • Line 14: warning: exported type DomainName should have comment or be unexported (golint)
    • Line 19: warning: exported type DomainRPC should have comment or be unexported (golint)
    • Line 21: warning: exported type Request should have comment or be unexported (golint)
    • Line 25: warning: exported type Response should have comment or be unexported (golint)
    • Line 66: warning: exported function List should have comment or be unexported (golint)
    • Line 111: warning: comment on exported method DomainRPC.Add should be of the form "Add ..." (golint)
    • Line 147: warning: comment on exported method DomainRPC.Remove should be of the form "Remove ..." (golint)
    • nanobox/util/util.go
    • Line 38: warning: exported function FolderExists should have comment or be unexported (golint)
    • Line 46: warning: exported function FileMD5 should have comment or be unexported (golint)
    • nanobox/processors/types.go
    • Line 3: warning: exported type DeployConfig should have comment or be unexported (golint)
    • Line 9: warning: exported type ConsoleConfig should have comment or be unexported (golint)
    • nanobox/util/error.go
    • Line 13: warning: exported type Err should have comment or be unexported (golint)
    • Line 41: warning: comment on exported function ErrorfQuiet should be of the form "ErrorfQuiet ..." (golint)
    • Line 52: warning: comment on exported function ErrorfQuietErr should be of the form "ErrorfQuietErr ..." (golint)
    • Line 71: warning: comment on exported function Errorf should be of the form "Errorf ..." (golint)
    • Line 81: warning: comment on exported function ErrorQuiet should be of the form "ErrorQuiet ..." (golint)
    • Line 99: warning: comment on exported function Error should be of the form "Error ..." (golint)
    • Line 109: warning: comment on exported function ErrorAppend should be of the form "ErrorAppend ..." (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign97%

IneffAssign detects ineffectual assignments in Go code.


misspell88%

Misspell Finds commonly misspelled English words

    • nanobox/processors/log/log.go
    • Line 42: warning: "arguement" is a misspelling of "argument" (misspell)
    • Line 85: warning: "arguement" is a misspelling of "argument" (misspell)
    • Line 156: warning: "explicity" is a misspelling of "explicitly" (misspell)
    • Line 167: warning: "recieve" is a misspelling of "receive" (misspell)