Preparing report...

Report for github.com/DanielOaks/oragono

A+    Excellent!    Found 89 issues across 128 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!


golint41%

Golint is a linter for Go source code.

    • oragono/irc/utils/net.go
    • Line 16: warning: exported var IPv4LoopbackAddress should have comment or be unexported (golint)
    • Line 67: warning: comment on exported function IPInNets should be of the form "IPInNets ..." (golint)
    • Line 104: warning: comment on exported function NetToNormalizedString should be of the form "NetToNormalizedString ..." (golint)
    • Line 116: warning: comment on exported function NormalizedNetFromString should be of the form "NormalizedNetFromString ..." (golint)
    • Line 134: warning: comment on exported function ParseNetList should be of the form "ParseNetList ..." (golint)
    • Line 149: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 156: warning: comment on exported function HandleXForwardedFor should be of the form "HandleXForwardedFor ..." (golint)
    • oragono/irc/strings.go
    • Line 47: warning: exported type Casemapping should have comment or be unexported (golint)
    • Line 50: warning: comment on exported const CasemappingPRECIS should be of the form "CasemappingPRECIS ..." (golint)
    • Line 54: warning: comment on exported const CasemappingASCII should be of the form "CasemappingASCII ..." (golint)
    • Line 58: warning: comment on exported const CasemappingPermissive should be of the form "CasemappingPermissive ..." (golint)
    • Line 228: warning: comment on exported function CanonicalizeMaskWildcard should be of the form "CanonicalizeMaskWildcard ..." (golint)
    • Line 294: warning: exported function IsPrintableASCII should have comment or be unexported (golint)
    • Line 317: warning: comment on exported function NUHToNick should be of the form "NUHToNick ..." (golint)
    • oragono/irc/email/dkim.go
    • Line 13: warning: exported var ErrMissingFields should have comment or be unexported (golint)
    • Line 16: warning: exported type DKIMConfig should have comment or be unexported (golint)
    • Line 23: warning: exported method DKIMConfig.Postprocess should have comment or be unexported (golint)
    • Line 47: warning: exported function DKIMSign should have comment or be unexported (golint)
    • oragono/irc/authscript.go
    • Line 16: warning: comment on exported type AuthScriptInput should be of the form "AuthScriptInput ..." (with optional leading article) (golint)
    • Line 26: warning: exported type AuthScriptOutput should have comment or be unexported (golint)
    • Line 32: warning: exported function CheckAuthScript should have comment or be unexported (golint)
    • Line 65: warning: exported type IPScriptResult should have comment or be unexported (golint)
    • Line 68: warning: exported const IPNotChecked should have comment (or a comment on this block) or be unexported (golint)
    • Line 74: warning: exported type IPScriptInput should have comment or be unexported (golint)
    • Line 78: warning: exported type IPScriptOutput should have comment or be unexported (golint)
    • Line 87: warning: exported function CheckIPBan should have comment or be unexported (golint)
    • oragono/irc/channelmanager.go
    • Line 36: warning: comment on exported method ChannelManager.Initialize should be of the form "Initialize ..." (golint)
    • Line 112: warning: error should be the last type when returning multiple items (golint)
    • Line 217: warning: exported method ChannelManager.Cleanup should have comment or be unexported (golint)
    • Line 221: warning: exported method ChannelManager.SetRegistered should have comment or be unexported (golint)
    • Line 262: warning: exported method ChannelManager.SetUnregistered should have comment or be unexported (golint)
    • Line 458: warning: exported method ChannelManager.ListPurged should have comment or be unexported (golint)
    • Line 469: warning: exported method ChannelManager.UnfoldName should have comment or be unexported (golint)
    • oragono/irc/errors.go
    • Line 86: warning: exported type CertKeyError should have comment or be unexported (golint)
    • Line 94: warning: exported type ThrottleError should have comment or be unexported (golint)
    • oragono/irc/history/history.go
    • Line 12: warning: exported type ItemType should have comment or be unexported (golint)
    • Line 16: warning: exported const Privmsg should have comment (or a comment on this block) or be unexported (golint)
    • Line 56: warning: exported type Predicate should have comment or be unexported (golint)
    • Line 58: warning: exported function Reverse should have comment or be unexported (golint)
    • Line 80: warning: exported function NewHistoryBuffer should have comment or be unexported (golint)
    • Line 86: warning: exported method Buffer.Initialize should have comment or be unexported (golint)
    • Line 108: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 143: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 158: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 205: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 237: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 284: warning: exported method Buffer.MakeSequence should have comment or be unexported (golint)
    • Line 284: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 320: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 352: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 379: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 386: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 393: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 402: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 411: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 438: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • Line 465: warning: receiver name list should be consistent with previous receiver name hist for Buffer (golint)
    • oragono/irc/dline.go
    • Line 41: warning: exported method IPBanInfo.TimeLeft should have comment or be unexported (golint)
    • Line 44: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • oragono/irc/server.go
    • Line 12: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • Line 181: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 421: warning: exported method Server.Lusers should have comment or be unexported (golint)
    • Line 778: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 860: warning: comment on exported method Server.GetHistorySequence should be of the form "GetHistorySequence ..." (golint)
    • Line 953: warning: exported method Server.ForgetHistory should have comment or be unexported (golint)
    • Line 984: warning: comment on exported method Server.DeleteMessage should be of the form "DeleteMessage ..." (golint)
    • Line 1023: warning: exported method Server.UnfoldName should have comment or be unexported (golint)
    • oragono/irc/stats.go
    • Line 7: warning: exported type StatsValues should have comment or be unexported (golint)
    • Line 22: warning: comment on exported method Stats.Add should be of the form "Add ..." (golint)
    • Line 29: warning: comment on exported method Stats.AddRegistered should be of the form "AddRegistered ..." (golint)
    • Line 43: warning: comment on exported method Stats.Register should be of the form "Register ..." (golint)
    • Line 61: warning: comment on exported method Stats.ChangeInvisible should be of the form "ChangeInvisible ..." (golint)
    • Line 68: warning: comment on exported method Stats.ChangeOperators should be of the form "ChangeOperators ..." (golint)
    • Line 92: warning: comment on exported method Stats.GetValues should be of the form "GetValues ..." (golint)
    • oragono/irc/flatip/flatip.go
    • Line 16: warning: exported var IPv6loopback should have comment or be unexported (golint)
    • Line 96: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 101: warning: exported method IP.IsUnspecified should have comment or be unexported (golint)
    • Line 158: warning: comment on exported function FromNetIPNet should be of the form "FromNetIPNet ..." (golint)
    • Line 199: warning: receiver name ipnet should be consistent with previous receiver name cidr for IPNet (golint)
    • oragono/irc/config.go
    • Line 71: warning: exported type HistoryCutoff should have comment or be unexported (golint)
    • Line 74: warning: exported const HistoryCutoffDefault should have comment (or a comment on this block) or be unexported (golint)
    • Line 110: warning: exported type PersistentStatus should have comment or be unexported (golint)
    • Line 113: warning: exported const PersistentUnspecified should have comment (or a comment on this block) or be unexported (golint)
    • Line 153: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 159: warning: exported method PersistentStatus.UnmarshalYAML should have comment or be unexported (golint)
    • Line 193: warning: exported type HistoryStatus should have comment or be unexported (golint)
    • Line 196: warning: exported const HistoryDefault should have comment (or a comment on this block) or be unexported (golint)
    • Line 214: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 243: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 258: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 266: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 272: warning: exported type MulticlientConfig should have comment or be unexported (golint)
    • Line 286: warning: exported type ThrottleConfig should have comment or be unexported (golint)
    • Line 290: warning: exported method ThrottleConfig.UnmarshalYAML should have comment or be unexported (golint)
    • Line 303: warning: exported type AccountConfig should have comment or be unexported (golint)
    • Line 336: warning: exported type ScriptConfig should have comment or be unexported (golint)
    • Line 345: warning: exported type AuthScriptConfig should have comment or be unexported (golint)
    • Line 366: warning: exported type VHostConfig should have comment or be unexported (golint)
    • Line 373: warning: exported type NickEnforcementMethod should have comment or be unexported (golint)
    • Line 386: warning: exported const NickEnforcementNone should have comment (or a comment on this block) or be unexported (golint)
    • Line 418: warning: exported method NickEnforcementMethod.UnmarshalYAML should have comment or be unexported (golint)
    • Line 433: warning: exported method Casemapping.UnmarshalYAML should have comment or be unexported (golint)
    • Line 475: warning: comment on exported type Limits should be of the form "Limits ..." (with optional leading article) (golint)
    • Line 515: warning: exported type FakelagConfig should have comment or be unexported (golint)
    • Line 523: warning: exported type TorListenersConfig should have comment or be unexported (golint)
    • Line 670: warning: don't use underscores in Go names; struct field EnforceRegistrationDate_ should be EnforceRegistrationDate (golint)
    • Line 789: warning: exported method Oper.HasRoleCapab should have comment or be unexported (golint)
    • Line 953: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • Line 1105: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 1530: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • Line 1534: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • Line 1548: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • Line 1600: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • Line 1639: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • Line 1673: warning: receiver name config should be consistent with previous receiver name conf for Config (golint)
    • oragono/irc/database.go
    • Line 32: warning: exported type SchemaChanger should have comment or be unexported (golint)
    • Line 34: warning: exported type SchemaChange should have comment or be unexported (golint)
    • Line 127: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 201: warning: exported function LoadCloakSecret should have comment or be unexported (golint)
    • Line 209: warning: exported function StoreCloakSecret should have comment or be unexported (golint)
    • oragono/irc/handlers.go
    • Line 1249: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 1996: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 2258: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 2332: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 3109: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 3125: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 3134: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • oragono/irc/client_lookup_set.go
    • Line 87: warning: error should be the last type when returning multiple items (golint)
    • Line 195: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 238: warning: exported method ClientManager.AllClients should have comment or be unexported (golint)
    • Line 292: warning: comment on exported method ClientManager.UnfoldNick should be of the form "UnfoldNick ..." (golint)
    • Line 300: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • oragono/irc/listeners.go
    • Line 41: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 68: warning: exported function NewNetListener should have comment or be unexported (golint)
    • Line 78: warning: exported method NetListener.Reload should have comment or be unexported (golint)
    • Line 86: warning: exported method NetListener.Stop should have comment or be unexported (golint)
    • Line 120: warning: exported function NewWSListener should have comment or be unexported (golint)
    • Line 135: warning: exported method WSListener.Reload should have comment or be unexported (golint)
    • Line 143: warning: exported method WSListener.Stop should have comment or be unexported (golint)
    • oragono/irc/semaphores.go
    • Line 17: warning: comment on exported const MaxServerSemaphoreCapacity should be of the form "MaxServerSemaphoreCapacity ..." (golint)
    • oragono/irc/connection_limits/tor.go
    • Line 4: warning: don't use an underscore in package name (golint)
    • Line 22: warning: exported method TorLimiter.Configure should have comment or be unexported (golint)
    • Line 30: warning: exported method TorLimiter.AddClient should have comment or be unexported (golint)
    • Line 45: warning: exported method TorLimiter.RemoveClient should have comment or be unexported (golint)
    • oragono/irc/utils/glob.go
    • Line 38: warning: exported function CompileGlob should have comment or be unexported (golint)
    • Line 49: warning: comment on exported function CompileMasks should be of the form "CompileMasks ..." (golint)
    • oragono/irc/accounts.go
    • Line 52: warning: comment on exported type AccountManager should be of the form "AccountManager ..." (with optional leading article) (golint)
    • Line 67: warning: exported method AccountManager.Initialize should have comment or be unexported (golint)
    • Line 220: warning: exported method AccountManager.NickToAccount should have comment or be unexported (golint)
    • Line 257: warning: comment on exported method AccountManager.EnforcementStatus should be of the form "EnforcementStatus ..." (golint)
    • Line 298: warning: comment on exported method AccountManager.SetEnforcementStatus should be of the form "SetEnforcementStatus ..." (golint)
    • Line 330: warning: exported method AccountManager.AccountToClients should have comment or be unexported (golint)
    • Line 341: warning: exported method AccountManager.Register should have comment or be unexported (golint)
    • Line 464: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 784: warning: exported method AccountManager.Verify should have comment or be unexported (golint)
    • Line 923: warning: comment on exported method AccountManager.SARegister should be of the form "SARegister ..." (golint)
    • Line 943: warning: exported method AccountManager.SetNickReserved should have comment or be unexported (golint)
    • Line 1128: warning: exported method AccountManager.AuthenticateByPassphrase should have comment or be unexported (golint)
    • Line 1206: warning: exported method AccountManager.LoadAccount should have comment or be unexported (golint)
    • Line 1226: warning: comment on exported method AccountManager.AccountToAccountName should be of the form "AccountToAccountName ..." (golint)
    • Line 1322: warning: exported type AccountSuspension should have comment or be unexported (golint)
    • Line 1330: warning: exported method AccountManager.Suspend should have comment or be unexported (golint)
    • Line 1392: warning: exported method AccountManager.Unsuspend should have comment or be unexported (golint)
    • Line 1415: warning: exported method AccountManager.ListSuspended should have comment or be unexported (golint)
    • Line 1448: warning: comment on exported method AccountManager.Rename should be of the form "Rename ..." (golint)
    • Line 1478: warning: exported method AccountManager.Unregister should have comment or be unexported (golint)
    • Line 1615: warning: exported method AccountManager.ChannelsForAccount should have comment or be unexported (golint)
    • Line 1630: warning: exported method AccountManager.AuthenticateByCertificate should have comment or be unexported (golint)
    • Line 1697: warning: exported method AccountManager.ModifyAccountSettings should have comment or be unexported (golint)
    • Line 1736: warning: comment on exported type VHostInfo should be of the form "VHostInfo ..." (with optional leading article) (golint)
    • Line 1745: warning: exported method AccountManager.VHostSet should have comment or be unexported (golint)
    • Line 1756: warning: exported method AccountManager.VHostSetEnabled should have comment or be unexported (golint)
    • Line 1847: warning: exported method AccountManager.Login should have comment or be unexported (golint)
    • Line 1858: warning: exported method AccountManager.Logout should have comment or be unexported (golint)
    • Line 1894: warning: exported type CredentialsVersion should have comment or be unexported (golint)
    • Line 1897: warning: exported const CredentialsLegacy should have comment (or a comment on this block) or be unexported (golint)
    • Line 1899: warning: comment on exported const CredentialsAtheme should be of the form "CredentialsAtheme ..." (golint)
    • Line 1911: warning: exported method AccountCredentials.Empty should have comment or be unexported (golint)
    • Line 1915: warning: comment on exported method AccountCredentials.Serialize should be of the form "Serialize ..." (golint)
    • Line 1925: warning: exported method AccountCredentials.SetPassphrase should have comment or be unexported (golint)
    • Line 1943: warning: exported method AccountCredentials.AddCertfp should have comment or be unexported (golint)
    • Line 1965: warning: exported method AccountCredentials.RemoveCertfp should have comment or be unexported (golint)
    • Line 1984: warning: exported type MulticlientAllowedSetting should have comment or be unexported (golint)
    • Line 1987: warning: exported const MulticlientAllowedServerDefault should have comment (or a comment on this block) or be unexported (golint)
    • Line 1992: warning: comment on exported type ReplayJoinsSetting should be of the form "ReplayJoinsSetting ..." (with optional leading article) (golint)
    • Line 1997: warning: exported const ReplayJoinsCommandsOnly should have comment (or a comment on this block) or be unexported (golint)
    • Line 2016: warning: comment on exported type AccountSettings should be of the form "AccountSettings ..." (with optional leading article) (golint)
    • oragono/irc/utils/sync.go
    • Line 18: warning: exported method Once.Do should have comment or be unexported (golint)
    • Line 33: warning: exported method Once.Done should have comment or be unexported (golint)
    • oragono/irc/fakelag.go
    • Line 13: warning: exported type FakelagState should have comment or be unexported (golint)
    • Line 16: warning: comment on exported const FakelagBursting should be of the form "FakelagBursting ..." (golint)
    • Line 19: warning: comment on exported const FakelagThrottled should be of the form "FakelagThrottled ..." (golint)
    • Line 24: warning: comment on exported type Fakelag should be of the form "Fakelag ..." (with optional leading article) (golint)
    • Line 37: warning: exported method Fakelag.Initialize should have comment or be unexported (golint)
    • Line 44: warning: comment on exported method Fakelag.Suspend should be of the form "Suspend ..." (golint)
    • Line 52: warning: comment on exported method Fakelag.Unsuspend should be of the form "Unsuspend ..." (golint)
    • Line 60: warning: comment on exported method Fakelag.Touch should be of the form "Touch ..." (golint)
    • oragono/irc/help.go
    • Line 666: warning: exported type HelpIndexManager should have comment or be unexported (golint)
    • Line 761: warning: comment on exported method HelpIndexManager.GetIndex should be of the form "GetIndex ..." (golint)
    • oragono/irc/monitor.go
    • Line 21: warning: exported method MonitorManager.Initialize should have comment or be unexported (golint)
    • Line 27: warning: receiver name manager should be consistent with previous receiver name mm for MonitorManager (golint)
    • Line 47: warning: receiver name manager should be consistent with previous receiver name mm for MonitorManager (golint)
    • Line 73: warning: receiver name manager should be consistent with previous receiver name mm for MonitorManager (golint)
    • Line 87: warning: receiver name manager should be consistent with previous receiver name mm for MonitorManager (golint)
    • Line 98: warning: receiver name manager should be consistent with previous receiver name mm for MonitorManager (golint)
    • oragono/irc/email/email.go
    • Line 17: warning: exported var ErrBlacklistedAddress should have comment or be unexported (golint)
    • Line 22: warning: exported type MTAConfig should have comment or be unexported (golint)
    • Line 29: warning: exported type MailtoConfig should have comment or be unexported (golint)
    • Line 45: warning: exported method MailtoConfig.Postprocess should have comment or be unexported (golint)
    • Line 91: warning: exported function SendMail should have comment or be unexported (golint)
    • oragono/irc/utils/text.go
    • Line 11: warning: exported function IsRestrictedCTCPMessage should have comment or be unexported (golint)
    • Line 17: warning: exported type MessagePair should have comment or be unexported (golint)
    • Line 35: warning: exported function MakeMessage should have comment or be unexported (golint)
    • Line 43: warning: exported method SplitMessage.Append should have comment or be unexported (golint)
    • Line 53: warning: exported method SplitMessage.SetTime should have comment or be unexported (golint)
    • Line 58: warning: exported method SplitMessage.LenLines should have comment or be unexported (golint)
    • Line 62: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 69: warning: exported method SplitMessage.ValidMultiline should have comment or be unexported (golint)
    • Line 79: warning: exported method SplitMessage.IsRestrictedCTCPMessage should have comment or be unexported (golint)
    • Line 91: warning: exported method SplitMessage.Is512 should have comment or be unexported (golint)
    • Line 104: warning: exported method TokenLineBuilder.Initialize should have comment or be unexported (golint)
    • oragono/irc/gateways.go
    • Line 67: warning: error should be the last type when returning multiple items (golint)
    • Line 136: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • oragono/irc/ircconn.go
    • Line 55: warning: exported function NewIRCStreamConn should have comment or be unexported (golint)
    • Line 62: warning: exported method IRCStreamConn.UnderlyingConn should have comment or be unexported (golint)
    • Line 66: warning: exported method IRCStreamConn.WriteLine should have comment or be unexported (golint)
    • Line 71: warning: exported method IRCStreamConn.WriteLines should have comment or be unexported (golint)
    • Line 78: warning: exported method IRCStreamConn.ReadLine should have comment or be unexported (golint)
    • Line 89: warning: exported method IRCStreamConn.Close should have comment or be unexported (golint)
    • Line 99: warning: exported function NewIRCWSConn should have comment or be unexported (golint)
    • Line 104: warning: exported method IRCWSConn.UnderlyingConn should have comment or be unexported (golint)
    • Line 110: warning: exported method IRCWSConn.WriteLine should have comment or be unexported (golint)
    • Line 120: warning: exported method IRCWSConn.WriteLines should have comment or be unexported (golint)
    • Line 130: warning: exported method IRCWSConn.ReadLine should have comment or be unexported (golint)
    • Line 144: warning: exported method IRCWSConn.Close should have comment or be unexported (golint)
    • oragono/irc/passwd/bcrypt.go
    • Line 10: warning: exported const MinCost should have comment (or a comment on this block) or be unexported (golint)
    • Line 26: warning: exported function GenerateFromPassword should have comment or be unexported (golint)
    • Line 31: warning: exported function CompareHashAndPassword should have comment or be unexported (golint)
    • oragono/irc/channel.go
    • Line 24: warning: exported type ChannelSettings should have comment or be unexported (golint)
    • Line 110: warning: exported method Channel.IsLoaded should have comment or be unexported (golint)
    • Line 153: warning: comment on exported method Channel.ExportRegistration should be of the form "ExportRegistration ..." (golint)
    • Line 384: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 389: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 538: warning: exported method Channel.ClientPrefixes should have comment or be unexported (golint)
    • Line 544: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 549: warning: exported method Channel.ClientStatus should have comment or be unexported (golint)
    • Line 585: warning: exported method Channel.ClientHasPrivsOver should have comment or be unexported (golint)
    • Line 657: warning: exported method Channel.IsEmpty should have comment or be unexported (golint)
    • Line 708: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 711: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 717: warning: exported method Channel.AddHistoryItem should have comment or be unexported (golint)
    • Line 732: warning: error should be the last type when returning multiple items (golint)
    • Line 1272: warning: exported method Channel.SendSplitMessage should have comment or be unexported (golint)
    • Line 1429: warning: exported method Channel.Kick should have comment or be unexported (golint)
    • Line 1471: warning: comment on exported method Channel.Purge should be of the form "Purge ..." (golint)
    • oragono/irc/channelreg.go
    • Line 115: warning: exported type ChannelPurgeRecord should have comment or be unexported (golint)
    • Line 126: warning: comment on exported method ChannelRegistry.Initialize should be of the form "Initialize ..." (golint)
    • oragono/irc/cloaks/cloaks.go
    • Line 14: warning: exported type CloakConfig should have comment or be unexported (golint)
    • Line 29: warning: exported method CloakConfig.Initialize should have comment or be unexported (golint)
    • Line 48: warning: exported method CloakConfig.SetSecret should have comment or be unexported (golint)
    • Line 52: warning: comment on exported method CloakConfig.ComputeCloak should be of the form "ComputeCloak ..." (golint)
    • Line 55: warning: receiver name config should be consistent with previous receiver name cloakConfig for CloakConfig (golint)
    • Line 72: warning: receiver name config should be consistent with previous receiver name cloakConfig for CloakConfig (golint)
    • Line 83: warning: exported method CloakConfig.ComputeAccountCloak should have comment or be unexported (golint)
    • Line 83: warning: receiver name config should be consistent with previous receiver name cloakConfig for CloakConfig (golint)
    • oragono/irc/utils/proxy.go
    • Line 40: warning: exported var ErrBadProxyLine should have comment or be unexported (golint)
    • Line 206: warning: comment on exported type WrappedConn should be of the form "WrappedConn ..." (with optional leading article) (golint)
    • Line 228: warning: exported function NewReloadableListener should have comment or be unexported (golint)
    • Line 235: warning: exported method ReloadableListener.Reload should have comment or be unexported (golint)
    • Line 241: warning: exported method ReloadableListener.Accept should have comment or be unexported (golint)
    • Line 286: warning: exported method ReloadableListener.Close should have comment or be unexported (golint)
    • Line 294: warning: exported method ReloadableListener.Addr should have comment or be unexported (golint)
    • oragono/irc/responsebuffer.go
    • Line 60: warning: exported method ResponseBuffer.AddMessage should have comment or be unexported (golint)
    • Line 193: warning: comment on exported method ResponseBuffer.StartNestedBatch should be of the form "StartNestedBatch ..." (golint)
    • Line 206: warning: comment on exported method ResponseBuffer.EndNestedBatch should be of the form "EndNestedBatch ..." (golint)
    • Line 222: warning: comment on exported method ResponseBuffer.StartNestedHistoryBatch should be of the form "StartNestedHistoryBatch ..." (golint)
    • oragono/irc/connection_limits/limiter.go
    • Line 4: warning: don't use an underscore in package name (golint)
    • Line 18: warning: exported var ErrLimitExceeded should have comment or be unexported (golint)
    • Line 22: warning: exported type CustomLimitConfig should have comment or be unexported (golint)
    • Line 61: warning: exported type LimiterConfig should have comment or be unexported (golint)
    • Line 68: warning: exported method LimiterConfig.UnmarshalYAML should have comment or be unexported (golint)
    • Line 214: warning: exported type LimiterStatus should have comment or be unexported (golint)
    • Line 225: warning: exported method Limiter.Status should have comment or be unexported (golint)
    • oragono/irc/getters.go
    • Line 18: warning: exported method Server.Config should have comment or be unexported (golint)
    • Line 22: warning: exported method Server.SetConfig should have comment or be unexported (golint)
    • Line 26: warning: exported method Server.ChannelRegistrationEnabled should have comment or be unexported (golint)
    • Line 30: warning: exported method Server.GetOperator should have comment or be unexported (golint)
    • Line 38: warning: exported method Server.Languages should have comment or be unexported (golint)
    • Line 42: warning: exported method Server.Defcon should have comment or be unexported (golint)
    • Line 46: warning: exported method Server.SetDefcon should have comment or be unexported (golint)
    • Line 50: warning: exported method Client.Sessions should have comment or be unexported (golint)
    • Line 57: warning: exported type SessionData should have comment or be unexported (golint)
    • Line 69: warning: exported method Client.AllSessionData should have comment or be unexported (golint)
    • Line 100: warning: exported method Client.AddSession should have comment or be unexported (golint)
    • Line 148: warning: exported method Client.Nick should have comment or be unexported (golint)
    • Line 154: warning: exported method Client.NickMaskString should have comment or be unexported (golint)
    • Line 160: warning: exported method Client.NickCasefolded should have comment or be unexported (golint)
    • Line 166: warning: exported method Client.NickMaskCasefolded should have comment or be unexported (golint)
    • Line 172: warning: exported method Client.Username should have comment or be unexported (golint)
    • Line 178: warning: exported method Client.Hostname should have comment or be unexported (golint)
    • Line 184: warning: exported method Client.Away should have comment or be unexported (golint)
    • Line 192: warning: exported method Session.SetAway should have comment or be unexported (golint)
    • Line 234: warning: exported method Client.AlwaysOn should have comment or be unexported (golint)
    • Line 250: warning: exported method Client.Oper should have comment or be unexported (golint)
    • Line 256: warning: exported method Client.Registered should have comment or be unexported (golint)
    • Line 267: warning: exported method Client.RawHostname should have comment or be unexported (golint)
    • Line 274: warning: exported method Client.AwayMessage should have comment or be unexported (golint)
    • Line 281: warning: exported method Client.Account should have comment or be unexported (golint)
    • Line 287: warning: exported method Client.AccountName should have comment or be unexported (golint)
    • Line 293: warning: exported method Client.Login should have comment or be unexported (golint)
    • Line 320: warning: exported method Client.CloakedHostname should have comment or be unexported (golint)
    • Line 337: warning: exported method Client.Logout should have comment or be unexported (golint)
    • Line 347: warning: exported method Client.AccountSettings should have comment or be unexported (golint)
    • Line 354: warning: exported method Client.SetAccountSettings should have comment or be unexported (golint)
    • Line 372: warning: exported method Client.Languages should have comment or be unexported (golint)
    • Line 379: warning: exported method Client.SetLanguages should have comment or be unexported (golint)
    • Line 385: warning: exported method Client.HasMode should have comment or be unexported (golint)
    • Line 390: warning: exported method Client.SetMode should have comment or be unexported (golint)
    • Line 394: warning: exported method Client.SetRealname should have comment or be unexported (golint)
    • Line 404: warning: exported method Client.Channels should have comment or be unexported (golint)
    • Line 417: warning: exported method Client.NumChannels should have comment or be unexported (golint)
    • Line 423: warning: exported method Client.WhoWas should have comment or be unexported (golint)
    • Line 427: warning: exported method Client.Details should have comment or be unexported (golint)
    • Line 446: warning: exported method Client.UpdateActive should have comment or be unexported (golint)
    • Line 454: warning: exported method Client.Realname should have comment or be unexported (golint)
    • Line 461: warning: exported method Client.IsExpiredAlwaysOn should have comment or be unexported (golint)
    • Line 484: warning: exported method Channel.Name should have comment or be unexported (golint)
    • Line 490: warning: exported method Channel.NameCasefolded should have comment or be unexported (golint)
    • Line 496: warning: exported method Channel.Rename should have comment or be unexported (golint)
    • Line 508: warning: exported method Channel.Members should have comment or be unexported (golint)
    • Line 526: warning: exported method Channel.Founder should have comment or be unexported (golint)
    • Line 532: warning: exported method Channel.HighestUserMode should have comment or be unexported (golint)
    • Line 539: warning: exported method Channel.Settings should have comment or be unexported (golint)
    • Line 546: warning: exported method Channel.SetSettings should have comment or be unexported (golint)
    • Line 559: warning: exported method Channel.Ctime should have comment or be unexported (golint)
    • oragono/irc/message_cache.go
    • Line 71: warning: exported method MessageCache.Initialize should have comment or be unexported (golint)
    • Line 103: warning: exported method MessageCache.InitializeSplitMessage should have comment or be unexported (golint)
    • Line 182: warning: exported method MessageCache.Send should have comment or be unexported (golint)
    • oragono/irc/caps/constants.go
    • Line 16: warning: error var NoSuchCap should have name of the form ErrFoo (golint)
    • Line 16: warning: exported var NoSuchCap should have comment or be unexported (golint)
    • Line 24: warning: exported function NameToCapability should have comment or be unexported (golint)
    • Line 58: warning: comment on exported const MultilineBatchType should be of the form "MultilineBatchType ..." (golint)
    • Line 60: warning: exported const MultilineConcatTag should have comment (or a comment on this block) or be unexported (golint)
    • Line 61: warning: comment on exported const RelaymsgTagName should be of the form "RelaymsgTagName ..." (golint)
    • Line 63: warning: comment on exported const BotTagName should be of the form "BotTagName ..." (golint)
    • oragono/irc/jwt/extjwt.go
    • Line 20: warning: exported var ErrNoKeys should have comment or be unexported (golint)
    • Line 23: warning: exported type MapClaims should have comment or be unexported (golint)
    • Line 25: warning: exported type JwtServiceConfig should have comment or be unexported (golint)
    • Line 33: warning: exported method JwtServiceConfig.Postprocess should have comment or be unexported (golint)
    • Line 61: warning: exported method JwtServiceConfig.Enabled should have comment or be unexported (golint)
    • Line 65: warning: exported method JwtServiceConfig.Sign should have comment or be unexported (golint)
    • oragono/irc/flatip/flatip_test.go
    • Line 41: warning: don't use underscores in Go names; var localhost_v4 should be localhostV4 (golint)
    • Line 42: warning: don't use underscores in Go names; var localhost_v4_again should be localhostV4Again (golint)
    • Line 44: warning: don't use underscores in Go names; var loopback_v6 should be loopbackV6 (golint)
    • Line 45: warning: don't use underscores in Go names; var google_v6 should be googleV6 (golint)
    • Line 60: warning: don't use underscores in Go names; var flatip_ should be flatip (golint)
    • oragono/irc/sno/utils.go
    • Line 11: warning: exported function IsValidMask should have comment or be unexported (golint)
    • Line 29: warning: exported method Masks.Contains should have comment or be unexported (golint)
    • Line 38: warning: exported method Masks.Sort should have comment or be unexported (golint)
    • Line 42: warning: comment on exported function EvaluateSnomaskChanges should be of the form "EvaluateSnomaskChanges ..." (golint)
    • oragono/irc/mysql/history.go
    • Line 22: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • Line 26: warning: exported var ErrDisallowed should have comment or be unexported (golint)
    • Line 30: warning: comment on exported const MaxTargetLength should be of the form "MaxTargetLength ..." (golint)
    • Line 47: warning: exported type MySQL should have comment or be unexported (golint)
    • Line 65: warning: exported method MySQL.Initialize should have comment or be unexported (golint)
    • Line 71: warning: exported method MySQL.SetConfig should have comment or be unexported (golint)
    • Line 90: warning: exported method MySQL.Open should have comment or be unexported (golint)
    • Line 90: warning: receiver name m should be consistent with previous receiver name mysql for MySQL (golint)
    • Line 572: warning: exported method MySQL.Forget should have comment or be unexported (golint)
    • Line 592: warning: exported method MySQL.AddChannelItem should have comment or be unexported (golint)
    • Line 672: warning: exported method MySQL.AddDirectMessage should have comment or be unexported (golint)
    • Line 725: warning: comment on exported method MySQL.DeleteMsgid should be of the form "DeleteMsgid ..." (golint)
    • Line 753: warning: exported method MySQL.Export should have comment or be unexported (golint)
    • Line 973: warning: exported method MySQL.ListChannels should have comment or be unexported (golint)
    • Line 1021: warning: exported method MySQL.Close should have comment or be unexported (golint)
    • Line 1065: warning: receiver name seq should be consistent with previous receiver name s for mySQLHistorySequence (golint)
    • Line 1078: warning: receiver name seq should be consistent with previous receiver name s for mySQLHistorySequence (golint)
    • Line 1082: warning: receiver name seq should be consistent with previous receiver name s for mySQLHistorySequence (golint)
    • Line 1086: warning: exported method MySQL.MakeSequence should have comment or be unexported (golint)
    • oragono/irc/utils/crypto.go
    • Line 22: warning: comment on exported var B32Encoder should be of the form "B32Encoder ..." (golint)
    • Line 25: warning: exported var ErrInvalidCertfp should have comment or be unexported (golint)
    • Line 33: warning: exported const SecretTokenLength should have comment (or a comment on this block) or be unexported (golint)
    • Line 36: warning: comment on exported function GenerateSecretToken should be of the form "GenerateSecretToken ..." (golint)
    • Line 45: warning: comment on exported function MungeSecretToken should be of the form "MungeSecretToken ..." (golint)
    • Line 68: warning: comment on exported function SecretTokensMatch should be of the form "SecretTokensMatch ..." (golint)
    • Line 79: warning: comment on exported function GenerateSecretKey should be of the form "GenerateSecretKey ..." (golint)
    • Line 86: warning: comment on exported function NormalizeCertfp should be of the form "NormalizeCertfp ..." (golint)
    • Line 96: warning: exported function GetCertFP should have comment or be unexported (golint)
    • oragono/irc/migrations/passwords.go
    • Line 24: warning: exported var ErrHashInvalid should have comment or be unexported (golint)
    • Line 32: warning: exported type PassphraseCheck should have comment or be unexported (golint)
    • Line 34: warning: exported function CheckAthemePassphrase should have comment or be unexported (golint)
    • Line 162: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 185: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 213: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 230: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 235: warning: exported function CheckAnopePassphrase should have comment or be unexported (golint)
    • Line 249: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 261: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • oragono/irc/history/targets.go
    • Line 11: warning: exported type TargetListing should have comment or be unexported (golint)
    • Line 16: warning: comment on exported function MergeTargets should be of the form "MergeTargets ..." (golint)
    • Line 72: warning: exported function ReverseCorrespondents should have comment or be unexported (golint)
    • Line 79: warning: exported function SortCorrespondents should have comment or be unexported (golint)
    • oragono/irc/usermaskset.go
    • Line 19: warning: exported type MaskInfo should have comment or be unexported (golint)
    • Line 34: warning: exported function NewUserMaskSet should have comment or be unexported (golint)
    • Line 93: warning: exported method UserMaskSet.SetMasks should have comment or be unexported (golint)
    • Line 100: warning: exported method UserMaskSet.Masks should have comment or be unexported (golint)
    • Line 131: warning: exported method UserMaskSet.MuteRegexp should have comment or be unexported (golint)
    • Line 135: warning: exported method UserMaskSet.Length should have comment or be unexported (golint)
    • oragono/irc/utils/types.go
    • Line 8: warning: exported type StringSet should have comment or be unexported (golint)
    • Line 10: warning: exported method StringSet.Has should have comment or be unexported (golint)
    • Line 15: warning: exported method StringSet.Add should have comment or be unexported (golint)
    • oragono/irc/modes/modes.go
    • Line 60: warning: exported method ModeChanges.Strings should have comment or be unexported (golint)
    • Line 136: warning: exported var ChannelFounder should have comment or be unexported (golint)
    • Line 342: warning: comment on exported function NewModeSet should be of the form "NewModeSet ..." (golint)
    • Line 348: warning: comment on exported method ModeSet.HasMode should be of the form "HasMode ..." (golint)
    • Line 357: warning: comment on exported method ModeSet.SetMode should be of the form "SetMode ..." (golint)
    • Line 362: warning: comment on exported method ModeSet.Copy should be of the form "Copy ..." (golint)
    • Line 367: warning: comment on exported method ModeSet.AllModes should be of the form "AllModes ..." (golint)
    • Line 427: warning: exported type ByCodepoint should have comment or be unexported (golint)
    • Line 433: warning: exported function RplMyInfo should have comment or be unexported (golint)
    • Line 453: warning: exported function ChanmodesToken should have comment or be unexported (golint)
    • oragono/irc/utils/args.go
    • Line 14: warning: exported const IRCv3TimestampFormat should have comment (or a comment on this block) or be unexported (golint)
    • Line 18: warning: exported var ErrInvalidParams should have comment or be unexported (golint)
    • Line 21: warning: exported function StringToBool should have comment or be unexported (golint)
    • Line 33: warning: comment on exported function SafeErrorParam should be of the form "SafeErrorParam ..." (golint)
    • Line 42: warning: exported type IncompatibleSchemaError should have comment or be unexported (golint)
    • Line 51: warning: exported function NanoToTimestamp should have comment or be unexported (golint)
    • Line 55: warning: exported function BoolDefaultTrue should have comment or be unexported (golint)
    • oragono/irc/client.go
    • Line 34: warning: comment on exported const DefaultMaxLineLen should be of the form "DefaultMaxLineLen ..." (golint)
    • Line 39: warning: exported const IRCv3TimestampFormat should have comment (or a comment on this block) or be unexported (golint)
    • Line 52: warning: comment on exported const TorIdleTimeout should be of the form "TorIdleTimeout ..." (golint)
    • Line 56: warning: comment on exported const DefaultTotalTimeout should be of the form "DefaultTotalTimeout ..." (golint)
    • Line 60: warning: comment on exported const PingCoalesceThreshold should be of the form "PingCoalesceThreshold ..." (golint)
    • Line 65: warning: exported var MaxLineLen should have comment or be unexported (golint)
    • Line 194: warning: comment on exported method Session.StartMultilineBatch should be of the form "StartMultilineBatch ..." (golint)
    • Line 205: warning: comment on exported method Session.EndMultilineBatch should be of the form "EndMultilineBatch ..." (golint)
    • Line 231: warning: receiver name sd should be consistent with previous receiver name s for Session (golint)
    • Line 238: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 243: warning: exported method Session.IP should have comment or be unexported (golint)
    • Line 250: warning: comment on exported method Session.HasHistoryCaps should be of the form "HasHistoryCaps ..." (golint)
    • Line 252: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 260: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 387: warning: exported method Server.AddAlwaysOnClient should have comment or be unexported (golint)
    • Line 444: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 563: warning: exported type AuthOutcome should have comment or be unexported (golint)
    • Line 590: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 813: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 858: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 867: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1033: warning: exported method Client.SetOper should have comment or be unexported (golint)
    • Line 1398: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1423: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1486: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1514: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1534: warning: don't use underscores in Go names; var err_ should be err (golint)
    • Line 1542: warning: exported method Session.Send should have comment or be unexported (golint)
    • Line 1542: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1548: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1562: warning: exported method Session.Notice should have comment or be unexported (golint)
    • Line 1562: warning: receiver name session should be consistent with previous receiver name s for Session (golint)
    • Line 1604: warning: comment on exported method Client.Invite should be of the form "Invite ..." (golint)
    • Line 1622: warning: exported method Client.Uninvite should have comment or be unexported (golint)
    • Line 1628: warning: comment on exported method Client.CheckInvited should be of the form "CheckInvited ..." (golint)
    • Line 1878: warning: comment on exported method Client.Store should be of the form "Store ..." (golint)
    • oragono/irc/nickserv.go
    • Line 509: warning: don't use underscores in Go names; var err_ should be err (golint)
    • Line 848: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 1382: warning: comment on exported type ByCreationTime should be of the form "ByCreationTime ..." (with optional leading article) (golint)

gocyclo78%

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.

    • oragono/irc/client.go
    • Line 1194: warning: cyclomatic complexity 41 of function (*Client).destroy() is high (> 15) (gocyclo)
    • Line 627: warning: cyclomatic complexity 25 of function (*Client).run() is high (> 15) (gocyclo)
    • oragono/irc/nickserv.go
    • Line 477: warning: cyclomatic complexity 37 of function nsSetHandler() is high (> 15) (gocyclo)
    • Line 1215: warning: cyclomatic complexity 32 of function nsCertHandler() is high (> 15) (gocyclo)
    • Line 384: warning: cyclomatic complexity 27 of function displaySetting() is high (> 15) (gocyclo)
    • Line 1014: warning: cyclomatic complexity 19 of function nsPasswdHandler() is high (> 15) (gocyclo)
    • Line 835: warning: cyclomatic complexity 16 of function nsRegisterHandler() is high (> 15) (gocyclo)
    • oragono/irc/config.go
    • Line 1093: warning: cyclomatic complexity 106 of function LoadConfig() is high (> 15) (gocyclo)
    • Line 1025: warning: cyclomatic complexity 18 of function mungeFromEnvironment() is high (> 15) (gocyclo)
    • oragono/irc/handlers.go
    • Line 2109: warning: cyclomatic complexity 43 of function dispatchMessageToTarget() is high (> 15) (gocyclo)
    • Line 533: warning: cyclomatic complexity 40 of function chathistoryHandler() is high (> 15) (gocyclo)
    • Line 3239: warning: cyclomatic complexity 31 of function whoHandler() is high (> 15) (gocyclo)
    • Line 424: warning: cyclomatic complexity 29 of function capHandler() is high (> 15) (gocyclo)
    • Line 1547: warning: cyclomatic complexity 28 of function listHandler() is high (> 15) (gocyclo)
    • Line 1351: warning: cyclomatic complexity 28 of function klineHandler() is high (> 15) (gocyclo)
    • Line 809: warning: cyclomatic complexity 27 of function dlineHandler() is high (> 15) (gocyclo)
    • Line 3144: warning: cyclomatic complexity 26 of function (*Client).rplWhoReply() is high (> 15) (gocyclo)
    • Line 2490: warning: cyclomatic complexity 21 of function registerHandler() is high (> 15) (gocyclo)
    • Line 2721: warning: cyclomatic complexity 21 of function renameHandler() is high (> 15) (gocyclo)
    • Line 2620: warning: cyclomatic complexity 19 of function relaymsgHandler() is high (> 15) (gocyclo)
    • Line 2047: warning: cyclomatic complexity 17 of function messageHandler() is high (> 15) (gocyclo)
    • Line 3065: warning: cyclomatic complexity 17 of function webircHandler() is high (> 15) (gocyclo)
    • Line 143: warning: cyclomatic complexity 16 of function authenticateHandler() is high (> 15) (gocyclo)
    • oragono/irc/accounts.go
    • Line 943: warning: cyclomatic complexity 31 of function (*AccountManager).SetNickReserved() is high (> 15) (gocyclo)
    • Line 341: warning: cyclomatic complexity 30 of function (*AccountManager).Register() is high (> 15) (gocyclo)
    • Line 784: warning: cyclomatic complexity 28 of function (*AccountManager).Verify() is high (> 15) (gocyclo)
    • Line 1478: warning: cyclomatic complexity 17 of function (*AccountManager).Unregister() is high (> 15) (gocyclo)
    • Line 1630: warning: cyclomatic complexity 16 of function (*AccountManager).AuthenticateByCertificate() is high (> 15) (gocyclo)
    • oragono/irc/modes.go
    • Line 159: warning: cyclomatic complexity 54 of function (*Channel).ApplyChannelModeChanges() is high (> 15) (gocyclo)
    • Line 33: warning: cyclomatic complexity 29 of function ApplyUserModeChanges() is high (> 15) (gocyclo)
    • Line 367: warning: cyclomatic complexity 20 of function (*Channel).ProcessAccountToUmodeChange() is high (> 15) (gocyclo)
    • oragono/irc/server.go
    • Line 547: warning: cyclomatic complexity 50 of function (*Server).applyConfig() is high (> 15) (gocyclo)
    • Line 868: warning: cyclomatic complexity 25 of function (*Server).GetHistorySequence() is high (> 15) (gocyclo)
    • Line 160: warning: cyclomatic complexity 19 of function (*Server).checkBans() is high (> 15) (gocyclo)
    • Line 273: warning: cyclomatic complexity 18 of function (*Server).tryRegister() is high (> 15) (gocyclo)
    • Line 465: warning: cyclomatic complexity 17 of function (*Client).getWhoisOf() is high (> 15) (gocyclo)
    • oragono/irc/channel.go
    • Line 732: warning: cyclomatic complexity 43 of function (*Channel).Join() is high (> 15) (gocyclo)
    • Line 1038: warning: cyclomatic complexity 30 of function (*Channel).replayHistoryItems() is high (> 15) (gocyclo)
    • Line 1272: warning: cyclomatic complexity 22 of function (*Channel).SendSplitMessage() is high (> 15) (gocyclo)
    • Line 440: warning: cyclomatic complexity 20 of function (*Channel).Names() is high (> 15) (gocyclo)
    • oragono/irc/chanserv.go
    • Line 877: warning: cyclomatic complexity 20 of function csHowToBanHandler() is high (> 15) (gocyclo)
    • Line 203: warning: cyclomatic complexity 20 of function csAmodeHandler() is high (> 15) (gocyclo)
    • Line 529: warning: cyclomatic complexity 17 of function csTransferHandler() is high (> 15) (gocyclo)

ineffassign96%

IneffAssign detects ineffectual assignments in Go code.


license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


misspell96%

Misspell Finds commonly misspelled English words