Skip to content

Releases: legendaryredfox/raylib-lua-bindings

v0.10.0 — Linux support verified

Choose a tag to compare

@legendaryredfox legendaryredfox released this 07 Sep 00:54

Changed

  • Linux is now a supported target — make builds raylib.so and the full headless test suite (248 checks) passes on Linux. Dropped the stale "work in progress" language from the README and added the Linux dependency install steps.
  • GetTargetFPS documented as an API-symmetry alias that delegates to GetFPS() (raylib has no such function).

Notes

  • GPU/audio-dependent bindings (rendering, hardware textures, audio playback, input) still require a window or audio device and are verified via example scripts, not the headless suite.
  • Ships vendored raylib 6.0 + Lua 5.5.0 static libs; 606 callables via require("raylib").

Assets

  • raylib-linux-x86_64.so — prebuilt Linux module (Lua 5.5). Put it on Lua's package.cpath as raylib.so.

v0.9.0 — memory-safety & audio-callback hardening

Choose a tag to compare

@legendaryredfox legendaryredfox released this 06 Sep 23:53

Memory-safety and robustness release.

  • Array bindings: table→C-array reads are now GC-managed (lua_newuserdatauv), removing a leak on the Lua-error path, a missing-NULL crash on allocation failure, and a size_t→int truncation.
  • Use-after-free: resource structs are zeroed after Unload*, so reusing a released handle is a safe no-op. (__gc intentionally omitted due to shared ownership like mesh-in-model.)
  • Audio callbacks: NULL-state guard, callable-check, and pcall error handling (logged via TraceLog). Documented audio-thread caveat.
  • Data buffers: lua_tolstring (no NUL truncation) + get_data_buffer_checked bounds guard.
  • Build: -O2 -Wall -Wextra; fixed DecodeDataBase64 signedness (raylib 6.0 signature).
  • Tests: new tests/test_safety.lua; suite 248 passed, 0 failed.