Releases: mlua-rs/mlua
Releases · mlua-rs/mlua
v0.11.4
What's Changed
- Make
Value::to_serializablepublic - Added new
serdeoptiondetect_mixed_tables(to encode mixed array+map tables) - Added
ObjectLike::get_pathhelper (for tables and userdata) for easy access of nested data - Added (experimental)
__namecalloptimization for Luau
Full Changelog: v0.11.3...v0.11.4
v0.11.3
What's Changed
- Added
Lua::yield_withto use ascoroutine.yieldfunctional replacement in async functions for any Lua (see doc examples) - Do not try to yield at non-yielable points in Luau interrupt (#632)
- Added
Buffer::cursormethod (Luau) - Added
Lua::create_buffer_with_capacitymethod (Luau) - Make Lua reference values cheap to clone in Rust (only increments ref count)
- Fix panic on large (>67M entries) table creation
Full Changelog: v0.11.2...v0.11.3
v0.11.2
What's Changed
- Faster stack push for
Variadic<T> - Fix handling Windows paths with drive letter in Luau require (#623) by @piz-ewing
- Make Luau registered aliases ascii case-insensitive (#620)
- Fix deserializing negative zeros
-0.0(#618)
Full Changelog: v0.11.1...v0.11.2
v0.11.1
v0.11.0
What's Changed (since v0.11.0-beta.3)
- Allow linking external Lua libraries in a build script (e.g. pluto) using
externalmlua-sys feature flag Lua::inspect_stacktakes a callback with&Debugargument, instead of returningDebugdirectly- Added
Debug::functionmethod to get function running at a given level Debug::curr_lineis deprecated in favour ofDebug::current_linethat returnsOption<usize>- Added
Lua::set_globalsmethod to replace global environment Table::set_metatablenow returnsResult<()>(this operation can fail in sandboxed Luau mode)impl ToStringreplaced withInto<StdString>inUserDataregistrationValue::as_strandValue::as_string_lossymethods are deprecated (as they are non-idiomatic)- Bugfixes and improvements
Full Changelog: v0.11.0-beta.3...v0.11.0
v0.11.0-beta.3
What's Changed
- Luau in sandboxed mode has reduced options in
collectgarbagefunction (to follow the official doc) Function::deep_clonenow returnsResult<Function>as this operation can fail with OOM- Luau "Require" resolves included Lua files relative to the current directory (#605)
- Fixed bug when finalizing
AsyncThreadon drop (call_asyncmethods family)
Full Changelog: v0.11.0-beta.2...v0.11.0-beta.3
v0.11.0-beta.2
What's Changed
- Lua 5.4 updated to 5.4.8
- Terminate Rust
FuturewhenAsyncThreadis dropped (without relying on Lua GC) - Added
loadstringfunction to Luau - Make
AsChunktrait dyn-friendly - Luau
Requiretrait synced with Luau 0.674 - Luau
Requiretrait methods now can returnErrorvariant (inNavigateErrorenum) - Added
__typetoError's userdata metatable (fortypeoffunction) parking_log/send_guardis moved touserdata-wrappersfeature flag- New
serdefeature flag to replaceserialize(the old one is still available)
Full Changelog: v0.11.0-beta.1...v0.11.0-beta.2
v0.10.5
What's Changed
- mlua-sys is back to v0.6.x (Luau 0.663)
- Reverted: Trigger abort when Luau userdata destructors are panic (requires new mlua-sys)
- Reverted: Added large (52bit) integers support for Luau (breaking change)
Full Changelog: v0.10.4...v0.10.5
v0.11.0-beta.1
What's Changed
- New require-by-string for Luau (with
Requiretrait and async support) - Added
Thread::resume_errorsupport for Luau - 52 bit integers support for Luau (this is a breaking change)
- New features for Luau compiler (constants, disabled builtins, known members)
AsyncThread<A, R>changed toAsyncThread<R>(Apushed to stack immediately)- Lifetime
'amoved fromAsChunk<'a>toAsChunk::source Lua::scopepass&Scopeinstead of&mut Scopeto closure- Added global hooks support (Lua 5.1+)
- Added per-thread hooks support (Lua 5.1+)
Lua::init_from_ptrrenamed toLua::get_or_init_from_ptrand returns&LuaLua:load_from_functionis deprecated (this isregister_modulenow)- Added
Lua::register_moduleandLua::preload_module
Full Changelog: v0.10.4...v0.11.0-beta.1
v0.10.4
What's Changed
yanked because of breaking semver (large integers for Luau changed type from i32 to i64)
- Luau updated to 0.672
- New serde option
encode_empty_tables_as_arrayto serialize empty tables as array - Added
WeakLuaandLua::weak()to create weak references to Lua state - Trigger abort when Luau userdata destructors are panicing (Luau GC does not support it)
- Added
AnyUserData::type_id()method to get the type id of the userdata - Added
Chunk::name(),Chunk::environment()andChunk::mode()functions - Support borrowing underlying wrapped types for
UserDataRefandUserDataRefMut(underuserdata-wrappersfeature) - Added large (52bit) integers support for Luau
- Enable
serdeforbstrifserializefeature flag is enabled - Recursive warnings (Lua 5.4) are no longer allowed
- Implemented
IntoLua/FromLuaforBorrowedStringandBorrowedBytes - Implemented
IntoLua/FromLuaforchar - Enable
Thread::reset()for all Lua versions (limited support for 5.1-5.3) - Bugfixes and improvements
Full Changelog: v0.10.3...v0.10.4