Skip to content

Releases: Vurv78/rglua

rglua v2.1.0

24 Jan 00:44
Compare
Choose a tag to compare
  • Removed Option<> from all FFI functions for convenience and because they were unsafe..
  • Errors from returning Result<T, E> in #[lua_function]s now throws a luaL_error instead of panicking and terminating the program.

rglua v2.0.0

06 Jan 03:37
a4724b0
Compare
Choose a tag to compare
  • All lua c api functions are actual functions now (They were lazy cells as to make detours easy, but you should really just be using LUA_SHARED_RAW for that.
  • Almost everything is documented
  • OSX/Linux support
  • Added Vector and Angle functions for lua api (luaL_checkvector, luaL_checkangle, tovector, toangle, pushvector, pushangle)
  • A lot of functions like lua_topointer and lua_tolstring now return Option instead of T for additional safety. This may be an annoying change, but I'd advise to use lua_check* instead, or simply unwrap and comment as to prove the safety of the unwrap.
  • Added IMdlCache bindings

Full Changelog: v1.0.0...v2.0.0

rglua v2.0.0-beta

31 Dec 10:05
Compare
Choose a tag to compare
rglua v2.0.0-beta Pre-release
Pre-release

Changelist will be compiled in v2.0.0.

Full Changelog: v1.0.0...v2.0.0-beta

rglua v1.0.0

21 Dec 02:26
Compare
Choose a tag to compare
  • Use $crate instead of rglua in macros

  • Add variadic support to dyn_symbols (In turn re-adds luaL_error and pushfstring

  • Add lua_getinfo

  • Add lua_next

  • Add lua_replace

  • Add lua_lessthan

  • Add lua_gc

  • Add rest of the functions we were missing

  • Add lua_objlen
    Types are now T* instead of Type::*. Same with prior enums. Deprecated old ones

  • Added LuaDebug

  • Added LuaAlloc

  • Added LuaHook

  • Added LuaReader

  • Removed redundant Interface trait, vtables already adds a function to get a ptr.

I'm not gonna work on this for a while this is getting tiring. Near the completion of the library (in terms of the lua part)

rglua v0.8.0

20 Dec 02:44
Compare
Choose a tag to compare
  • Added ICVar bindings
  • Added IMaterial / IMaterialSystem bindings
  • Fix offsets in pretty much all interfaces (mostly engine though)
  • Add GetGameDirectory, GetLevelName, IsPlayingDemo, IsRecordingDemo, IsPaused to engine interface
  • Add engine example to show off how to use the engine interface.
  • Make previously ignored tests compile
  • util::dump_stack now returns a string instead of printing to stdout
  • Add Vector and Angle types (Currently meant for interfaces, not lua values)

rglua v0.7.1

10 Dec 08:56
Compare
Choose a tag to compare

Wanted to make an elegant solution that would somehow make the pointer keep the value allocated, but I don't know enough about the standard library on how to do that. (I could std::mem::forget but that would just be awful)

Added docs for interfaces, lua_shared functions, types, global constants. Includes more example code.

rglua v0.7.0

09 Dec 06:42
Compare
Choose a tag to compare
  • Changed file structure again sorry :(
  • Added bindings for luaL_register
  • Fixed luaL_openlib binding
  • Added luaL_openlibs binding
  • Renamed helper to util and make public
  • Added try_cstr, try_rstr and reg macros
  • Added util::dump_stack
  • Renamed LuaL_Buffer to LuaBuffer
  • Added LuaReg type
  • Added is_even binary module example.
  • Type is no longer a useless enum and is just a namespace with constants in it.
  • Removed deprecated rstring and cstring
  • Reorganized interfaces
  • Add thiserror as a dependency
  • Status and Mode are repr(i32) now for cast safety, will probably follow suit with Type in being namespaces with constants later.
  • Shortened var signatures of bindings like 50% (Still ugly!)
    Largest addition here is lua regs, to make life a lot easier. Especially with the reg! macro which lets you create them easily (And no need for a null reg at the end to tell C you're done adding functions, it does that for you.)

Most of these are breaking changes but I think this will be the last time for a while, having too many single files was getting bad.

rglua v0.6.1

07 Dec 06:01
58db989
Compare
Choose a tag to compare
  • Add printgm to the prelude
  • Added all of the lua_is* macros
  • Added luaL_dostring
  • Added luaL_dofile
  • Added luaL_getmetatable
  • Added luaL_argcheck
  • Bump to edition 2021

rglua v0.5.0

26 Nov 06:19
Compare
Choose a tag to compare

Full Changelog: v0.3.0...v0.5.0

rglua v0.3.0

24 Jul 03:56
Compare
Choose a tag to compare
  • lua_shared bindings are nearly complete