Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Expose Guts for better fine control. #254

Open
volundmush opened this issue Dec 29, 2023 · 0 comments
Open

[Feature Request] Expose Guts for better fine control. #254

volundmush opened this issue Dec 29, 2023 · 0 comments

Comments

@volundmush
Copy link

volundmush commented Dec 29, 2023

Although Lupa is very intuitive to use and its integration with Python is astoundingly thorough, not very much of Lua's guts are exposed to Python. There's no direct access to lua_yield or lua_sethook for instance. (as I understand it, lua_sethook applies to each lua_State*, so it would need to be able to target both the LuaRuntime and each lua_newthread pointer. Unless I am misunderstanding.) I am not certain how one is supposed to properly sandbox an environment's globals, restrict execution, force Lua to terminate for running too long, etc.

After checking out LuaBridge's ability to create frozen namespaces and fill it with functions and property getter-setters, and using the raw C API to put restraints on Lua, I find these things lacking in Lupa.

Unless I am somehow not seeing the forest for the trees; I don't know the right way to inject a pile of Python API objects into a Lua Coroutine's globals or to limit access to certain libraries using Lupa.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant