mlua-rs/mlua
 Watch   
 Star   
 Fork   
4 days ago
mlua

v0.11.6

What's Changed

  • Lua 5.5 support under the new lua55 feature flag
  • Luau updated to 0.705+
  • Added AnyUserData::is_proxy
  • Added num_params, num_upvalues, is_vararg to FunctionInfo

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.5...v0.11.6

Lua 5.5 notes

Lua 5.5 support external strings and mlua enable this optimisation for impl IntoLua for String/BString (owned versions to move Drop into Lua). Also the Lua::create_external_string function allow moving ownership to Lua for any Into<Vec<u8>> types.

2025-11-23 00:13:08
mlua

v0.11.5

What's Changed

  • Luau updated to 0.701
  • Added Lua::set_memory_category and Lua::heap_dump functions to profile (Luau) memory
  • Added Lua::type_metatable helper to get metatable of a primitive type
  • Added Lua::traceback function to generate stack traces at different levels
  • Added add_method_once /add_async_method_once UserData methods (experimental)
  • Make AnyUserData::type_name public
  • impl IntoLuaMulti for &MultiValue

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.4...v0.11.5

2025-09-29 06:46:55
mlua

v0.11.4

What's Changed

  • Make Value::to_serializable public
  • Added new serde option detect_mixed_tables (to encode mixed array+map tables)
  • Added ObjectLike::get_path helper (for tables and userdata) for easy access of nested data
  • Added (experimental) __namecall optimization for Luau

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.3...v0.11.4

2025-08-30 06:11:21
mlua

v0.11.3

What's Changed

  • Added Lua::yield_with to use as coroutine.yield functional 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::cursor method (Luau)
  • Added Lua::create_buffer_with_capacity method (Luau)
  • Make Lua reference values cheap to clone in Rust (only increments ref count)
  • Fix panic on large (>67M entries) table creation

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.2...v0.11.3

2025-08-10 07:53:45
mlua

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: https://github.com/mlua-rs/mlua/compare/v0.11.1...v0.11.2

2025-07-16 05:43:18
mlua

v0.11.1

What's Changed

  • Fixed bug exhausting Lua auxiliary stack and leaving it without reserve (#615)
  • Lua::push_c_function now correctly handles OOM for Lua 5.1 and Luau

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.0...v0.11.1

2025-07-14 22:33:02
mlua

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 external mlua-sys feature flag
  • Lua::inspect_stack takes a callback with &Debug argument, instead of returning Debug directly
  • Added Debug::function method to get function running at a given level
  • Debug::curr_line is deprecated in favour of Debug::current_line that returns Option<usize>
  • Added Lua::set_globals method to replace global environment
  • Table::set_metatable now returns Result<()> (this operation can fail in sandboxed Luau mode)
  • impl ToString replaced with Into<StdString> in UserData registration
  • Value::as_str and Value::as_string_lossy methods are deprecated (as they are non-idiomatic)
  • Bugfixes and improvements

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.0-beta.3...v0.11.0

2025-06-24 06:23:07
mlua

v0.11.0-beta.3

What's Changed

  • Luau in sandboxed mode has reduced options in collectgarbage function (to follow the official doc)
  • Function::deep_clone now returns Result<Function> as this operation can fail with OOM
  • Luau "Require" resolves included Lua files relative to the current directory (#605)
  • Fixed bug when finalizing AsyncThread on drop (call_async methods family)

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.0-beta.2...v0.11.0-beta.3

2025-06-12 21:12:46
mlua

v0.11.0-beta.2

What's Changed

  • Lua 5.4 updated to 5.4.8
  • Terminate Rust Future when AsyncThread is dropped (without relying on Lua GC)
  • Added loadstring function to Luau
  • Make AsChunk trait dyn-friendly
  • Luau Require trait synced with Luau 0.674
  • Luau Require trait methods now can return Error variant (in NavigateError enum)
  • Added __type to Error's userdata metatable (for typeof function)
  • parking_log/send_guard is moved to userdata-wrappers feature flag
  • New serde feature flag to replace serialize (the old one is still available)

Full Changelog: https://github.com/mlua-rs/mlua/compare/v0.11.0-beta.1...v0.11.0-beta.2

2025-05-24 19:41:05
mlua

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: https://github.com/mlua-rs/mlua/compare/v0.10.4...v0.10.5