Alex Orlenko
93adfa42d1
Update doc comments
2025-05-06 22:36:23 +01:00
Alex Orlenko
5dc6c3214b
Prepare for 2024 edition
2025-05-06 21:28:21 +01:00
Alex Orlenko
da08f7210f
Revert disabling "module" feature flag for Luau in mlua-sys
...
Dynamic linking should still be okay
2025-05-06 15:48:52 +01:00
Alex Orlenko
8b7a85076a
mlua-sys: Prepare to 2024 edition
2025-05-06 15:47:14 +01:00
Alex Orlenko
a4ff68a120
v0.10.4
2025-05-06 15:47:09 +01:00
Alex Orlenko
5454cfa5ed
mlua-sys: v0.7.0
2025-05-06 15:46:35 +01:00
Alex Orlenko
f9d9dc74a7
Update CHANGELOG
2025-05-06 15:46:29 +01:00
Alex Orlenko
ed796fff51
Support async require loaders for Luau
2025-05-04 11:00:59 +01:00
Alex Orlenko
65e5be81ba
Update __mlua_async_poll chunk name
2025-05-04 11:00:27 +01:00
Alex Orlenko
4fa8e645b7
Fix Luau "require" tests
2025-05-03 21:45:39 +01:00
Alex Orlenko
05a0abb8c2
Replace Requite::load with Require::loader
2025-05-03 18:00:02 +01:00
Alex Orlenko
f0c0527c2b
Update Lua* dependencies
2025-05-03 17:58:33 +01:00
Alex Orlenko
2490dfeb38
Silence clippy false positives
2025-05-01 13:18:40 +01:00
Alex Orlenko
4a3dbafb6e
Update scoped userdata mismatch tests
2025-05-01 13:12:00 +01:00
Alex Orlenko
97ca3e2c08
Check that type passed to scoped userdata self argument is userdata.
...
If passed type is non-userdata we try to get a pointer (which will be null) that triggers an assertion.
Having a check also allow us to generate right error message.
Fixes #569
2025-05-01 13:09:23 +01:00
Alex Orlenko
d6fb328660
Don't use Lua::get_or_init_from_ptr in Require::load wrapper
2025-04-28 10:07:11 +01:00
Alex Orlenko
edd508ed1f
Make StateGuard automatically enabled inside callback_error_ext.
...
Remove manual usage of `StateGuard` in other places.
Closes #567
2025-04-27 23:09:20 +01:00
Alex Orlenko
a30a736291
Don't borrow mutably appdata container when working with require content cache
2025-04-27 00:38:30 +01:00
Alex Orlenko
8e1df48e81
Add encode_empty_tables_as_array serialize option.
...
This will change the behaviour of encoding empty Lua tables into array instead of map.
2025-04-26 17:53:56 +01:00
Alex Orlenko
efd192b816
Optimize Table::is_empty
2025-04-26 15:37:12 +01:00
krakow10
5e1451a465
Fix Reversed Comments & Typo ( #560 )
...
* Fix reversed comments
* Fix typos
2025-04-26 13:49:50 +01:00
Alex Orlenko
64b1d152b9
Deprecate Lua::load_from_finction and replace it with Lua::register_module and Lua::preload_module instead.
2025-04-26 13:42:07 +01:00
Alex Orlenko
a8a4aa8c93
Switch to "proxyrequire" function (follow up Luau 0.671)
2025-04-25 23:41:11 +01:00
Alex Orlenko
9fda2ecfcc
mlua-sys: Update Luau to 0.671
2025-04-25 23:38:49 +01:00
Alex Orlenko
21fc924457
Add Lua::create_require_function method
2025-04-25 20:01:37 +01:00
Alex Orlenko
30d5e08a8a
Add MaybeSend to Require trait
2025-04-25 15:51:33 +01:00
Alex Orlenko
560a30ca02
Support new Luau require system
...
This commit introduces the `Require` trait that be used to change `require` behaviour.
By default mlua implements behaviour same as `ReplRequirer` in the original Luau.
Unfortunately binary Luau modules are no longer supported by the new system.
2025-04-25 14:19:41 +01:00
Alex Orlenko
117f8377e2
mlua-sys: Add definitions for Luau require library (since 0.669)
2025-04-20 21:44:16 +02:00
Alex Orlenko
8173ef2fa8
Update README
2025-04-06 17:51:54 +01:00
Alex Orlenko
4e5677ae54
Update references to mlua repo
2025-04-06 15:37:38 +01:00
Alex Orlenko
49958f4827
Split Luau thread event callback to creation and collection callbacks.
...
We need this because they have different requirements:
- Thread creation callback can return Error or panic
- Thread collection callback runs during Luau GC cycle and cannot make any Lua calls or trigger panics.
2025-04-06 13:57:15 +01:00
Alex Orlenko
39b3af2ff2
Fix warnings when testing documentation
2025-04-05 23:44:25 +01:00
Alex Orlenko
b805939320
Make Lua::weak() method and WeakLua struct public.
...
This can be useful to prevent circular dependencies between Rust and Lua
or check that Lua instance is still alive.
2025-04-05 23:40:05 +01:00
Alex Orlenko
bd13300288
Update dependencies
2025-04-05 18:30:22 +01:00
Alex Orlenko
12e61e01f6
Restrict access to Luau VM from UserData destructors.
...
It's unsafe to make almost any Lua calls when userdata destructor is running.
This can cause recursive GC run and crash.
See https://github.com/luau-lang/luau/pull/510 for some details.
2025-04-05 10:31:39 +01:00
Alex Orlenko
53ff494ab9
Prepare for custom (Luau) userdata destructors.
...
We need to add logic later to prevent calling any Lua functions when UserData destructor is running.
2025-04-04 16:36:06 +01:00
Alex Orlenko
1cb081d20a
Do not propagate collect_garbage flag when clonning Lua
2025-04-04 10:58:08 +01:00
Alex Orlenko
c1a018a60d
Add AnyUserData::type_id method
2025-03-31 22:41:42 +01:00
Alex Orlenko
4d2ff45a8b
Update Lua::poll_pending doc (still hidden)
2025-03-31 22:26:47 +01:00
Alex Orlenko
72682198eb
Bump Luau to 0.667
2025-03-30 11:12:14 +01:00
Alex Orlenko
87fa663ac1
Remove deprecated functions
2025-03-28 13:24:15 +00:00
Alex Orlenko
1f970824b4
Support user thread creation callback (Luau)
2025-03-28 11:51:35 +00:00
Alex Orlenko
8d864e2687
Reduce stack operations when creating userdata
2025-03-22 14:23:59 +00:00
Alex Orlenko
b0140cdb9e
Add Chunk::name(), Chunk::environment() and Chunk::mode() functions.
...
They can be used to retrieve existing chunk params.
2025-03-22 09:31:24 +00:00
Alex Orlenko
806817212e
Rename Lua::init_from_ptr to Lua::get_or_init_from_ptr.
...
Return reference to `&Lua` with unbound lifetime (chosen by user).
2025-03-21 21:28:30 +00:00
Alex Orlenko
95c623e94d
Use c string literal where appropriate
2025-03-21 15:57:15 +00:00
Alex Orlenko
0a1a1fe0b6
Move some userdata helpers from crate::util to crate::userdata::util
2025-03-21 15:13:53 +00:00
Alex Orlenko
4fe7d151a1
Refactor userdata-wrappers feature.
...
Support borrowing underlying data in `UserDataRef` and `UserDataRefMut`.
2025-03-21 14:19:38 +00:00
Alex Orlenko
edbf1e9150
Change Lua library name constants from &str to *const c_char.
...
It makes easier to pass them to Lua API functions.
2025-03-14 23:10:14 +00:00
Alex Orlenko
69011a89d2
Revert "Add initial pluto support"
...
This reverts commit 0ed11e4134 .
2025-03-14 22:59:06 +00:00