Preparing report...

Report for github.com/ergo-services/ergo

B    Not bad!    Found 68 issues across 74 files

Tweet

gofmt71%

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!


gocyclo70%

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.

    • ergo/etf/etf.go
    • Line 248: warning: cyclomatic complexity 55 of function termIntoStruct() is high (> 15) (gocyclo)
    • ergo/tests/application_test.go
    • Line 63: warning: cyclomatic complexity 39 of function TestApplicationBasics() is high (> 15) (gocyclo)
    • Line 327: warning: cyclomatic complexity 17 of function TestApplicationTypeTransient() is high (> 15) (gocyclo)
    • ergo/node/dist/dist.go
    • Line 421: warning: cyclomatic complexity 29 of function HandshakeAccept() is high (> 15) (gocyclo)
    • Line 248: warning: cyclomatic complexity 26 of function Handshake() is high (> 15) (gocyclo)
    • Line 1101: warning: cyclomatic complexity 24 of function (*Link).Writer() is high (> 15) (gocyclo)
    • Line 849: warning: cyclomatic complexity 19 of function (*Link).decodeFragment() is high (> 15) (gocyclo)
    • Line 659: warning: cyclomatic complexity 17 of function (*Link).ReadHandlePacket() is high (> 15) (gocyclo)
    • ergo/tests/monitor_test.go
    • Line 565: warning: cyclomatic complexity 26 of function TestLinkLocalRemote() is high (> 15) (gocyclo)
    • Line 422: warning: cyclomatic complexity 23 of function TestLinkLocalLocal() is high (> 15) (gocyclo)

golint35%

Golint is a linter for Go source code.

    • ergo/examples/gensaga/saga2.go
    • Line 37: warning: comment on exported type Saga2 should be of the form "Saga2 ..." (with optional leading article) (golint)
    • Line 44: warning: exported method Saga2.InitSaga should have comment or be unexported (golint)
    • Line 52: warning: exported method Saga2.HandleTxNew should have comment or be unexported (golint)
    • Line 60: warning: exported method Saga2.HandleTxCancel should have comment or be unexported (golint)
    • Line 64: warning: exported method Saga2.HandleTxResult should have comment or be unexported (golint)
    • Line 68: warning: exported method Saga2.HandleJobResult should have comment or be unexported (golint)
    • Line 75: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • ergo/etf/decode.go
    • Line 58: warning: exported type DecodeOptions should have comment or be unexported (golint)
    • Line 72: warning: exported function Decode should have comment or be unexported (golint)
    • ergo/tests/saga_test.go
    • Line 71: warning: don't use underscores in Go names; var job_id should be jobID (golint)
    • Line 161: warning: don't use underscores in Go names; var saga_process should be sagaProcess (golint)
    • ergo/etf/etf.go
    • Line 10: warning: exported type Term should have comment or be unexported (golint)
    • Line 11: warning: exported type Tuple should have comment or be unexported (golint)
    • Line 12: warning: exported type List should have comment or be unexported (golint)
    • Line 13: warning: exported type Alias should have comment or be unexported (golint)
    • Line 18: warning: exported type Atom should have comment or be unexported (golint)
    • Line 19: warning: exported type Map should have comment or be unexported (golint)
    • Line 27: warning: exported type Pid should have comment or be unexported (golint)
    • Line 33: warning: exported type Port should have comment or be unexported (golint)
    • Line 39: warning: exported type Ref should have comment or be unexported (golint)
    • Line 75: warning: exported type Function should have comment or be unexported (golint)
    • Line 91: warning: exported type Export should have comment or be unexported (golint)
    • Line 143: warning: exported method Map.Element should have comment or be unexported (golint)
    • Line 147: warning: exported method List.Element should have comment or be unexported (golint)
    • Line 151: warning: exported method Tuple.Element should have comment or be unexported (golint)
    • Line 190: warning: exported type ProplistElement should have comment or be unexported (golint)
    • Line 218: warning: comment on exported function TermProplistIntoStruct should be of the form "TermProplistIntoStruct ..." (golint)
    • Line 260: warning: don't use underscores in Go names; var is_binary should be isBinary (golint)
    • Line 278: warning: don't use underscores in Go names; var byte_slice should be byteSlice (golint)
    • Line 466: warning: should omit 2nd value from range; this loop is equivalent to `for i := range ...` (golint)
    • Line 499: warning: should omit 2nd value from range; this loop is equivalent to `for i := range ...` (golint)
    • Line 557: warning: should omit 2nd value from range; this loop is equivalent to `for i := range ...` (golint)
    • Line 593: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 624: warning: exported type StructPopulatorError should have comment or be unexported (golint)
    • Line 633: warning: exported function NewInvalidTypesError should have comment or be unexported (golint)
    • Line 640: warning: exported type InvalidStructKeyError should have comment or be unexported (golint)
    • ergo/node/network.go
    • Line 450: warning: don't use underscores in Go names; var err_behavior should be errBehavior (golint)
    • Line 456: warning: don't use underscores in Go names; var remote_request should be remoteRequest (golint)
    • Line 461: warning: don't use underscores in Go names; var process_opts should be processOpts (golint)
    • Line 464: warning: don't use underscores in Go names; var err_spawn should be errSpawn (golint)
    • ergo/tests/saga_dist_test.go
    • Line 68: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 80: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 146: warning: don't use underscores in Go names; var saga2_process should be saga2Process (golint)
    • Line 151: warning: don't use underscores in Go names; var saga3_process should be saga3Process (golint)
    • Line 186: warning: don't use underscores in Go names; var job_id should be jobID (golint)
    • Line 264: warning: don't use underscores in Go names; var saga1_process should be saga1Process (golint)
    • ergo/ergo.go
    • Line 16: warning: comment on exported function StartNodeWithContext should be of the form "StartNodeWithContext ..." (golint)
    • Line 27: warning: should not use basic type string as key in context.WithValue (golint)
    • ergo/version.go
    • Line 4: warning: exported const Version should have comment (or a comment on this block) or be unexported (golint)
    • ergo/etf/cache.go
    • Line 12: warning: exported type AtomCache should have comment or be unexported (golint)
    • Line 20: warning: exported type CacheItem should have comment or be unexported (golint)
    • Line 26: warning: exported type ListAtomCache should have comment or be unexported (golint)
    • Line 44: warning: exported method AtomCache.Append should have comment or be unexported (golint)
    • Line 54: warning: exported method AtomCache.GetLastID should have comment or be unexported (golint)
    • Line 61: warning: exported function NewAtomCache should have comment or be unexported (golint)
    • Line 96: warning: exported method AtomCache.List should have comment or be unexported (golint)
    • Line 103: warning: exported method AtomCache.ListSince should have comment or be unexported (golint)
    • Line 107: warning: exported function TakeListAtomCache should have comment or be unexported (golint)
    • Line 111: warning: exported function ReleaseListAtomCache should have comment or be unexported (golint)
    • Line 115: warning: exported method ListAtomCache.Reset should have comment or be unexported (golint)
    • Line 119: warning: exported method ListAtomCache.Append should have comment or be unexported (golint)
    • Line 126: warning: exported method ListAtomCache.Len should have comment or be unexported (golint)
    • ergo/etf/encode.go
    • Line 14: warning: exported var ErrStringTooLong should have comment or be unexported (golint)
    • Line 24: warning: exported type EncodeOptions should have comment or be unexported (golint)
    • Line 41: warning: exported function Encode should have comment or be unexported (golint)
    • ergo/examples/gensaga/saga3.go
    • Line 37: warning: comment on exported type Saga3 should be of the form "Saga3 ..." (with optional leading article) (golint)
    • Line 44: warning: exported method Saga3.InitSaga should have comment or be unexported (golint)
    • Line 52: warning: exported method Saga3.HandleTxNew should have comment or be unexported (golint)
    • Line 60: warning: exported method Saga3.HandleTxCancel should have comment or be unexported (golint)
    • Line 65: warning: exported method Saga3.HandleTxResult should have comment or be unexported (golint)
    • Line 69: warning: exported method Saga3.HandleJobResult should have comment or be unexported (golint)
    • Line 82: warning: exported method Saga3.HandleTxCommit should have comment or be unexported (golint)
    • ergo/examples/http/app.go
    • Line 10: warning: exported type App should have comment or be unexported (golint)
    • Line 15: warning: don't use underscores in Go names; var handler_sup should be handlerSup (golint)
    • Line 18: warning: exported method App.Load should have comment or be unexported (golint)
    • Line 33: warning: exported method App.Start should have comment or be unexported (golint)
    • ergo/gen/saga.go
    • Line 83: warning: exported type SagaStatus should have comment or be unexported (golint)
    • Line 86: warning: exported var SagaStatusOK should have comment or be unexported (golint)
    • Line 87: warning: error var SagaStatusStop should have name of the form ErrFoo (golint)
    • Line 90: warning: error var sagaStatusUnsupported should have name of the form errFoo (golint)
    • Line 103: warning: exported type Saga should have comment or be unexported (golint)
    • Line 107: warning: exported type SagaTransactionOptions should have comment or be unexported (golint)
    • Line 120: warning: exported type SagaOptions should have comment or be unexported (golint)
    • Line 127: warning: exported type SagaProcess should have comment or be unexported (golint)
    • Line 145: warning: exported type SagaTransactionID should have comment or be unexported (golint)
    • Line 152: warning: exported type SagaTransaction should have comment or be unexported (golint)
    • Line 167: warning: exported type SagaNextID should have comment or be unexported (golint)
    • Line 174: warning: exported type SagaNext should have comment or be unexported (golint)
    • Line 189: warning: exported type SagaJobID should have comment or be unexported (golint)
    • Line 196: warning: exported type SagaJob should have comment or be unexported (golint)
    • Line 210: warning: exported type SagaJobOptions should have comment or be unexported (golint)
    • Line 246: warning: exported type MessageSagaCancel should have comment or be unexported (golint)
    • Line 252: warning: exported type MessageSagaError should have comment or be unexported (golint)
    • Line 283: warning: exported method SagaProcess.StartTransaction should have comment or be unexported (golint)
    • Line 313: warning: exported method SagaProcess.Next should have comment or be unexported (golint)
    • Line 340: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 382: warning: exported method SagaProcess.StartJob should have comment or be unexported (golint)
    • Line 444: warning: exported method SagaProcess.SendResult should have comment or be unexported (golint)
    • Line 500: warning: exported method SagaProcess.SendInterim should have comment or be unexported (golint)
    • Line 526: warning: exported method SagaProcess.CancelTransaction should have comment or be unexported (golint)
    • Line 543: warning: exported method SagaProcess.CancelJob should have comment or be unexported (golint)
    • Line 721: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 765: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 766: warning: don't use underscores in Go names; var empty_next_id should be emptyNextID (golint)
    • Line 806: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 1093: warning: exported method Saga.Init should have comment or be unexported (golint)
    • Line 1127: warning: exported method Saga.HandleCall should have comment or be unexported (golint)
    • Line 1132: warning: exported method Saga.HandleDirect should have comment or be unexported (golint)
    • Line 1143: warning: exported method Saga.HandleCast should have comment or be unexported (golint)
    • Line 1218: warning: exported method Saga.HandleInfo should have comment or be unexported (golint)
    • Line 1261: warning: exported method Saga.HandleTxInterim should have comment or be unexported (golint)
    • Line 1265: warning: exported method Saga.HandleTxCommit should have comment or be unexported (golint)
    • Line 1269: warning: exported method Saga.HandleTxDone should have comment or be unexported (golint)
    • Line 1273: warning: exported method Saga.HandleSagaCall should have comment or be unexported (golint)
    • Line 1277: warning: exported method Saga.HandleSagaCast should have comment or be unexported (golint)
    • Line 1281: warning: exported method Saga.HandleSagaInfo should have comment or be unexported (golint)
    • Line 1285: warning: exported method Saga.HandleSagaDirect should have comment or be unexported (golint)
    • Line 1289: warning: exported method Saga.HandleJobResult should have comment or be unexported (golint)
    • Line 1293: warning: exported method Saga.HandleJobInterim should have comment or be unexported (golint)
    • Line 1297: warning: exported method Saga.HandleJobFailed should have comment or be unexported (golint)
    • ergo/gen/application.go
    • Line 13: warning: exported type ApplicationStartType should have comment or be unexported (golint)
    • Line 41: warning: exported type ApplicationSpec should have comment or be unexported (golint)
    • Line 54: warning: exported type ApplicationChildSpec should have comment or be unexported (golint)
    • Line 64: warning: exported type ApplicationInfo should have comment or be unexported (golint)
    • Line 71: warning: exported method Application.ProcessInit should have comment or be unexported (golint)
    • Line 105: warning: exported method Application.ProcessLoop should have comment or be unexported (golint)
    • ergo/node/epmd.go
    • Line 18: warning: exported const EPMD_ALIVE2_REQ should have comment (or a comment on this block) or be unexported (golint)
    • Line 223: warning: don't use underscores in Go names; func compose_ALIVE2_REQ should be composeALIVE2REQ (golint)
    • Line 242: warning: don't use underscores in Go names; func read_ALIVE2_RESP should be readALIVE2RESP (golint)
    • Line 249: warning: don't use underscores in Go names; func compose_PORT_PLEASE2_REQ should be composePORTPLEASE2REQ (golint)
    • Line 314: warning: exported function Server should have comment or be unexported (golint)
    • Line 393: warning: don't use underscores in Go names; method compose_ALIVE2_RESP should be composeALIVE2RESP (golint)
    • Line 426: warning: don't use underscores in Go names; method compose_EPMD_PORT2_RESP should be composeEPMDPORT2RESP (golint)
    • Line 460: warning: don't use underscores in Go names; method compose_EPMD_NAMES_RESP should be composeEPMDNAMESRESP (golint)
    • ergo/node/process.go
    • Line 15: warning: exported const DefaultProcessMailboxSize should have comment (or a comment on this block) or be unexported (golint)
    • Line 480: warning: don't use underscores in Go names; var wait_for_reply should be waitForReply (golint)
    • ergo/node/registrar.go
    • Line 147: warning: don't use underscores in Go names; var alias_exist should be aliasExist (golint)
    • Line 155: warning: don't use underscores in Go names; var process_exist should be processExist (golint)
    • Line 612: warning: should omit 2nd value from range; this loop is equivalent to `for n := range ...` (golint)
    • ergo/examples/gensaga/saga1.go
    • Line 41: warning: comment on exported type Saga1 should be of the form "Saga1 ..." (with optional leading article) (golint)
    • Line 48: warning: exported type Saga1State should have comment or be unexported (golint)
    • Line 53: warning: exported method Saga1.InitSaga should have comment or be unexported (golint)
    • Line 61: warning: exported method Saga1.HandleTxNew should have comment or be unexported (golint)
    • Line 68: warning: exported method Saga1.HandleTxCancel should have comment or be unexported (golint)
    • Line 72: warning: exported method Saga1.HandleTxDone should have comment or be unexported (golint)
    • Line 83: warning: exported method Saga1.HandleTxResult should have comment or be unexported (golint)
    • Line 90: warning: exported method Saga1.HandleJobResult should have comment or be unexported (golint)
    • Line 101: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 106: warning: comment on exported method Saga1.HandleSagaInfo should be of the form "HandleSagaInfo ..." (golint)
    • Line 117: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • ergo/examples/gensaga/saga4.go
    • Line 44: warning: exported method Saga4.InitSaga should have comment or be unexported (golint)
    • Line 52: warning: exported method Saga4.HandleTxNew should have comment or be unexported (golint)
    • Line 60: warning: exported method Saga4.HandleTxCancel should have comment or be unexported (golint)
    • Line 64: warning: exported method Saga4.HandleTxResult should have comment or be unexported (golint)
    • Line 71: warning: exported method Saga4.HandleJobResult should have comment or be unexported (golint)
    • Line 78: warning: don't use underscores in Go names; var next_id should be nextID (golint)
    • Line 83: warning: exported method Saga4.HandleTxCommit should have comment or be unexported (golint)
    • ergo/tests/stage_test.go
    • Line 72: warning: receiver name s should be consistent with previous receiver name gs for StageProducerTest (golint)
    • Line 80: warning: receiver name s should be consistent with previous receiver name gs for StageProducerTest (golint)
    • Line 100: warning: receiver name s should be consistent with previous receiver name gs for StageProducerTest (golint)
    • Line 157: warning: receiver name s should be consistent with previous receiver name gs for StageConsumerTest (golint)
    • Line 188: warning: receiver name s should be consistent with previous receiver name gs for StageConsumerTest (golint)
    • Line 197: warning: receiver name s should be consistent with previous receiver name gs for StageConsumerTest (golint)
    • ergo/examples/gendemo/main.go
    • Line 13: warning: exported type MyDemo should have comment or be unexported (golint)
    • Line 17: warning: exported method MyDemo.InitDemo should have comment or be unexported (golint)
    • Line 22: warning: exported method MyDemo.HandleHello should have comment or be unexported (golint)
    • Line 27: warning: exported method MyDemo.HandleDemoDirect should have comment or be unexported (golint)
    • ergo/gen/supervisor.go
    • Line 17: warning: exported type SupervisorStrategy should have comment or be unexported (golint)
    • Line 24: warning: exported type SupervisorStrategyType should have comment or be unexported (golint)
    • Line 25: warning: exported type SupervisorStrategyRestart should have comment or be unexported (golint)
    • Line 30: warning: comment on exported const SupervisorRestartIntensity should be of the form "SupervisorRestartIntensity ..." (golint)
    • Line 33: warning: comment on exported const SupervisorRestartPeriod should be of the form "SupervisorRestartPeriod ..." (golint)
    • Line 79: warning: exported type SupervisorSpec should have comment or be unexported (golint)
    • Line 86: warning: exported type SupervisorChildSpec should have comment or be unexported (golint)
    • Line 104: warning: exported method Supervisor.ProcessInit should have comment or be unexported (golint)
    • Line 122: warning: exported method Supervisor.ProcessLoop should have comment or be unexported (golint)
    • ergo/tests/saga_cancel_test.go
    • Line 124: warning: don't use underscores in Go names; var saga_process should be sagaProcess (golint)
    • Line 306: warning: don't use underscores in Go names; var saga1_process should be saga1Process (golint)
    • Line 318: warning: don't use underscores in Go names; var saga2_process should be saga2Process (golint)
    • Line 330: warning: don't use underscores in Go names; var saga3_process should be saga3Process (golint)
    • Line 496: warning: don't use underscores in Go names; var saga4_process should be saga4Process (golint)
    • ergo/tests/saga_commit_test.go
    • Line 138: warning: don't use underscores in Go names; var saga_process should be sagaProcess (golint)
    • Line 198: warning: don't use underscores in Go names; var saga1_process should be saga1Process (golint)
    • Line 210: warning: don't use underscores in Go names; var saga2_process should be saga2Process (golint)
    • ergo/examples/http/handler.go
    • Line 12: warning: comment on exported type Handler should be of the form "Handler ..." (with optional leading article) (golint)
    • Line 36: warning: exported method Handler.HandleInfo should have comment or be unexported (golint)
    • ergo/node/dist/dist.go
    • Line 22: warning: exported var ErrMissingInCache should have comment or be unexported (golint)
    • Line 46: warning: exported const ProtoHandshake5 should have comment (or a comment on this block) or be unexported (golint)
    • Line 49: warning: comment on exported const PUBLISHED should be of the form "PUBLISHED ..." (golint)
    • Line 74: warning: comment on exported const SPAWN should be of the form "SPAWN ..." (golint)
    • Line 81: warning: exported type HandshakeOptions should have comment or be unexported (golint)
    • Line 118: warning: exported type Link should have comment or be unexported (golint)
    • Line 152: warning: exported method Link.GetPeerName should have comment or be unexported (golint)
    • Line 248: warning: exported function Handshake should have comment or be unexported (golint)
    • Line 421: warning: exported function HandshakeAccept should have comment or be unexported (golint)
    • Line 600: warning: exported method Link.Close should have comment or be unexported (golint)
    • Line 606: warning: exported method Link.PeerName should have comment or be unexported (golint)
    • Line 659: warning: exported method Link.ReadHandlePacket should have comment or be unexported (golint)
    • Line 755: warning: exported method Link.ReadPacket should have comment or be unexported (golint)
    • Line 771: warning: exported method Link.ReadDist should have comment or be unexported (golint)
    • Line 837: warning: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary) (golint)
    • Line 1031: warning: exported method Link.SetAtomCache should have comment or be unexported (golint)
    • Line 1101: warning: exported method Link.Writer should have comment or be unexported (golint)
    • Line 1300: warning: exported method Link.GetRemoteName should have comment or be unexported (golint)
    • ergo/gen/saga_worker.go
    • Line 9: warning: exported type SagaWorkerBehavior should have comment or be unexported (golint)
    • Line 42: warning: exported type SagaWorker should have comment or be unexported (golint)
    • Line 46: warning: exported type SagaWorkerProcess should have comment or be unexported (golint)
    • Line 109: warning: comment on exported method SagaWorkerProcess.SendInterim should be of the form "SendInterim ..." (golint)
    • Line 126: warning: exported method SagaWorker.Init should have comment or be unexported (golint)
    • Line 139: warning: exported method SagaWorker.HandleCast should have comment or be unexported (golint)
    • Line 169: warning: exported method SagaWorker.HandleCall should have comment or be unexported (golint)
    • Line 174: warning: exported method SagaWorker.HandleDirect should have comment or be unexported (golint)
    • Line 178: warning: exported method SagaWorker.HandleInfo should have comment or be unexported (golint)
    • Line 183: warning: exported method SagaWorker.Terminate should have comment or be unexported (golint)
    • Line 189: warning: comment on exported method SagaWorker.HandleJobCommit should be of the form "HandleJobCommit ..." (golint)
    • Line 194: warning: exported method SagaWorker.HandleWorkerInfo should have comment or be unexported (golint)
    • Line 198: warning: exported method SagaWorker.HandleWorkerCast should have comment or be unexported (golint)
    • Line 202: warning: exported method SagaWorker.HandleWorkerCall should have comment or be unexported (golint)
    • Line 206: warning: exported method SagaWorker.HandleWorkerDirect should have comment or be unexported (golint)
    • Line 211: warning: exported method SagaWorker.HandleWorkerTerminate should have comment or be unexported (golint)
    • ergo/gen/stage.go
    • Line 11: warning: exported type StageCancelMode should have comment or be unexported (golint)
    • Line 33: warning: exported type StageStatus should have comment or be unexported (golint)
    • Line 36: warning: exported const StageCancelPermanent should have comment (or a comment on this block) or be unexported (golint)
    • Line 45: warning: exported var StageStatusOK should have comment or be unexported (golint)
    • Line 46: warning: error var StageStatusStop should have name of the form ErrFoo (golint)
    • Line 47: warning: error var StageStatusUnsupported should have name of the form ErrFoo (golint)
    • Line 48: warning: error var StageStatusNotAProducer should have name of the form ErrFoo (golint)
    • Line 101: warning: exported type StageSubscription should have comment or be unexported (golint)
    • Line 115: warning: exported type StageSubscribeOptions should have comment or be unexported (golint)
    • Line 138: warning: exported type StageCancelReason should have comment or be unexported (golint)
    • Line 143: warning: exported type Stage should have comment or be unexported (golint)
    • Line 147: warning: exported type StageProcess should have comment or be unexported (golint)
    • Line 270: warning: don't use underscores in Go names; var subscription_id should be subscriptionID (golint)
    • Line 274: warning: don't use underscores in Go names; var subscribe_opts should be subscribeOpts (golint)
    • Line 356: warning: comment on exported method StageProcess.Cancel should be of the form "Cancel ..." (golint)
    • Line 397: warning: comment on exported method Stage.Init should be of the form "Init ..." (golint)
    • Line 400: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 436: warning: exported method Stage.HandleCall should have comment or be unexported (golint)
    • Line 436: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 441: warning: exported method Stage.HandleDirect should have comment or be unexported (golint)
    • Line 441: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 487: warning: exported method Stage.HandleCast should have comment or be unexported (golint)
    • Line 487: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 492: warning: exported method Stage.HandleInfo should have comment or be unexported (golint)
    • Line 492: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 527: warning: exported method Stage.InitStage should have comment or be unexported (golint)
    • Line 527: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 531: warning: exported method Stage.HandleStageCall should have comment or be unexported (golint)
    • Line 531: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 537: warning: exported method Stage.HandleStageDirect should have comment or be unexported (golint)
    • Line 537: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 542: warning: exported method Stage.HandleStageCast should have comment or be unexported (golint)
    • Line 542: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 547: warning: exported method Stage.HandleStageInfo should have comment or be unexported (golint)
    • Line 547: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 553: warning: exported method Stage.HandleSubscribe should have comment or be unexported (golint)
    • Line 553: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 557: warning: exported method Stage.HandleSubscribed should have comment or be unexported (golint)
    • Line 557: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 561: warning: exported method Stage.HandleCancel should have comment or be unexported (golint)
    • Line 561: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 566: warning: exported method Stage.HandleCanceled should have comment or be unexported (golint)
    • Line 566: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 571: warning: exported method Stage.HandleEvents should have comment or be unexported (golint)
    • Line 571: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • Line 576: warning: exported method Stage.HandleDemand should have comment or be unexported (golint)
    • Line 576: warning: receiver name gst should be consistent with previous receiver name s for Stage (golint)
    • ergo/examples/genstage/consumer.go
    • Line 10: warning: exported type Consumer should have comment or be unexported (golint)
    • Line 14: warning: exported method Consumer.InitStage should have comment or be unexported (golint)
    • Line 36: warning: exported method Consumer.HandleEvents should have comment or be unexported (golint)
    • ergo/erlang/net_kernel.go
    • Line 16: warning: exported type KernelApp should have comment or be unexported (golint)
    • Line 20: warning: exported method KernelApp.Load should have comment or be unexported (golint)
    • Line 34: warning: exported method KernelApp.Start should have comment or be unexported (golint)
    • ergo/erlang/rex.go
    • Line 167: warning: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary) (golint)
    • ergo/gen/stage_dispatcher.go
    • Line 30: warning: exported type StageDispatcher should have comment or be unexported (golint)
    • Line 73: warning: exported type StageDispatchItem should have comment or be unexported (golint)
    • Line 307: warning: don't use underscores in Go names; var broadcast_item should be broadcastItem (golint)
    • Line 439: warning: don't use underscores in Go names; var order_index should be orderIndex (golint)
    • ergo/gen/types.go
    • Line 12: warning: exported var ErrUnsupportedRequest should have comment or be unexported (golint)
    • Line 16: warning: exported type Process should have comment or be unexported (golint)
    • Line 174: warning: exported type ProcessOptions should have comment or be unexported (golint)
    • Line 210: warning: exported type ProcessChannels should have comment or be unexported (golint)
    • Line 216: warning: exported type ProcessMailboxMessage should have comment or be unexported (golint)
    • Line 221: warning: exported type ProcessDirectMessage should have comment or be unexported (golint)
    • Line 227: warning: exported type ProcessGracefulExitRequest should have comment or be unexported (golint)
    • Line 232: warning: exported type ProcessState should have comment or be unexported (golint)
    • Line 242: warning: exported type Registrar should have comment or be unexported (golint)
    • Line 274: warning: exported type Monitor should have comment or be unexported (golint)
    • Line 278: warning: exported type RegisteredBehavior should have comment or be unexported (golint)
    • Line 325: warning: exported type MessageDirectChildren should have comment or be unexported (golint)
    • Line 327: warning: exported function IsMessageDown should have comment or be unexported (golint)
    • Line 336: warning: exported function IsMessageExit should have comment or be unexported (golint)
    • ergo/etf/etf_test.go
    • Line 386: warning: don't use underscores in Go names; var term_Term should be termTerm (golint)
    • Line 391: warning: don't use underscores in Go names; var term_dest should be termDest (golint)
    • ergo/node/types.go
    • Line 12: warning: exported var ErrAppAlreadyLoaded should have comment or be unexported (golint)
    • Line 36: warning: don't use underscores in Go names; const distProtoNODE_LINK should be distProtoNODELINK (golint)
    • Line 37: warning: don't use underscores in Go names; const distProtoREG_SEND should be distProtoREGSEND (golint)
    • Line 38: warning: don't use underscores in Go names; const distProtoGROUP_LEADER should be distProtoGROUPLEADER (golint)
    • Line 40: warning: don't use underscores in Go names; const distProtoSEND_TT should be distProtoSENDTT (golint)
    • Line 41: warning: don't use underscores in Go names; const distProtoEXIT_TT should be distProtoEXITTT (golint)
    • Line 42: warning: don't use underscores in Go names; const distProtoREG_SEND_TT should be distProtoREGSENDTT (golint)
    • Line 43: warning: don't use underscores in Go names; const distProtoEXIT2_TT should be distProtoEXIT2TT (golint)
    • Line 46: warning: don't use underscores in Go names; const distProtoMONITOR_EXIT should be distProtoMONITOREXIT (golint)
    • Line 47: warning: don't use underscores in Go names; const distProtoSEND_SENDER should be distProtoSENDSENDER (golint)
    • Line 48: warning: don't use underscores in Go names; const distProtoSEND_SENDER_TT should be distProtoSENDSENDERTT (golint)
    • Line 49: warning: don't use underscores in Go names; const distProtoPAYLOAD_EXIT should be distProtoPAYLOADEXIT (golint)
    • Line 50: warning: don't use underscores in Go names; const distProtoPAYLOAD_EXIT_TT should be distProtoPAYLOADEXITTT (golint)
    • Line 51: warning: don't use underscores in Go names; const distProtoPAYLOAD_EXIT2 should be distProtoPAYLOADEXIT2 (golint)
    • Line 52: warning: don't use underscores in Go names; const distProtoPAYLOAD_EXIT2_TT should be distProtoPAYLOADEXIT2TT (golint)
    • Line 53: warning: don't use underscores in Go names; const distProtoPAYLOAD_MONITOR_P_EXIT should be distProtoPAYLOADMONITORPEXIT (golint)
    • Line 54: warning: don't use underscores in Go names; const distProtoSPAWN_REQUEST should be distProtoSPAWNREQUEST (golint)
    • Line 55: warning: don't use underscores in Go names; const distProtoSPAWN_REQUEST_TT should be distProtoSPAWNREQUESTTT (golint)
    • Line 56: warning: don't use underscores in Go names; const distProtoSPAWN_REPLY should be distProtoSPAWNREPLY (golint)
    • Line 57: warning: don't use underscores in Go names; const distProtoSPAWN_REPLY_TT should be distProtoSPAWNREPLYTT (golint)
    • Line 58: warning: don't use underscores in Go names; const distProtoALIAS_SEND should be distProtoALIASSEND (golint)
    • Line 59: warning: don't use underscores in Go names; const distProtoALIAS_SEND_TT should be distProtoALIASSENDTT (golint)
    • Line 60: warning: don't use underscores in Go names; const distProtoUNLINK_ID should be distProtoUNLINKID (golint)
    • Line 61: warning: don't use underscores in Go names; const distProtoUNLINK_ID_ACK should be distProtoUNLINKIDACK (golint)
    • Line 72: warning: exported type Node should have comment or be unexported (golint)
    • Line 105: warning: exported type Version should have comment or be unexported (golint)
    • Line 111: warning: exported type Network should have comment or be unexported (golint)
    • Line 121: warning: exported type NetworkRoute should have comment or be unexported (golint)
    • Line 157: warning: comment on exported type TLSModeType should be of the form "TLSModeType ..." (with optional leading article) (golint)
    • ergo/examples/gendemo/gen_demo.go
    • Line 10: warning: exported type Demo should have comment or be unexported (golint)
    • Line 14: warning: exported type DemoProcess should have comment or be unexported (golint)
    • Line 49: warning: exported type DemoStatus should have comment or be unexported (golint)
    • Line 52: warning: exported var DemoStatusOK should have comment or be unexported (golint)
    • Line 53: warning: error var DemoStatusStop should have name of the form ErrFoo (golint)
    • Line 58: warning: exported method Demo.HandleDemoCall should have comment or be unexported (golint)
    • Line 63: warning: exported method Demo.HandleDemoCast should have comment or be unexported (golint)
    • Line 67: warning: exported method Demo.HandleDemoInfo should have comment or be unexported (golint)
    • Line 78: warning: exported method Demo.Hello should have comment or be unexported (golint)
    • Line 78: warning: receiver name d should be consistent with previous receiver name gd for Demo (golint)
    • Line 85: warning: exported method Demo.Stat should have comment or be unexported (golint)
    • Line 85: warning: receiver name d should be consistent with previous receiver name gd for Demo (golint)
    • Line 94: warning: exported method DemoProcess.Hi should have comment or be unexported (golint)
    • Line 99: warning: comment on exported method Demo.Init should be of the form "Init ..." (golint)
    • Line 102: warning: receiver name d should be consistent with previous receiver name gd for Demo (golint)
    • Line 116: warning: exported method Demo.HandleCall should have comment or be unexported (golint)
    • Line 121: warning: exported method Demo.HandleDirect should have comment or be unexported (golint)
    • Line 136: warning: exported method Demo.HandleCast should have comment or be unexported (golint)
    • Line 141: warning: exported method Demo.HandleInfo should have comment or be unexported (golint)
    • ergo/examples/genstage/producer.go
    • Line 12: warning: exported type Producer should have comment or be unexported (golint)
    • Line 17: warning: exported method Producer.InitStage should have comment or be unexported (golint)
    • Line 36: warning: exported method Producer.HandleDemand should have comment or be unexported (golint)
    • Line 48: warning: exported method Producer.HandleSubscribe should have comment or be unexported (golint)
    • ergo/lib/tools.go
    • Line 14: warning: exported type Buffer should have comment or be unexported (golint)
    • Line 23: warning: exported var DefaultBufferLength should have comment or be unexported (golint)
    • Line 48: warning: exported function Log should have comment or be unexported (golint)
    • Line 54: warning: exported function CatchPanic should have comment or be unexported (golint)
    • Line 58: warning: exported function TakeTimer should have comment or be unexported (golint)
    • Line 62: warning: exported function ReleaseTimer should have comment or be unexported (golint)
    • Line 67: warning: exported function TakeBuffer should have comment or be unexported (golint)
    • Line 71: warning: exported function ReleaseBuffer should have comment or be unexported (golint)
    • Line 82: warning: exported method Buffer.Reset should have comment or be unexported (golint)
    • Line 87: warning: exported method Buffer.Set should have comment or be unexported (golint)
    • Line 91: warning: exported method Buffer.AppendByte should have comment or be unexported (golint)
    • Line 95: warning: exported method Buffer.Append should have comment or be unexported (golint)
    • Line 103: warning: exported method Buffer.Len should have comment or be unexported (golint)
    • Line 107: warning: exported method Buffer.WriteDataTo should have comment or be unexported (golint)
    • Line 131: warning: exported method Buffer.ReadDataFrom should have comment or be unexported (golint)
    • Line 159: warning: exported method Buffer.Allocate should have comment or be unexported (golint)
    • Line 170: warning: exported method Buffer.Extend should have comment or be unexported (golint)
    • Line 183: warning: exported function RandomString should have comment or be unexported (golint)
    • ergo/gen/server.go
    • Line 14: warning: exported const DefaultCallTimeout should have comment (or a comment on this block) or be unexported (golint)
    • Line 43: warning: exported type ServerStatus should have comment or be unexported (golint)
    • Line 46: warning: exported var ServerStatusOK should have comment or be unexported (golint)
    • Line 47: warning: error var ServerStatusStop should have name of the form ErrFoo (golint)
    • Line 48: warning: error var ServerStatusIgnore should have name of the form ErrFoo (golint)
    • Line 51: warning: exported function ServerStatusStopWithReason should have comment or be unexported (golint)
    • Line 58: warning: comment on exported type ServerFrom should be of the form "ServerFrom ..." (with optional leading article) (golint)
    • Line 65: warning: comment on exported type ServerProcess should be of the form "ServerProcess ..." (with optional leading article) (golint)
    • Line 190: warning: exported method Server.ProcessInit should have comment or be unexported (golint)
    • Line 217: warning: exported method Server.ProcessLoop should have comment or be unexported (golint)
    • Line 405: warning: receiver name gsp should be consistent with previous receiver name sp for ServerProcess (golint)
    • Line 420: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 462: warning: receiver name gsp should be consistent with previous receiver name sp for ServerProcess (golint)
    • Line 471: warning: receiver name gsp should be consistent with previous receiver name sp for ServerProcess (golint)
    • Line 490: warning: receiver name gsp should be consistent with previous receiver name sp for ServerProcess (golint)
    • Line 512: warning: receiver name gsp should be consistent with previous receiver name sp for ServerProcess (golint)
    • Line 532: warning: receiver name gsp should be consistent with previous receiver name sp for ServerProcess (golint)
    • Line 551: warning: comment on exported method Server.Init should be of the form "Init ..." (golint)
    • Line 558: warning: exported method Server.HandleCast should have comment or be unexported (golint)
    • Line 563: warning: exported method Server.HandleCall should have comment or be unexported (golint)
    • Line 568: warning: exported method Server.HandleDirect should have comment or be unexported (golint)
    • Line 572: warning: exported method Server.HandleInfo should have comment or be unexported (golint)
    • Line 577: warning: exported method Server.Terminate should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign90%

IneffAssign detects ineffectual assignments in Go code.

    • ergo/etf/decode_test.go
    • Line 24: warning: ineffectual assignment to term (ineffassign)
    • Line 30: warning: ineffectual assignment to term (ineffassign)
    • Line 46: warning: ineffectual assignment to term (ineffassign)
    • Line 61: warning: ineffectual assignment to term (ineffassign)
    • Line 77: warning: ineffectual assignment to term (ineffassign)
    • Line 90: warning: ineffectual assignment to term (ineffassign)
    • ergo/etf/etf_test.go
    • Line 427: warning: ineffectual assignment to err (ineffassign)
    • Line 452: warning: ineffectual assignment to err (ineffassign)
    • Line 477: warning: ineffectual assignment to err (ineffassign)
    • Line 504: warning: ineffectual assignment to err (ineffassign)
    • ergo/node/dist/dist.go
    • Line 1138: warning: ineffectual assignment to terms (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenControl (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenMessage (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenAtomCache (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenPacket (ineffassign)
    • Line 1138: warning: ineffectual assignment to terms (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenControl (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenMessage (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenAtomCache (ineffassign)
    • Line 1147: warning: ineffectual assignment to lenPacket (ineffassign)

misspell94%

Misspell Finds commonly misspelled English words

    • ergo/gen/types.go
    • Line 58: warning: "immidiately" is a misspelling of "immediately" (misspell)
    • Line 178: warning: "lenght" is a misspelling of "length" (misspell)