Skip to content
This repository was archived by the owner on Dec 29, 2024. It is now read-only.

Releases: WeaselGames/godot_luaAPI

v2.1-beta11

Choose a tag to compare

@Trey2k Trey2k released this 24 Jan 20:28
edf4afe

⚠️ This release of LuaAPI is for godot version 4.2.x

What's Changed

  • BREAKING: LuaAPI.do_file and LuaAPI.do_string both had their return types changed from LuaError to Variant. This is to allow for return values.
  • LuaAPI.do_file and LuaAPI.do_string both now take an optimal second argument. Which would be an Array of arguments to pass to the script.
  • Some minor documentation changes

Example usage:

func _ready():
    var lua: LuaAPI = LuaAPI.new()
    lua.bind_libraries(["base", "table", "string"])

    var ret = lua.do_string("""
    local a, b = ...
    print(a, b)
    return a + b
    """, [4, 6])
    if ret is LuaError:
        print("ERROR %d: %s" % [ret.type, ret.message])
        return
    
    print(ret)

Module MacOS actions started failing randomly so are sadly not included in this release.

v2.1-beta10

Choose a tag to compare

@Trey2k Trey2k released this 04 Jan 05:20
525d1e0

⚠️ This release of LuaAPI is for godot version 4.2.x

What's Changed

  • Minor in-engine documentation corrections by @sepTN
  • Module builds updated to 4.2.1

v2.1-beta9

v2.1-beta9 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 01 Dec 01:46
f658394

⚠️ This release of LuaAPI is for godot version 4.2.x

What's Changed

  • Memory leak described in #155 has been resolved now that GDExtension supports CallableCustoms. (Thanks to the amazing work done by @dsnopek and other contributors in the Godot Engine and godot-cpp.)
  • BREAKING: Lua methods pulled as a Callable no longer take an array of arguments, arguments are passed 1 by 1 now. So instead of myLuaFunc.call([arg1, arg2]) it is myLuaFun.call(arg1, arg2).

A special thanks to @Tekuzo as well, who helped upload the releases due to my internet being too slow currently.

v2.1-beta8

v2.1-beta8 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 13 Oct 23:33
5a71e71

⚠️ This release of LuaAPI is for godot version 4.1.x

What's Changed

  • Small bug fix for crashes related to when Lua loses reference of a RefCounted before godot.

v2.1-beta7

v2.1-beta7 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 10 Oct 18:45

⚠️ This release of LuaAPI is for godot version 4.1.x

What's Changed

  • New LuaAPI field LuaAPI.use_callables when true, it will use the LuaCallable type which is a CallableCustom for lua methods like before. When false it will instead use the LuaFunctionRef type which is a RefCounted. It behaves the same but will use a invoke method rather then call. This resolves the issue of C# not supporting CallableCustom types. More details in #172
  • Module releases are now using Godot v4.1.2-stable
  • Memory leak described in #155 has been fixed for all module builds. And a work around now exists for GDExtension using LuaFunctionRefs

v2.1-beta6

v2.1-beta6 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 02 Oct 04:17

⚠️ This release of LuaAPI is for godot version 4.1.x

What's Changed

  • Added support for UTF8 strings
  • Added support for the FFI library while using the luaJIT builds.

v1.2-beta1

v1.2-beta1 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 02 Oct 01:56
9a859ac

⚠️ This release of LuaAPI is for godot version 3.x

What's Changed

  • Added support for UTF8 strings

v2.1-beta5

v2.1-beta5 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 14 Sep 16:18
ac5beb3

⚠️ This release of LuaAPI is for godot version 4.1.x

What's Changed

  • New methods to access and modify registry values from @RadiantUwU
  • Some demo bug fixes from @SilicDev

v2.1-beta4

v2.1-beta4 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 16 Jul 16:10

⚠️ This release of LuaAPI is for godot version 4.1.x

What's Changed

  • Fixed some return types to allow for mono glue generation.
  • The LuaAPI class memory usage, and limit are now uint64's rather then just a signed int32.
  • __index and __newindex now do not force the String type as the index, as this could in theory be any type.

v2.1-beta3

v2.1-beta3 Pre-release
Pre-release

Choose a tag to compare

@Trey2k Trey2k released this 13 Jul 16:21
2c1b23d

⚠️ This release of LuaAPI is for godot version 4.1.x

This is the first large feature update for LuaAPI v2.1

What's Changed

  • Added memory_limit property to the LuaAPI class. This allows to set the max allowed memory usage for the Lua state in bytes.
  • Added object_metatable property to the LuaAPI class. This sets the default metatable for Objects which do not define a lua_metatable property.
  • Removed permissive property from the LuaAPI class. This has been replaced with the permissive property on LuaDefaultObjectMetatable which occupies the LuaAPI object_metatable property by default.
  • Added get_memory_usage() method to the LuaAPI class. This returns the current memory usage of the Lua state in bytes.
  • Removed expose_object_constructor() from the LuaAPI class. This is no longer needed, you can push the obj.new method as a global using LuaAPI.push_global() for the same effect but with constructor argument support.
  • New LuaObjectMetatable class. This is a interface class meant to be used to define metatables.
  • New LuaDefaultObjectMetatable class. This is the type that object_metatable defaults to, it provides the same functionality with metatables and metamethods we had before this update. The LuaAPI permissive property has been moved to this class now. It will yield metamethod calls to the object if it defines them like before. Otherwise looks for the lua_fields method which is either a blacklist or a whitelist depending on permissive.

There are a lot of changes with this update so I suspect there may be some regression, if you notice any please open an issue.