Skip to content

Releases: IS4Code/YALP

YALP v1.1

14 Nov 15:25
Compare
Choose a tag to compare
  • Added compatibility for older glibc versions.
  • All Lua functions are properly exported, allowing use of Lua 5.3 modules that import them.
  • Crash protection when a hook trampoline cannot be created.

YALP-MTA, a new companion plugin has also been created, allowing importing modules that use the MTA Lua module SDK.

YALP v1.0

18 Feb 18:09
Compare
Choose a tag to compare
  • Hook mechanism modified to fix a bug in GCC.
  • Added array function to the base Lua package (0-based).

YALP v0.5

08 Feb 00:06
Compare
Choose a tag to compare
YALP v0.5 Pre-release
Pre-release
  • Minor fixes in file marshalling. lua_loadstream introduced to load a chunk from File, so other functions no longer have to read the code in Pawn.
  • Push-based parser usage. lua_loader initializes the parser, lua_write is used to provide pieces of the code to it.
  • Many constants ported from the Lua API into Pawn. Results and arguments of functions are now properly tagged.
  • lua_pushuserdata, lua_getuserdata, lua_setuserdata to copy cells to Lua userdata objects.

YALP v0.4

28 Dec 18:39
Compare
Choose a tag to compare
YALP v0.4 Pre-release
Pre-release
  • File marshalling for natives must be done explicitly, via interop.tofile and interop.closefile (to close the handle). This simplifies the native call code, and allows to control whether you want to destroy the file handle or not.
  • Increased performance when calling natives. interop.getnative also now has a fast parameter that can increase the performance a little bit more when passing arguments to the native, but at the cost of potential incompatibility with some functions (that manipulate the stack).
  • The COD pointer was not set correctly for fake AMX instances, causing an assertion error on Linux.

YALP v0.3

17 Nov 00:42
Compare
Choose a tag to compare
YALP v0.3 Pre-release
Pre-release
  • Pawn functions for controlling the Lua machine check the number of arguments.
  • exit function in the base package. It terminates any code that executes in the Lua machine and prevents any other code from running there, then deletes the machine as soon as possible.
  • Lua files can be passed into Pawn native functions. Every call creates a new copy of the original file handle (but with the same offset and access rights), which gets closed after the function is called.
  • interop.asfile and interop.asnewfile to convert Pawn File handles to Lua files. Both function create a copy of the file handle, but the first one deletes the original one as well, so it should be only used for functions which are meant to open files (without storing the result anywhere else).

YALP v0.2

26 Oct 12:40
Compare
Choose a tag to compare
YALP v0.2 Pre-release
Pre-release
  • New base functions: argcheck, optcheck, map, concat, exit.
  • New interop functions: tagname, cellmin, cellmax.
  • New debug function: numresults.
  • New timer functions: sleep, wait, waitticks.
  • New coroutine function: resumehooked.
  • interop changes: sequence tables will be marshalled as arrays (modifications are copied back after the call). heapalloc has a new parameter specifying whether to zero the memory. varargs is renamed to struct.
  • timer changes: parallelreg renamed to parallelex, order of arguments changed. Default count value was decreased to 256 from 100000.
  • package changes: require looks into the "scriptfiles/lua" directory for Lua packages and into the "plugins/lua" for C packages. require is also present even if the package module isn't loaded.
  • Tail-calling a C function will preserve the number of expected return values.
  • Functions that stored upvalue lists will now allow storing more than 255 upvalues.
  • Pawn native functions check the number of arguments.
  • Plugin version is reported in the YALP_VERSION global variable.

YALP v0.1

08 Sep 22:17
Compare
Choose a tag to compare
YALP v0.1 Pre-release
Pre-release

Initial release.