You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Lua 5.5 was released December 2025 and is now the current stable release. Lua 5.4 remains maintained but 5.3 and earlier are end-of-life. OpenDKIM currently blocks 5.5 at configure time (added in PR #264), but the C API changes required are modest.
Breaking C API changes and impact on OpenDKIM
Lua 5.5 change
OpenDKIM affected?
lua_newstate takes a new 3rd seed parameter
Yes — called in 5 places in opendkim-lua.c and once in miltertest.c. Compile error.
lua_dump changed stack behavior + extra writer call to signal end of dump
Yes — called 5 times in opendkim-lua.c. Could cause subtle runtime bugs.
LUA_GCINC/LUA_GCGEN replaced by LUA_GCPARAM
No — OpenDKIM does not touch GC params.
lua_resetthread deprecated
No — not used.
lua_setcstacklimit deprecated
No — not used.
lua_call nresults capped at 250
No — unlikely to hit in practice.
lua_pushvfstring now reports errors instead of raising them
No — not used.
Work needed
Add a 3rd NULL argument to all lua_newstate calls.
Audit lua_dump usage in opendkim-lua.c — the extra end-of-dump writer call must not corrupt script serialization.
Lua 5.5 was released December 2025 and is now the current stable release. Lua 5.4 remains maintained but 5.3 and earlier are end-of-life. OpenDKIM currently blocks 5.5 at configure time (added in PR #264), but the C API changes required are modest.
Breaking C API changes and impact on OpenDKIM
lua_newstatetakes a new 3rd seed parameteropendkim-lua.cand once inmiltertest.c. Compile error.lua_dumpchanged stack behavior + extra writer call to signal end of dumpopendkim-lua.c. Could cause subtle runtime bugs.LUA_GCINC/LUA_GCGENreplaced byLUA_GCPARAMlua_resetthreaddeprecatedlua_setcstacklimitdeprecatedlua_callnresults capped at 250lua_pushvfstringnow reports errors instead of raising themWork needed
NULLargument to alllua_newstatecalls.lua_dumpusage inopendkim-lua.c— the extra end-of-dump writer call must not corrupt script serialization.configure.acto detect Lua 5.5 and remove theLUA_VERSION_NUM >= 505upper bound gate (added in PR configure.ac: Improve lua detection with/without pkg-config #264).