Releases: gilzoide/godot-lua-pluginscript
0.5.2
Built platforms: Windows, Linux/X11, OSX, iOS, Android
Notes: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running. iOS .dylibs are not signed and require codesigning before building the application.
Fixed
- Fixed
undefined symbol: lua_*
when requiring Lua/C modules in POSIX systems (#41)
0.5.1
Built platforms: Windows, Linux/X11, OSX, iOS, Android
Notes: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running. iOS .dylibs are not signed and require codesigning before building the application.
Fixed
- Plugin initialization on Windows (#31)
- [build] Fixed
make dist
dependencies to include LuaJIT'sjit/*.lua
files - [build] Fixed
make unzip-to-build
to only copy contents frombuild
folder
0.5.0
Built platforms: Windows, Linux/X11, OSX, iOS, Android
Notes: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running. iOS .dylibs are not signed and require codesigning before building the application.
Added
join
method for allPool*Array
metatypes with the same implementation as forArray
andPoolStringArray
.- Possibility for using
ClassWrapper
s asextends
of a script instead of their string name. E.g. script:return { extends = Node }
Object:get_class_wrapper
method that returns theClassWrapper
associated with the Object's class.ClassWrapper:has_property
method that returns whether a class has a property with the passed name. Properties are considered available if they are found in the result ofClassDB:class_get_property_list
.- Library mapping for
Server
platform pointing to thelinux_x86_64
build. string.quote
function for quoting values.- [build] Passing
DEBUG=1
tomake docs
adds--all
flag toldoc
, which adds documentation for locals. - [build] Passing
DEBUG_INTERACTIVE=1
tomake test*
makes errors trigger a debugger.lua breakpoint, for debugging tests.
Fixed
- Return values passed to
lps_coroutine:resume(...)
when callingGD.yield()
. - Comparing
Array
andPool*Array
s against Lua primitives likenil
and numbers now returnfalse
instead of raising. - Support for
false
as the default value for a property.
Changed
- BREAKING CHANGE:
Array
andPool*Array
's__index
and__newindex
metamethods now use 1-based indices to match Lua tables. For 0-based indexing, useget
/set
orsafe_get
/safe_set
instead. - BREAKING CHANGE: property setter functions don't receive property name anymore (#5). That is, instead of
function(self, property_name, value)
, setters now look likefunction(self, value)
. - BREAKING CHANGE: script instances are now structs instead of tables. They still have a backing table for storing data, but indexing now calls getter and setter functions for known properties. Use
rawget
andrawset
to bypass getter/setter functions and access the data table directly. (#5) - BREAKING CHANGE:
Object.call
now raises instead of failing silently. UseObject.pcall
to protect from errors.
0.4.0
Built platforms: Windows, Linux/X11, OSX, iOS, Android
Notes: OSX .dylib
is not signed and will need explicit permission from the user or codesigning for running. iOS .dylib
s are not signed and require codesigning before building the application.
Added
- Support for running without JIT enabled
- Support for iOS builds
export
function, an alias forproperty
that always marks the property as
exported
Fixed
- Quote
CODE_SIGN_IDENTITY
argument passed tocodesign
invocations - ABI mismatch for math types in Linux x86_64 + Mono (#4)
Changed
- BREAKING CHANGE: properties are not exported by default. Either pass
a usage with thePropertyUsage.EDITOR
bit set or callexport
instead of
property
0.3.1
Built platforms: Windows, Linux/X11, OSX, Android
Note: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running.
Added
- Support for
codesign
ing OSX builds directly from make invocation.
The optional parameters areCODE_SIGN_IDENTITY
andOTHER_CODE_SIGN_FLAGS
. LUA_BIN
option for specifying a Lua command other thanlua
when buildingnative-luajit
make target, used by CIunzip-to-build
make target, for unzipping artifacts from CI to build folder
Fixed
strip
invocation on OSX builds- Update build GitHub Actions workflow with newer build pipeline
Changed
- Added
build/.gdignore
to distribution, to stop Godot from trying to import
build/jit/*.lua
files - Added default values for
MACOSX_DEPLOYMENT_TARGET
, making it an optional
parameter for OSX builds
0.3.0
Added
EditorExportPlugin
for minifying Lua scripts withLuaSrcDiet
on
release exports. Minification may be turned off with the
lua_pluginscript/export/minify_on_release_export
project setting.
Changed
- Release builds' init Lua script are minified with
LuaSrcDiet
and libraries
are nowstrip
ed, resulting in smaller dynamic libraries - HGDN functions are now compiled with static visibility and unused GDNative
extensions are excluded, also resulting in smaller dynamic libraries - Makefile targets for cross-compiling for Windows were renamed from
cross-windows*
tomingw-windows*
Fixed
PoolByteArray.extend
when called with a string argument
0.2.0
Added
Array.join
method, similar toPoolStringArray.join
- Project Settings for setting up
package.path
andpackage.cpath
- Bundle LuaJIT's
jit/*.lua
modules in build folder
Fixed
- Error handler now uses
tostring
to stringify the incoming parameter,
avoiding type errors. It also checks for the result ofstring.match
, so it
does not errors if the message is not in the format expected. - Loading of C modules now uses absolute library paths, so that files found in
patterns likeres://*
are correctly loaded. - Always try loading active library, so that dynamic loader knows about
lua*
symbols when loading C modules. Pool*Array
s'__gc
metamethod