Preparing report...

Report for github.com/OOTR-Ladder/kaepora

A+    Excellent!    Found 34 issues across 77 files

Tweet

gofmt98%

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


go_vet100%

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

No problems detected. Good job!


gocyclo96%

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.


golint59%

Golint is a linter for Go source code.

    • kaepora/internal/back/notification.go
    • Line 19: warning: exported type NotificationRecipientType should have comment or be unexported (golint)
    • Line 22: warning: exported const NotificationRecipientTypeDiscordChannel should have comment (or a comment on this block) or be unexported (golint)
    • Line 26: warning: exported type NotificationType should have comment or be unexported (golint)
    • Line 29: warning: exported const NotificationTypeMatchSessionStatusUpdate should have comment (or a comment on this block) or be unexported (golint)
    • Line 40: warning: exported type NotificationFile should have comment or be unexported (golint)
    • Line 46: warning: exported type Notification should have comment or be unexported (golint)
    • Line 55: warning: exported method Notification.SetDiscordUserRecipient should have comment or be unexported (golint)
    • Line 60: warning: exported method Notification.Printf should have comment or be unexported (golint)
    • Line 64: warning: exported method Notification.Print should have comment or be unexported (golint)
    • Line 76: warning: exported method Notification.Reset should have comment or be unexported (golint)
    • Line 81: warning: exported function NotificationTypeName should have comment or be unexported (golint)
    • Line 106: warning: exported function NotificationRecipientTypeName should have comment or be unexported (golint)
    • Line 502: warning: exported type RecapScope should have comment or be unexported (golint)
    • Line 505: warning: exported const RecapScopePublic should have comment (or a comment on this block) or be unexported (golint)
    • kaepora/internal/generator/generator.go
    • Line 37: warning: exported function NewTest should have comment or be unexported (golint)
    • Line 41: warning: exported method Test.Generate should have comment or be unexported (golint)
    • Line 60: warning: exported method Test.GetDownloadURL should have comment or be unexported (golint)
    • Line 64: warning: exported method Test.IsExternal should have comment or be unexported (golint)
    • Line 68: warning: exported method Test.UnlockSpoilerLog should have comment or be unexported (golint)
    • kaepora/internal/generator/factory/factory.go
    • Line 18: warning: exported function New should have comment or be unexported (golint)
    • Line 24: warning: exported method Factory.NewGenerator should have comment or be unexported (golint)
    • Line 41: warning: exported function OverrideVersion should have comment or be unexported (golint)
    • kaepora/internal/util/sql_uuid_array.go
    • Line 14: warning: exported method UUIDArrayAsJSON.Value should have comment or be unexported (golint)
    • Line 18: warning: exported method UUIDArrayAsJSON.Slice should have comment or be unexported (golint)
    • Line 22: warning: exported method UUIDArrayAsJSON.Scan should have comment or be unexported (golint)
    • kaepora/internal/generator/oot/settings_randomizer.go
    • Line 17: warning: exported const SettingsRandomizerName should have comment (or a comment on this block) or be unexported (golint)
    • Line 26: warning: exported function NewSettingsRandomizer should have comment or be unexported (golint)
    • Line 100: warning: exported method SettingsRandomizer.Generate should have comment or be unexported (golint)
    • Line 144: warning: exported method SettingsRandomizer.GetDownloadURL should have comment or be unexported (golint)
    • Line 148: warning: exported method SettingsRandomizer.IsExternal should have comment or be unexported (golint)
    • Line 152: warning: exported method SettingsRandomizer.UnlockSpoilerLog should have comment or be unexported (golint)
    • kaepora/internal/back/match_session.go
    • Line 68: warning: exported function NewMatchSession should have comment or be unexported (golint)
    • Line 178: warning: exported method Back.GetPlayerActiveSession should have comment or be unexported (golint)
    • Line 405: warning: exported method Back.MapMatchSessions should have comment or be unexported (golint)
    • kaepora/internal/config/config.go
    • Line 43: warning: exported method Discord.CanRunBot should have comment or be unexported (golint)
    • Line 47: warning: exported method Discord.CanSetupOAuth2 should have comment or be unexported (golint)
    • Line 51: warning: exported method Discord.OAuth2 should have comment or be unexported (golint)
    • Line 68: warning: exported method Config.Scheme should have comment or be unexported (golint)
    • Line 75: warning: exported method Config.BaseURL should have comment or be unexported (golint)
    • kaepora/internal/back/schedule/config.go
    • Line 9: warning: exported type Config should have comment or be unexported (golint)
    • Line 14: warning: exported type Type should have comment or be unexported (golint)
    • Line 17: warning: exported const TypeDayOfWeek should have comment (or a comment on this block) or be unexported (golint)
    • Line 21: warning: exported method Config.Scan should have comment or be unexported (golint)
    • Line 32: warning: exported method Config.Value should have comment or be unexported (golint)
    • kaepora/internal/generator/oot/randomizer_api.go
    • Line 15: warning: exported const RandomizerAPIName should have comment or be unexported (golint)
    • Line 23: warning: exported function NewRandomizerAPI should have comment or be unexported (golint)
    • Line 30: warning: exported method RandomizerAPI.Generate should have comment or be unexported (golint)
    • Line 142: warning: exported method RandomizerAPI.GetDownloadURL should have comment or be unexported (golint)
    • Line 152: warning: exported method RandomizerAPI.IsExternal should have comment or be unexported (golint)
    • Line 156: warning: exported method RandomizerAPI.UnlockSpoilerLog should have comment or be unexported (golint)
    • kaepora/internal/back/match.go
    • Line 37: warning: exported function NewMatch should have comment or be unexported (golint)
    • Line 218: warning: exported method Match.GetPlayerAndOpponentEntries should have comment or be unexported (golint)
    • Line 232: warning: comment on exported method Match.TPLGetSelfEntry should be of the form "TPLGetSelfEntry ..." (golint)
    • Line 238: warning: comment on exported method Match.TPLGetOpponentEntry should be of the form "TPLGetOpponentEntry ..." (golint)
    • kaepora/internal/back/match_entry.go
    • Line 26: warning: exported method MatchEntry.HasEnded should have comment or be unexported (golint)
    • Line 31: warning: exported method MatchEntry.HasWon should have comment or be unexported (golint)
    • Line 35: warning: exported method MatchEntry.HasForfeit should have comment or be unexported (golint)
    • Line 39: warning: exported type MatchEntryStatus should have comment or be unexported (golint)
    • Line 42: warning: exported const MatchEntryStatusWaiting should have comment (or a comment on this block) or be unexported (golint)
    • Line 48: warning: exported type MatchEntryOutcome should have comment or be unexported (golint)
    • Line 51: warning: exported const MatchEntryOutcomeLoss should have comment (or a comment on this block) or be unexported (golint)
    • Line 56: warning: exported function NewMatchEntry should have comment or be unexported (golint)
    • kaepora/internal/util/sql_uuid_as_blob.go
    • Line 14: warning: exported function NewUUIDAsBlob should have comment or be unexported (golint)
    • Line 18: warning: exported method UUIDAsBlob.Value should have comment or be unexported (golint)
    • Line 23: warning: exported method UUIDAsBlob.UUID should have comment or be unexported (golint)
    • Line 31: warning: exported method UUIDAsBlob.IsZero should have comment or be unexported (golint)
    • Line 35: warning: exported method UUIDAsBlob.Scan should have comment or be unexported (golint)
    • Line 49: warning: exported method UUIDAsBlob.MarshalJSON should have comment or be unexported (golint)
    • Line 53: warning: exported type NullUUIDAsBlob should have comment or be unexported (golint)
    • Line 79: warning: exported method NullUUIDAsBlob.MarshalJSON should have comment or be unexported (golint)
    • kaepora/internal/generator/oot/randomizer.go
    • Line 16: warning: exported const RandomizerName should have comment or be unexported (golint)
    • Line 31: warning: exported function NewRandomizer should have comment or be unexported (golint)
    • Line 37: warning: exported method Randomizer.Generate should have comment or be unexported (golint)
    • Line 144: warning: exported method Randomizer.GetDownloadURL should have comment or be unexported (golint)
    • Line 148: warning: exported method Randomizer.IsExternal should have comment or be unexported (golint)
    • Line 152: warning: exported method Randomizer.UnlockSpoilerLog should have comment or be unexported (golint)
    • kaepora/internal/back/bot.go
    • Line 15: warning: exported method Back.GetGamesLeaguesAndTheirNextSessionStartDate should have comment or be unexported (golint)
    • Line 74: warning: exported method Back.SetLeagueAnnounceChannel should have comment or be unexported (golint)
    • Line 90: warning: exported method Back.GetPlayerByDiscordID should have comment or be unexported (golint)
    • Line 101: warning: exported type LeaderboardEntry should have comment or be unexported (golint)
    • Line 111: warning: exported method Back.GetLeaderboardsForDiscordUser should have comment or be unexported (golint)
    • kaepora/internal/generator/oot/settings_randomizer_api.go
    • Line 9: warning: exported const SettingsRandomizerAPIName should have comment or be unexported (golint)
    • Line 16: warning: exported function NewSettingsRandomizerAPI should have comment or be unexported (golint)
    • Line 22: warning: exported method SettingsRandomizerAPI.Generate should have comment or be unexported (golint)
    • Line 61: warning: exported method SettingsRandomizerAPI.GetDownloadURL should have comment or be unexported (golint)
    • Line 65: warning: exported method SettingsRandomizerAPI.IsExternal should have comment or be unexported (golint)
    • Line 69: warning: exported method SettingsRandomizerAPI.UnlockSpoilerLog should have comment or be unexported (golint)
    • kaepora/internal/generator/oot/spoiler_log.go
    • Line 48: warning: exported method Exit.Scene should have comment or be unexported (golint)
    • Line 57: warning: exported method Exit.Exit should have comment or be unexported (golint)
    • Line 145: warning: exported method SpoilerLogItem.UnmarshalJSON should have comment or be unexported (golint)
    • kaepora/internal/back/back_web.go
    • Line 85: warning: exported method Back.GetLeagues should have comment or be unexported (golint)
    • Line 107: warning: exported method Back.GetLeagueByShortcode should have comment or be unexported (golint)
    • Line 114: warning: exported method Back.GetLeague should have comment or be unexported (golint)
    • Line 121: warning: exported method Back.UpdateLeague should have comment or be unexported (golint)
    • Line 196: warning: exported method Back.GetPlayerRatings should have comment or be unexported (golint)
    • Line 246: warning: exported method Back.GetMatch should have comment or be unexported (golint)
    • Line 261: warning: exported method Back.GetPlayerByName should have comment or be unexported (golint)
    • Line 276: warning: exported method Back.GetPlayerByID should have comment or be unexported (golint)
    • Line 299: warning: exported method PlayerPerformance.MatchesPlayed should have comment or be unexported (golint)
    • Line 308: warning: exported method PlayerStats.MatchesWon should have comment or be unexported (golint)
    • Line 317: warning: exported method PlayerStats.MatchesPlayed should have comment or be unexported (golint)
    • Line 326: warning: exported method PlayerStats.MostPlayedLeagueID should have comment or be unexported (golint)
    • Line 390: warning: exported method Back.GetPlayerMatches should have comment or be unexported (golint)
    • Line 438: warning: exported method Back.DeleteLeague should have comment or be unexported (golint)
    • kaepora/internal/back/schedule/schedule.go
    • Line 9: warning: exported type Scheduler should have comment or be unexported (golint)
    • Line 19: warning: exported function New should have comment or be unexported (golint)
    • Line 39: warning: exported type VoidScheduler should have comment or be unexported (golint)
    • Line 41: warning: exported method VoidScheduler.Next should have comment or be unexported (golint)
    • Line 45: warning: exported method VoidScheduler.NextBetween should have comment or be unexported (golint)
    • kaepora/internal/util/sql_time_as_datetimetz.go
    • Line 12: warning: exported method TimeAsDateTimeTZ.Value should have comment or be unexported (golint)
    • Line 16: warning: exported method TimeAsDateTimeTZ.Time should have comment or be unexported (golint)
    • Line 24: warning: exported method TimeAsDateTimeTZ.Scan should have comment or be unexported (golint)
    • Line 44: warning: exported type NullTimeAsDateTimeTZ should have comment or be unexported (golint)
    • kaepora/internal/util/sql_time_as_timestamp.go
    • Line 14: warning: exported method TimeAsTimestamp.Value should have comment or be unexported (golint)
    • Line 18: warning: exported method TimeAsTimestamp.Time should have comment or be unexported (golint)
    • Line 22: warning: exported method TimeAsTimestamp.Scan should have comment or be unexported (golint)
    • Line 41: warning: exported method TimeAsTimestamp.MarshalJSON should have comment or be unexported (golint)
    • Line 45: warning: exported type NullTimeAsTimestamp should have comment or be unexported (golint)
    • Line 50: warning: exported function NewNullTimeAsTimestamp should have comment or be unexported (golint)
    • Line 78: warning: exported method NullTimeAsTimestamp.MarshalJSON should have comment or be unexported (golint)
    • kaepora/internal/back/back_web_stats.go
    • Line 20: warning: exported method Back.GetRatingsDistributionGraph should have comment or be unexported (golint)
    • Line 110: warning: exported method Back.GetLeagueSeedTimesGraph should have comment or be unexported (golint)
    • Line 230: warning: exported method Back.GetPlayerRatingGraph should have comment or be unexported (golint)
    • Line 256: warning: exported method Back.GetPlayerSeedTimeGraph should have comment or be unexported (golint)
    • kaepora/internal/back/player.go
    • Line 39: warning: exported function NewPlayer should have comment or be unexported (golint)
    • Line 47: warning: exported method Player.GlickoRating should have comment or be unexported (golint)
    • Line 70: warning: exported method Player.Update should have comment or be unexported (golint)
    • Line 87: warning: exported method Back.UpdatePlayer should have comment or be unexported (golint)
    • Line 111: warning: exported method Back.UpdateDiscordPlayerName should have comment or be unexported (golint)
    • Line 135: warning: exported method Back.RegisterDiscordPlayer should have comment or be unexported (golint)
    • Line 159: warning: exported method Back.UpdateDiscordPlayerStreamURL should have comment or be unexported (golint)
    • kaepora/internal/back/player_rating.go
    • Line 17: warning: exported type PlayerRating should have comment or be unexported (golint)
    • Line 38: warning: exported method PlayerRating.GlickoRating should have comment or be unexported (golint)
    • Line 42: warning: exported method PlayerRating.SetRating should have comment or be unexported (golint)
    • Line 48: warning: exported function NewPlayerRating should have comment or be unexported (golint)
    • kaepora/internal/back/schedule/rolling.go
    • Line 18: warning: exported function NewRollingScheduler should have comment or be unexported (golint)
    • Line 22: warning: exported method RollingScheduler.NextBetween should have comment or be unexported (golint)
    • Line 51: warning: exported method RollingScheduler.Next should have comment or be unexported (golint)
    • kaepora/internal/back/schedule/day_of_week.go
    • Line 23: warning: exported function NewDayOfWeekScheduler should have comment or be unexported (golint)
    • Line 47: warning: exported method DayOfWeekScheduler.NextBetween should have comment or be unexported (golint)
    • Line 129: warning: exported method DayOfWeekScheduler.Next should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign100%

IneffAssign detects ineffectual assignments in Go code.

No problems detected. Good job!


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!