2026-01-16 13:57.08: New job: test sanette/tsdl https://github.com/sanette/tsdl.git#refs/heads/master (a27da44ffe4e994e7a0361961e7bd551d3774ae6) (linux-x86_64:alpine-3.22-5.4_opam-2.5) Base: ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5 Opam project build To reproduce locally: git clone --recursive "https://github.com/sanette/tsdl.git" -b "master" && cd "tsdl" && git reset --hard a27da44f cat > Dockerfile <<'END-OF-DOCKERFILE' FROM ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5 # alpine-3.22-5.4_opam-2.5 USER 1000:1000 ENV CLICOLOR_FORCE="1" ENV OPAMCOLOR="always" WORKDIR /src RUN sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam RUN opam init --reinit -ni RUN uname -rs && opam exec -- ocaml -version && opam --version WORKDIR /src RUN sudo chown opam /src RUN cd ~/opam-repository && (git cat-file -e 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u COPY --chown=1000:1000 tsdl.opam ./ RUN opam pin add -yn tsdl.dev './' RUN echo '(lang dune 3.0)' > './dune-project' ENV DEPS="base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base conf-libffi.2.0.0 conf-pkg-config.4 conf-sdl2.1 csexp.1.5.2 ctypes.0.24.0 ctypes-foreign.0.24.0 dune.3.21.0 dune-configurator.3.21.0 integers.0.7.0 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 stdlib-shims.0.3.0" ENV CI="true" ENV OCAMLCI="true" RUN opam update --depexts && opam install --cli=2.5 --depext-only -y tsdl.dev $DEPS RUN opam install $DEPS COPY --chown=1000:1000 . /src RUN opam exec -- dune build @install @check @runtest && rm -rf _build END-OF-DOCKERFILE docker build . END-REPRO-BLOCK 2026-01-16 13:57.08: Using cache hint "sanette/tsdl-ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5-alpine-3.22-5.4_opam-2.5-a14548f45b015d4f465663eff868123b" 2026-01-16 13:57.08: Using OBuilder spec: ((from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5) (comment alpine-3.22-5.4_opam-2.5) (user (uid 1000) (gid 1000)) (env CLICOLOR_FORCE 1) (env OPAMCOLOR always) (workdir /src) (run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam")) (run (shell "opam init --reinit -ni")) (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) (workdir /src) (run (shell "sudo chown opam /src")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u")) (copy (src tsdl.opam) (dst ./)) (run (network host) (shell "opam pin add -yn tsdl.dev './'")) (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) (env DEPS "base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base conf-libffi.2.0.0 conf-pkg-config.4 conf-sdl2.1 csexp.1.5.2 ctypes.0.24.0 ctypes-foreign.0.24.0 dune.3.21.0 dune-configurator.3.21.0 integers.0.7.0 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 stdlib-shims.0.3.0") (env CI true) (env OCAMLCI true) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y tsdl.dev $DEPS")) (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) (copy (src .) (dst /src)) (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) ) 2026-01-16 13:57.08: Waiting for resource in pool OCluster 2026-01-16 16:53.14: Waiting for worker… 2026-01-16 17:00.07: Got resource from pool OCluster Building on odawa.caelum.ci.dev All commits already cached HEAD is now at a27da44 better error message (from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:7d7dd1f15b5b094a8c6ec589b462e81fe5f982c5d6f2ac4af2e5e3dcdc1525e5) 2026-01-16 17:00.07 ---> using "8e7368a35b514e2f693b7ef97549c85525e506baecfd9cb71dfa7c1285b9bf9e" from cache /: (comment alpine-3.22-5.4_opam-2.5) /: (user (uid 1000) (gid 1000)) /: (env CLICOLOR_FORCE 1) /: (env OPAMCOLOR always) /: (workdir /src) /src: (run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam")) 2026-01-16 17:00.07 ---> using "5de1607ed24a4d9a94f038b30a5d26051019ad9d567bd9b920207c8a8790958e" from cache /src: (run (shell "opam init --reinit -ni")) Configuring from /home/opam/.opamrc and then from built-in defaults. Checking for available remotes: rsync and local, git. - you won't be able to use mercurial repositories unless you install the hg command on your system. - you won't be able to use darcs repositories unless you install the darcs command on your system. This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted. You may want to back it up before going further. Continue? [Y/n] y Format upgrade done. <><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><> [default] Initialised 2026-01-16 17:00.07 ---> using "9a9c4e5cee84ea1f4dd03ef20c73db2f8677135dce421b26bfc6a84a6e4cec86" from cache /src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version")) Linux 6.8.0-87-generic The OCaml toplevel, version 5.4.0 2.5.0 2026-01-16 17:00.07 ---> using "667074f5be2334a92415ceab74ec15bb59d47bdf0e2beb825eaa389555f40c78" from cache /src: (workdir /src) /src: (run (shell "sudo chown opam /src")) 2026-01-16 17:00.07 ---> using "33c7b91e3a3fd17dd0b670dfb64c2fe390ea331270d4439429317512d6a40df2" from cache /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "cd ~/opam-repository && (git cat-file -e 873cb18c37b308713d11ad3894c4bb78d73fb3e7 || git fetch origin master) && git reset -q --hard 873cb18c37b308713d11ad3894c4bb78d73fb3e7 && git log --no-decorate -n1 --oneline && opam update -u")) From https://github.com/ocaml/opam-repository * branch master -> FETCH_HEAD a6b2f19780..92679ed614 master -> origin/master 873cb18c37 Merge pull request #29216 from shonfeder/release-dune-3.21.0 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><> [default] synchronised from git+file:///home/opam/opam-repository Already up-to-date. Nothing to do. # To update the current shell environment, run: eval $(opam env) 2026-01-16 17:00.07 ---> using "4184b41a9a82b3669f30a95932bd76a185cc6536c8f133518b5ae3e7d0ad06aa" from cache /src: (copy (src tsdl.opam) (dst ./)) 2026-01-16 17:00.08 ---> saved as "e637e042283e05d3c4280b11104882054caf86cbb541ff01ceda9cec8b348d4d" /src: (run (network host) (shell "opam pin add -yn tsdl.dev './'")) [tsdl.dev] synchronised (file:///src) tsdl is now pinned to file:///src (version dev) 2026-01-16 17:00.10 ---> saved as "17cbffdb52c23d97dc8f859430dd45b1237178c1948b87b652ea1d5177841ed8" /src: (run (network host) (shell "echo '(lang dune 3.0)' > './dune-project'")) 2026-01-16 17:00.10 ---> saved as "1017e29084bbb28b1e0627554cfb6053185cf6650cf4cc837fe1214d2c6b785f" /src: (env DEPS "base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base conf-libffi.2.0.0 conf-pkg-config.4 conf-sdl2.1 csexp.1.5.2 ctypes.0.24.0 ctypes-foreign.0.24.0 dune.3.21.0 dune-configurator.3.21.0 integers.0.7.0 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-config.3 ocaml-options-vanilla.1 stdlib-shims.0.3.0") /src: (env CI true) /src: (env OCAMLCI true) /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam update --depexts && opam install --cli=2.5 --depext-only -y tsdl.dev $DEPS")) + /usr/bin/sudo "apk" "update" - fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz - fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz - fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz - fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz - fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz - v3.22.2-345-g80278e42c54 [https://dl-cdn.alpinelinux.org/alpine/v3.22/main] - v3.22.2-350-ga346423740a [https://dl-cdn.alpinelinux.org/alpine/v3.22/community] - v20251224-1517-g76c24b64e20 [https://dl-cdn.alpinelinux.org/alpine/edge/main] - v20251224-1496-g03a612442a1 [https://dl-cdn.alpinelinux.org/alpine/edge/community] - v20251224-1495-g0eba70fbcb6 [https://dl-cdn.alpinelinux.org/alpine/edge/testing] - OK: 60721 distinct packages available <><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><> [tsdl.dev] synchronised (file:///src) [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). [NOTE] Package ocaml-config is already installed (current version is 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml is already installed (current version is 5.4.0). [NOTE] Package base-unix is already installed (current version is base). [NOTE] Package base-threads is already installed (current version is base). [NOTE] Package base-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). The following system packages will first need to be installed: libffi-dev sdl2-dev <><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><> + /usr/bin/sudo "apk" "add" "libffi-dev" "sdl2-dev" - (1/37) Installing linux-headers (6.14.2-r0) - (2/37) Installing libffi-dev (3.4.8-r0) - (3/37) Installing sdl2 (2.32.8-r0) - (4/37) Installing hwdata-pci (0.395-r0) - (5/37) Installing libpciaccess (0.18.1-r0) - (6/37) Installing libdrm (2.4.124-r0) - (7/37) Installing libpciaccess-dev (0.18.1-r0) - (8/37) Installing libdrm-dev (2.4.124-r0) - (9/37) Installing libxext (1.3.6-r2) - (10/37) Installing libxext-dev (1.3.6-r2) - (11/37) Installing libxdamage (1.1.6-r5) - (12/37) Installing libxfixes (6.0.1-r4) - (13/37) Installing libxfixes-dev (6.0.1-r4) - (14/37) Installing libxdamage-dev (1.1.6-r5) - (15/37) Installing libxshmfence (1.3.3-r0) - (16/37) Installing libxshmfence-dev (1.3.3-r0) - (17/37) Installing libxml2 (2.13.9-r0) - (18/37) Installing llvm20-libs (20.1.8-r0) - (19/37) Installing spirv-tools (1.4.313.0-r0) - (20/37) Installing libelf (0.193-r0) - (21/37) Installing wayland-libs-server (1.23.1-r3) - (22/37) Installing mesa (25.1.9-r0) - (23/37) Installing mesa-gbm (25.1.9-r0) - (24/37) Installing wayland-libs-client (1.23.1-r3) - (25/37) Installing mesa-egl (25.1.9-r0) - (26/37) Installing libxxf86vm (1.1.6-r0) - (27/37) Installing mesa-gl (25.1.9-r0) - (28/37) Installing mesa-gles (25.1.9-r0) - (29/37) Installing clang20-headers (20.1.8-r0) - (30/37) Installing libclc (20.1.8-r0) - (31/37) Installing spirv-llvm-translator-libs (20.1.2-r0) - (32/37) Installing clang20-libs (20.1.8-r0) - (33/37) Installing mesa-rusticl (25.1.9-r0) - (34/37) Installing mesa-xatracker (25.1.9-r0) - (35/37) Installing libxxf86vm-dev (1.1.6-r0) - (36/37) Installing mesa-dev (25.1.9-r0) - (37/37) Installing sdl2-dev (2.32.8-r0) - Executing busybox-1.37.0-r20.trigger - OK: 898 MiB in 140 packages # To update the current shell environment, run: eval $(opam env) 2026-01-16 17:00.31 ---> saved as "971f43a8d5eb6b6b02d0774ced7c36a79db2265d2d190073094a6eeaa99ebf19" /src: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam install $DEPS")) [NOTE] Package ocaml-options-vanilla is already installed (current version is 1). [NOTE] Package ocaml-config is already installed (current version is 3). [NOTE] Package ocaml-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0). [NOTE] Package ocaml is already installed (current version is 5.4.0). [NOTE] Package base-unix is already installed (current version is base). [NOTE] Package base-threads is already installed (current version is base). [NOTE] Package base-nnp is already installed (current version is base). [NOTE] Package base-effects is already installed (current version is base). [NOTE] Package base-domains is already installed (current version is base). [NOTE] Package base-bigarray is already installed (current version is base). The following actions will be performed: === install 10 packages - install conf-libffi 2.0.0 - install conf-pkg-config 4 - install conf-sdl2 1 - install csexp 1.5.2 - install ctypes 0.24.0 - install ctypes-foreign 0.24.0 - install dune 3.21.0 - install dune-configurator 3.21.0 - install integers 0.7.0 - install stdlib-shims 0.3.0 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved csexp.1.5.2 (cached) -> retrieved ctypes.0.24.0, ctypes-foreign.0.24.0 (cached) -> installed conf-pkg-config.4 -> retrieved integers.0.7.0 (cached) -> retrieved stdlib-shims.0.3.0 (cached) -> installed conf-libffi.2.0.0 -> installed conf-sdl2.1 -> retrieved dune.3.21.0, dune-configurator.3.21.0 (cached) -> installed dune.3.21.0 -> installed csexp.1.5.2 -> installed stdlib-shims.0.3.0 -> installed integers.0.7.0 -> installed dune-configurator.3.21.0 -> installed ctypes.0.24.0 -> installed ctypes-foreign.0.24.0 Done. # To update the current shell environment, run: eval $(opam env) 2026-01-16 17:01.12 ---> saved as "c1170063c163c9c8ec542ab67629846f258f760592b8538789377c415c6fa63f" /src: (copy (src .) (dst /src)) 2026-01-16 17:01.12 ---> saved as "b1499724505a9bbedbfb8d0195e4ca26b7d041c59c4a41c9a0bdde319c2eda72" /src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build")) (cd _build/default/test && ./test_tsdl.exe) SDL_GetError SDL_free SDL_SetMainReady SDL_Init SDL_InitSubSystem SDL_Quit SDL_QuitSubSystem SDL_WasInit SDL_ClearHints SDL_GetHint SDL_GetHintBoolean SDL_SetHint SDL_SetHintWithPriority SDL_ClearError SDL_SetError SDL_LogMessage SDL_LogGetPriority SDL_LogResetPriorities SDL_LogSetAllPriority SDL_LogSetPriority SDL_GetVersion SDL_GetRevision SDL_GetRevisionNumber SDL_LoadFile_RW SDL_RWFromFile SDL_RWFromConstMem SDL_RWFromMem SDL_GetBasePath SDL_GetPrefPath SDL_EnclosePoints SDL_HasIntersection SDL_IntersectRect SDL_IntersectRectAndLine SDL_UnionRect SDL_AllocPalette SDL_FreePalette SDL_SetPaletteColors SDL_CalculateGammaRamp SDL_ComposeCustomBlendMode SDL_AllocFormat SDL_FreeFormat SDL_GetPixelFormatName SDL_GetRGB SDL_GetRGBA SDL_MapRGB SDL_MapRGBA SDL_MasksToPixelFormatEnum SDL_PixelFormatEnumToMasks SDL_SetPixelFormatPalette SDL_UpperBlitScaled SDL_UpperBlit SDL_ConvertPixels SDL_ConvertSurface SDL_ConvertSurfaceFormat SDL_CreateRGBSurface SDL_CreateRGBSurfaceFrom SDL_CreateRGBSurfaceWithFormat SDL_CreateRGBSurfaceWithFormatFrom SDL_DuplicateSurface SDL_FillRect SDL_FillRects SDL_FreeSurface SDL_GetClipRect SDL_GetColorKey SDL_GetSurfaceAlphaMod SDL_GetSurfaceBlendMode SDL_GetSurfaceColorMod SDL_LoadBMP_RW SDL_LockSurface SDL_LowerBlit SDL_LowerBlitScaled SDL_SaveBMP_RW SDL_SetClipRect SDL_SetColorKey SDL_SetSurfaceAlphaMod SDL_SetSurfaceBlendMode SDL_SetSurfaceColorMod SDL_SetSurfacePalette SDL_SetSurfaceRLE SDL_UnlockSurface SDL_CreateRenderer SDL_CreateSoftwareRenderer SDL_DestroyRenderer SDL_GetNumRenderDrivers SDL_GetRenderDrawBlendMode SDL_GetRenderDrawColor SDL_GetRenderDriverInfo SDL_GetRenderTarget SDL_GetRenderer SDL_GetRendererInfo SDL_GetRendererOutputSize SDL_RenderClear SDL_RenderCopy SDL_RenderCopyEx SDL_RenderDrawLine SDL_RenderDrawLineF SDL_RenderDrawLines SDL_RenderDrawPoint SDL_RenderDrawPoints SDL_RenderDrawPointF SDL_RenderDrawPointsF SDL_RenderDrawRect SDL_RenderDrawRects SDL_RenderFillRect SDL_RenderFillRects SDL_RenderGeometry SDL_RenderGeometryRaw SDL_RenderGetClipRect SDL_RenderIsClipEnabled SDL_RenderGetIntegerScale SDL_RenderGetLogicalSize SDL_RenderGetScale SDL_RenderGetViewport SDL_RenderGetWindow SDL_RenderPresent SDL_RenderReadPixels SDL_RenderSetClipRect SDL_RenderSetIntegerScale SDL_RenderSetLogicalSize SDL_RenderSetScale SDL_RenderSetViewport SDL_RenderTargetSupported SDL_SetRenderDrawBlendMode SDL_SetRenderDrawColor SDL_SetRenderTarget SDL_CreateTexture SDL_CreateTextureFromSurface SDL_DestroyTexture SDL_GetTextureAlphaMod SDL_GetTextureBlendMode SDL_GetTextureColorMod SDL_GetTextureScaleMode SDL_QueryTexture SDL_LockTexture SDL_SetTextureAlphaMod SDL_SetTextureBlendMode SDL_SetTextureColorMod SDL_SetTextureScaleMode SDL_UnlockTexture SDL_UpdateTexture SDL_UpdateYUVTexture SDL_GetCurrentVideoDriver SDL_GetNumVideoDrivers SDL_GetVideoDriver SDL_VideoInit SDL_VideoQuit SDL_GetClosestDisplayMode SDL_GetCurrentDisplayMode SDL_GetDesktopDisplayMode SDL_GetDisplayBounds SDL_GetDisplayDPI SDL_GetDisplayMode SDL_GetDisplayUsableBounds SDL_GetNumDisplayModes SDL_GetDisplayName SDL_GetNumVideoDisplays SDL_CreateWindow SDL_CreateWindowAndRenderer SDL_DestroyWindow SDL_GetWindowBrightness SDL_GetWindowBordersSize SDL_GetWindowDisplayIndex SDL_GetWindowDisplayMode SDL_GetWindowFlags SDL_GetWindowFromID SDL_GetWindowGammaRamp SDL_GetWindowGrab SDL_GetGrabbedWindow SDL_GetWindowID SDL_GetWindowMaximumSize SDL_GetWindowMinimumSize SDL_GetWindowOpacity SDL_GetWindowPixelFormat SDL_GetWindowPosition SDL_GetWindowSize SDL_GetWindowSurface SDL_GetWindowTitle SDL_HideWindow SDL_MaximizeWindow SDL_MinimizeWindow SDL_RaiseWindow SDL_RestoreWindow SDL_SetWindowBordered SDL_SetWindowBrightness SDL_SetWindowDisplayMode SDL_SetWindowFullscreen SDL_SetWindowGammaRamp SDL_SetWindowGrab SDL_SetWindowIcon SDL_SetWindowInputFocus SDL_SetWindowMaximumSize SDL_SetWindowMinimumSize SDL_SetWindowModalFor SDL_SetWindowOpacity SDL_SetWindowPosition SDL_SetWindowResizable SDL_SetWindowSize SDL_SetWindowTitle SDL_ShowWindow SDL_UpdateWindowSurface SDL_UpdateWindowSurfaceRects SDL_GL_BindTexture SDL_GL_CreateContext SDL_GL_DeleteContext SDL_GL_ExtensionSupported SDL_GL_GetAttribute SDL_GL_GetCurrentContext SDL_GL_GetDrawableSize SDL_GL_GetSwapInterval SDL_GL_MakeCurrent SDL_GL_ResetAttributes SDL_GL_SetAttribute SDL_GL_SetSwapInterval SDL_GL_SwapWindow SDL_GL_UnbindTexture SDL_Vulkan_LoadLibrary SDL_Vulkan_UnloadLibrary SDL_Vulkan_GetInstanceExtensions SDL_Vulkan_CreateSurface SDL_Vulkan_GetDrawableSize SDL_DisableScreenSaver SDL_EnableScreenSaver SDL_IsScreenSaverEnabled SDL_ShowMessageBox SDL_ShowSimpleMessageBox SDL_GetClipboardText SDL_HasClipboardText SDL_SetClipboardText SDL_GetKeyboardFocus SDL_GetKeyboardState SDL_GetKeyFromName SDL_GetKeyFromScancode SDL_GetKeyName SDL_GetModState SDL_GetScancodeFromKey SDL_GetScancodeFromName SDL_GetScancodeName SDL_HasScreenKeyboardSupport SDL_IsScreenKeyboardShown SDL_IsTextInputActive SDL_SetModState SDL_SetTextInputRect SDL_StartTextInput SDL_StopTextInput SDL_CaptureMouse SDL_CreateColorCursor SDL_CreateCursor SDL_CreateSystemCursor SDL_FreeCursor SDL_GetCursor SDL_GetDefaultCursor SDL_GetGlobalMouseState SDL_GetMouseFocus SDL_GetMouseState SDL_GetRelativeMouseMode SDL_GetRelativeMouseState SDL_ShowCursor SDL_SetCursor SDL_SetRelativeMouseMode SDL_WarpMouseInWindow SDL_WarpMouseGlobal SDL_GetNumTouchDevices SDL_GetNumTouchFingers SDL_GetTouchDevice SDL_GetTouchFinger SDL_LoadDollarTemplates SDL_RecordGesture SDL_SaveDollarTemplate SDL_SaveAllDollarTemplates SDL_JoystickClose SDL_JoystickCurrentPowerLevel SDL_JoystickEventState SDL_JoystickFromInstanceID SDL_JoystickGetAttached SDL_JoystickGetAxis SDL_JoystickGetAxisInitialState SDL_JoystickGetBall SDL_JoystickGetButton SDL_JoystickGetDeviceGUID SDL_JoystickGetDeviceProduct SDL_JoystickGetDeviceProductVersion SDL_JoystickGetDeviceType SDL_JoystickGetDeviceInstanceID SDL_JoystickGetDeviceVendor SDL_JoystickGetGUID SDL_JoystickGetGUIDFromString SDL_JoystickGetGUIDString SDL_JoystickGetHat SDL_JoystickGetProduct SDL_JoystickGetProductVersion SDL_JoystickGetType SDL_JoystickGetVendor SDL_JoystickInstanceID SDL_JoystickName SDL_JoystickNameForIndex SDL_JoystickNumAxes SDL_JoystickNumBalls SDL_JoystickNumButtons SDL_JoystickNumHats SDL_JoystickOpen SDL_JoystickUpdate SDL_NumJoysticks SDL_GameControllerAddMapping SDL_GameControllerAddMappingsFromRW SDL_GameControllerClose SDL_GameControllerEventState SDL_GameControllerFromInstanceID SDL_GameControllerGetAttached SDL_GameControllerGetAxis SDL_GameControllerGetAxisFromString SDL_GameControllerGetBindForAxis SDL_GameControllerGetBindForButton SDL_GameControllerGetButton SDL_GameControllerGetButtonFromString SDL_GameControllerGetJoystick SDL_GameControllerGetProduct SDL_GameControllerGetProductVersion SDL_GameControllerGetStringForAxis SDL_GameControllerGetStringForButton SDL_GameControllerGetVendor SDL_GameControllerMapping SDL_GameControllerMappingForIndex SDL_GameControllerMappingForGUID SDL_GameControllerName SDL_GameControllerNameForIndex SDL_GameControllerNumMappings SDL_GameControllerOpen SDL_GameControllerUpdate SDL_IsGameController SDL_EventState SDL_FlushEvent SDL_FlushEvents SDL_HasEvent SDL_HasEvents SDL_PollEvent SDL_PumpEvents SDL_PushEvent SDL_RegisterEvents SDL_WaitEvent SDL_WaitEventTimeout SDL_HapticClose SDL_HapticDestroyEffect SDL_HapticEffectSupported SDL_HapticGetEffectStatus SDL_HapticIndex SDL_HapticName SDL_HapticNewEffect SDL_HapticNumAxes SDL_HapticNumEffects SDL_HapticNumEffectsPlaying SDL_HapticOpen SDL_HapticOpenFromJoystick SDL_HapticOpenFromMouse SDL_HapticOpened SDL_HapticPause SDL_HapticQuery SDL_HapticRumbleInit SDL_HapticRumblePlay SDL_HapticRumbleStop SDL_HapticRumbleSupported SDL_HapticRunEffect SDL_HapticSetAutocenter SDL_HapticSetGain SDL_HapticStopAll SDL_HapticStopEffect SDL_HapticUnpause SDL_HapticUpdateEffect SDL_JoystickIsHaptic SDL_MouseIsHaptic SDL_NumHaptics SDL_AudioInit SDL_AudioQuit SDL_GetAudioDriver SDL_GetCurrentAudioDriver SDL_GetNumAudioDrivers SDL_CloseAudioDevice SDL_FreeWAV SDL_GetAudioDeviceName SDL_GetAudioDeviceStatus SDL_GetNumAudioDevices SDL_LoadWAV_RW SDL_LockAudioDevice SDL_OpenAudioDevice SDL_PauseAudioDevice SDL_UnlockAudioDevice SDL_QueueAudio SDL_DequeueAudio SDL_GetQueuedAudioSize SDL_ClearQueuedAudio SDL_Delay SDL_GetTicks SDL_GetTicks64 SDL_GetPerformanceCounter SDL_GetPerformanceFrequency SDL_GetPlatform SDL_GetCPUCacheLineSize SDL_GetCPUCount SDL_GetSystemRAM SDL_Has3DNow SDL_HasAltiVec SDL_HasAVX SDL_HasMMX SDL_HasNEON SDL_HasRDTSC SDL_HasSSE SDL_HasSSE2 SDL_HasSSE3 SDL_HasSSE41 SDL_HasSSE42 SDL_GetPowerInfo SDL_GetPreferredLocales INFO: SDL Version (2,32,8) error: XDG_RUNTIME_DIR is invalid or not set in the environment. 2026-01-16 17:01.17 ---> saved as "e3a9f350b75571fe2597cfa7c572dee9fae5c9254fdd60ed19c5b1a78e67546d" Job succeeded 2026-01-16 17:01.17: Job succeeded