The libraries in 'luaext' are ancient (from 2003!) vendored in versions of
[lrexlib](https://rrthomas.github.io/lrexlib/) and
[lposix](http://webserver2.tecgraf.puc-rio.br/~lhf/ftp/lua/#lposix) (which was
superceded by [luaposix](https://github.com/luaposix/luaposix))
It's time to upgrade. and
Did some work on a branch over here:
https://github.com/rpm-software-management/rpm/compare/master...daurnimator:lua5.3-no-compat
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
rpm currently only works with lua 5.3 if lua is compiled/included in
compatibility mode.
The code has taken the odd approach of reimplementing deprecated functions in
terms of new functions, rather than updating the code to use the new functions
(they were deprecated for a reason!), and
See #166
PR is currently missing backwards compat shims. They should be taken from
https://github.com/keplerproject/lua-compat-5.3/ (or possibly lua-compat-5.3
should become a dependency?)
You can view, comment on, or merge this pull request online at:
> How's the compatibility record of these modules upstream?
Rather good incrementally; but 14 years is a lot of incremental changes...
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
@Conan-Kudo in that case there is code that can be stripped out.
e.g. the stuff inside
```
#if (LUA_VERSION_NUM < 502) || defined(LUA_COMPAT_MODULE)
```
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
> In general we want to keep rpm buildable on recent RHEL which in this case
> means RHEL-7, and that in turn means Lua 5.1. But compat stuff for older than
> that can go, as far as I'm concerned.
In that case I recommend you depend on
https://github.com/keplerproject/lua-compat-5.3/ there.
@pmatilai ping?
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/169#issuecomment-329948924___
Rpm-maint mailing list
@Conan-Kudo How should we depend on it without vendoring?
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
> What I'd prefer is a patch that adds support for Lua 5.3 without requiring
> LUA_COMPAT_MODULE for it, but allowing 5.1-5.2 to keep building without any
> extra hassle.
That's what compat-5.3 is for.
The question in here was how to bring in a new dependency? Is vendoring the
best way?
--
> And I meant adding the couple of required #ifdef's into the code directly,
> without pulling a whole external entity into our codebase for our rather
> modest needs.
Well I guess it's easy enough to pull ~20 lines out of compat-5.3 and paste
them into the start of the file
--
You are
@daurnimator pushed 3 commits.
9c590a2 Squashed 'luaext/compat-5.3/' content from commit bc91f4091
8b7f1dc Use lua-compat-5.3 for backwards compatibility with lua 5.1
2f0130e lib/rpmliblua.c: lua 5.1 compat without compat-5.3
--
You are receiving this because you are subscribed
PR updated with full solution (using lua-compat-5.3) that works with 5.1 and
5.3 on my computer.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
@daurnimator pushed 4 commits.
69dc569 rpmio/rpmlua.c: Use lua_rawlen instead of deprecated luaL_getn
2fb6dc4 rpmio/rpmlua.c: lua_pushglobaltable provided by lua-compat-5.3
ebb545a luaext/userconfig.c: Remove useless file
22d5899 rpmio/rpmlua.c: LUA_PATH global hasn't been used since lua 5.0
> This doesn't even compile against a build of Lua where the compat-stuff is
> actually disabled, due to missing port of luaL_openlib() in rpmio/rpmlua.c
This was brought up above with the open question of how best to solve the
compatibilty issues.
> Folks, if you're submitting untested code
Btw, there were a few open questions around the further PRs. e.g. what is the
split between rpm and rpmio: the lua library is *mostly* in rpmio, however the
`rpmvercmp` (exposed as `rpm.vercmp` in lua) is not in rpmio
--
You are receiving this because you are subscribed to this thread.
> Thanks for the update, but I've been asking NOT to drag in the entire
> lua-compat thing
Right. Which is why I've asked *many* times (including via email and IRC) how
to introduce a new dependency for rpm.
> If you need a place to stick the actually required "~20 lines" of
>
odd indentation here.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
Closed #169.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/169#event-1908560112___
Rpm-maint mailing list
Should I reopen then?
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/169#issuecomment-430892851___
Rpm-maint mailing list
Reopened #169.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/169#event-1911366930___
Rpm-maint mailing list
Thanks for merging @pmatilai.
Just had a look through now and code itself is fine.
However compared to my branch I noticed the code on master has some mixed
whitespace. Have a look through e.g. `rpmlua.c` for leading tabs.
--
You are receiving this because you are subscribed to this thread.
22 matches
Mail list logo