Alex Orlenko
da526595bb
mlua-sys: Add Lua 5.5 support
2026-01-13 00:05:01 +00:00
Alex Orlenko
39a7d3b862
Update SYS_MIN_ALIGN
2025-12-31 19:26:38 +02:00
Alex Orlenko
0245d4ce6b
v0.11.5
v0.11.5
2025-11-22 16:13:08 +00:00
Alex Orlenko
a7f105c698
Update Lua::set_memory_category doc
2025-11-22 14:27:02 +00:00
Alex Orlenko
d2a8670bef
(CI) Update wasi/wasmtime
2025-11-22 13:58:15 +00:00
Alex Orlenko
e9de70a030
(CI) Move from x86_64-apple-darwin to aarch64-apple-darwin
2025-11-22 13:57:04 +00:00
Alex Orlenko
aee647c6c0
Update CHANGELOG
2025-11-22 13:55:07 +00:00
Alex Orlenko
2e4184e7e4
Update spelling
2025-11-22 13:49:23 +00:00
Alex Orlenko
12b24b6c5b
mlua-sys: v0.9.0
2025-11-22 13:47:17 +00:00
Alex Orlenko
1b500b7d47
Remove generic from internal definition of RawLua::create_string
2025-11-22 13:36:50 +00:00
Alex Orlenko
ce4fc80e18
Bump luau-src to 0.17.0 (Luau 0.701)
2025-11-22 12:58:59 +00:00
Alex Orlenko
121971f54e
Add Lua::set_memory_category and Lua::heap_dump functions to profile Luau memory usage.
...
This functionality uses Luau private api to dump heap mempory in JSON format for inspection.
The new type `HeapDump` represents memory snapshot with some basic API to calculate stats.
2025-11-22 00:01:34 +00:00
Alex Orlenko
6835537e3b
Switch to released verson of luau0-src
2025-11-19 11:25:59 +00:00
Alex Orlenko
a2728928cf
Temporary disable some send tests on nightly
...
Aparently there is a regression in the compiler and sync detection does not work correctly
2025-11-18 00:51:24 +00:00
Alex Orlenko
676f3a6983
Fix tests
2025-11-17 13:44:29 +00:00
Alex Orlenko
0beaac228c
Update Luau require tests
2025-11-16 23:51:51 +00:00
Alex Orlenko
9a7f75ad6b
Update require implementation to satisfy Luau 0.700
2025-11-16 23:13:11 +00:00
Alex Orlenko
cd56f92a7f
Update Luau definitions in mlua-sys to 0.700
2025-11-16 23:12:06 +00:00
Alex Orlenko
1bd1359f43
Exclude the first arg when checking for yield_with call.
...
This is part of the previous commit
2025-11-06 23:28:37 +00:00
Alex Orlenko
feec72bcbd
Reduce number of allocations when calling async function
...
Instead of creating a uniq poller with upvalue on each async call, return future directly
and pass it to the poller
This also gives about 3-5% perf improvements
2025-11-06 23:09:26 +00:00
Alex Orlenko
0611906c6a
Add Lua::type_metatable helper to get metatable of a primitive type.
...
The accompany function `Lua::set_type_metatable` already exists.
2025-11-05 22:07:14 +00:00
Alex Orlenko
72ac247dca
Fix MaybeSend doc
2025-11-04 23:20:53 +00:00
Alex Orlenko
f2fd010c5f
Add missing lua_remove when discovering function name
2025-10-28 16:04:24 +00:00
Alex Orlenko
0619f264de
Add Lua::traceback function to generate stack traces at different levels
...
This is similar to `debug.traceback`, through does not require debug module.
Close #652
2025-10-28 14:49:22 +00:00
Alex Orlenko
ddd44bdd36
Add LUA_LOADED_TABLE constant (Luau)
2025-10-27 20:57:56 +00:00
Alex Orlenko
1152519074
Add add_method_once and add_async_method_once UserData methods (experimental).
...
They will allow implementing userdata methods that can be called only once, destructing
userdata instance during the call.
2025-10-26 20:14:46 +00:00
Alex Orlenko
3a2fd1ec59
Make AnyUserData::type_name public
2025-10-17 20:00:53 +01:00
Alex Orlenko
a4c8b20697
impl IntoLuaMulti for &MultiValue
2025-10-13 12:36:42 +01:00
Alex Crichton
6e353d6c9f
Build/test wasm32-wasip2 in CI ( #649 )
...
This is a follow-up from mlua-rs/lua-src-rs#13 which verifies/tests that
mlua/lua all work when compiled for a WASI target. While this doesn't
have formal documentation yet it also codifies in CI configuration how
to build for WASI and get tests passing (notably C compiler
configuration and some misc Rust flags).
This moves some `dev-dependencies` that don't compile for
`wasm32-wasip2` to a different section of the manifest. This
additionally annotates panicking tests with `#[cfg(not(panic =
"abort"))]` to skip those tests on WASI.
This does not test either the `send` or `async` feature at this time.
Testing `send` requires threads which WASI does not yet support, and
testing `async` requires more support in Tokio which is not currently
there yet.
2025-10-04 09:52:23 +01:00
Alex Orlenko
247208edb1
v0.11.4
v0.11.4
2025-09-28 23:46:55 +01:00
Alex Orlenko
e08768cc5e
Derive Default for Value (clippy)
2025-09-28 23:42:12 +01:00
Alex Orlenko
5b38af9746
AsyncCallFuture is Unpin
2025-09-19 10:00:28 +01:00
Alex Orlenko
54907f80c5
Add SerializableValue to lib and prelude exports
2025-09-12 12:40:43 +01:00
Alex Orlenko
ae512f2b49
Remove const from SerializableValue (it's not really useful)
2025-09-12 12:40:00 +01:00
Alex Orlenko
53c159b6cb
Unhide Value::to_serializable
2025-09-12 11:49:43 +01:00
Alex Orlenko
2beca6ebe1
Add test for Table::for_each_value
2025-09-12 11:49:37 +01:00
Alex Orlenko
09da7a41e5
Add new serde option "detect_mixed_tables"
...
This option would allow detecting mixed tables (with array-like and map-like entries or several borders)
to encoding them chosing the best method (as a map or as a table).
2025-09-12 11:11:18 +01:00
Alex Orlenko
bad20374ad
Simplify Table::clear method
...
There is no need to traverse array part, lua_next will cover everything
2025-09-08 23:37:28 +01:00
Alex Orlenko
40b507c3ec
Add ObjectLike::get_path helper
2025-09-04 19:12:44 +01:00
Andrew Dunbar
537cc995f6
Copyedit English in README.md ( #639 )
2025-09-04 14:59:24 +01:00
Alex Orlenko
5d27cb91b2
Add optional __namecall optimization for Luau
...
Add `UserDataRegistry::enable_namecall()` hint to set `__namecall` metamethod to enable Luau-specific method resolution optimization.
2025-09-02 00:53:12 +01:00
Alex Orlenko
c70a636ca9
Remove newlines from yield_with examples
2025-08-30 12:51:53 +01:00
Alex Orlenko
13ff0ca798
v0.11.3
v0.11.3
2025-08-29 23:11:21 +01:00
Alex Orlenko
44f49e35d6
Update CHANGELOG
2025-08-29 00:18:06 +01:00
Alex Orlenko
e1ee4058a6
Add new benchmark to measure complex userdata method calls
2025-08-28 23:56:03 +01:00
Alex Orlenko
f06d0020ea
Add test to emulate method through field
2025-08-28 23:50:18 +01:00
Alex Orlenko
d399559d30
Add Lua::yield_with to allow yielding Rust async functions and exchange values between Lua coroutine and Rust.
...
This functionality is similar to `coroutine.yield` and `coroutine.resume` without C restrictions.
2025-08-28 18:41:24 +01:00
Alex Orlenko
30735d5ff1
Fix thread recovery when pushing a bad arg
...
We should not erase thread stack if a bad argument is pushed before resuming the thread.
2025-08-25 23:07:37 +01:00
Alex Orlenko
75c23e5853
Add lua_cpcall to Luau ffi (0.688+)
2025-08-25 12:54:17 +01:00
Alex Orlenko
347856b806
Do not try to yield at non-yielable points in Luau interrupt
...
In particular we cannot yeild across metamethod/C-call boundaries.
This behaviour matches with Lua 5.3+ yielding from hooks only at safe points.
Closes #632
2025-08-25 12:19:50 +01:00