Preparing report...

Report for github.com/OpenBazaar/spvwallet

A    Great!    Found 32 issues across 48 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!


golint45%

Golint is a linter for Go source code.

    • spvwallet/db/utxo.go
    • Line 14: warning: exported type UtxoDB should have comment or be unexported (golint)
    • Line 19: warning: exported method UtxoDB.Put should have comment or be unexported (golint)
    • Line 43: warning: exported method UtxoDB.GetAll should have comment or be unexported (golint)
    • Line 93: warning: exported method UtxoDB.SetWatchOnly should have comment or be unexported (golint)
    • Line 104: warning: exported method UtxoDB.Delete should have comment or be unexported (golint)
    • spvwallet/checkpoints.go
    • Line 10: warning: exported type Checkpoint should have comment or be unexported (golint)
    • Line 126: warning: exported function GetCheckpoint should have comment or be unexported (golint)
    • spvwallet/fees.go
    • Line 21: warning: exported type Fees should have comment or be unexported (golint)
    • Line 27: warning: exported type FeeProvider should have comment or be unexported (golint)
    • Line 39: warning: exported function NewFeeProvider should have comment or be unexported (golint)
    • Line 58: warning: exported method FeeProvider.GetFeePerByte should have comment or be unexported (golint)
    • spvwallet/keys.go
    • Line 10: warning: exported const LOOKAHEADWINDOW should have comment or be unexported (golint)
    • Line 12: warning: exported type KeyManager should have comment or be unexported (golint)
    • Line 20: warning: exported function NewKeyManager should have comment or be unexported (golint)
    • Line 37: warning: comment on exported function Bip44Derivation should be of the form "Bip44Derivation ..." (golint)
    • Line 67: warning: exported method KeyManager.GetCurrentKey should have comment or be unexported (golint)
    • Line 78: warning: exported method KeyManager.GetFreshKey should have comment or be unexported (golint)
    • Line 108: warning: exported method KeyManager.GetKeys should have comment or be unexported (golint)
    • Line 124: warning: exported method KeyManager.GetKeyForScript should have comment or be unexported (golint)
    • Line 144: warning: comment on exported method KeyManager.MarkKeyAsUsed should be of the form "MarkKeyAsUsed ..." (golint)
    • spvwallet/cli/cli.go
    • Line 25: warning: exported function SetupCli should have comment or be unexported (golint)
    • Line 306: warning: exported type Stop should have comment or be unexported (golint)
    • Line 310: warning: exported method Stop.Execute should have comment or be unexported (golint)
    • Line 320: warning: exported type CurrentAddress should have comment or be unexported (golint)
    • Line 324: warning: exported method CurrentAddress.Execute should have comment or be unexported (golint)
    • Line 351: warning: exported type NewAddress should have comment or be unexported (golint)
    • Line 355: warning: exported method NewAddress.Execute should have comment or be unexported (golint)
    • Line 382: warning: exported type ChainTip should have comment or be unexported (golint)
    • Line 386: warning: exported method ChainTip.Execute should have comment or be unexported (golint)
    • Line 400: warning: exported type Balance should have comment or be unexported (golint)
    • Line 404: warning: exported method Balance.Execute should have comment or be unexported (golint)
    • Line 426: warning: exported type MasterPrivateKey should have comment or be unexported (golint)
    • Line 430: warning: exported method MasterPrivateKey.Execute should have comment or be unexported (golint)
    • Line 444: warning: exported type MasterPublicKey should have comment or be unexported (golint)
    • Line 448: warning: exported method MasterPublicKey.Execute should have comment or be unexported (golint)
    • Line 462: warning: exported type HasKey should have comment or be unexported (golint)
    • Line 466: warning: exported method HasKey.Execute should have comment or be unexported (golint)
    • Line 483: warning: exported type Transactions should have comment or be unexported (golint)
    • Line 487: warning: exported method Transactions.Execute should have comment or be unexported (golint)
    • Line 552: warning: exported type GetTransaction should have comment or be unexported (golint)
    • Line 556: warning: exported method GetTransaction.Execute should have comment or be unexported (golint)
    • Line 620: warning: exported type GetFeePerByte should have comment or be unexported (golint)
    • Line 624: warning: exported method GetFeePerByte.Execute should have comment or be unexported (golint)
    • Line 653: warning: exported type Spend should have comment or be unexported (golint)
    • Line 657: warning: exported method Spend.Execute should have comment or be unexported (golint)
    • Line 693: warning: exported type BumpFee should have comment or be unexported (golint)
    • Line 697: warning: exported method BumpFee.Execute should have comment or be unexported (golint)
    • Line 714: warning: exported type Peers should have comment or be unexported (golint)
    • Line 718: warning: exported method Peers.Execute should have comment or be unexported (golint)
    • Line 761: warning: exported type AddWatchedAddress should have comment or be unexported (golint)
    • Line 765: warning: exported method AddWatchedAddress.Execute should have comment or be unexported (golint)
    • Line 778: warning: exported type GetConfirmations should have comment or be unexported (golint)
    • Line 782: warning: exported method GetConfirmations.Execute should have comment or be unexported (golint)
    • Line 799: warning: exported type SweepAddress should have comment or be unexported (golint)
    • Line 803: warning: exported method SweepAddress.Execute should have comment or be unexported (golint)
    • Line 824: warning: exported type ReSyncBlockchain should have comment or be unexported (golint)
    • Line 828: warning: exported method ReSyncBlockchain.Execute should have comment or be unexported (golint)
    • Line 837: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 854: warning: exported type CreateMultisigSignature should have comment or be unexported (golint)
    • Line 858: warning: exported method CreateMultisigSignature.Execute should have comment or be unexported (golint)
    • Line 892: warning: exported type Multisign should have comment or be unexported (golint)
    • Line 896: warning: exported method Multisign.Execute should have comment or be unexported (golint)
    • Line 924: warning: exported type EstimateFee should have comment or be unexported (golint)
    • Line 928: warning: exported method EstimateFee.Execute should have comment or be unexported (golint)
    • Line 949: warning: exported type DumpHeaders should have comment or be unexported (golint)
    • Line 953: warning: exported method DumpHeaders.Execute should have comment or be unexported (golint)
    • Line 982: warning: exported type GetKey should have comment or be unexported (golint)
    • Line 986: warning: exported method GetKey.Execute should have comment or be unexported (golint)
    • Line 1003: warning: exported type ListAddresses should have comment or be unexported (golint)
    • Line 1007: warning: exported method ListAddresses.Execute should have comment or be unexported (golint)
    • Line 1023: warning: exported type ListKeys should have comment or be unexported (golint)
    • Line 1027: warning: exported method ListKeys.Execute should have comment or be unexported (golint)
    • spvwallet/db/watched_scripts.go
    • Line 9: warning: exported type WatchedScriptsDB should have comment or be unexported (golint)
    • Line 14: warning: exported method WatchedScriptsDB.Put should have comment or be unexported (golint)
    • Line 33: warning: exported method WatchedScriptsDB.PutAll should have comment or be unexported (golint)
    • Line 42: warning: exported method WatchedScriptsDB.GetAll should have comment or be unexported (golint)
    • Line 66: warning: exported method WatchedScriptsDB.Delete should have comment or be unexported (golint)
    • spvwallet/blockchain.go
    • Line 31: warning: error var OrphanHeaderError should have name of the form ErrFoo (golint)
    • Line 31: warning: exported var OrphanHeaderError should have comment or be unexported (golint)
    • Line 33: warning: comment on exported type Blockchain should be of the form "Blockchain ..." (with optional leading article) (golint)
    • Line 41: warning: exported function NewBlockchain should have comment or be unexported (golint)
    • Line 71: warning: exported method Blockchain.CommitHeader should have comment or be unexported (golint)
    • Line 134: warning: exported method Blockchain.CheckHeader should have comment or be unexported (golint)
    • Line 178: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 207: warning: exported method Blockchain.CalcMedianTimePast should have comment or be unexported (golint)
    • Line 227: warning: exported method Blockchain.GetEpoch should have comment or be unexported (golint)
    • Line 242: warning: exported method Blockchain.GetNPrevBlockHashes should have comment or be unexported (golint)
    • Line 261: warning: exported method Blockchain.GetBlockLocator should have comment or be unexported (golint)
    • Line 388: warning: exported method Blockchain.BestBlock should have comment or be unexported (golint)
    • Line 396: warning: exported method Blockchain.GetHeader should have comment or be unexported (golint)
    • Line 404: warning: exported method Blockchain.Close should have comment or be unexported (golint)
    • spvwallet/config.go
    • Line 17: warning: exported type Config should have comment or be unexported (golint)
    • Line 64: warning: exported function NewDefaultConfig should have comment or be unexported (golint)
    • spvwallet/eight333.go
    • Line 63: warning: exported type WireServiceConfig should have comment or be unexported (golint)
    • Line 82: warning: exported type WireService should have comment or be unexported (golint)
    • Line 98: warning: exported function NewWireService should have comment or be unexported (golint)
    • Line 113: warning: exported method WireService.MsgChan should have comment or be unexported (golint)
    • Line 117: warning: comment on exported method WireService.Start should be of the form "Start ..." (golint)
    • Line 155: warning: exported method WireService.Stop should have comment or be unexported (golint)
    • Line 160: warning: exported method WireService.Resync should have comment or be unexported (golint)
    • Line 278: warning: exported method WireService.Current should have comment or be unexported (golint)
    • Line 686: warning: exported method WireService.Rebroadcast should have comment or be unexported (golint)
    • spvwallet/mock.go
    • Line 17: warning: exported type MockDatastore should have comment or be unexported (golint)
    • Line 25: warning: exported method MockDatastore.Keys should have comment or be unexported (golint)
    • Line 29: warning: exported method MockDatastore.Utxos should have comment or be unexported (golint)
    • Line 33: warning: exported method MockDatastore.Stxos should have comment or be unexported (golint)
    • Line 37: warning: exported method MockDatastore.Txns should have comment or be unexported (golint)
    • Line 41: warning: exported method MockDatastore.WatchedScripts should have comment or be unexported (golint)
    • Line 316: warning: exported function TestUtxo_IsEqual should have comment or be unexported (golint)
    • Line 316: warning: don't use underscores in Go names; func TestUtxo_IsEqual should be TestUtxoIsEqual (golint)
    • Line 364: warning: exported function TestStxo_IsEqual should have comment or be unexported (golint)
    • Line 364: warning: don't use underscores in Go names; func TestStxo_IsEqual should be TestStxoIsEqual (golint)
    • spvwallet/api/rpc.go
    • Line 22: warning: exported const Addr should have comment or be unexported (golint)
    • Line 28: warning: exported function ServeAPI should have comment or be unexported (golint)
    • Line 575: warning: exported type HeaderWriter should have comment or be unexported (golint)
    • spvwallet/db/database.go
    • Line 6: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • Line 12: warning: comment on exported type SQLiteDatastore should be of the form "SQLiteDatastore ..." (with optional leading article) (golint)
    • Line 24: warning: exported function Create should have comment or be unexported (golint)
    • Line 60: warning: exported method SQLiteDatastore.Keys should have comment or be unexported (golint)
    • Line 63: warning: exported method SQLiteDatastore.Utxos should have comment or be unexported (golint)
    • Line 66: warning: exported method SQLiteDatastore.Stxos should have comment or be unexported (golint)
    • Line 69: warning: exported method SQLiteDatastore.Txns should have comment or be unexported (golint)
    • Line 72: warning: exported method SQLiteDatastore.WatchedScripts should have comment or be unexported (golint)
    • Line 93: warning: exported method SQLiteDatastore.GetMnemonic should have comment or be unexported (golint)
    • Line 93: warning: receiver name s should be consistent with previous receiver name db for SQLiteDatastore (golint)
    • Line 106: warning: exported method SQLiteDatastore.SetMnemonic should have comment or be unexported (golint)
    • Line 106: warning: receiver name s should be consistent with previous receiver name db for SQLiteDatastore (golint)
    • Line 127: warning: exported method SQLiteDatastore.GetCreationDate should have comment or be unexported (golint)
    • Line 127: warning: receiver name s should be consistent with previous receiver name db for SQLiteDatastore (golint)
    • Line 144: warning: exported method SQLiteDatastore.SetCreationDate should have comment or be unexported (golint)
    • Line 144: warning: receiver name s should be consistent with previous receiver name db for SQLiteDatastore (golint)
    • spvwallet/db/keys.go
    • Line 15: warning: exported type KeysDB should have comment or be unexported (golint)
    • Line 20: warning: exported method KeysDB.Put should have comment or be unexported (golint)
    • Line 38: warning: exported method KeysDB.ImportKey should have comment or be unexported (golint)
    • Line 57: warning: exported method KeysDB.MarkKeyAsUsed should have comment or be unexported (golint)
    • Line 79: warning: exported method KeysDB.GetLastKeyIndex should have comment or be unexported (golint)
    • Line 101: warning: exported method KeysDB.GetPathForKey should have comment or be unexported (golint)
    • Line 120: warning: exported method KeysDB.GetKey should have comment or be unexported (golint)
    • Line 139: warning: exported method KeysDB.GetImported should have comment or be unexported (golint)
    • Line 165: warning: exported method KeysDB.GetUnused should have comment or be unexported (golint)
    • Line 186: warning: exported method KeysDB.GetAll should have comment or be unexported (golint)
    • Line 212: warning: exported method KeysDB.GetLookaheadWindows should have comment or be unexported (golint)
    • spvwallet/headers.go
    • Line 22: warning: exported const MAX_HEADERS should have comment (or a comment on this block) or be unexported (golint)
    • Line 26: warning: comment on exported type Headers should be of the form "Headers ..." (with optional leading article) (golint)
    • Line 58: warning: exported type StoredHeader should have comment or be unexported (golint)
    • Line 74: warning: exported var BKTHeaders should have comment or be unexported (golint)
    • Line 79: warning: exported function NewHeaderDB should have comment or be unexported (golint)
    • Line 109: warning: exported method HeaderDB.Put should have comment or be unexported (golint)
    • Line 164: warning: exported method HeaderDB.Prune should have comment or be unexported (golint)
    • Line 208: warning: exported method HeaderDB.DeleteAfter should have comment or be unexported (golint)
    • Line 237: warning: exported method HeaderDB.GetPreviousHeader should have comment or be unexported (golint)
    • Line 242: warning: exported method HeaderDB.GetHeader should have comment or be unexported (golint)
    • Line 267: warning: exported method HeaderDB.GetBestHeader should have comment or be unexported (golint)
    • Line 292: warning: exported method HeaderDB.Height should have comment or be unexported (golint)
    • Line 314: warning: exported method HeaderDB.Print should have comment or be unexported (golint)
    • Line 369: warning: exported method HeaderDB.Close should have comment or be unexported (golint)
    • Line 424: warning: exported type HeaderCache should have comment or be unexported (golint)
    • Line 438: warning: exported method HeaderCache.Set should have comment or be unexported (golint)
    • Line 448: warning: exported method HeaderCache.Get should have comment or be unexported (golint)
    • spvwallet/peers.go
    • Line 31: warning: exported const MaxGetAddressAttempts should have comment or be unexported (golint)
    • Line 33: warning: exported var SFNodeBitcoinCash should have comment or be unexported (golint)
    • Line 35: warning: exported type PeerManagerConfig should have comment or be unexported (golint)
    • Line 74: warning: exported type PeerManager should have comment or be unexported (golint)
    • Line 88: warning: exported function NewPeerManager should have comment or be unexported (golint)
    • Line 169: warning: exported method PeerManager.ConnectedPeers should have comment or be unexported (golint)
    • Line 281: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 373: warning: exported method PeerManager.Start should have comment or be unexported (golint)
    • Line 393: warning: exported method PeerManager.Stop should have comment or be unexported (golint)
    • spvwallet/sortsignsend.go
    • Line 28: warning: exported method SPVWallet.Broadcast should have comment or be unexported (golint)
    • Line 43: warning: exported type Coin should have comment or be unexported (golint)
    • Line 51: warning: exported method Coin.Hash should have comment or be unexported (golint)
    • Line 52: warning: exported method Coin.Index should have comment or be unexported (golint)
    • Line 53: warning: exported method Coin.Value should have comment or be unexported (golint)
    • Line 54: warning: exported method Coin.PkScript should have comment or be unexported (golint)
    • Line 55: warning: exported method Coin.NumConfs should have comment or be unexported (golint)
    • Line 56: warning: exported method Coin.ValueAge should have comment or be unexported (golint)
    • Line 58: warning: exported function NewCoin should have comment or be unexported (golint)
    • Line 70: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 96: warning: exported method SPVWallet.Spend should have comment or be unexported (golint)
    • Line 96: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 120: warning: error var BumpFeeAlreadyConfirmedError should have name of the form ErrFoo (golint)
    • Line 120: warning: exported var BumpFeeAlreadyConfirmedError should have comment or be unexported (golint)
    • Line 121: warning: error var BumpFeeTransactionDeadError should have name of the form ErrFoo (golint)
    • Line 121: warning: exported var BumpFeeTransactionDeadError should have comment or be unexported (golint)
    • Line 122: warning: error var BumpFeeNotFoundError should have name of the form ErrFoo (golint)
    • Line 122: warning: exported var BumpFeeNotFoundError should have comment or be unexported (golint)
    • Line 124: warning: exported method SPVWallet.BumpFee should have comment or be unexported (golint)
    • Line 124: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 219: warning: exported method SPVWallet.EstimateFee should have comment or be unexported (golint)
    • Line 219: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 231: warning: comment on exported method SPVWallet.EstimateSpendFee should be of the form "EstimateSpendFee ..." (golint)
    • Line 232: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 265: warning: exported method SPVWallet.GenerateMultisigScript should have comment or be unexported (golint)
    • Line 265: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 330: warning: exported method SPVWallet.CreateMultisigSignature should have comment or be unexported (golint)
    • Line 330: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 386: warning: exported method SPVWallet.Multisign should have comment or be unexported (golint)
    • Line 386: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 463: warning: exported method SPVWallet.SweepAddress should have comment or be unexported (golint)
    • Line 463: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 600: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 698: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 777: warning: exported function NewUnsignedTransaction should have comment or be unexported (golint)
    • Line 837: warning: exported method SPVWallet.GetFeePerByte should have comment or be unexported (golint)
    • Line 837: warning: receiver name w should be consistent with previous receiver name s for SPVWallet (golint)
    • Line 841: warning: exported function LockTimeFromRedeemScript should have comment or be unexported (golint)
    • spvwallet/txsizes.go
    • Line 199: warning: exported type InputType should have comment or be unexported (golint)
    • Line 202: warning: exported const P2PKH should have comment (or a comment on this block) or be unexported (golint)
    • Line 203: warning: don't use underscores in Go names; const P2SH_1of2_Multisig should be P2SH1of2Multisig (golint)
    • Line 204: warning: don't use underscores in Go names; const P2SH_2of3_Multisig should be P2SH2of3Multisig (golint)
    • Line 205: warning: don't use underscores in Go names; const P2SH_Multisig_Timelock_1Sig should be P2SHMultisigTimelock1Sig (golint)
    • Line 206: warning: don't use underscores in Go names; const P2SH_Multisig_Timelock_2Sigs should be P2SHMultisigTimelock2Sigs (golint)
    • spvwallet/wallet.go
    • Line 26: warning: exported type SPVWallet should have comment or be unexported (golint)
    • Line 61: warning: exported const WALLET_VERSION should have comment or be unexported (golint)
    • Line 63: warning: exported function NewSPVWallet should have comment or be unexported (golint)
    • Line 172: warning: exported method SPVWallet.Start should have comment or be unexported (golint)
    • Line 184: warning: exported method SPVWallet.CurrencyCode should have comment or be unexported (golint)
    • Line 187: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 192: warning: exported method SPVWallet.IsDust should have comment or be unexported (golint)
    • Line 196: warning: exported method SPVWallet.MasterPrivateKey should have comment or be unexported (golint)
    • Line 200: warning: exported method SPVWallet.MasterPublicKey should have comment or be unexported (golint)
    • Line 204: warning: exported method SPVWallet.ChildKey should have comment or be unexported (golint)
    • Line 223: warning: exported method SPVWallet.Mnemonic should have comment or be unexported (golint)
    • Line 227: warning: exported method SPVWallet.ConnectedPeers should have comment or be unexported (golint)
    • Line 231: warning: exported method SPVWallet.CurrentAddress should have comment or be unexported (golint)
    • Line 237: warning: exported method SPVWallet.NewAddress should have comment or be unexported (golint)
    • Line 246: warning: exported method SPVWallet.DecodeAddress should have comment or be unexported (golint)
    • Line 250: warning: exported method SPVWallet.ScriptToAddress should have comment or be unexported (golint)
    • Line 265: warning: exported method SPVWallet.AddressToScript should have comment or be unexported (golint)
    • Line 269: warning: exported method SPVWallet.HasKey should have comment or be unexported (golint)
    • Line 277: warning: exported method SPVWallet.GetKey should have comment or be unexported (golint)
    • Line 285: warning: exported method SPVWallet.ListAddresses should have comment or be unexported (golint)
    • Line 298: warning: exported method SPVWallet.ListKeys should have comment or be unexported (golint)
    • Line 311: warning: exported method SPVWallet.Balance should have comment or be unexported (golint)
    • Line 330: warning: exported method SPVWallet.Transactions should have comment or be unexported (golint)
    • Line 364: warning: exported method SPVWallet.GetTransaction should have comment or be unexported (golint)
    • Line 397: warning: exported method SPVWallet.GetConfirmations should have comment or be unexported (golint)
    • Line 415: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 421: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 430: warning: exported method SPVWallet.Params should have comment or be unexported (golint)
    • Line 434: warning: exported method SPVWallet.AddTransactionListener should have comment or be unexported (golint)
    • Line 438: warning: exported method SPVWallet.ChainTip should have comment or be unexported (golint)
    • Line 447: warning: exported method SPVWallet.AddWatchedAddresses should have comment or be unexported (golint)
    • Line 468: warning: exported method SPVWallet.DumpHeaders should have comment or be unexported (golint)
    • Line 472: warning: exported method SPVWallet.Close should have comment or be unexported (golint)
    • Line 482: warning: exported method SPVWallet.ReSyncBlockchain should have comment or be unexported (golint)
    • Line 488: warning: exported method SPVWallet.ExchangeRates should have comment or be unexported (golint)
    • spvwallet/cmd/spvwallet/main.go
    • Line 40: warning: exported type Start should have comment or be unexported (golint)
    • Line 56: warning: exported type Version should have comment or be unexported (golint)
    • Line 91: warning: exported method Version.Execute should have comment or be unexported (golint)
    • Line 96: warning: exported method Start.Execute should have comment or be unexported (golint)
    • spvwallet/db/txns.go
    • Line 13: warning: exported type TxnsDB should have comment or be unexported (golint)
    • Line 18: warning: exported method TxnsDB.Put should have comment or be unexported (golint)
    • Line 44: warning: exported method TxnsDB.Get should have comment or be unexported (golint)
    • Line 80: warning: exported method TxnsDB.GetAll should have comment or be unexported (golint)
    • Line 123: warning: exported method TxnsDB.Delete should have comment or be unexported (golint)
    • Line 133: warning: exported method TxnsDB.UpdateHeight should have comment or be unexported (golint)
    • spvwallet/exchangerates/bitcoinprices.go
    • Line 18: warning: exported const SatoshiPerBTC should have comment or be unexported (golint)
    • Line 22: warning: exported type ExchangeRateProvider should have comment or be unexported (golint)
    • Line 29: warning: exported type ExchangeRateDecoder should have comment or be unexported (golint)
    • Line 33: warning: comment on exported type BitcoinAverageDecoder should be of the form "BitcoinAverageDecoder ..." (with optional leading article) (golint)
    • Line 35: warning: exported type BitPayDecoder should have comment or be unexported (golint)
    • Line 36: warning: exported type BlockchainInfoDecoder should have comment or be unexported (golint)
    • Line 37: warning: exported type BitcoinChartsDecoder should have comment or be unexported (golint)
    • Line 39: warning: exported type BitcoinPriceFetcher should have comment or be unexported (golint)
    • Line 45: warning: exported function NewBitcoinPriceFetcher should have comment or be unexported (golint)
    • Line 65: warning: exported method BitcoinPriceFetcher.GetExchangeRate should have comment or be unexported (golint)
    • Line 77: warning: exported method BitcoinPriceFetcher.GetLatestRate should have comment or be unexported (golint)
    • Line 90: warning: exported method BitcoinPriceFetcher.GetAllRates should have comment or be unexported (golint)
    • Line 106: warning: exported method BitcoinPriceFetcher.UnitsPerCoin should have comment or be unexported (golint)
    • Line 143: warning: exported method BitcoinPriceFetcher.Run should have comment or be unexported (golint)
    • spvwallet/txstore.go
    • Line 21: warning: exported type TxStore should have comment or be unexported (golint)
    • Line 38: warning: exported function NewTxStore should have comment or be unexported (golint)
    • Line 55: warning: comment on exported method TxStore.GimmeFilter should be of the form "GimmeFilter ..." (golint)
    • Line 226: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • spvwallet/db/stxo.go
    • Line 14: warning: exported type StxoDB should have comment or be unexported (golint)
    • Line 19: warning: exported method StxoDB.Put should have comment or be unexported (golint)
    • Line 43: warning: exported method StxoDB.GetAll should have comment or be unexported (golint)
    • Line 104: warning: exported method StxoDB.Delete should have comment or be unexported (golint)

gocyclo77%

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.

    • spvwallet/eight333.go
    • Line 533: warning: cyclomatic complexity 32 of function (*WireService).handleInvMsg() is high (> 15) (gocyclo)
    • Line 393: warning: cyclomatic complexity 24 of function (*WireService).handleMerkleBlockMsg() is high (> 15) (gocyclo)
    • spvwallet/blockchain_test.go
    • Line 183: warning: cyclomatic complexity 24 of function Test_Reorg() is high (> 15) (gocyclo)
    • Line 77: warning: cyclomatic complexity 16 of function TestNewBlockchain() is high (> 15) (gocyclo)
    • spvwallet/txstore_test.go
    • Line 562: warning: cyclomatic complexity 39 of function TestTxStore_Ingest() is high (> 15) (gocyclo)
    • Line 230: warning: cyclomatic complexity 39 of function TestTxStore_markAsDead() is high (> 15) (gocyclo)
    • spvwallet/sortsignsend.go
    • Line 463: warning: cyclomatic complexity 22 of function (*SPVWallet).SweepAddress() is high (> 15) (gocyclo)
    • Line 386: warning: cyclomatic complexity 16 of function (*SPVWallet).Multisign() is high (> 15) (gocyclo)

ineffassign77%

IneffAssign detects ineffectual assignments in Go code.

    • spvwallet/txstore_test.go
    • Line 72: warning: ineffectual assignment to err (ineffassign)
    • Line 77: warning: ineffectual assignment to err (ineffassign)
    • Line 147: warning: ineffectual assignment to err (ineffassign)
    • Line 181: warning: ineffectual assignment to err (ineffassign)
    • Line 187: warning: ineffectual assignment to err (ineffassign)
    • Line 237: warning: ineffectual assignment to err (ineffassign)
    • Line 279: warning: ineffectual assignment to err (ineffassign)
    • Line 291: warning: ineffectual assignment to err (ineffassign)
    • Line 337: warning: ineffectual assignment to err (ineffassign)
    • Line 391: warning: ineffectual assignment to err (ineffassign)
    • Line 401: warning: ineffectual assignment to err (ineffassign)
    • Line 413: warning: ineffectual assignment to err (ineffassign)
    • Line 474: warning: ineffectual assignment to err (ineffassign)
    • Line 481: warning: ineffectual assignment to err (ineffassign)
    • Line 488: warning: ineffectual assignment to err (ineffassign)
    • Line 501: warning: ineffectual assignment to err (ineffassign)
    • Line 513: warning: ineffectual assignment to err (ineffassign)
    • Line 569: warning: ineffectual assignment to err (ineffassign)
    • Line 625: warning: ineffectual assignment to err (ineffassign)
    • Line 639: warning: ineffectual assignment to hits (ineffassign)
    • Line 660: warning: ineffectual assignment to err (ineffassign)
    • Line 686: warning: ineffectual assignment to err (ineffassign)
    • Line 716: warning: ineffectual assignment to err (ineffassign)
    • Line 725: warning: ineffectual assignment to hits (ineffassign)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!