Preparing report...

Report for github.com/leighmacdonald/mika

A+    Excellent!    Found 26 issues across 64 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!


gocyclo95%

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.


golint64%

Golint is a linter for Go source code.

    • mika/tracker/role.go
    • Line 9: warning: exported function RoleAll should have comment or be unexported (golint)
    • Line 17: warning: exported function RoleDelete should have comment or be unexported (golint)
    • Line 27: warning: exported function RoleAdd should have comment or be unexported (golint)
    • mika/store/redis/redis.go
    • Line 66: warning: exported method Driver.TorrentSave should have comment or be unexported (golint)
    • Line 70: warning: exported method Driver.Migrate should have comment or be unexported (golint)
    • Line 74: warning: exported method Driver.Users should have comment or be unexported (golint)
    • Line 78: warning: exported method Driver.Torrents should have comment or be unexported (golint)
    • Line 82: warning: exported method Driver.RoleSave should have comment or be unexported (golint)
    • Line 94: warning: exported method Driver.RoleByID should have comment or be unexported (golint)
    • Line 133: warning: exported method Driver.Roles should have comment or be unexported (golint)
    • Line 151: warning: exported method Driver.RoleAdd should have comment or be unexported (golint)
    • Line 163: warning: exported method Driver.RoleDelete should have comment or be unexported (golint)
    • Line 174: warning: comment on exported method Driver.UserSync should be of the form "UserSync ..." (golint)
    • Line 237: warning: comment on exported method Driver.UserAdd should be of the form "UserAdd ..." (golint)
    • Line 259: warning: comment on exported method Driver.UserGetByPasskey should be of the form "UserGetByPasskey ..." (golint)
    • Line 283: warning: comment on exported method Driver.UserGetByID should be of the form "UserGetByID ..." (golint)
    • Line 296: warning: comment on exported method Driver.UserDelete should be of the form "UserDelete ..." (golint)
    • Line 307: warning: exported method Driver.UserSave should have comment or be unexported (golint)
    • Line 322: warning: comment on exported method Driver.TorrentUpdate should be of the form "TorrentUpdate ..." (golint)
    • Line 335: warning: comment on exported method Driver.TorrentSync should be of the form "TorrentSync ..." (golint)
    • Line 419: warning: comment on exported method Driver.TorrentAdd should be of the form "TorrentAdd ..." (golint)
    • Line 428: warning: comment on exported method Driver.TorrentDelete should be of the form "TorrentDelete ..." (golint)
    • Line 443: warning: comment on exported method Driver.TorrentGet should be of the form "TorrentGet ..." (golint)
    • Line 477: warning: exported method Driver.Name should have comment or be unexported (golint)
    • mika/store/torrent.go
    • Line 163: warning: exported method Torrent.Log should have comment or be unexported (golint)
    • Line 172: warning: exported type TorrentUpdate should have comment or be unexported (golint)
    • Line 200: warning: exported type AnnounceHist should have comment or be unexported (golint)
    • Line 213: warning: exported type PeerSummary should have comment or be unexported (golint)
    • Line 223: warning: exported method PeerStats.Totals should have comment or be unexported (golint)
    • mika/rpc/torrents.go
    • Line 16: warning: exported function TorrentToPB should have comment or be unexported (golint)
    • Line 38: warning: exported function PBtoTorrent should have comment or be unexported (golint)
    • Line 61: warning: exported method MikaService.TorrentGet should have comment or be unexported (golint)
    • Line 74: warning: exported method MikaService.TorrentAdd should have comment or be unexported (golint)
    • Line 97: warning: exported method MikaService.TorrentDelete should have comment or be unexported (golint)
    • Line 116: warning: exported method MikaService.TorrentUpdate should have comment or be unexported (golint)
    • Line 120: warning: exported method MikaService.TorrentAll should have comment or be unexported (golint)
    • mika/config/config.go
    • Line 19: warning: exported var General should have comment or be unexported (golint)
    • Line 143: warning: exported type StoreConfig should have comment or be unexported (golint)
    • Line 273: warning: exported function Save should have comment or be unexported (golint)
    • mika/store/peer.go
    • Line 67: warning: exported type Peers should have comment or be unexported (golint)
    • Line 207: warning: comment on exported method Swarm.GetN should be of the form "GetN ..." (golint)
    • Line 252: warning: exported type BTClient should have comment or be unexported (golint)
    • mika/store/postgres/postgres.go
    • Line 22: warning: comment on exported type Driver should be of the form "Driver ..." (with optional leading article) (golint)
    • Line 28: warning: exported method Driver.TorrentSave should have comment or be unexported (golint)
    • Line 32: warning: exported method Driver.Migrate should have comment or be unexported (golint)
    • Line 34: warning: exported method Driver.Users should have comment or be unexported (golint)
    • Line 38: warning: exported method Driver.Torrents should have comment or be unexported (golint)
    • Line 42: warning: exported method Driver.RoleSave should have comment or be unexported (golint)
    • Line 46: warning: exported method Driver.Roles should have comment or be unexported (golint)
    • Line 50: warning: exported method Driver.RoleByID should have comment or be unexported (golint)
    • Line 54: warning: exported method Driver.RoleAdd should have comment or be unexported (golint)
    • Line 58: warning: exported method Driver.RoleDelete should have comment or be unexported (golint)
    • Line 62: warning: exported method Driver.UserSave should have comment or be unexported (golint)
    • Line 86: warning: comment on exported method Driver.UserSync should be of the form "UserSync ..." (golint)
    • Line 122: warning: comment on exported method Driver.UserAdd should be of the form "UserAdd ..." (golint)
    • Line 139: warning: comment on exported method Driver.UserGetByPasskey should be of the form "UserGetByPasskey ..." (golint)
    • Line 162: warning: comment on exported method Driver.UserGetByID should be of the form "UserGetByID ..." (golint)
    • Line 182: warning: comment on exported method Driver.UserDelete should be of the form "UserDelete ..." (golint)
    • Line 197: warning: comment on exported method Driver.TorrentUpdate should be of the form "TorrentUpdate ..." (golint)
    • Line 227: warning: comment on exported method Driver.TorrentSync should be of the form "TorrentSync ..." (golint)
    • Line 273: warning: comment on exported method Driver.TorrentAdd should be of the form "TorrentAdd ..." (golint)
    • Line 289: warning: comment on exported method Driver.TorrentDelete should be of the form "TorrentDelete ..." (golint)
    • Line 412: warning: exported method Driver.Name should have comment or be unexported (golint)
    • mika/tracker/tracker.go
    • Line 44: warning: exported function Init should have comment or be unexported (golint)
    • Line 239: warning: exported function Migrate should have comment or be unexported (golint)
    • Line 243: warning: exported function ClientWhitelisted should have comment or be unexported (golint)
    • Line 250: warning: exported function WhiteListAdd should have comment or be unexported (golint)
    • Line 260: warning: exported function WhiteListGet should have comment or be unexported (golint)
    • Line 268: warning: exported function WhiteListDelete should have comment or be unexported (golint)
    • Line 276: warning: exported function WhiteList should have comment or be unexported (golint)
    • Line 280: warning: exported function Torrents should have comment or be unexported (golint)
    • Line 284: warning: exported function TorrentAdd should have comment or be unexported (golint)
    • Line 294: warning: exported function TorrentGet should have comment or be unexported (golint)
    • Line 305: warning: exported function TorrentDelete should have comment or be unexported (golint)
    • mika/tracker/user.go
    • Line 9: warning: exported function Users should have comment or be unexported (golint)
    • Line 13: warning: exported function UserAdd should have comment or be unexported (golint)
    • Line 24: warning: exported function UserGetByPasskey should have comment or be unexported (golint)
    • Line 32: warning: exported function UserGetByUserID should have comment or be unexported (golint)
    • Line 41: warning: exported function UserGetByRemoteID should have comment or be unexported (golint)
    • Line 50: warning: exported function UserSave should have comment or be unexported (golint)
    • Line 61: warning: exported function UserDelete should have comment or be unexported (golint)
    • mika/store/memory/memory.go
    • Line 17: warning: exported method Driver.Name should have comment or be unexported (golint)
    • Line 21: warning: exported method Driver.TorrentSave should have comment or be unexported (golint)
    • Line 25: warning: comment on exported method Driver.TorrentAdd should be of the form "TorrentAdd ..." (golint)
    • Line 37: warning: comment on exported method Driver.TorrentDelete should be of the form "TorrentDelete ..." (golint)
    • Line 46: warning: comment on exported method Driver.TorrentSync should be of the form "TorrentSync ..." (golint)
    • Line 83: warning: comment on exported method Driver.TorrentGet should be of the form "TorrentGet ..." (golint)
    • Line 97: warning: comment on exported function NewDriver should be of the form "NewDriver ..." (golint)
    • Line 125: warning: exported method Driver.Migrate should have comment or be unexported (golint)
    • Line 129: warning: exported method Driver.Users should have comment or be unexported (golint)
    • Line 133: warning: exported method Driver.Torrents should have comment or be unexported (golint)
    • Line 137: warning: exported method Driver.RoleSave should have comment or be unexported (golint)
    • Line 144: warning: exported method Driver.RoleByID should have comment or be unexported (golint)
    • Line 153: warning: exported method Driver.RoleAdd should have comment or be unexported (golint)
    • Line 169: warning: exported method Driver.RoleDelete should have comment or be unexported (golint)
    • Line 185: warning: exported method Driver.Roles should have comment or be unexported (golint)
    • Line 189: warning: comment on exported method Driver.UserSave should be of the form "UserSave ..." (golint)
    • Line 194: warning: comment on exported method Driver.UserSync should be of the form "UserSync ..." (golint)
    • Line 199: warning: comment on exported method Driver.UserAdd should be of the form "UserAdd ..." (golint)
    • Line 213: warning: comment on exported method Driver.UserGetByPasskey should be of the form "UserGetByPasskey ..." (golint)
    • Line 227: warning: comment on exported method Driver.UserGetByID should be of the form "UserGetByID ..." (golint)
    • Line 239: warning: comment on exported method Driver.UserDelete should be of the form "UserDelete ..." (golint)
    • mika/rpc/config.go
    • Line 16: warning: exported type MikaService should have comment or be unexported (golint)
    • Line 20: warning: exported function PBToWhiteList should have comment or be unexported (golint)
    • Line 27: warning: exported function WhiteListToPB should have comment or be unexported (golint)
    • Line 50: warning: exported method MikaService.ConfigAll should have comment or be unexported (golint)
    • Line 53: warning: exported method MikaService.ConfigSave should have comment or be unexported (golint)
    • Line 57: warning: exported method MikaService.WhiteListAdd should have comment or be unexported (golint)
    • Line 68: warning: exported method MikaService.WhiteListDelete should have comment or be unexported (golint)
    • Line 79: warning: exported method MikaService.WhiteListAll should have comment or be unexported (golint)
    • mika/store/user.go
    • Line 31: warning: exported method User.Log should have comment or be unexported (golint)
    • Line 47: warning: comment on exported method Roles.Get should be of the form "Get ..." (golint)
    • Line 60: warning: exported type Role should have comment or be unexported (golint)
    • Line 73: warning: exported method Role.Log should have comment or be unexported (golint)
    • mika/store/mysql/mysql.go
    • Line 34: warning: exported method Driver.Migrate should have comment or be unexported (golint)
    • Line 46: warning: exported method Driver.Users should have comment or be unexported (golint)
    • Line 62: warning: exported method Driver.Torrents should have comment or be unexported (golint)
    • Line 79: warning: exported method Driver.RoleSave should have comment or be unexported (golint)
    • Line 106: warning: exported method Driver.RoleByID should have comment or be unexported (golint)
    • Line 123: warning: exported method Driver.RoleAdd should have comment or be unexported (golint)
    • Line 141: warning: exported method Driver.RoleDelete should have comment or be unexported (golint)
    • Line 149: warning: exported method Driver.Roles should have comment or be unexported (golint)
    • Line 166: warning: comment on exported method Driver.UserSync should be of the form "UserSync ..." (golint)
    • Line 199: warning: comment on exported method Driver.UserAdd should be of the form "UserAdd ..." (golint)
    • Line 227: warning: comment on exported method Driver.UserGetByPasskey should be of the form "UserGetByPasskey ..." (golint)
    • Line 259: warning: comment on exported method Driver.UserGetByID should be of the form "UserGetByID ..." (golint)
    • Line 288: warning: comment on exported method Driver.UserDelete should be of the form "UserDelete ..." (golint)
    • Line 301: warning: exported method Driver.UserSave should have comment or be unexported (golint)
    • Line 325: warning: exported method Driver.Name should have comment or be unexported (golint)
    • Line 329: warning: exported method Driver.TorrentSave should have comment or be unexported (golint)
    • Line 365: warning: comment on exported method Driver.TorrentSync should be of the form "TorrentSync ..." (golint)
    • Line 440: warning: comment on exported method Driver.TorrentGet should be of the form "TorrentGet ..." (golint)
    • Line 474: warning: comment on exported method Driver.TorrentAdd should be of the form "TorrentAdd ..." (golint)
    • Line 494: warning: comment on exported method Driver.TorrentDelete should be of the form "TorrentDelete ..." (golint)
    • mika/metrics/metrics.go
    • Line 57: warning: exported var TorrentsTotalCached should have comment or be unexported (golint)
    • Line 70: warning: exported function AddAnnounceTime should have comment or be unexported (golint)
    • Line 92: warning: exported type RuntimeMetrics should have comment or be unexported (golint)
    • Line 154: warning: exported function Get should have comment or be unexported (golint)
    • mika/consts/protocol.go
    • Line 32: warning: exported type CryptoLevel should have comment or be unexported (golint)
    • Line 35: warning: exported const Unencrypted should have comment (or a comment on this block) or be unexported (golint)
    • mika/rpc/role.go
    • Line 17: warning: exported method MikaService.RoleAll should have comment or be unexported (golint)
    • Line 42: warning: exported function RoleToPB should have comment or be unexported (golint)
    • Line 59: warning: exported function PBToRole should have comment or be unexported (golint)
    • Line 74: warning: exported method MikaService.RoleAdd should have comment or be unexported (golint)
    • Line 91: warning: exported method MikaService.RoleDelete should have comment or be unexported (golint)
    • Line 112: warning: exported method MikaService.RoleSave should have comment or be unexported (golint)
    • mika/rpc/users.go
    • Line 33: warning: exported method MikaService.UserGet should have comment or be unexported (golint)
    • Line 44: warning: exported method MikaService.UserAll should have comment or be unexported (golint)
    • Line 53: warning: exported method MikaService.UserSave should have comment or be unexported (golint)
    • Line 74: warning: exported method MikaService.UserDelete should have comment or be unexported (golint)
    • Line 88: warning: exported method MikaService.UserAdd should have comment or be unexported (golint)
    • Line 105: warning: exported function UserToPB should have comment or be unexported (golint)
    • Line 122: warning: exported function PBToUser 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