mlua-rs/rlua

High level Lua bindings to Rust

Rust

1,755

868 commits

updated Jul 20, 2024

See the code

README

rlua -- High level bindings between Rust and Lua

rlua is now deprecated in favour of mlua: see below for migration information

rlua is now a thin transitional wrapper around mlua; it is recommended to use mlua directly for new projects and to migrate to it when convenient. mlua was a fork of rlua which has recently seen more development activity and new features.

Migration

rlua 0.20 includes some utilities to help transition to mlua, but is otherwise just re-exporting mlua directly.

The main changes are:

  • In mlua, Lua::context() is no longer necessary. The methods previously on Context can now be called directly on the Lua object. rlua 0.20 includes an RluaCompat extension trait which adds a context() method which can be used to avoid having to update code all at once.

  • The ToLua trait has been renamed to IntoLua, and its conversion method to_lua is now into_lua. rlua 0.20 includes ToLua as an alias for IntoLua and an extension ToLuaCompat which adds a to_lua method as a temporary convenience.

A few other changes which should be less disruptive:

  • mlua has different defaults and options for blocking loading C libraries or compiled modules from Lua code or catching Rust panics. Check the Lua::new_with and unsafe variants for the new options.

mlua-rs/rlua

High level Lua bindings to Rust

Rust

1,755

868 commits

updated Jul 20, 2024

See the code

README

rlua -- High level bindings between Rust and Lua

rlua is now deprecated in favour of mlua: see below for migration information

rlua is now a thin transitional wrapper around mlua; it is recommended to use mlua directly for new projects and to migrate to it when convenient. mlua was a fork of rlua which has recently seen more development activity and new features.

Migration

rlua 0.20 includes some utilities to help transition to mlua, but is otherwise just re-exporting mlua directly.

The main changes are:

  • In mlua, Lua::context() is no longer necessary. The methods previously on Context can now be called directly on the Lua object. rlua 0.20 includes an RluaCompat extension trait which adds a context() method which can be used to avoid having to update code all at once.

  • The ToLua trait has been renamed to IntoLua, and its conversion method to_lua is now into_lua. rlua 0.20 includes ToLua as an alias for IntoLua and an extension ToLuaCompat which adds a to_lua method as a temporary convenience.

A few other changes which should be less disruptive:

  • mlua has different defaults and options for blocking loading C libraries or compiled modules from Lua code or catching Rust panics. Check the Lua::new_with and unsafe variants for the new options.

Project health

crates.io

Latest release

0.20.1 · Jul 20, 2024

Releases this year

0

Significant stargazers

(top 24 of 43)

Andrew Gallant

13,400 followers · starred May 2017

Yurii Rashkovskii

824 followers · starred Jul 2018

Matt Butcher

1,542 followers · starred Apr 2018

Roman Volosatovs

199 followers · starred Sep 2021