Preparing report...

Report for github.com/AplaProject/go-apla

A+    Excellent!    Found 131 issues across 327 files

Tweet

gofmt94%

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


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo91%

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.

    • go-apla/packages/template/funcs.go
    • Line 555: warning: cyclomatic complexity 74 of function dbfindTag() is high (> 15) (gocyclo)
    • Line 476: warning: cyclomatic complexity 16 of function dataTag() is high (> 15) (gocyclo)
    • Line 247: warning: cyclomatic complexity 16 of function forlistTag() is high (> 15) (gocyclo)
    • go-apla/packages/smart/smart.go
    • Line 969: warning: cyclomatic complexity 54 of function (*SmartContract).CallContract() is high (> 15) (gocyclo)
    • Line 675: warning: cyclomatic complexity 30 of function (*SmartContract).AccessColumns() is high (> 15) (gocyclo)
    • go-apla/packages/script/compile.go
    • Line 1094: warning: cyclomatic complexity 141 of function (*VM).compileEval() is high (> 15) (gocyclo)
    • Line 732: warning: cyclomatic complexity 30 of function (*VM).CompileBlock() is high (> 15) (gocyclo)
    • Line 960: warning: cyclomatic complexity 27 of function (*VM).getInitMap() is high (> 15) (gocyclo)
    • go-apla/packages/template/template.go
    • Line 489: warning: cyclomatic complexity 60 of function getFunc() is high (> 15) (gocyclo)
    • Line 353: warning: cyclomatic complexity 46 of function callFunc() is high (> 15) (gocyclo)
    • Line 131: warning: cyclomatic complexity 31 of function setAllAttr() is high (> 15) (gocyclo)
    • Line 757: warning: cyclomatic complexity 20 of function splitArray() is high (> 15) (gocyclo)
    • Line 223: warning: cyclomatic complexity 18 of function ifValue() is high (> 15) (gocyclo)
    • go-apla/packages/template/calculate.go
    • Line 58: warning: cyclomatic complexity 21 of function parsing() is high (> 15) (gocyclo)
    • Line 239: warning: cyclomatic complexity 20 of function calculate() is high (> 15) (gocyclo)
    • Line 135: warning: cyclomatic complexity 19 of function calcExp() is high (> 15) (gocyclo)
    • go-apla/packages/smart/funcs.go
    • Line 874: warning: cyclomatic complexity 22 of function GetOrder() is high (> 15) (gocyclo)
    • Line 1879: warning: cyclomatic complexity 21 of function GetHistoryRaw() is high (> 15) (gocyclo)
    • Line 942: warning: cyclomatic complexity 21 of function DBSelect() is high (> 15) (gocyclo)
    • Line 1252: warning: cyclomatic complexity 19 of function TableConditions() is high (> 15) (gocyclo)
    • Line 1194: warning: cyclomatic complexity 19 of function columnConditions() is high (> 15) (gocyclo)
    • Line 1673: warning: cyclomatic complexity 17 of function UpdateNodesBan() is high (> 15) (gocyclo)
    • Line 2032: warning: cyclomatic complexity 17 of function TransactionData() is high (> 15) (gocyclo)
    • go-apla/packages/converter/converter.go
    • Line 285: warning: cyclomatic complexity 27 of function BinUnmarshalBuff() is high (> 15) (gocyclo)
    • Line 381: warning: cyclomatic complexity 24 of function BinUnmarshal() is high (> 15) (gocyclo)
    • Line 226: warning: cyclomatic complexity 19 of function BinMarshal() is high (> 15) (gocyclo)
    • go-apla/packages/script/vm.go
    • Line 569: warning: cyclomatic complexity 250 of function (*RunTime).RunCode() is high (> 15) (gocyclo)
    • Line 128: warning: cyclomatic complexity 40 of function (*RunTime).callFunc() is high (> 15) (gocyclo)
    • Line 383: warning: cyclomatic complexity 19 of function valueToBool() is high (> 15) (gocyclo)

golint70%

Golint is a linter for Go source code.

    • go-apla/packages/block/block.go
    • Line 44: warning: exported var ErrIncorrectRollbackHash should have comment or be unexported (golint)
    • Line 176: warning: exported method Block.Play should have comment or be unexported (golint)
    • Line 323: warning: exported var ErrIcorrectBlockTime should have comment or be unexported (golint)
    • Line 326: warning: comment on exported method Block.Check should be of the form "Check ..." (golint)
    • Line 464: warning: exported var ErrMaxBlockSize should have comment or be unexported (golint)
    • go-apla/packages/network/protocol.go
    • Line 47: warning: exported var ErrNotAccepted should have comment or be unexported (golint)
    • Line 48: warning: exported var ErrMaxSize should have comment or be unexported (golint)
    • Line 227: warning: exported type StopNetworkRequest should have comment or be unexported (golint)
    • Line 245: warning: exported type StopNetworkResponse should have comment or be unexported (golint)
    • Line 281: warning: exported function ReadSlice should have comment or be unexported (golint)
    • Line 303: warning: exported function ReadSliceWithMaxSize should have comment or be unexported (golint)
    • Line 375: warning: exported function SendRequestType should have comment or be unexported (golint)
    • Line 380: warning: exported function ReadInt should have comment or be unexported (golint)
    • Line 391: warning: exported function WriteInt should have comment or be unexported (golint)
    • go-apla/packages/types/map.go
    • Line 54: warning: exported function ConvertMap should have comment or be unexported (golint)
    • Line 89: warning: comment on exported method Map.Set should be of the form "Set ..." (golint)
    • Line 190: warning: exported method Map.MarshalJSON should have comment or be unexported (golint)
    • go-apla/tools/desync_monitor/query/utils.go
    • Line 30: warning: exported type ConcurrentMap should have comment or be unexported (golint)
    • Line 35: warning: exported method ConcurrentMap.Set should have comment or be unexported (golint)
    • Line 41: warning: exported method ConcurrentMap.Get should have comment or be unexported (golint)
    • go-apla/packages/transaction/db.go
    • Line 32: warning: exported var ErrDuplicatedTx should have comment or be unexported (golint)
    • Line 111: warning: exported function MarkTransactionBad should have comment or be unexported (golint)
    • Line 147: warning: comment on exported function ProcessQueueTransaction should be of the form "ProcessQueueTransaction ..." (golint)
    • Line 208: warning: comment on exported function ProcessTransactionsQueue should be of the form "ProcessTransactionsQueue ..." (golint)
    • go-apla/packages/service/node_ban.go
    • Line 39: warning: exported type NodesBanService should have comment or be unexported (golint)
    • Line 105: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 181: warning: exported method NodesBanService.FilterHosts should have comment or be unexported (golint)
    • Line 199: warning: exported method NodesBanService.FilterBannedHosts should have comment or be unexported (golint)
    • go-apla/packages/utils/rand.go
    • Line 25: warning: exported type Rand should have comment or be unexported (golint)
    • Line 29: warning: exported method Rand.BytesSeed should have comment or be unexported (golint)
    • Line 35: warning: exported function NewRand should have comment or be unexported (golint)
    • go-apla/packages/api/network.go
    • Line 29: warning: exported type FullNodeJSON should have comment or be unexported (golint)
    • Line 38: warning: exported type NetworkResult should have comment or be unexported (golint)
    • Line 45: warning: exported function GetNodesJSON should have comment or be unexported (golint)
    • go-apla/packages/smart/funcs.go
    • Line 66: warning: exported var ErrNotImplementedOnOBS should have comment or be unexported (golint)
    • Line 69: warning: exported type ThrowError should have comment or be unexported (golint)
    • Line 75: warning: exported var BOM should have comment or be unexported (golint)
    • Line 90: warning: exported type TxInfo should have comment or be unexported (golint)
    • Line 96: warning: exported type TableInfo should have comment or be unexported (golint)
    • Line 101: warning: exported type FlushInfo should have comment or be unexported (golint)
    • Line 165: warning: exported method SmartContract.PopStack should have comment or be unexported (golint)
    • Line 438: warning: exported function GetTableName should have comment or be unexported (golint)
    • Line 559: warning: exported function ValidateEditContractNewValue should have comment or be unexported (golint)
    • Line 586: warning: exported function UpdateContract should have comment or be unexported (golint)
    • Line 623: warning: exported function CreateContract should have comment or be unexported (golint)
    • Line 846: warning: exported function GetColumns should have comment or be unexported (golint)
    • Line 874: warning: exported function GetOrder should have comment or be unexported (golint)
    • Line 1540: warning: don't use underscores in Go names; func parameter raw_output should be rawOutput (golint)
    • Line 1624: warning: don't use underscores in Go names; func parameter json_str should be jsonStr (golint)
    • Line 1645: warning: exported function ValidateCron should have comment or be unexported (golint)
    • Line 1650: warning: exported function UpdateCron should have comment or be unexported (golint)
    • Line 1673: warning: exported function UpdateNodesBan should have comment or be unexported (golint)
    • Line 1774: warning: exported function GetBlock should have comment or be unexported (golint)
    • Line 1879: warning: exported function GetHistoryRaw should have comment or be unexported (golint)
    • Line 1974: warning: exported function GetHistory should have comment or be unexported (golint)
    • Line 1978: warning: exported function GetHistoryRow should have comment or be unexported (golint)
    • Line 1994: warning: exported function StackOverflow should have comment or be unexported (golint)
    • Line 1998: warning: exported function UpdateNotifications should have comment or be unexported (golint)
    • Line 2014: warning: exported function UpdateRolesNotifications should have comment or be unexported (golint)
    • Line 2032: warning: exported function TransactionData should have comment or be unexported (golint)
    • Line 2105: warning: exported function TransactionInfo should have comment or be unexported (golint)
    • Line 2127: warning: exported function DelColumn should have comment or be unexported (golint)
    • Line 2194: warning: exported function DelTable should have comment or be unexported (golint)
    • Line 2256: warning: exported function FormatMoney should have comment or be unexported (golint)
    • Line 2294: warning: exported function Throw should have comment or be unexported (golint)
    • Line 2304: warning: exported function PubToHex should have comment or be unexported (golint)
    • Line 2314: warning: exported function SendExternalTransaction should have comment or be unexported (golint)
    • go-apla/packages/script/vminit.go
    • Line 75: warning: exported const TagFile should have comment (or a comment on this block) or be unexported (golint)
    • Line 530: warning: exported function MemoryUsage should have comment or be unexported (golint)
    • go-apla/packages/utils/block_time_calculator.go
    • Line 44: warning: error var TimeError should have name of the form ErrFoo (golint)
    • Line 44: warning: exported var TimeError should have comment or be unexported (golint)
    • Line 45: warning: error var DuplicateBlockError should have name of the form ErrFoo (golint)
    • Line 45: warning: exported var DuplicateBlockError should have comment or be unexported (golint)
    • Line 47: warning: exported function NewBlockTimeCalculator should have comment or be unexported (golint)
    • Line 59: warning: exported method BlockTimeCalculator.TimeToGenerate should have comment or be unexported (golint)
    • Line 77: warning: exported method BlockTimeCalculator.ValidateBlock should have comment or be unexported (golint)
    • Line 95: warning: exported method BlockTimeCalculator.SetClock should have comment or be unexported (golint)
    • go-apla/packages/transaction/transaction.go
    • Line 41: warning: exported type RawTransaction should have comment or be unexported (golint)
    • Line 49: warning: exported method RawTransaction.Unmarshall should have comment or be unexported (golint)
    • Line 81: warning: exported method RawTransaction.Type should have comment or be unexported (golint)
    • Line 85: warning: exported method RawTransaction.Hash should have comment or be unexported (golint)
    • Line 89: warning: exported method RawTransaction.Bytes should have comment or be unexported (golint)
    • Line 93: warning: exported method RawTransaction.Payload should have comment or be unexported (golint)
    • Line 97: warning: exported method RawTransaction.Signature should have comment or be unexported (golint)
    • Line 284: warning: exported method Transaction.Check should have comment or be unexported (golint)
    • Line 317: warning: exported method Transaction.Play should have comment or be unexported (golint)
    • Line 395: warning: exported method Transaction.CallOBSContract should have comment or be unexported (golint)
    • Line 439: warning: exported function GetTransaction should have comment or be unexported (golint)
    • go-apla/packages/network/tcpclient/disseminator.go
    • Line 38: warning: exported var ErrNodesUnavailable should have comment or be unexported (golint)
    • Line 41: warning: exported function SendTransactionsToHost should have comment or be unexported (golint)
    • Line 62: warning: exported function SendTransacitionsToAll should have comment or be unexported (golint)
    • Line 96: warning: exported function SendFullBlockToAll should have comment or be unexported (golint)
    • go-apla/packages/api/request.go
    • Line 40: warning: exported type Connect should have comment or be unexported (golint)
    • Line 47: warning: exported type WaitResult should have comment or be unexported (golint)
    • Line 52: warning: exported function SendRawRequest should have comment or be unexported (golint)
    • Line 85: warning: exported function SendRequest should have comment or be unexported (golint)
    • Line 94: warning: exported method Connect.SendGet should have comment or be unexported (golint)
    • Line 98: warning: exported method Connect.SendPost should have comment or be unexported (golint)
    • Line 102: warning: exported method Connect.SendMultipart should have comment or be unexported (golint)
    • Line 150: warning: exported method Connect.WaitTx should have comment or be unexported (golint)
    • Line 184: warning: exported method Connect.WaitTxList should have comment or be unexported (golint)
    • Line 223: warning: exported method Connect.PostTxResult should have comment or be unexported (golint)
    • Line 306: warning: exported method Connect.Login should have comment or be unexported (golint)
    • go-apla/packages/conf/conf.go
    • Line 75: warning: comment on exported type LogConfig should be of the form "LogConfig ..." (with optional leading article) (golint)
    • Line 94: warning: comment on exported type BanKeyConfig should be of the form "BanKeyConfig ..." (with optional leading article) (golint)
    • Line 151: warning: exported function LoadConfigToVar should have comment or be unexported (golint)
    • go-apla/packages/smart/smart.go
    • Line 54: warning: exported method Contract.Info should have comment or be unexported (golint)
    • Line 62: warning: exported const CallDelayedContract should have comment (or a comment on this block) or be unexported (golint)
    • Line 90: warning: exported function InitVM should have comment or be unexported (golint)
    • Line 149: warning: exported function VMCompileEval should have comment or be unexported (golint)
    • Line 179: warning: exported function VMEvalIf should have comment or be unexported (golint)
    • Line 183: warning: exported function VMFlushBlock should have comment or be unexported (golint)
    • Line 191: warning: exported function VMRun should have comment or be unexported (golint)
    • Line 207: warning: exported function VMGetContract should have comment or be unexported (golint)
    • Line 220: warning: exported function VMObjectExists should have comment or be unexported (golint)
    • Line 249: warning: exported function VMGetContractByID should have comment or be unexported (golint)
    • Line 312: warning: exported function FuncCallsDB should have comment or be unexported (golint)
    • Line 370: warning: receiver name contract should be consistent with previous receiver name c for Contract (golint)
    • Line 438: warning: exported function LoadSysFuncs should have comment or be unexported (golint)
    • Line 584: warning: exported function PrefixName should have comment or be unexported (golint)
    • Line 593: warning: exported method SmartContract.IsCustomTable should have comment or be unexported (golint)
    • Line 609: warning: comment on exported method SmartContract.AccessTablePerm should be of the form "AccessTablePerm ..." (golint)
    • Line 657: warning: exported method SmartContract.AccessTable should have comment or be unexported (golint)
    • Line 783: warning: exported method SmartContract.CheckAccess should have comment or be unexported (golint)
    • Line 935: warning: exported method SmartContract.GetSignedBy should have comment or be unexported (golint)
    • go-apla/packages/publisher/publisher.go
    • Line 33: warning: exported type ClientsChannels should have comment or be unexported (golint)
    • Line 38: warning: exported method ClientsChannels.Set should have comment or be unexported (golint)
    • Line 44: warning: exported method ClientsChannels.Get should have comment or be unexported (golint)
    • Line 63: warning: exported function GetHMACSign should have comment or be unexported (golint)
    • go-apla/packages/api/api.go
    • Line 40: warning: exported type Mode should have comment or be unexported (golint)
    • Line 58: warning: exported method Client.Prefix should have comment or be unexported (golint)
    • go-apla/packages/api/list.go
    • Line 46: warning: exported type TableName should have comment or be unexported (golint)
    • Line 51: warning: exported function ToTableName should have comment or be unexported (golint)
    • Line 56: warning: should replace errors.New(fmt.Sprintf(...)) with fmt.Errorf(...) (golint)
    • go-apla/packages/model/querycost/querycost.go
    • Line 23: warning: exported type QueryCosterType should have comment or be unexported (golint)
    • Line 26: warning: exported const ExplainQueryCosterType should have comment (or a comment on this block) or be unexported (golint)
    • Line 31: warning: exported type QueryCoster should have comment or be unexported (golint)
    • Line 35: warning: exported type ExplainQueryCoster should have comment or be unexported (golint)
    • Line 38: warning: exported method ExplainQueryCoster.QueryCost should have comment or be unexported (golint)
    • Line 42: warning: exported type ExplainAnalyzeQueryCoster should have comment or be unexported (golint)
    • Line 45: warning: exported method ExplainAnalyzeQueryCoster.QueryCost should have comment or be unexported (golint)
    • Line 49: warning: exported function GetQueryCoster should have comment or be unexported (golint)
    • go-apla/packages/modes/daemons.go
    • Line 24: warning: exported function GetDaemonListFactory should have comment or be unexported (golint)
    • Line 32: warning: exported type BlockchainDaemonsListsFactory should have comment or be unexported (golint)
    • Line 34: warning: exported method BlockchainDaemonsListsFactory.GetDaemonsList should have comment or be unexported (golint)
    • Line 47: warning: exported type OBSDaemonsListFactory should have comment or be unexported (golint)
    • Line 49: warning: exported method OBSDaemonsListFactory.GetDaemonsList should have comment or be unexported (golint)
    • go-apla/packages/utils/utils.go
    • Line 54: warning: exported var ErrBlockSize should have comment or be unexported (golint)
    • Line 81: warning: exported method BlockData.ForSha should have comment or be unexported (golint)
    • Line 426: warning: exported function GetNodePrivateKey should have comment or be unexported (golint)
    • Line 440: warning: exported function GetHostPort should have comment or be unexported (golint)
    • Line 447: warning: exported function BuildBlockTimeCalculator should have comment or be unexported (golint)
    • Line 472: warning: exported function CreateDirIfNotExists should have comment or be unexported (golint)
    • Line 482: warning: exported function LockOrDie should have comment or be unexported (golint)
    • Line 496: warning: exported function ShuffleSlice should have comment or be unexported (golint)
    • Line 503: warning: exported function UUID should have comment or be unexported (golint)
    • Line 518: warning: exported function StringInSlice should have comment or be unexported (golint)
    • go-apla/packages/model/tables.go
    • Line 42: warning: exported type Permissions should have comment or be unexported (golint)
    • Line 50: warning: exported method Permissions.Value should have comment or be unexported (golint)
    • Line 57: warning: exported method Permissions.Scan should have comment or be unexported (golint)
    • Line 152: warning: exported method Table.Count should have comment or be unexported (golint)
    • Line 185: warning: exported function GetTableQuery should have comment or be unexported (golint)
    • go-apla/packages/conf/syspar/syspar.go
    • Line 192: warning: exported function GetNodes should have comment or be unexported (golint)
    • Line 238: warning: exported function GetNumberOfNodesFromDB should have comment or be unexported (golint)
    • Line 263: warning: exported function GetNodeByHost should have comment or be unexported (golint)
    • Line 366: warning: comment on exported function GetMaxForsignSize should be of the form "GetMaxForsignSize ..." (golint)
    • Line 396: warning: exported function IsTestMode should have comment or be unexported (golint)
    • Line 400: warning: exported function GetIncorrectBlocksPerDay should have comment or be unexported (golint)
    • Line 404: warning: exported function GetNodeBanTime should have comment or be unexported (golint)
    • Line 408: warning: exported function GetLocalNodeBanTime should have comment or be unexported (golint)
    • Line 486: warning: exported function GetMaxCost should have comment or be unexported (golint)
    • go-apla/packages/protocols/generation-queue.go
    • Line 36: warning: error var WrongNodePositionError should have name of the form ErrFoo (golint)
    • Line 36: warning: exported var WrongNodePositionError should have comment or be unexported (golint)
    • Line 37: warning: error var TimeError should have name of the form ErrFoo (golint)
    • Line 38: warning: error var DuplicateBlockError should have name of the form ErrFoo (golint)
    • Line 41: warning: exported type BlockTimeCounter should have comment or be unexported (golint)
    • go-apla/packages/types/mode_interfaces.go
    • Line 35: warning: exported type DaemonListFactory should have comment or be unexported (golint)
    • Line 39: warning: exported type EcosystemLookupGetter should have comment or be unexported (golint)
    • Line 43: warning: exported type EcosystemIDValidator should have comment or be unexported (golint)
    • Line 52: warning: exported type EcosystemNameGetter should have comment or be unexported (golint)
    • go-apla/packages/service/node_relevance.go
    • Line 34: warning: exported type NodeRelevanceService should have comment or be unexported (golint)
    • Line 39: warning: exported function NewNodeRelevanceService should have comment or be unexported (golint)
    • Line 75: warning: exported function NodeDoneUpdatingBlockchain should have comment or be unexported (golint)
    • go-apla/packages/smart/queryBuilder/query_builder.go
    • Line 17: warning: don't use MixedCaps in package name; queryBuilder should be querybuilder (golint)
    • Line 41: warning: exported var ErrNow should have comment or be unexported (golint)
    • Line 49: warning: exported type NextIDGetter should have comment or be unexported (golint)
    • Line 53: warning: exported type SQLQueryBuilder should have comment or be unexported (golint)
    • Line 110: warning: exported method SQLQueryBuilder.SetTableID should have comment or be unexported (golint)
    • Line 114: warning: exported method SQLQueryBuilder.TableID should have comment or be unexported (golint)
    • Line 118: warning: exported method SQLQueryBuilder.GetSelectExpr should have comment or be unexported (golint)
    • Line 137: warning: exported method SQLQueryBuilder.GetSQLSelectFieldsExpr should have comment or be unexported (golint)
    • Line 145: warning: should omit 2nd value from range; this loop is equivalent to `for i := range ...` (golint)
    • Line 153: warning: exported method SQLQueryBuilder.GetSQLWhereExpr should have comment or be unexported (golint)
    • Line 181: warning: exported method SQLQueryBuilder.GetSQLUpdateExpr should have comment or be unexported (golint)
    • Line 240: warning: exported method SQLQueryBuilder.GetSQLInsertQuery should have comment or be unexported (golint)
    • Line 300: warning: exported method SQLQueryBuilder.GenerateRollBackInfoString should have comment or be unexported (golint)
    • Line 435: warning: exported method SQLQueryBuilder.GetEcosystem should have comment or be unexported (golint)
    • Line 439: warning: exported method SQLQueryBuilder.IsEmptyWhere should have comment or be unexported (golint)
    • go-apla/packages/smart/queryBuilder/where.go
    • Line 17: warning: don't use MixedCaps in package name; queryBuilder should be querybuilder (golint)
    • Line 33: warning: exported function PrepareWhere should have comment or be unexported (golint)
    • Line 66: warning: exported function GetWhere should have comment or be unexported (golint)
    • go-apla/packages/model/notification.go
    • Line 28: warning: exported const NotificationTypeSingle should have comment (or a comment on this block) or be unexported (golint)
    • Line 61: warning: exported type NotificationsCount should have comment or be unexported (golint)
    • go-apla/packages/smart/datetime.go
    • Line 35: warning: exported function BlockTime should have comment or be unexported (golint)
    • Line 46: warning: exported function DateTime should have comment or be unexported (golint)
    • Line 50: warning: exported function DateTimeLocation should have comment or be unexported (golint)
    • Line 59: warning: exported function UnixDateTime should have comment or be unexported (golint)
    • Line 67: warning: exported function UnixDateTimeLocation should have comment or be unexported (golint)
    • go-apla/packages/modes/mode_fabrics.go
    • Line 38: warning: exported type BCEcosysLookupGetter should have comment or be unexported (golint)
    • Line 40: warning: exported method BCEcosysLookupGetter.GetEcosystemLookup should have comment or be unexported (golint)
    • Line 44: warning: exported type OBSEcosystemLookupGetter should have comment or be unexported (golint)
    • Line 46: warning: exported method OBSEcosystemLookupGetter.GetEcosystemLookup should have comment or be unexported (golint)
    • Line 50: warning: exported function BuildEcosystemLookupGetter should have comment or be unexported (golint)
    • Line 58: warning: exported type BCEcosysIDValidator should have comment or be unexported (golint)
    • Line 62: warning: exported method BCEcosysIDValidator.Validate should have comment or be unexported (golint)
    • Line 81: warning: exported type OBSEcosysIDValidator should have comment or be unexported (golint)
    • Line 83: warning: exported method OBSEcosysIDValidator.Validate should have comment or be unexported (golint)
    • Line 87: warning: exported function GetEcosystemIDValidator should have comment or be unexported (golint)
    • Line 95: warning: exported type BCEcosystemNameGetter should have comment or be unexported (golint)
    • Line 97: warning: exported method BCEcosystemNameGetter.GetEcosystemName should have comment or be unexported (golint)
    • Line 113: warning: exported type OBSEcosystemNameGetter should have comment or be unexported (golint)
    • Line 115: warning: exported method OBSEcosystemNameGetter.GetEcosystemName should have comment or be unexported (golint)
    • Line 119: warning: exported function BuildEcosystemNameGetter should have comment or be unexported (golint)
    • Line 215: warning: exported function GetDaemonLoader should have comment or be unexported (golint)
    • go-apla/packages/obsmanager/manager.go
    • Line 65: warning: exported var Manager should have comment or be unexported (golint)
    • Line 187: warning: exported method OBSManager.ListProcessWithPorts should have comment or be unexported (golint)
    • Line 323: warning: exported function InitOBSManager should have comment or be unexported (golint)
    • go-apla/packages/transaction/custom/stop_network.go
    • Line 34: warning: exported var ErrNetworkStopping should have comment or be unexported (golint)
    • Line 37: warning: exported type StopNetworkTransaction should have comment or be unexported (golint)
    • Line 44: warning: exported method StopNetworkTransaction.Init should have comment or be unexported (golint)
    • Line 48: warning: exported method StopNetworkTransaction.Validate should have comment or be unexported (golint)
    • Line 77: warning: exported method StopNetworkTransaction.Action should have comment or be unexported (golint)
    • Line 90: warning: exported method StopNetworkTransaction.Rollback should have comment or be unexported (golint)
    • Line 94: warning: exported method StopNetworkTransaction.Header should have comment or be unexported (golint)
    • go-apla/packages/notificator/queue.go
    • Line 23: warning: exported type Queue should have comment or be unexported (golint)
    • Line 28: warning: exported type Accounts should have comment or be unexported (golint)
    • Line 33: warning: exported type Roles should have comment or be unexported (golint)
    • Line 38: warning: exported method Queue.Size should have comment or be unexported (golint)
    • Line 42: warning: exported method Queue.AddAccounts should have comment or be unexported (golint)
    • Line 49: warning: exported method Queue.AddRoles should have comment or be unexported (golint)
    • Line 56: warning: exported method Queue.Send should have comment or be unexported (golint)
    • Line 66: warning: exported function NewQueue should have comment or be unexported (golint)
    • go-apla/packages/model/db.go
    • Line 49: warning: exported type KeyTableChecker should have comment or be unexported (golint)
    • Line 51: warning: exported method KeyTableChecker.IsKeyTable should have comment or be unexported (golint)
    • Line 56: warning: exported type NextIDGetter should have comment or be unexported (golint)
    • Line 60: warning: exported method NextIDGetter.GetNextID should have comment or be unexported (golint)
    • Line 274: warning: exported type RawTransaction should have comment or be unexported (golint)
    • Line 330: warning: exported function DataTypeToColumnType should have comment or be unexported (golint)
    • go-apla/packages/api/block.go
    • Line 94: warning: exported type TxInfo should have comment or be unexported (golint)
    • Line 171: warning: exported type TxDetailedInfo should have comment or be unexported (golint)
    • Line 180: warning: exported type BlockHeaderInfo should have comment or be unexported (golint)
    • Line 191: warning: exported type BlockDetailedInfo should have comment or be unexported (golint)
    • go-apla/packages/statsd/statsd.go
    • Line 27: warning: exported const Count should have comment (or a comment on this block) or be unexported (golint)
    • Line 31: warning: exported var Client should have comment or be unexported (golint)
    • Line 33: warning: exported function Init should have comment or be unexported (golint)
    • Line 42: warning: exported function Close should have comment or be unexported (golint)
    • Line 48: warning: exported function APIRouteCounterName should have comment or be unexported (golint)
    • Line 53: warning: exported function DaemonCounterName should have comment or be unexported (golint)
    • go-apla/packages/utils/cert.go
    • Line 30: warning: exported type Cert should have comment or be unexported (golint)
    • Line 34: warning: exported method Cert.Validate should have comment or be unexported (golint)
    • Line 47: warning: exported method Cert.EqualBytes should have comment or be unexported (golint)
    • Line 76: warning: exported function ParseCert should have comment or be unexported (golint)
    • go-apla/packages/script/lex.go
    • Line 121: warning: exported const DtBool should have comment (or a comment on this block) or be unexported (golint)
    • Line 378: warning: exported function OriginalToString should have comment or be unexported (golint)
    • go-apla/packages/utils/ban_error.go
    • Line 23: warning: exported type BanError should have comment or be unexported (golint)
    • Line 31: warning: exported function WithBan should have comment or be unexported (golint)
    • Line 37: warning: exported function IsBanError should have comment or be unexported (golint)
    • go-apla/packages/service/node_paused.go
    • Line 22: warning: exported const NoPause should have comment (or a comment on this block) or be unexported (golint)
    • Line 31: warning: exported type PauseType should have comment or be unexported (golint)
    • Line 33: warning: exported type NodePaused should have comment or be unexported (golint)
    • Line 39: warning: exported method NodePaused.Set should have comment or be unexported (golint)
    • Line 46: warning: exported method NodePaused.Unset should have comment or be unexported (golint)
    • Line 53: warning: exported method NodePaused.Get should have comment or be unexported (golint)
    • Line 60: warning: exported method NodePaused.IsSet should have comment or be unexported (golint)
    • Line 67: warning: exported function IsNodePaused should have comment or be unexported (golint)
    • Line 71: warning: exported function PauseNodeActivity should have comment or be unexported (golint)
    • Line 75: warning: exported function NodePauseType should have comment or be unexported (golint)
    • go-apla/packages/script/vm.go
    • Line 48: warning: exported const File should have comment (or a comment on this block) or be unexported (golint)
    • Line 83: warning: exported var ErrMemoryLimit should have comment or be unexported (golint)
    • go-apla/packages/smart/smart_p.go
    • Line 330: warning: comment on exported function CreateLanguage should be of the form "CreateLanguage ..." (golint)
    • Line 640: warning: comment on exported function JSONEncodeIndent should be of the form "JSONEncodeIndent ..." (golint)
    • go-apla/packages/smart/sysrollback.go
    • Line 32: warning: exported const SysName should have comment (or a comment on this block) or be unexported (golint)
    • Line 35: warning: exported type SysRollData should have comment or be unexported (golint)
    • Line 43: warning: exported function SysRollback should have comment or be unexported (golint)
    • Line 95: warning: exported function SysRollbackNewContract should have comment or be unexported (golint)
    • go-apla/packages/converter/converter.go
    • Line 41: warning: exported var ErrSliceSize should have comment or be unexported (golint)
    • Line 43: warning: exported var FirstEcosystemTables should have comment or be unexported (golint)
    • Line 72: warning: exported function EncodeLenInt64 should have comment or be unexported (golint)
    • Line 82: warning: exported function EncodeLenInt64InPlace should have comment or be unexported (golint)
    • Line 93: warning: exported function EncodeLenByte should have comment or be unexported (golint)
    • Line 136: warning: exported function DecodeLenInt64Buf should have comment or be unexported (golint)
    • Line 185: warning: exported function DecodeLengthBuf should have comment or be unexported (golint)
    • Line 214: warning: exported function DecodeBytesBuf should have comment or be unexported (golint)
    • Line 285: warning: exported function BinUnmarshalBuff should have comment or be unexported (golint)
    • Line 488: warning: exported function EscapeSQL should have comment or be unexported (golint)
    • Line 642: 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 881: warning: exported function ParseTable should have comment or be unexported (golint)
    • Line 894: warning: exported function IsByteColumn should have comment or be unexported (golint)
    • Line 1032: warning: exported function Round should have comment or be unexported (golint)
    • Line 1090: warning: exported function Int64ToDateStr should have comment or be unexported (golint)
    • go-apla/packages/model/contract.go
    • Line 60: warning: exported method Contract.GetListByEcosystem should have comment or be unexported (golint)
    • Line 68: warning: exported method Contract.CountByEcosystem should have comment or be unexported (golint)
    • Line 73: warning: exported method Contract.ToMap should have comment or be unexported (golint)
    • go-apla/tools/desync_monitor/query/query.go
    • Line 27: warning: exported type MaxBlockID should have comment or be unexported (golint)
    • Line 40: warning: exported function MaxBlockIDs should have comment or be unexported (golint)
    • Line 68: warning: exported function BlockInfo should have comment or be unexported (golint)
    • go-apla/packages/api/route.go
    • Line 28: warning: exported type Router should have comment or be unexported (golint)
    • Line 33: warning: exported method Router.GetAPI should have comment or be unexported (golint)
    • Line 37: warning: exported method Router.GetAPIVersion should have comment or be unexported (golint)
    • Line 41: warning: exported method Router.NewVersion should have comment or be unexported (golint)
    • Line 47: warning: comment on exported method Mode.SetCommonRoutes should be of the form "SetCommonRoutes ..." (golint)
    • Line 94: warning: exported method Mode.SetBlockchainRoutes should have comment or be unexported (golint)
    • Line 114: warning: exported function NewRouter should have comment or be unexported (golint)
    • Line 127: warning: exported function WithCors should have comment or be unexported (golint)
    • go-apla/packages/consts/consts.go
    • Line 26: warning: exported const BV_ROLLBACK_HASH should have comment or be unexported (golint)
    • Line 27: warning: exported const BV_INCLUDE_ROLLBACK_HASH should have comment or be unexported (golint)
    • Line 92: warning: exported const AvailableBCGap should have comment or be unexported (golint)
    • Line 94: warning: exported const DefaultNodesConnectDelay should have comment or be unexported (golint)
    • Line 96: warning: exported const MaxTXAttempt should have comment or be unexported (golint)
    • Line 99: warning: exported const TxTypeFirstBlock should have comment (or a comment on this block) or be unexported (golint)
    • Line 173: warning: exported const TokenEcosystem should have comment (or a comment on this block) or be unexported (golint)
    • Line 183: warning: comment on exported const GuestPublic should be of the form "GuestPublic ..." (golint)
    • go-apla/packages/model/querycost/formula.go
    • Line 30: warning: exported const Select should have comment (or a comment on this block) or be unexported (golint)
    • Line 44: warning: exported const SelectCost should have comment (or a comment on this block) or be unexported (golint)
    • Line 55: warning: error var FromStatementMissingError should have name of the form ErrFoo (golint)
    • Line 55: warning: exported var FromStatementMissingError should have comment or be unexported (golint)
    • Line 56: warning: error var DeleteMinimumThreeFieldsError should have name of the form ErrFoo (golint)
    • Line 56: warning: exported var DeleteMinimumThreeFieldsError should have comment or be unexported (golint)
    • Line 57: warning: error var SetStatementMissingError should have name of the form ErrFoo (golint)
    • Line 57: warning: exported var SetStatementMissingError should have comment or be unexported (golint)
    • Line 58: warning: error var IntoStatementMissingError should have name of the form ErrFoo (golint)
    • Line 58: warning: exported var IntoStatementMissingError should have comment or be unexported (golint)
    • Line 59: warning: error var UnknownQueryTypeError should have name of the form ErrFoo (golint)
    • Line 59: warning: exported var UnknownQueryTypeError should have comment or be unexported (golint)
    • Line 71: warning: exported type TableRowCounter should have comment or be unexported (golint)
    • Line 75: warning: exported type DBCountQueryRowCounter should have comment or be unexported (golint)
    • Line 78: warning: exported method DBCountQueryRowCounter.RowCount should have comment or be unexported (golint)
    • Line 86: warning: exported type FormulaQueryCoster should have comment or be unexported (golint)
    • Line 90: warning: exported type QueryType should have comment or be unexported (golint)
    • Line 95: warning: exported type SelectQueryType should have comment or be unexported (golint)
    • Line 97: warning: exported method SelectQueryType.GetTableName should have comment or be unexported (golint)
    • Line 106: warning: exported method SelectQueryType.CalculateCost should have comment or be unexported (golint)
    • Line 110: warning: exported type UpdateQueryType should have comment or be unexported (golint)
    • Line 112: warning: exported method UpdateQueryType.GetTableName should have comment or be unexported (golint)
    • Line 121: warning: exported method UpdateQueryType.CalculateCost should have comment or be unexported (golint)
    • Line 125: warning: exported type InsertQueryType should have comment or be unexported (golint)
    • Line 127: warning: exported method InsertQueryType.GetTableName should have comment or be unexported (golint)
    • Line 144: warning: exported method InsertQueryType.CalculateCost should have comment or be unexported (golint)
    • Line 148: warning: exported type DeleteQueryType should have comment or be unexported (golint)
    • Line 150: warning: exported method DeleteQueryType.GetTableName should have comment or be unexported (golint)
    • Line 163: warning: exported method DeleteQueryType.CalculateCost should have comment or be unexported (golint)
    • Line 167: warning: exported method FormulaQueryCoster.QueryCost should have comment or be unexported (golint)
    • go-apla/packages/modes/client_tx.go
    • Line 35: warning: exported var ErrDiffKey should have comment or be unexported (golint)
    • Line 64: warning: exported type ObsTxPreprocessor should have comment or be unexported (golint)
    • Line 66: warning: exported method ObsTxPreprocessor.ProcessClientTranstaction should have comment or be unexported (golint)
    • Line 101: warning: exported function GetClientTxPreprocessor should have comment or be unexported (golint)
    • go-apla/tools/desync_monitor/config/config.go
    • Line 23: warning: exported type Daemon should have comment or be unexported (golint)
    • Line 28: warning: exported type AlertMessage should have comment or be unexported (golint)
    • Line 34: warning: exported type Smtp should have comment or be unexported (golint)
    • Line 41: warning: exported type Config 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.


misspell97%

Misspell Finds commonly misspelled English words

    • go-apla/packages/template/template_test.go
    • Line 380: warning: "satelite" is a misspelling of "satellite" (misspell)
    • Line 381: warning: "satelite" is a misspelling of "satellite" (misspell)
    • Line 382: warning: "satelite" is a misspelling of "satellite" (misspell)
    • Line 383: warning: "satelite" is a misspelling of "satellite" (misspell)
    • Line 384: warning: "satelite" is a misspelling of "satellite" (misspell)
    • Line 385: warning: "satelite" is a misspelling of "satellite" (misspell)