# sandkiste\_lua Sandboxing Lua scripts for the `sandkiste` API ## Building Building this crate currently depends on the `pkg-config` binary being installed on your system. ## License See contained `LICENSE` file (MIT License). ## Changelog * 2023-05-05: Version 0.4.0 * Use `sandkiste` version 0.3.0 * 2023-05-05: Version 0.3.1 * Fixed `LuaFunction::call` and `LuaMachine::callback` to properly handle wrongly reported length by `ExactSizeIterator` * 2023-03-26: Version 0.3.0 * Use `sandkiste` version 0.2.0 * 2023-03-20: Version 0.2.0 * Force abort on panic to fix soundness issue when calling or dropping closure passed to `Sandkiste::Callback::callback` * Use `sandkiste` version 0.1.0 * 2023-03-11: Version 0.1.0 * Added conversion from `Option` into `LuaDatum` (via `From` trait) * Use `bindgen` version 0.63 * Code cleanup * 2022-11-26: Version 0.0.7 * Use `sandkiste` version 0.0.5 * 2022-11-25: Version 0.0.6 * Use `sandkiste` version 0.0.4 * Minor fixes in internal comments * 2022-11-24: Version 0.0.5 * Use `sandkiste` version 0.0.3 * Experimental compiler features are no longer used * Improved error message when using `Lua5_3` and `Lua5_4` feature at the same time * 2022-06-21: Version 0.0.4 * Fixed soundness issue regarding argument iterators (`LuaFunction::call` and `LuaMachine::callback` relied on `ExactSizeIterator::len` returning the correct length, which has been fixed) * Removed unnecessary `vec![]` in example and tests (as `sandkiste::Function::call` is generic in regard to how a list of arguments is provided) * 2022-05-03: Version 0.0.3 * Fixed build error on nightly Rust by importing `core::ffi::{c_int, c_size_t}` for now instead of using `std::ffi` (see [commit `07ea143f96` in Rust](https://github.com/rust-lang/rust/commit/07ea143f96929ac7f0b7af0f025be48a472273e5) for explanation) * 2022-04-17: Version 0.0.2 * Fixed wrong calculation of used memory in custom allocator * Fixed error handling when pushing closures to the Lua machine (when invoking `lua_pcall` in `cmach_lua_pushclosure`, a wrong stack index was provided for the error handler) * Added documentation * Allow usage of deprecated `bit32` module when using Lua 5.3 (was previously stripped when sealing the standard library) * Export previously private module `cmach` to allow unsafe access to Lua * Avoid an unnecessary reallocation in C function `cmach_lua_errmsgh` * Fixed wrong comments in `cmach_lua_getglobal` * 2022-04-14: Version 0.0.1