Preparing report...

Report for github.com/perlin-network/wavelet

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


gocyclo94%

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.

    • wavelet/api/msg.go
    • Line 77: warning: cyclomatic complexity 21 of function (*sendTransactionRequest).bind() is high (> 15) (gocyclo)

golint50%

Golint is a linter for Go source code.

    • wavelet/internal/cuckoo/filter.go
    • Line 31: warning: exported const BucketSize should have comment (or a comment on this block) or be unexported (golint)
    • Line 36: warning: exported type TransactionID should have comment or be unexported (golint)
    • Line 38: warning: exported type Filter should have comment or be unexported (golint)
    • Line 58: warning: exported function UnmarshalBinary should have comment or be unexported (golint)
    • Line 71: warning: exported method Filter.MarshalBinary should have comment or be unexported (golint)
    • Line 89: warning: exported function NewFilter should have comment or be unexported (golint)
    • Line 93: warning: exported method Filter.Reset should have comment or be unexported (golint)
    • Line 98: warning: exported method Filter.Insert should have comment or be unexported (golint)
    • Line 139: warning: exported method Filter.Delete should have comment or be unexported (golint)
    • Line 155: warning: exported method Filter.Lookup should have comment or be unexported (golint)
    • Line 168: warning: exported type Bucket should have comment or be unexported (golint)
    • Line 170: warning: exported method Bucket.Insert should have comment or be unexported (golint)
    • Line 181: warning: exported method Bucket.Delete should have comment or be unexported (golint)
    • Line 192: warning: exported method Bucket.IndexOf should have comment or be unexported (golint)
    • wavelet/tx_applier.go
    • Line 40: warning: comment on exported function ApplyTransaction should be of the form "ApplyTransaction ..." (golint)
    • wavelet/cmd/wavelet/node/node.go
    • Line 29: warning: exported type Config should have comment or be unexported (golint)
    • Line 48: warning: exported var DefaultConfig should have comment or be unexported (golint)
    • Line 59: warning: exported var ErrHTTPSMissingCerts should have comment or be unexported (golint)
    • Line 62: warning: exported type Wavelet should have comment or be unexported (golint)
    • Line 75: warning: exported function New should have comment or be unexported (golint)
    • Line 209: warning: exported method Wavelet.Start should have comment or be unexported (golint)
    • Line 258: warning: exported method Wavelet.Close should have comment or be unexported (golint)
    • wavelet/cmd/wavelet/cli.go
    • Line 47: warning: exported type CLI should have comment or be unexported (golint)
    • Line 64: warning: exported type CLIOption should have comment or be unexported (golint)
    • Line 66: warning: exported function CLIWithStdin should have comment or be unexported (golint)
    • Line 72: warning: exported function CLIWithStdout should have comment or be unexported (golint)
    • Line 78: warning: exported function CLIWithNoColor should have comment or be unexported (golint)
    • Line 84: warning: exported function NewCLI should have comment or be unexported (golint)
    • Line 382: warning: exported method CLI.Start should have comment or be unexported (golint)
    • wavelet/blocks.go
    • Line 10: warning: exported type Blocks should have comment or be unexported (golint)
    • Line 21: warning: exported function NewBlocks should have comment or be unexported (golint)
    • Line 40: warning: exported method Blocks.Oldest should have comment or be unexported (golint)
    • Line 48: warning: exported method Blocks.Latest should have comment or be unexported (golint)
    • Line 56: warning: exported method Blocks.LatestHeight should have comment or be unexported (golint)
    • Line 89: warning: exported method Blocks.GetByIndex should have comment or be unexported (golint)
    • Line 108: warning: exported method Blocks.Clone should have comment or be unexported (golint)
    • wavelet/internal/filebuffer/pool.go
    • Line 12: warning: exported type Pool should have comment or be unexported (golint)
    • Line 17: warning: exported function NewPool should have comment or be unexported (golint)
    • Line 60: warning: exported method Pool.Put should have comment or be unexported (golint)
    • wavelet/internal/debounce/payload.go
    • Line 22: warning: exported type Payload should have comment or be unexported (golint)
    • Line 26: warning: exported type PayloadOption should have comment or be unexported (golint)
    • Line 38: warning: exported function Bytes should have comment or be unexported (golint)
    • wavelet/wctl/helper.go
    • Line 14: warning: exported type MarshalableJSON should have comment or be unexported (golint)
    • Line 18: warning: exported type UnmarshalableJSON should have comment or be unexported (golint)
    • Line 93: warning: exported var ErrInvalidHexLength should have comment or be unexported (golint)
    • wavelet/wctl/ledger.go
    • Line 9: warning: comment on exported method Client.LedgerStatus should be of the form "LedgerStatus ..." (golint)
    • Line 21: warning: exported type LedgerStatusResponse should have comment or be unexported (golint)
    • Line 51: warning: exported type Peer should have comment or be unexported (golint)
    • Line 56: warning: exported method LedgerStatusResponse.UnmarshalJSON should have comment or be unexported (golint)
    • wavelet/ledger.go
    • Line 48: warning: exported var ErrMissingTx should have comment or be unexported (golint)
    • Line 52: warning: exported type Ledger should have comment or be unexported (golint)
    • Line 93: warning: exported type Option should have comment or be unexported (golint)
    • Line 102: warning: exported function WithGenesis should have comment or be unexported (golint)
    • Line 108: warning: exported function WithMaxMemoryMB should have comment or be unexported (golint)
    • Line 114: warning: exported function NewLedger should have comment or be unexported (golint)
    • Line 386: warning: exported method Ledger.Snapshot should have comment or be unexported (golint)
    • wavelet/metrics.go
    • Line 30: warning: exported type Metrics should have comment or be unexported (golint)
    • Line 45: warning: exported function NewMetrics should have comment or be unexported (golint)
    • Line 103: warning: exported method Metrics.Stop should have comment or be unexported (golint)
    • wavelet/wctl/tx_call.go
    • Line 12: warning: exported var ErrNotContract should have comment or be unexported (golint)
    • Line 40: warning: exported method FunctionCall.AddParams should have comment or be unexported (golint)
    • Line 59: warning: exported function DecodeHex should have comment or be unexported (golint)
    • Line 63: warning: exported function EncodeString should have comment or be unexported (golint)
    • Line 67: warning: exported function EncodeBytes should have comment or be unexported (golint)
    • Line 75: warning: exported function EncodeByte should have comment or be unexported (golint)
    • Line 79: warning: exported function EncodeUint16 should have comment or be unexported (golint)
    • Line 87: warning: exported function EncodeUint32 should have comment or be unexported (golint)
    • Line 95: warning: exported function EncodeUint64 should have comment or be unexported (golint)
    • wavelet/lru.vm.go
    • Line 29: warning: exported type VMLRU should have comment or be unexported (golint)
    • Line 43: warning: exported function NewVMLRU should have comment or be unexported (golint)
    • Line 51: warning: exported method VMLRU.Load should have comment or be unexported (golint)
    • Line 65: warning: exported method VMLRU.LoadOrPut should have comment or be unexported (golint)
    • Line 90: warning: exported method VMLRU.Put should have comment or be unexported (golint)
    • Line 113: warning: exported method VMLRU.Remove should have comment or be unexported (golint)
    • wavelet/vote.go
    • Line 30: warning: exported type VoteID should have comment or be unexported (golint)
    • Line 32: warning: exported var ZeroVoteID should have comment or be unexported (golint)
    • Line 34: warning: exported type Vote should have comment or be unexported (golint)
    • Line 137: warning: exported function CollectVotesForSync should have comment or be unexported (golint)
    • Line 211: warning: exported function WeighByTransactions should have comment or be unexported (golint)
    • Line 235: warning: exported function WeighByStake should have comment or be unexported (golint)
    • Line 267: warning: exported function Normalize should have comment or be unexported (golint)
    • wavelet/wctl/account.go
    • Line 28: warning: comment on exported method Client.RecipientIsContract should be of the form "RecipientIsContract ..." (golint)
    • Line 38: warning: exported type Account should have comment or be unexported (golint)
    • Line 48: warning: exported method Account.UnmarshalJSON should have comment or be unexported (golint)
    • wavelet/block.go
    • Line 15: warning: exported type Block should have comment or be unexported (golint)
    • Line 23: warning: exported function NewBlock should have comment or be unexported (golint)
    • Line 31: warning: exported method Block.GetID should have comment or be unexported (golint)
    • Line 39: warning: exported method Block.Marshal should have comment or be unexported (golint)
    • Line 77: warning: exported function UnmarshalBlock should have comment or be unexported (golint)
    • wavelet/store/mod.go
    • Line 28: warning: exported var ErrNotFound should have comment or be unexported (golint)
    • Line 31: warning: exported type KV should have comment or be unexported (golint)
    • wavelet/internal/stall/detector.go
    • Line 15: warning: exported type Detector should have comment or be unexported (golint)
    • Line 22: warning: exported type Config should have comment or be unexported (golint)
    • Line 26: warning: exported type Delegate should have comment or be unexported (golint)
    • Line 36: warning: exported function NewStallDetector should have comment or be unexported (golint)
    • Line 45: warning: exported method Detector.Stop should have comment or be unexported (golint)
    • Line 49: warning: exported method Detector.Run should have comment or be unexported (golint)
    • wavelet/wctl/error.go
    • Line 9: warning: exported type RequestError should have comment or be unexported (golint)
    • Line 18: warning: exported function ParseRequestError should have comment or be unexported (golint)
    • wavelet/api/msg.go
    • Line 406: warning: exported function ErrBadRequest should have comment or be unexported (golint)
    • Line 413: warning: exported function ErrNotFound should have comment or be unexported (golint)
    • Line 420: warning: exported function ErrInternal should have comment or be unexported (golint)
    • wavelet/tx_payload.go
    • Line 15: warning: exported type Transfer should have comment or be unexported (golint)
    • Line 30: warning: exported type Stake should have comment or be unexported (golint)
    • Line 35: warning: exported type Contract should have comment or be unexported (golint)
    • Line 43: warning: exported type Batch should have comment or be unexported (golint)
    • Line 267: warning: exported method Transfer.Marshal should have comment or be unexported (golint)
    • Line 303: warning: exported method Stake.Marshal should have comment or be unexported (golint)
    • Line 315: warning: exported method Contract.Marshal should have comment or be unexported (golint)
    • Line 393: warning: exported method Batch.Marshal should have comment or be unexported (golint)
    • wavelet/wctl/node.go
    • Line 7: warning: exported method Client.Connect should have comment or be unexported (golint)
    • Line 24: warning: exported method Client.Disconnect should have comment or be unexported (golint)
    • Line 41: warning: exported method Client.Restart should have comment or be unexported (golint)
    • wavelet/db.go
    • Line 56: warning: exported type RewardWithdrawalRequest should have comment or be unexported (golint)
    • Line 62: warning: exported method RewardWithdrawalRequest.Key should have comment or be unexported (golint)
    • Line 75: warning: exported method RewardWithdrawalRequest.Marshal should have comment or be unexported (golint)
    • Line 91: warning: exported function UnmarshalRewardWithdrawalRequest should have comment or be unexported (golint)
    • Line 117: warning: exported function ReadAccountBalance should have comment or be unexported (golint)
    • Line 126: warning: exported function WriteAccountBalance should have comment or be unexported (golint)
    • Line 133: warning: exported function ReadAccountStake should have comment or be unexported (golint)
    • Line 142: warning: exported function WriteAccountStake should have comment or be unexported (golint)
    • Line 149: warning: exported function ReadAccountReward should have comment or be unexported (golint)
    • Line 158: warning: exported function WriteAccountReward should have comment or be unexported (golint)
    • Line 165: warning: exported function ReadAccountContractCode should have comment or be unexported (golint)
    • Line 174: warning: exported function WriteAccountContractCode should have comment or be unexported (golint)
    • Line 178: warning: exported function ReadAccountContractNumPages should have comment or be unexported (golint)
    • Line 187: warning: exported function WriteAccountContractNumPages should have comment or be unexported (golint)
    • Line 194: warning: exported function ReadAccountContractGlobals should have comment or be unexported (golint)
    • Line 198: warning: exported function WriteAccountContractGlobals should have comment or be unexported (golint)
    • Line 202: warning: exported function ReadAccountContractPage should have comment or be unexported (golint)
    • Line 221: warning: exported function WriteAccountContractPage should have comment or be unexported (golint)
    • Line 232: warning: exported function ReadAccountContractGasBalance should have comment or be unexported (golint)
    • Line 241: warning: exported function WriteAccountContractGasBalance should have comment or be unexported (golint)
    • Line 271: warning: exported function ReadAccountsLen should have comment or be unexported (golint)
    • Line 280: warning: exported function WriteAccountsLen should have comment or be unexported (golint)
    • Line 287: warning: exported function StoreBlock should have comment or be unexported (golint)
    • Line 315: warning: exported function LoadBlocks should have comment or be unexported (golint)
    • Line 360: warning: exported function GetRewardWithdrawalRequests should have comment or be unexported (golint)
    • Line 381: warning: exported function StoreRewardWithdrawalRequest should have comment or be unexported (golint)
    • Line 385: warning: comment on exported function StoreFinalizedTransactionIDs should be of the form "StoreFinalizedTransactionIDs ..." (golint)
    • Line 399: warning: exported function LoadFinalizedTransactionIDs should have comment or be unexported (golint)
    • wavelet/log.go
    • Line 62: warning: exported function NewCollapseResultsLogger should have comment or be unexported (golint)
    • Line 102: warning: exported method CollapseResultsLogger.Log should have comment or be unexported (golint)
    • Line 161: warning: exported method CollapseResultsLogger.Stop should have comment or be unexported (golint)
    • wavelet/sync.go
    • Line 23: warning: exported type SyncManager should have comment or be unexported (golint)
    • Line 38: warning: exported function NewSyncManager should have comment or be unexported (golint)
    • Line 53: warning: exported method SyncManager.Stop should have comment or be unexported (golint)
    • Line 58: warning: exported method SyncManager.Start should have comment or be unexported (golint)
    • wavelet/internal/worker/pool.go
    • Line 5: warning: exported type Pool should have comment or be unexported (golint)
    • Line 12: warning: exported function NewWorkerPool should have comment or be unexported (golint)
    • Line 19: warning: exported method Pool.Start should have comment or be unexported (golint)
    • Line 39: warning: exported method Pool.Queue should have comment or be unexported (golint)
    • Line 43: warning: exported method Pool.Stop should have comment or be unexported (golint)
    • wavelet/avl/node.go
    • Line 43: warning: exported const MerkleHashSize should have comment (or a comment on this block) or be unexported (golint)
    • Line 476: warning: exported function DeserializeFromDifference should have comment or be unexported (golint)
    • wavelet/cmd/wavelet/completion.go
    • Line 48: warning: exported type PathCompleter should have comment or be unexported (golint)
    • Line 52: warning: exported method PathCompleter.GetDynamicNames should have comment or be unexported (golint)
    • wavelet/api/mod.go
    • Line 56: warning: exported type Gateway should have comment or be unexported (golint)
    • Line 77: warning: exported function New should have comment or be unexported (golint)
    • Line 176: warning: exported method Gateway.StartHTTP should have comment or be unexported (golint)
    • Line 193: warning: comment on exported method Gateway.StartHTTPS should be of the form "StartHTTPS ..." (golint)
    • Line 312: warning: exported method Gateway.Shutdown should have comment or be unexported (golint)
    • wavelet/sys/const.go
    • Line 35: warning: exported const WithdrawStake should have comment (or a comment on this block) or be unexported (golint)
    • Line 41: warning: comment on exported const SyncChunkSize should be of the form "SyncChunkSize ..." (golint)
    • Line 44: warning: comment on exported const SyncPooledFileSize should be of the form "SyncPooledFileSize ..." (golint)
    • Line 51: warning: exported var SKademliaC2 should have comment or be unexported (golint)
    • wavelet/wctl/tx.go
    • Line 27: warning: exported type TransactionEvent should have comment or be unexported (golint)
    • Line 131: warning: exported type Transaction should have comment or be unexported (golint)
    • Line 141: warning: exported method Transaction.UnmarshalJSON should have comment or be unexported (golint)
    • Line 152: warning: exported method Transaction.ParseJSON should have comment or be unexported (golint)
    • Line 173: warning: exported type TransactionList should have comment or be unexported (golint)
    • Line 175: warning: exported method TransactionList.UnmarshalJSON should have comment or be unexported (golint)
    • Line 204: warning: exported type TxRequest should have comment or be unexported (golint)
    • Line 213: warning: exported method TxRequest.MarshalJSON should have comment or be unexported (golint)
    • Line 227: warning: exported type TxResponse should have comment or be unexported (golint)
    • Line 233: warning: exported method TxResponse.UnmarshalJSON should have comment or be unexported (golint)
    • wavelet/contract.go
    • Line 42: warning: exported var ErrContractFunctionNotFound should have comment or be unexported (golint)
    • Line 49: warning: exported const PageSize should have comment (or a comment on this block) or be unexported (golint)
    • Line 52: warning: exported type ContractExecutor should have comment or be unexported (golint)
    • Line 64: warning: exported type VMState should have comment or be unexported (golint)
    • Line 69: warning: exported method VMState.Apply should have comment or be unexported (golint)
    • Line 98: warning: exported function CloneVM should have comment or be unexported (golint)
    • Line 104: warning: exported function SnapshotVMState should have comment or be unexported (golint)
    • Line 111: warning: exported method ContractExecutor.GetCost should have comment or be unexported (golint)
    • Line 115: warning: exported method ContractExecutor.ResolveFunc should have comment or be unexported (golint)
    • Line 252: warning: exported method ContractExecutor.ResolveGlobal should have comment or be unexported (golint)
    • Line 256: warning: comment on exported method ContractExecutor.Execute should be of the form "Execute ..." (golint)
    • Line 393: warning: exported function LoadContractGlobals should have comment or be unexported (golint)
    • Line 412: warning: exported function SaveContractGlobals should have comment or be unexported (golint)
    • Line 423: warning: exported function LoadContractMemorySnapshot should have comment or be unexported (golint)
    • Line 442: warning: exported function SaveContractMemorySnapshot should have comment or be unexported (golint)
    • wavelet/tx.go
    • Line 34: warning: exported type Transaction should have comment or be unexported (golint)
    • Line 48: warning: exported function NewTransaction should have comment or be unexported (golint)
    • Line 64: warning: exported function NewSignedTransaction should have comment or be unexported (golint)
    • Line 73: warning: exported method Transaction.Marshal should have comment or be unexported (golint)
    • Line 98: warning: exported function UnmarshalTransaction should have comment or be unexported (golint)
    • Line 154: warning: exported method Transaction.ComputeIndex should have comment or be unexported (golint)
    • Line 159: warning: exported method Transaction.Fee should have comment or be unexported (golint)
    • Line 188: warning: exported method Transaction.VerifySignature should have comment or be unexported (golint)
    • wavelet/store/testutil.go
    • Line 8: warning: exported type TestKVConfig should have comment or be unexported (golint)
    • Line 18: warning: exported type TestKVOption should have comment or be unexported (golint)
    • Line 20: warning: exported function WithKeepExisting should have comment or be unexported (golint)
    • wavelet/wctl/ws.go
    • Line 12: warning: exported const RouteWSConsensus should have comment (or a comment on this block) or be unexported (golint)
    • Line 83: warning: exported type ErrInvalidPayload should have comment or be unexported (golint)
    • Line 87: warning: exported type ErrMismatchMod should have comment or be unexported (golint)
    • Line 116: warning: exported type ErrInvalidEvent should have comment or be unexported (golint)
    • Line 134: warning: exported type ErrUnmarshalFail should have comment or be unexported (golint)
    • wavelet/wctl/msg.go
    • Line 5: warning: exported type MsgResponse should have comment or be unexported (golint)
    • Line 9: warning: exported method MsgResponse.UnmarshalJSON should have comment or be unexported (golint)
    • wavelet/wctl/tx_stake.go
    • Line 8: warning: exported method Client.PlaceStake should have comment or be unexported (golint)
    • Line 15: warning: exported method Client.WithdrawStake should have comment or be unexported (golint)
    • Line 22: warning: exported method Client.WithdrawReward should have comment or be unexported (golint)
    • wavelet/internal/debounce/config.go
    • Line 24: warning: exported type Config should have comment or be unexported (golint)
    • Line 32: warning: exported type ConfigOption should have comment or be unexported (golint)
    • Line 48: warning: exported function WithAction should have comment or be unexported (golint)
    • Line 54: warning: exported function WithPeriod should have comment or be unexported (golint)
    • Line 60: warning: exported function WithBufferLimit should have comment or be unexported (golint)
    • Line 66: warning: exported function WithKeys should have comment or be unexported (golint)
    • wavelet/log/mod.go
    • Line 46: warning: exported const LoggerWavelet should have comment (or a comment on this block) or be unexported (golint)
    • Line 78: warning: exported function SetLevel should have comment or be unexported (golint)
    • Line 94: warning: exported function SetWriter should have comment or be unexported (golint)
    • Line 106: warning: exported function ClearWriter should have comment or be unexported (golint)
    • Line 110: warning: exported function Node should have comment or be unexported (golint)
    • Line 114: warning: exported function Network should have comment or be unexported (golint)
    • Line 118: warning: exported function Accounts should have comment or be unexported (golint)
    • Line 122: warning: exported function Contracts should have comment or be unexported (golint)
    • Line 126: warning: exported function TX should have comment or be unexported (golint)
    • Line 130: warning: exported function Consensus should have comment or be unexported (golint)
    • Line 134: warning: exported function Sync should have comment or be unexported (golint)
    • Line 138: warning: exported function Metrics should have comment or be unexported (golint)
    • wavelet/accounts.go
    • Line 34: warning: exported type Accounts should have comment or be unexported (golint)
    • Line 42: warning: exported function NewAccounts should have comment or be unexported (golint)
    • Line 68: warning: exported method Accounts.Snapshot should have comment or be unexported (golint)
    • Line 76: warning: exported method Accounts.Commit should have comment or be unexported (golint)
    • wavelet/internal/debounce/debounce.go
    • Line 29: warning: exported type Type should have comment or be unexported (golint)
    • Line 32: warning: exported const TypeDeduper should have comment (or a comment on this block) or be unexported (golint)
    • Line 36: warning: exported type Factory should have comment or be unexported (golint)
    • Line 41: warning: exported function NewFactory should have comment or be unexported (golint)
    • Line 45: warning: exported method Factory.Init should have comment or be unexported (golint)
    • Line 56: warning: exported type Debouncer should have comment or be unexported (golint)
    • Line 65: warning: exported type Deduper should have comment or be unexported (golint)
    • Line 73: warning: exported function NewDeduper should have comment or be unexported (golint)
    • Line 105: warning: exported method Deduper.Add should have comment or be unexported (golint)
    • Line 124: warning: exported type Limiter should have comment or be unexported (golint)
    • Line 133: warning: exported function NewLimiter should have comment or be unexported (golint)
    • Line 168: warning: exported method Limiter.Add should have comment or be unexported (golint)
    • wavelet/wctl/wctl.go
    • Line 39: warning: exported const RouteLedger should have comment (or a comment on this block) or be unexported (golint)
    • Line 54: warning: exported var ErrNoHost should have comment or be unexported (golint)
    • Line 56: warning: exported type Marshalable should have comment or be unexported (golint)
    • Line 60: warning: exported type Config should have comment or be unexported (golint)
    • Line 72: warning: exported type Client should have comment or be unexported (golint)
    • Line 128: warning: exported function NewClient should have comment or be unexported (golint)
    • Line 178: warning: exported method Client.Close should have comment or be unexported (golint)
    • Line 187: warning: exported method Client.GetContractCode should have comment or be unexported (golint)
    • Line 194: warning: exported method Client.GetContractPages should have comment or be unexported (golint)
    • wavelet/collapse.go
    • Line 125: warning: comment on exported type CollapseContext should be of the form "CollapseContext ..." (with optional leading article) (golint)
    • Line 148: warning: exported function NewCollapseContext should have comment or be unexported (golint)
    • Line 174: warning: exported method CollapseContext.ReadAccountsLen should have comment or be unexported (golint)
    • Line 178: warning: exported method CollapseContext.WriteAccountsLen should have comment or be unexported (golint)
    • Line 182: warning: exported method CollapseContext.ReadAccountBalance should have comment or be unexported (golint)
    • Line 195: warning: exported method CollapseContext.ReadAccountStake should have comment or be unexported (golint)
    • Line 208: warning: exported method CollapseContext.ReadAccountReward should have comment or be unexported (golint)
    • Line 221: warning: exported method CollapseContext.ReadAccountContractGasBalance should have comment or be unexported (golint)
    • Line 234: warning: exported method CollapseContext.ReadAccountContractCode should have comment or be unexported (golint)
    • Line 247: warning: exported method CollapseContext.GetContractState should have comment or be unexported (golint)
    • Line 261: warning: exported method CollapseContext.WriteAccountBalance should have comment or be unexported (golint)
    • Line 266: warning: exported method CollapseContext.WriteAccountStake should have comment or be unexported (golint)
    • Line 271: warning: exported method CollapseContext.WriteAccountReward should have comment or be unexported (golint)
    • Line 276: warning: exported method CollapseContext.WriteAccountContractGasBalance should have comment or be unexported (golint)
    • Line 281: warning: exported method CollapseContext.WriteAccountContractCode should have comment or be unexported (golint)
    • Line 286: warning: exported method CollapseContext.SetContractState should have comment or be unexported (golint)
    • Line 291: warning: exported method CollapseContext.StoreRewardWithdrawalRequest should have comment or be unexported (golint)
    • Line 342: warning: comment on exported method CollapseContext.Flush should be of the form "Flush ..." (golint)
    • Line 383: warning: comment on exported method CollapseContext.ApplyTransaction should be of the form "ApplyTransaction ..." (golint)
    • wavelet/common.go
    • Line 30: warning: exported const SizeTransactionID should have comment (or a comment on this block) or be unexported (golint)
    • Line 38: warning: exported type TransactionID should have comment or be unexported (golint)
    • Line 39: warning: exported type TransactionSeed should have comment or be unexported (golint)
    • Line 40: warning: exported type BlockID should have comment or be unexported (golint)
    • Line 41: warning: exported type MerkleNodeID should have comment or be unexported (golint)
    • Line 42: warning: exported type AccountID should have comment or be unexported (golint)
    • Line 43: warning: exported type Signature should have comment or be unexported (golint)
    • Line 46: warning: exported var ZeroTransactionID should have comment or be unexported (golint)
    • wavelet/gossip.go
    • Line 33: warning: exported type Gossiper should have comment or be unexported (golint)
    • Line 40: warning: exported function NewGossiper should have comment or be unexported (golint)
    • Line 56: warning: exported method Gossiper.Push should have comment or be unexported (golint)
    • Line 64: warning: exported method Gossiper.Gossip should have comment or be unexported (golint)
    • wavelet/transactions.go
    • Line 11: warning: exported type Transactions should have comment or be unexported (golint)
    • Line 22: warning: exported function NewTransactions should have comment or be unexported (golint)
    • Line 41: warning: exported method Transactions.BatchAdd should have comment or be unexported (golint)
    • Line 208: warning: exported method Transactions.HasPending should have comment or be unexported (golint)
    • wavelet/conf/conf.go
    • Line 94: warning: exported type Option should have comment or be unexported (golint)
    • Line 103: warning: exported function WithSnowballK should have comment or be unexported (golint)
    • Line 109: warning: exported function WithSyncVoteThreshold should have comment or be unexported (golint)
    • Line 115: warning: exported function WithFinalizationVoteThreshold should have comment or be unexported (golint)
    • Line 121: warning: exported function WithStakeMajorityWeight should have comment or be unexported (golint)
    • Line 127: warning: exported function WithTransactionsNumMajorityWeight should have comment or be unexported (golint)
    • Line 133: warning: exported function WithSnowballBeta should have comment or be unexported (golint)
    • Line 139: warning: exported function WithQueryTimeout should have comment or be unexported (golint)
    • Line 145: warning: exported function WithGossipTimeout should have comment or be unexported (golint)
    • Line 151: warning: exported function WithDownloadTxTimeout should have comment or be unexported (golint)
    • Line 157: warning: exported function WithCheckOutOfSyncTimeout should have comment or be unexported (golint)
    • Line 163: warning: exported function WithSyncChunkSize should have comment or be unexported (golint)
    • Line 169: warning: exported function WithSyncIfBlockIndicesDifferBy should have comment or be unexported (golint)
    • Line 175: warning: exported function WithPruningLimit should have comment or be unexported (golint)
    • Line 181: warning: exported function WithSecret should have comment or be unexported (golint)
    • Line 187: warning: exported function WithTXSyncChunkSize should have comment or be unexported (golint)
    • Line 193: warning: exported function WithTXSyncLimit should have comment or be unexported (golint)
    • Line 199: warning: exported function WithBlockTXLimit should have comment or be unexported (golint)
    • Line 205: warning: exported function WithMissingTxPullLimit should have comment or be unexported (golint)
    • Line 211: warning: exported function GetSnowballK should have comment or be unexported (golint)
    • Line 219: warning: exported function GetSyncVoteThreshold should have comment or be unexported (golint)
    • Line 227: warning: exported function GetFinalizationVoteThreshold should have comment or be unexported (golint)
    • Line 235: warning: exported function GetStakeMajorityWeight should have comment or be unexported (golint)
    • Line 243: warning: exported function GetTransactionsNumMajorityWeight should have comment or be unexported (golint)
    • Line 251: warning: exported function GetSnowballBeta should have comment or be unexported (golint)
    • Line 259: warning: exported function GetSnowballAlpha should have comment or be unexported (golint)
    • Line 267: warning: exported function GetQueryTimeout should have comment or be unexported (golint)
    • Line 275: warning: exported function GetGossipTimeout should have comment or be unexported (golint)
    • Line 283: warning: exported function GetDownloadTxTimeout should have comment or be unexported (golint)
    • Line 291: warning: exported function GetCheckOutOfSyncTimeout should have comment or be unexported (golint)
    • Line 299: warning: exported function GetSyncChunkSize should have comment or be unexported (golint)
    • Line 307: warning: exported function GetSyncIfBlockIndicesDifferBy should have comment or be unexported (golint)
    • Line 315: warning: exported function GetPruningLimit should have comment or be unexported (golint)
    • Line 323: warning: exported function GetSecret should have comment or be unexported (golint)
    • Line 331: warning: exported function GetTXSyncChunkSize should have comment or be unexported (golint)
    • Line 339: warning: exported function GetTXSyncLimit should have comment or be unexported (golint)
    • Line 347: warning: exported function GetBlockTXLimit should have comment or be unexported (golint)
    • Line 355: warning: exported function GetMissingTxPullLimit should have comment or be unexported (golint)
    • Line 363: warning: exported function Update should have comment or be unexported (golint)
    • Line 375: warning: exported function Stringify should have comment or be unexported (golint)
    • Line 383: warning: exported function Reset should have comment or be unexported (golint)
    • wavelet/avl/tree.go
    • Line 36: warning: exported var NodeKeyPrefix should have comment or be unexported (golint)
    • Line 37: warning: exported var GCAliveMarkPrefix should have comment or be unexported (golint)
    • Line 38: warning: exported var OldRootsPrefix should have comment or be unexported (golint)
    • Line 39: warning: exported var RootKey should have comment or be unexported (golint)
    • Line 40: warning: exported var NextOldRootIndexKey should have comment or be unexported (golint)
    • Line 41: warning: exported var DiffsKeyPrefix should have comment or be unexported (golint)
    • Line 43: warning: exported const DefaultCacheSize should have comment or be unexported (golint)
    • Line 44: warning: exported const MaxWriteBatchSize should have comment or be unexported (golint)
    • Line 46: warning: exported type Tree should have comment or be unexported (golint)
    • Line 58: warning: exported function New should have comment or be unexported (golint)
    • Line 73: warning: exported method Tree.WithLRUCache should have comment or be unexported (golint)
    • Line 83: warning: exported method Tree.WithMaxWriteBatchSize should have comment or be unexported (golint)
    • Line 88: warning: exported method Tree.Insert should have comment or be unexported (golint)
    • Line 96: warning: exported method Tree.Lookup should have comment or be unexported (golint)
    • Line 104: warning: exported method Tree.Delete should have comment or be unexported (golint)
    • Line 115: warning: exported method Tree.Snapshot should have comment or be unexported (golint)
    • Line 119: warning: exported method Tree.Revert should have comment or be unexported (golint)
    • Line 123: warning: exported method Tree.Iterate should have comment or be unexported (golint)
    • Line 127: warning: exported method Tree.IterateFrom should have comment or be unexported (golint)
    • Line 135: warning: exported method Tree.IteratePrefix should have comment or be unexported (golint)
    • Line 163: warning: exported method Tree.PrintContents should have comment or be unexported (golint)
    • Line 184: warning: exported method Tree.Commit should have comment or be unexported (golint)
    • Line 282: warning: exported method Tree.Checksum should have comment or be unexported (golint)
    • Line 375: warning: exported method Tree.SetViewID should have comment or be unexported (golint)
    • Line 437: warning: exported method Tree.IterateLeafDiff should have comment or be unexported (golint)
    • Line 447: warning: exported method Tree.ApplyDiffWithUpdateNotifier should have comment or be unexported (golint)
    • Line 508: warning: exported method Tree.ApplyDiff should have comment or be unexported (golint)
    • Line 512: warning: exported type GCProfile should have comment or be unexported (golint)
    • Line 518: warning: exported method Tree.GetGCProfile should have comment or be unexported (golint)
    • Line 531: warning: exported method GCProfile.PerformFullGC should have comment or be unexported (golint)
    • wavelet/log/console.go
    • Line 100: warning: exported function FilterFor should have comment or be unexported (golint)
    • Line 108: warning: exported function NoColor should have comment or be unexported (golint)
    • wavelet/wctl/ws_callbacks.go
    • Line 10: warning: comment on exported type BalanceUpdate should be of the form "BalanceUpdate ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type GasBalanceUpdate should be of the form "GasBalanceUpdate ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type NumPagesUpdated should be of the form "NumPagesUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type OnBalanceUpdated should be of the form "OnBalanceUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type OnGasBalanceUpdated should be of the form "OnGasBalanceUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type OnNumPagesUpdated should be of the form "OnNumPagesUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type OnRewardUpdated should be of the form "OnRewardUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type OnStakeUpdated should be of the form "OnStakeUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type RewardUpdated should be of the form "RewardUpdated ..." (with optional leading article) (golint)
    • Line 10: warning: comment on exported type StakeUpdated should be of the form "StakeUpdated ..." (with optional leading article) (golint)
    • Line 48: warning: comment on exported type OnPeerJoin should be of the form "OnPeerJoin ..." (with optional leading article) (golint)
    • Line 48: warning: comment on exported type OnPeerLeave should be of the form "OnPeerLeave ..." (with optional leading article) (golint)
    • Line 48: warning: comment on exported type PeerJoin should be of the form "PeerJoin ..." (with optional leading article) (golint)
    • Line 48: warning: comment on exported type PeerLeave should be of the form "PeerLeave ..." (with optional leading article) (golint)
    • Line 48: warning: comment on exported type PeerUpdate should be of the form "PeerUpdate ..." (with optional leading article) (golint)
    • Line 64: warning: comment on exported type Finalized should be of the form "Finalized ..." (with optional leading article) (golint)
    • Line 64: warning: comment on exported type OnFinalized should be of the form "OnFinalized ..." (with optional leading article) (golint)
    • Line 64: warning: comment on exported type OnProposal should be of the form "OnProposal ..." (with optional leading article) (golint)
    • Line 64: warning: comment on exported type Proposal should be of the form "Proposal ..." (with optional leading article) (golint)
    • Line 85: warning: comment on exported type ContractGas should be of the form "ContractGas ..." (with optional leading article) (golint)
    • Line 85: warning: comment on exported type ContractLog should be of the form "ContractLog ..." (with optional leading article) (golint)
    • Line 85: warning: comment on exported type OnContractGas should be of the form "OnContractGas ..." (with optional leading article) (golint)
    • Line 85: warning: comment on exported type OnContractLog should be of the form "OnContractLog ..." (with optional leading article) (golint)
    • Line 105: warning: comment on exported type OnTxApplied should be of the form "OnTxApplied ..." (with optional leading article) (golint)
    • Line 105: warning: comment on exported type OnTxFailed should be of the form "OnTxFailed ..." (with optional leading article) (golint)
    • Line 105: warning: comment on exported type OnTxGossipError should be of the form "OnTxGossipError ..." (with optional leading article) (golint)
    • Line 105: warning: comment on exported type TxApplied should be of the form "TxApplied ..." (with optional leading article) (golint)
    • Line 105: warning: comment on exported type TxFailed should be of the form "TxFailed ..." (with optional leading article) (golint)
    • Line 105: warning: comment on exported type TxGossipError should be of the form "TxGossipError ..." (with optional leading article) (golint)
    • Line 132: warning: comment on exported type Metrics should be of the form "Metrics ..." (with optional leading article) (golint)
    • Line 132: warning: comment on exported type OnMetrics should be of the form "OnMetrics ..." (with optional leading article) (golint)
    • wavelet/lru.peerblock.go
    • Line 29: warning: exported type PeerBlockLRU should have comment or be unexported (golint)
    • Line 43: warning: exported function NewPeerBlockLRU should have comment or be unexported (golint)
    • Line 51: warning: exported method PeerBlockLRU.Load should have comment or be unexported (golint)
    • Line 65: warning: exported method PeerBlockLRU.LoadOrPut should have comment or be unexported (golint)
    • Line 90: warning: exported method PeerBlockLRU.Put should have comment or be unexported (golint)
    • Line 113: warning: exported method PeerBlockLRU.Remove should have comment or be unexported (golint)
    • wavelet/protocol.go
    • Line 36: warning: exported type Protocol should have comment or be unexported (golint)
    • Line 40: warning: exported method Protocol.Gossip should have comment or be unexported (golint)
    • Line 64: warning: exported method Protocol.Query should have comment or be unexported (golint)
    • Line 107: warning: exported method Protocol.Sync should have comment or be unexported (golint)
    • Line 212: warning: exported method Protocol.CheckOutOfSync should have comment or be unexported (golint)
    • Line 218: warning: exported method Protocol.SyncTransactions should have comment or be unexported (golint)
    • Line 276: warning: exported method Protocol.PullTransactions should have comment or be unexported (golint)
    • wavelet/snowball.go
    • Line 27: warning: exported type Snowball should have comment or be unexported (golint)
    • Line 40: warning: exported function NewSnowball should have comment or be unexported (golint)
    • Line 46: warning: exported method Snowball.Reset should have comment or be unexported (golint)
    • Line 61: warning: exported method Snowball.Tick should have comment or be unexported (golint)
    • Line 128: warning: exported method Snowball.Prefer should have comment or be unexported (golint)
    • Line 134: warning: exported method Snowball.Preferred should have comment or be unexported (golint)
    • Line 142: warning: exported method Snowball.Decided should have comment or be unexported (golint)
    • Line 150: warning: exported method Snowball.Progress should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign98%

IneffAssign detects ineffectual assignments in Go code.


misspell98%

Misspell Finds commonly misspelled English words