Skip to content

v3.1

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 04 Jun 14:03
· 13 commits to main since this release
81fe65a

Added

  • Added the pcallwithenv(f, env, [args...]) base library function.
  • Added compatibility option interface. This allows toggling any potentially incompatible changes made for reference client compatibility.
    • This is exposed via the debug library as debug.getcompatopt(name) and debug.setcompatopt(name, value).
    • Supported option names are currently "setfenv", "gctaint", "gcdebug", and "inerrorhandler" which - if set to 1 - will revert the changes documented below.

Changed

  • The setfenv function will no longer allow replacing function environments that have a metatable with an __environment key to match new reference client behavior.
  • __gc metamethods are now invoked with a taint barrier to match new reference client behavior.
  • The debugstack, debuglocals, and getfenv functions will now return no results if called by __gc metamethods.
  • The debuglocals function can now be called outside of an error handler.
  • Fixed linker errors with inlined security functions in unoptimized builds on non-Windows systems.
  • Fixed a correctness issue with secureexecuterange where errors in the supplied callback were incorrectly forwarded to the global error handler.
  • Fixed an issue with secureexecuterange where the the C stack would grow each time the callback errored.