Alex Orlenko
269ef9c55d
Fix lua51 scope compilation
2021-04-27 10:11:37 +01:00
Alex Orlenko
f5b88624ce
Hide Deserializer inner fields
...
Improve documentation
2021-04-27 10:04:18 +01:00
Alex Orlenko
2fae94586d
Remove Result from lua.null() and lua.array_metatable(). They never fail.
2021-04-27 00:38:13 +01:00
Alex Orlenko
bc81d1016f
Add SerializeOptions to to change default Lua serializer behaviour
2021-04-27 00:35:53 +01:00
Alex Orlenko
c19f12898d
Replace lazy_static with once_cell
2021-04-27 00:29:38 +01:00
Alex Orlenko
c7541ef7d3
More tests
2021-04-27 00:29:38 +01:00
Alex Orlenko
41a1a0d15a
Add more checks for destructed userdata in AnyUserData
2021-04-27 00:29:38 +01:00
Alex Orlenko
c10169a380
cargo fmt and other minor fixes
2021-04-27 00:29:38 +01:00
Alex Orlenko
ced808d5ab
Don't trigger longjmp in rust.
...
Motivation behind this change is upcoming breaking change in Rust
compiler v1.52.0 to prevent unwinding across FFI boundaries.
https://github.com/rust-lang/rust/pull/76570
The new functionality requires nightly compiler to declare FFI
functions as "C-unwind".
The fundamental solution is to use C shim to wrap "e" and "m"
Lua functions in pcall.
Additionally define Rust calling convention to trigger lua_error
on Rust behalf.
2021-04-27 00:29:38 +01:00
Alex Orlenko
c95ac32741
Add inline(always) to some compat53 functions
2021-04-27 00:29:37 +01:00
Alex Orlenko
14169eadb1
Include nightly to github CI tests
2021-04-27 00:29:37 +01:00
Alex Orlenko
5a7ad9f7cd
Fix some clippy warnings & minor changes
2021-04-27 00:29:37 +01:00
Alex Orlenko
decb5b9e37
Make MetaMethod::name() public
...
Tests for UserDataMetatable::pairs()
2021-04-27 00:29:37 +01:00
Alex Orlenko
1635903d3f
Improve/fix scoped UserData drop
2021-04-27 00:29:37 +01:00
Alex Orlenko
2b2df708f9
Add UserDataFields
API.
...
Provide safe access to UserData metatable and allow to define custom metamethods..
2021-04-27 00:29:37 +01:00
Alex Orlenko
cb1ac28f2a
v0.5.4
2021-04-20 02:05:05 +01:00
Alex Orlenko
3e7f25670a
Don't read lua.h from build script (was not used)
2021-04-20 02:05:00 +01:00
Alex Orlenko
0d404ce4c3
Don't fail CI on coverage
2021-04-16 22:43:21 +01:00
Alex Orlenko
e26cec5db9
Drop 'feature(link_args)' (removed from nightly). Don't run tests for LuaJIT 2.0.5
2021-04-16 22:27:28 +01:00
Alex Orlenko
0bd36b42e7
Make error::Error non_exhaustive
2021-04-16 22:10:10 +01:00
Alex Orlenko
e0da6ac929
Hide raw_sequence_values_by_len under async/serialize feature flags
2021-04-16 22:09:49 +01:00
Alex Orlenko
0c7db4916c
Serialize only known (registered) userdata.
...
This reverts commit 7332c6a
.
Non-static userdata is a special case and can cause segfault if try to serialize it.
Now it should be safe, plus I added non-static userdata destructor to generate better error messages
in case of accessing destructed userdata.
2021-04-16 22:01:55 +01:00
Alex Orlenko
b9589491e4
Improve panic handling (check for twice resumed panics)
2021-04-15 23:04:36 +01:00
Alex Orlenko
58cb371f06
Add rerun-if-changed instructions to build script
2021-04-14 22:33:23 +01:00
Alex Orlenko
8add60b019
Don't check LUA_LIB_NAME if it's not needed
2021-04-14 22:25:49 +01:00
Alex Orlenko
c363fb9288
v0.5.3
2021-03-04 00:01:06 +00:00
Alex Orlenko
3900e23839
Fix compilation warnings on nightly
2021-03-03 23:36:28 +00:00
Alex Orlenko
726fde7e1f
Optimise async callbacks (polling)
...
call async Rust callback [sum] 3 10
time: [59.338 us 59.729 us 60.097 us]
change: [-10.336% -8.6212% -6.8003%] (p = 0.00 < 0.05)
Performance has improved.
2021-03-03 23:21:56 +00:00
Alex Orlenko
7cb9c4f39c
Fix bug in returning nil-prefixed multi values from async function
2021-03-03 22:32:22 +00:00
Alex Orlenko
b93ace0224
v0.5.2
2021-02-27 19:32:25 +00:00
Alex Orlenko
5f37bf812d
Fix/whitelist some clippy warnings
2021-02-27 19:23:08 +00:00
Alex Orlenko
1f7e760d20
Add codecov coverage report
2021-02-27 18:03:53 +00:00
Alex Orlenko
90bea4aa34
Update README and keywords
2021-02-27 13:28:47 +00:00
Alex Orlenko
7775b4a99c
Bump copyright year
2021-02-26 10:35:00 +00:00
Alex Orlenko
1d9cda10eb
Add ToLua implementation for Cow<str> and Cow<CStr>
2021-02-26 10:23:36 +00:00
Alex Orlenko
7332c6a28c
Remove registered_userdata_mt
check
2021-02-22 20:38:36 +00:00
Alex Orlenko
94670e3fdb
rustfmt
2021-02-22 20:13:56 +00:00
Alex Orlenko
335f433df4
Optimize callbacks
2021-02-21 23:52:20 +00:00
Alex Orlenko
2aed548747
Fix scoped async destruction of partially polled futures
2021-02-21 23:52:07 +00:00
Alex Orlenko
6a77b5f003
Update benchmarks:
...
- Refactor
- Add async benchmarks
2021-02-21 18:48:45 +00:00
Alex Orlenko
aeb66115f7
v0.5.1
2021-01-20 11:04:03 +00:00
Alex Orlenko
ce873a40bf
Update CHANGELOG
2021-01-20 11:00:47 +00:00
Alex Orlenko
8de75d1c18
Update tokio to 1.0 for async examples
2021-01-20 10:47:27 +00:00
Alex Orlenko
b6ff501b8c
Fix numeric types conversion for 32bit lua. Fix #27
2021-01-20 10:46:23 +00:00
Alex Orlenko
0e73ae18f4
Update CI
2021-01-16 13:32:38 +00:00
Alex Orlenko
e62fd400d7
Remove unused exports from glue.{c,rs} && Fix some clippy warnings
2021-01-16 13:31:45 +00:00
Alex Orlenko
1c79f646de
Update README
2021-01-16 13:31:34 +00:00
Alex Orlenko
7f5fd36a2b
Merge pull request #26 from wez/cross
...
Support cross compilation
2021-01-14 15:35:35 +00:00
Wez Furlong
faf19e4a06
Allow luajit to build in the pointer size cross compilation case
2021-01-13 20:01:12 -08:00
Wez Furlong
24d9099ef7
install more bits for cross compilation jobs
2021-01-13 10:38:08 -08:00