Preparing report...

Report for github.com/OakmoundStudio/oak

A+    Excellent!    Found 68 issues across 471 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!


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.


golint90%

Golint is a linter for Go source code.

    • oak/shiny/driver/internal/x11/x11.go
    • Line 14: warning: exported function MoveWindow should have comment or be unexported (golint)
    • Line 42: warning: exported function ToggleFullScreen should have comment or be unexported (golint)
    • Line 46: warning: exported function SetFullScreen should have comment or be unexported (golint)
    • Line 54: warning: exported function SetBorderless should have comment or be unexported (golint)
    • oak/render/font.go
    • Line 151: warning: exported method Font.MeasureString should have comment or be unexported (golint)
    • Line 180: warning: exported method Font.DrawString should have comment or be unexported (golint)
    • oak/entities/x/btn/option.go
    • Line 166: warning: comment on exported function DisallowRevert should be of the form "DisallowRevert ..." (golint)
    • Line 183: warning: exported function Label should have comment or be unexported (golint)
    • oak/examples/slide/show/static/basicSlide.go
    • Line 12: warning: exported type Slide should have comment or be unexported (golint)
    • Line 22: warning: exported method Slide.Init should have comment or be unexported (golint)
    • Line 45: warning: exported method Slide.Continue should have comment or be unexported (golint)
    • Line 49: warning: exported method Slide.Prev should have comment or be unexported (golint)
    • Line 56: warning: exported method Slide.Append should have comment or be unexported (golint)
    • Line 62: warning: exported method Slide.Transition should have comment or be unexported (golint)
    • Line 66: warning: exported function NewSlide should have comment or be unexported (golint)
    • Line 74: warning: exported function Transition should have comment or be unexported (golint)
    • Line 81: warning: exported function Background should have comment or be unexported (golint)
    • Line 88: warning: exported function ControlKeys should have comment or be unexported (golint)
    • Line 96: warning: exported type SlideOption should have comment or be unexported (golint)
    • Line 98: warning: exported function NewSlideSet should have comment or be unexported (golint)
    • oak/default.go
    • Line 15: warning: exported function Init should have comment or be unexported (golint)
    • Line 21: warning: exported function AddCommand should have comment or be unexported (golint)
    • Line 25: warning: exported function AddScene should have comment or be unexported (golint)
    • Line 29: warning: exported function IsDown should have comment or be unexported (golint)
    • Line 33: warning: exported function IsHeld should have comment or be unexported (golint)
    • Line 37: warning: exported function SetUp should have comment or be unexported (golint)
    • Line 41: warning: exported function SetDown should have comment or be unexported (golint)
    • Line 45: warning: exported function SetViewportBounds should have comment or be unexported (golint)
    • Line 49: warning: exported function ShiftScreen should have comment or be unexported (golint)
    • Line 53: warning: exported function SetScreen should have comment or be unexported (golint)
    • Line 57: warning: exported function SetFullScreen should have comment or be unexported (golint)
    • Line 61: warning: exported function SetBorderless should have comment or be unexported (golint)
    • Line 65: warning: exported function ScreenShot should have comment or be unexported (golint)
    • Line 69: warning: exported function SetLoadingRenderable should have comment or be unexported (golint)
    • Line 73: warning: exported function SetBackground should have comment or be unexported (golint)
    • Line 77: warning: exported function SetColorBackground should have comment or be unexported (golint)
    • Line 81: warning: exported function GetBackgroundImage should have comment or be unexported (golint)
    • Line 85: warning: exported function Width should have comment or be unexported (golint)
    • Line 89: warning: exported function Height should have comment or be unexported (golint)
    • Line 93: warning: exported function HideCursor should have comment or be unexported (golint)
    • oak/shiny/driver/internal/win32/types.go
    • Line 5: warning: comment on exported type ATOM should be of the form "ATOM ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type BOOL should be of the form "BOOL ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type COLORREF should be of the form "COLORREF ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type DWM_FRAME_COUNT should be of the form "DWM_FRAME_COUNT ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type DWORD should be of the form "DWORD ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HACCEL should be of the form "HACCEL ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HANDLE should be of the form "HANDLE ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HBITMAP should be of the form "HBITMAP ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HBRUSH should be of the form "HBRUSH ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HCURSOR should be of the form "HCURSOR ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HDC should be of the form "HDC ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HDROP should be of the form "HDROP ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HDWP should be of the form "HDWP ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HENHMETAFILE should be of the form "HENHMETAFILE ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HFONT should be of the form "HFONT ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HGDIOBJ should be of the form "HGDIOBJ ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HGLOBAL should be of the form "HGLOBAL ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HGLRC should be of the form "HGLRC ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HHOOK should be of the form "HHOOK ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HICON should be of the form "HICON ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HIMAGELIST should be of the form "HIMAGELIST ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HINSTANCE should be of the form "HINSTANCE ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HKEY should be of the form "HKEY ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HKL should be of the form "HKL ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HMENU should be of the form "HMENU ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HMODULE should be of the form "HMODULE ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HMONITOR should be of the form "HMONITOR ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HPEN should be of the form "HPEN ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HRESULT should be of the form "HRESULT ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HRGN should be of the form "HRGN ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HRSRC should be of the form "HRSRC ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HTHUMBNAIL should be of the form "HTHUMBNAIL ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type HWND should be of the form "HWND ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type LPARAM should be of the form "LPARAM ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type LPCVOID should be of the form "LPCVOID ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type LRESULT should be of the form "LRESULT ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type PVOID should be of the form "PVOID ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type QPC_TIME should be of the form "QPC_TIME ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type TRACEHANDLE should be of the form "TRACEHANDLE ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type ULONG_PTR should be of the form "ULONG_PTR ..." (with optional leading article) (golint)
    • Line 5: warning: comment on exported type WPARAM should be of the form "WPARAM ..." (with optional leading article) (golint)
    • Line 52: warning: comment on exported type POINT should be of the form "POINT ..." (with optional leading article) (golint)
    • Line 57: warning: comment on exported type RECT should be of the form "RECT ..." (with optional leading article) (golint)
    • Line 62: warning: comment on exported type WNDCLASSEX should be of the form "WNDCLASSEX ..." (with optional leading article) (golint)
    • Line 78: warning: comment on exported type MSG should be of the form "MSG ..." (with optional leading article) (golint)
    • Line 177: warning: comment on exported const WS_EX_ACCEPTFILES should be of the form "WS_EX_ACCEPTFILES ..." (golint)
    • Line 179: warning: comment on exported const WS_EX_APPWINDOW should be of the form "WS_EX_APPWINDOW ..." (golint)
    • Line 181: warning: comment on exported const WS_EX_CLIENTEDGE should be of the form "WS_EX_CLIENTEDGE ..." (golint)
    • Line 183: warning: comment on exported const WS_EX_COMPOSITED should be of the form "WS_EX_COMPOSITED ..." (golint)
    • Line 187: warning: comment on exported const WS_EX_CONTEXTHELP should be of the form "WS_EX_CONTEXTHELP ..." (golint)
    • Line 194: warning: comment on exported const WS_EX_CONTROLPARENT should be of the form "WS_EX_CONTROLPARENT ..." (golint)
    • Line 198: warning: comment on exported const WS_EX_DLGMODALFRAME should be of the form "WS_EX_DLGMODALFRAME ..." (golint)
    • Line 201: warning: comment on exported const WS_EX_LAYERED should be of the form "WS_EX_LAYERED ..." (golint)
    • Line 206: warning: comment on exported const WS_EX_LAYOUTRTL should be of the form "WS_EX_LAYOUTRTL ..." (golint)
    • Line 210: warning: comment on exported const WS_EX_LEFT should be of the form "WS_EX_LEFT ..." (golint)
    • Line 212: warning: comment on exported const WS_EX_LEFTSCROLLBAR should be of the form "WS_EX_LEFTSCROLLBAR ..." (golint)
    • Line 216: warning: comment on exported const WS_EX_LTRREADING should be of the form "WS_EX_LTRREADING ..." (golint)
    • Line 218: warning: comment on exported const WS_EX_MDICHILD should be of the form "WS_EX_MDICHILD ..." (golint)
    • Line 220: warning: comment on exported const WS_EX_NOACTIVATE should be of the form "WS_EX_NOACTIVATE ..." (golint)
    • Line 227: warning: comment on exported const WS_EX_NOINHERITLAYOUT should be of the form "WS_EX_NOINHERITLAYOUT ..." (golint)
    • Line 229: warning: comment on exported const WS_EX_NOPARENTNOTIFY should be of the form "WS_EX_NOPARENTNOTIFY ..." (golint)
    • Line 232: warning: comment on exported const WS_EX_NOREDIRECTIONBITMAP should be of the form "WS_EX_NOREDIRECTIONBITMAP ..." (golint)
    • Line 235: warning: comment on exported const WS_EX_OVERLAPPEDWINDOW should be of the form "WS_EX_OVERLAPPEDWINDOW ..." (golint)
    • Line 237: warning: comment on exported const WS_EX_PALETTEWINDOW should be of the form "WS_EX_PALETTEWINDOW ..." (golint)
    • Line 239: warning: comment on exported const WS_EX_RIGHT should be of the form "WS_EX_RIGHT ..." (golint)
    • Line 246: warning: comment on exported const WS_EX_RIGHTSCROLLBAR should be of the form "WS_EX_RIGHTSCROLLBAR ..." (golint)
    • Line 248: warning: comment on exported const WS_EX_RTLREADING should be of the form "WS_EX_RTLREADING ..." (golint)
    • Line 252: warning: comment on exported const WS_EX_STATICEDGE should be of the form "WS_EX_STATICEDGE ..." (golint)
    • Line 254: warning: comment on exported const WS_EX_TOOLWINDOW should be of the form "WS_EX_TOOLWINDOW ..." (golint)
    • Line 260: warning: comment on exported const WS_EX_TOPMOST should be of the form "WS_EX_TOPMOST ..." (golint)
    • Line 263: warning: comment on exported const WS_EX_TRANSPARENT should be of the form "WS_EX_TRANSPARENT ..." (golint)
    • Line 268: warning: comment on exported const WS_EX_WINDOWEDGE should be of the form "WS_EX_WINDOWEDGE ..." (golint)
    • Line 531: warning: exported const IMAGE_BITMAP should have comment (or a comment on this block) or be unexported (golint)
    • Line 546: warning: comment on exported type GUID should be of the form "GUID ..." (with optional leading article) (golint)
    • Line 554: warning: don't use underscores in Go names; type Shell_NotifyAction should be ShellNotifyAction (golint)
    • Line 554: warning: exported type Shell_NotifyAction should have comment or be unexported (golint)
    • Line 557: warning: exported const NIM_ADD should have comment (or a comment on this block) or be unexported (golint)
    • Line 565: warning: exported const NIF_MESSAGE should have comment (or a comment on this block) or be unexported (golint)
    • Line 576: warning: exported const NIIF_NONE should have comment (or a comment on this block) or be unexported (golint)
    • Line 587: warning: exported type NOTIFYICONDATA should have comment or be unexported (golint)
    • Line 622: warning: exported const SWP_NOSIZE should have comment (or a comment on this block) or be unexported (golint)
    • Line 645: warning: comment on exported type MONITORINFO should be of the form "MONITORINFO ..." (with optional leading article) (golint)
    • Line 654: warning: exported const MONITOR_DEFAULTTONULL should have comment (or a comment on this block) or be unexported (golint)
    • oak/render/compositeR.go
    • Line 140: warning: exported method CompositeR.DrawToScreen should have comment or be unexported (golint)
    • Line 170: warning: exported method CompositeR.Clear should have comment or be unexported (golint)
    • oak/shiny/driver/internal/lifecycler/lifecycler.go
    • Line 29: warning: exported method State.SetDead should have comment or be unexported (golint)
    • Line 35: warning: exported method State.SetFocused should have comment or be unexported (golint)
    • Line 41: warning: exported method State.SetVisible should have comment or be unexported (golint)
    • Line 47: warning: exported method State.SendEvent should have comment or be unexported (golint)
    • oak/shape/bezier.go
    • Line 68: warning: exported method BezierPoint.X should have comment or be unexported (golint)
    • Line 72: warning: exported method BezierPoint.Y should have comment or be unexported (golint)
    • oak/shiny/driver/internal/x11key/x11key.go
    • Line 33: warning: exported type KeysymTable should have comment or be unexported (golint)
    • Line 35: warning: exported method KeysymTable.Lookup should have comment or be unexported (golint)
    • Line 77: warning: exported function KeyModifiers should have comment or be unexported (golint)
    • oak/key/state.go
    • Line 8: warning: exported type State should have comment or be unexported (golint)
    • Line 15: warning: exported function NewState should have comment or be unexported (golint)
    • oak/controller.go
    • Line 30: warning: exported type Controller should have comment or be unexported (golint)
    • Line 154: warning: exported function NewController should have comment or be unexported (golint)
    • Line 224: warning: exported method Controller.Width should have comment or be unexported (golint)
    • Line 228: warning: exported method Controller.Height should have comment or be unexported (golint)
    • Line 232: warning: exported method Controller.Viewport should have comment or be unexported (golint)
    • Line 236: warning: exported method Controller.ViewportBounds should have comment or be unexported (golint)
    • Line 240: warning: exported method Controller.SetLoadingRenderable should have comment or be unexported (golint)
    • Line 244: warning: exported method Controller.SetBackground should have comment or be unexported (golint)
    • Line 250: warning: exported method Controller.SetColorBackground should have comment or be unexported (golint)
    • Line 256: warning: exported method Controller.GetBackgroundImage should have comment or be unexported (golint)
    • Line 266: warning: exported method Controller.NextScene should have comment or be unexported (golint)
    • Line 270: warning: exported method Controller.GoToScene should have comment or be unexported (golint)
    • Line 274: warning: exported method Controller.InFocus should have comment or be unexported (golint)
    • oak/config.go
    • Line 38: warning: exported method Duration.MarshalJSON should have comment or be unexported (golint)
    • Line 42: warning: exported method Duration.UnmarshalJSON should have comment or be unexported (golint)
    • Line 63: warning: exported function NewConfig should have comment or be unexported (golint)
    • Line 152: warning: comment on exported function FileConfig should be of the form "FileConfig ..." (golint)
    • Line 165: warning: exported type ConfigOption should have comment or be unexported (golint)
    • Line 167: warning: exported function ReaderConfig should have comment or be unexported (golint)
    • oak/render/drawHeap.go
    • Line 52: warning: exported method RenderableHeap.Clear should have comment or be unexported (golint)
    • Line 100: warning: exported method RenderableHeap.DrawToScreen should have comment or be unexported (golint)
    • oak/render/noopStackable.go
    • Line 29: warning: exported method NoopStackable.DrawToScreen should have comment or be unexported (golint)
    • Line 31: warning: exported method NoopStackable.Clear should have comment or be unexported (golint)
    • oak/entities/x/mods/highlight.go
    • Line 11: warning: exported function HighlightOff should have comment or be unexported (golint)
    • Line 51: warning: exported function InnerHighlightOff should have comment or be unexported (golint)
    • Line 91: warning: exported function InnerHighlight should have comment or be unexported (golint)
    • Line 95: warning: exported function Highlight should have comment or be unexported (golint)
    • Line 99: warning: exported type Filter should have comment or be unexported (golint)
    • Line 101: warning: exported function Inset should have comment or be unexported (golint)
    • oak/screenOpts.go
    • Line 69: warning: exported method Controller.SetTitle should have comment or be unexported (golint)
    • Line 82: warning: exported method Controller.SetTrayIcon should have comment or be unexported (golint)
    • Line 95: warning: exported method Controller.ShowNotification should have comment or be unexported (golint)
    • Line 108: warning: exported method Controller.HideCursor should have comment or be unexported (golint)
    • oak/render/particle/allocator.go
    • Line 9: warning: comment on exported type Allocator should be of the form "Allocator ..." (with optional leading article) (golint)
    • Line 19: warning: exported function NewAllocator should have comment or be unexported (golint)
    • Line 30: warning: exported method Allocator.Run should have comment or be unexported (golint)
    • Line 59: warning: exported var DefaultAllocator should have comment or be unexported (golint)
    • oak/render/drawStack.go
    • Line 34: warning: exported function NewDrawStack should have comment or be unexported (golint)
    • Line 47: warning: exported method DrawStack.Clear should have comment or be unexported (golint)
    • Line 78: warning: exported method DrawStack.Draw should have comment or be unexported (golint)
    • Line 78: warning: receiver name d should be consistent with previous receiver name ds for DrawStack (golint)
    • oak/drawLoop.go
    • Line 8: warning: exported type Background should have comment or be unexported (golint)
    • oak/lifecycle.go
    • Line 98: warning: exported method Controller.UpdateViewSize should have comment or be unexported (golint)
    • oak/mouse/mouse.go
    • Line 7: warning: exported type Button should have comment or be unexported (golint)
    • Line 10: warning: exported const ButtonLeft should have comment (or a comment on this block) or be unexported (golint)
    • oak/shiny/gesture/gesture.go
    • Line 36: warning: exported const TypeEnd should have comment (or a comment on this block) or be unexported (golint)
    • Line 38: warning: comment on exported const TypeIsLongPress should be of the form "TypeIsLongPress ..." (golint)
    • oak/examples/collision-demo/main.go
    • Line 16: warning: exported const RED should have comment (or a comment on this block) or be unexported (golint)
    • Line 124: warning: exported type AttachCollisionTest should have comment or be unexported (golint)
    • Line 139: warning: exported method AttachCollisionTest.Init should have comment or be unexported (golint)
    • Line 143: warning: exported method AttachCollisionTest.UpdateR should have comment or be unexported (golint)
    • oak/examples/cliffracers/main.go
    • Line 26: warning: exported const LabelCliffracer should have comment (or a comment on this block) or be unexported (golint)
    • Line 29: warning: exported type CliffRacer should have comment or be unexported (golint)
    • Line 33: warning: exported method CliffRacer.Init should have comment or be unexported (golint)
    • oak/examples/slide/show/slide.go
    • Line 15: warning: exported type Slide should have comment or be unexported (golint)
    • Line 33: warning: exported function AddNumberShortcuts should have comment or be unexported (golint)
    • Line 55: warning: exported function Start should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign0%

IneffAssign detects ineffectual assignments in Go code.

An error occurred while running this test (signal: killed)


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!