Alex Orlenko
|
e3c5cfdf19
|
Extract registry_key and vector modules from types
|
2024-08-26 00:27:41 +01:00 |
|
Alex Orlenko
|
4977b91a98
|
Detect compilation error and return Result when using Compiler::compile() interface.
Closes #387
|
2024-08-25 23:07:13 +01:00 |
|
Alex Orlenko
|
6317b8e0c8
|
Test GC for nested userdata (userdata in userdata)
|
2024-08-25 21:02:12 +01:00 |
|
Alex Orlenko
|
ecc09c4387
|
Add luaL_loadbufferenv helper to all Lua versions
|
2024-08-25 17:29:58 +01:00 |
|
bjcscat
|
7bfd32750d
|
Change chunk env to use luau's load env parameter (#442)
|
2024-08-25 16:50:41 +01:00 |
|
Alex Orlenko
|
23d4e2519b
|
Switch to Mutex from RwLock for userdata access in send mode.
Unfortunately RwLock allow access to the userdata from multiple threads
without enforcing `Sync` marker.
|
2024-08-24 09:44:39 +01:00 |
|
Alex Orlenko
|
2857cb76c6
|
Add A param to AsyncThread<A, R>.
This reduces internal dependency on `MultiValue` container and delay args conversion to the future `poll()` stage.
|
2024-08-23 01:04:06 +01:00 |
|
Alex Orlenko
|
fdc50bffc9
|
Fix memory leak when polling async futures
|
2024-08-23 01:03:54 +01:00 |
|
Alex Orlenko
|
9931709ecd
|
Remove explicit lifetime from UserDataMethods and UserDataFields traits.
Pass `'static` arguments to async functions and require `'static` Future.
(in future we can use async closures to make it more elegant).
|
2024-08-23 00:10:29 +01:00 |
|
Alex Orlenko
|
8092f00930
|
Do not require Lua to be alive when dropping AsyncThread
|
2024-08-22 23:41:51 +01:00 |
|
Alex Orlenko
|
d2e87943ac
|
Skip extra lock when resuming thread
|
2024-08-22 23:41:50 +01:00 |
|
Sven Niederberger
|
26b9bdb362
|
serde_userdata: Remove map_err to reduce compile time impact (#441)
|
2024-08-21 12:06:49 +01:00 |
|
Alex Orlenko
|
c58f67b140
|
Add MaybeSend requirement to Lua futures
|
2024-08-10 17:55:39 +01:00 |
|
Sven Niederberger
|
0c08cdaf7c
|
Reduce compile time contribution of next_key_seed and next_value_seed (#436)
* factor out common code
* changelog entry
|
2024-08-06 20:04:17 +01:00 |
|
Alex Orlenko
|
10999babe0
|
Replace MultiValue::extend_from_values with from_lua_iter
|
2024-08-06 01:32:20 +01:00 |
|
Alex Orlenko
|
f0a995a357
|
Make MultiValue::with_capacity public
|
2024-08-05 23:36:17 +01:00 |
|
Alex Orlenko
|
aa47324ee9
|
Use pool for MultiValue container
|
2024-08-05 22:07:19 +01:00 |
|
Alex Orlenko
|
ac6a391426
|
Remove Lua::into_static and Lua::from_static (undocumented).
|
2024-08-05 14:57:15 +01:00 |
|
Alex Orlenko
|
8e14b6e40b
|
Fix tests
|
2024-08-04 22:22:02 +01:00 |
|
Alex Orlenko
|
c117a4c1af
|
Fix loading (fetching) stdlib modules when using require in Luau.
Fixes #435.
|
2024-08-04 18:55:17 +01:00 |
|
Alex Orlenko
|
4082b354fe
|
clippy
|
2024-08-01 00:55:10 +01:00 |
|
Alex Orlenko
|
3641c98959
|
Prepare for Rust 2024 edition (see rust-lang/rust#123748)
Replace `IntoLua(Multi)` generic with positional arg (impl trait) where possible
This allow to shorten syntax from `a.get::<_, T>` to `a.get::<T>`
|
2024-07-31 23:42:43 +01:00 |
|
Alex Orlenko
|
b7d170ab9b
|
Refactor ThreadStatus:
- Add `ThreadStatus::Running`
- Replace `ThreadStatus::Unresumable` with `ThreadStatus::Finished`
Change `Error::CoroutineInactive` to `Error::CoroutineUnresumable`
|
2024-07-31 22:34:45 +01:00 |
|
Alex Orlenko
|
5acf9d758d
|
Update CHANGELOG for v0.10.0-beta.1
v0.10.0-beta.1
|
2024-07-31 13:42:39 +01:00 |
|
Alex Orlenko
|
833790967b
|
Update async examples (use send feature)
|
2024-07-31 13:42:39 +01:00 |
|
Alex Orlenko
|
a86d6ab330
|
Mark LightUserData as Send+Sync (send feature flag)
|
2024-07-31 13:42:39 +01:00 |
|
Alex Orlenko
|
2f8755dcc7
|
Update README
|
2024-07-31 13:42:38 +01:00 |
|
Alex Orlenko
|
94415065c0
|
Fix Lua String soundness when borrowing &str or &[u8].
Make borrowing using new `BorrowedStr` and `BorrowedBytes` types that holds strong reference to Lua.
|
2024-07-31 13:42:38 +01:00 |
|
Alex Orlenko
|
bba644e83f
|
Fix compilation
|
2024-07-31 13:42:38 +01:00 |
|
Alex Orlenko
|
d5173380e3
|
Split util module
Refactor internal userdata types to switch to the new `TypeKey` trait
|
2024-07-31 13:42:38 +01:00 |
|
Alex Orlenko
|
d9941ef409
|
Take &mut RegistryKey in Lua::replace_registry_value.
|
2024-07-31 13:42:38 +01:00 |
|
Alex Orlenko
|
c715aec1f7
|
Do not consume self in Table::pairs and Table::sequence_values methods.
|
2024-07-31 13:42:38 +01:00 |
|
Alex Orlenko
|
cd3f45f31f
|
Rust nightly rustfmt
|
2024-07-31 13:42:37 +01:00 |
|
Alex Orlenko
|
b4892c228c
|
Add rustfmt.toml
|
2024-07-31 13:42:37 +01:00 |
|
Alex Orlenko
|
7a75c73052
|
Move AppData to types::app_data mod
|
2024-07-31 13:42:37 +01:00 |
|
Alex Orlenko
|
658f2a13ea
|
Support multi threads under send feature flag
|
2024-07-31 13:42:37 +01:00 |
|
Alex Orlenko
|
c1395ab543
|
clippy
|
2024-07-31 13:42:37 +01:00 |
|
Alex Orlenko
|
cd6d86a5ce
|
Split single lua module to multiple submodules under state
|
2024-07-31 13:42:37 +01:00 |
|
Alex Orlenko
|
8b2d067196
|
Fix Lua::set_vector_metatable
|
2024-07-31 13:42:36 +01:00 |
|
Alex Orlenko
|
07a5538e50
|
Don't run destructors if Lua is gone
|
2024-07-31 13:42:36 +01:00 |
|
Alex Orlenko
|
d17dc54645
|
Rewrite call_async in traits to use impl Future instead of LocalBoxFuture.
More use `std::future` types instead of `future-utils`.
|
2024-07-31 13:42:36 +01:00 |
|
Alex Orlenko
|
baa8895cfb
|
Optimize creation of userdata callbacks (registry)
|
2024-07-31 13:42:36 +01:00 |
|
Alex Orlenko
|
550d6b2991
|
Remove wrapped UserData impl (Rc/Arc/etc)
|
2024-07-31 13:42:36 +01:00 |
|
Alex Orlenko
|
b3649a44e0
|
Move userdata-related top-level modules into the userdata module
|
2024-07-31 13:42:36 +01:00 |
|
Alex Orlenko
|
313117095c
|
Remove parking_lot feature flag
|
2024-07-31 13:42:35 +01:00 |
|
Alex Orlenko
|
7221051683
|
Refactor:
- Remove the rest of `'lua` lifetimes
- Remove Owned types
|
2024-07-31 13:42:35 +01:00 |
|
Alex Orlenko
|
1eb2ecb3b0
|
Drop lifetime from IntoLua
|
2024-07-31 13:42:35 +01:00 |
|
Alex Orlenko
|
24b0672d99
|
Rename LuaRef to ValueRef
|
2024-07-31 13:42:35 +01:00 |
|
Alex Orlenko
|
08c7429531
|
Optimize various parts of the code to remove unnecessary clone calls.
This is became possible after implementing `IntoLua` for references.
|
2024-07-31 13:42:35 +01:00 |
|
Alex Orlenko
|
aa05eb4c81
|
Switch MultiValue to use VecDeque under the hood.
|
2024-07-31 13:42:35 +01:00 |
|