[This message is on iup-users; an identical, but separate post will appear on lua-l.]
G'day, I'm very pleased (and rather exhausted) to announce the release of lglicua-0.1-alpha3 on SourceForge. This supersedes and replaces -alpha2. The project is at: https://sourceforge.net/projects/lglicua/ The changes are quite wide-ranging, and are, to a fair extent, reviewing and updating scripts that were deemed "good enough" for the -alpha2 release, but were candidates for revision after that release. This especially includes the "build/", "svn/" and workspace "1/play" and "1/support" directories. ----- The biggest news is that the Assistant is closer to supporting multiple versions of Lua. However, this is still dependent on the Lua binary and library support being installed in the OS, not part of the Assistant package tree. The Assistant has been tested (briefly, via virtual machines) on: GNU/LinuxMint: 18.3, 19.1, 19.3, 20.1 and ***new*** 20.2; Ubuntu: 18.04.3, 20.04.2.0, 20.10 and 21.04; and CentOS: 7.0 only (with Lua 5.1.4 baked-in). Two new fields in the Assistant database (svn/assistant-database.lua) can force the Lua version used for building. This works with cross-compiling Lua version (e.g. 5.3 libraries can be produced by a Lua 5.1 build system): $ diff -u assistant-database.lua tt.t --- assistant-database.lua 2021-07-17 17:21:12.000000000 +0930 +++ tt.t 2021-07-19 14:32:50.918324707 +0930 @@ -410,8 +410,8 @@ LuaVersionMap = { Manifest = {"Pattern", "{LUAVER}", "{LUALIBSFX}"}, Pattern = "({%u+})", - ["{LUAVER}"] = "5.1", - ["{LUALIBSFX}"] = "51", + ["{LUAVER}"] = "5.3", + ["{LUALIBSFX}"] = "53", }, TerseFlow = true, } There is a new script in the Workspace: "1/play/version-rocks": This script reports the Lua version, and then verbosely tries to install Rocks, starting with "std.normalize". This script shows up the incompatibilities between the interpreter version and the Rocks version. -------- Sadly, there remains a significant conflict between the version of Lua and the Lua build target of LuaRocks (as strongly suggested, or even imposed, by the installer): LuaRocks is built for Lua 5.1 only; the Lua 5.3 build can run as long as it does not reference any (C code) Rock, but fails with dynamic linker errors such as "lua_tointeger not found". The Assistant stays with Rocks version 3.3.1 for this release; I hope to upgrade to 3.7.0 for the next release, and also to look to dynamically switching the Rocks database based on the Lua version. -------- Other improvements have been curating/refining/pruning loose ends in areas such as svn/*.lua, build/*.lua and build/support/*.lua. Quite a lot of work has gone into PosixExec.lua, adding an "Options" table parameter. This is because things like changing work directory, setting environment variables and filename globbing were cropping up as repeated onerous patterns in the main code, and these can now be offloaded to be executed purely in the context of the child (after the process fork). -------- In closing, Share and Enjoy (yes, it's all MIT-Licensed, as per the norm for the Lua ecosystem). cheers, sur-behoffski (Brenton Hoff) programmer, Grouse Software _______________________________________________ Iup-users mailing list Iup-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/iup-users