[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: lua & jessie



On Sun, Jul 06, 2014 at 12:24:24AM +0200, Julien Cristau wrote:
> You could say the same for python 2.2 vs 2.7 (and everything before and
> in between), yet we stopped shipping older versions after a while...

Sure, but python is sold as a regular language.  Lua's main market
is as an extension language.  If you embed Lua 5.1, it is not quite
clear why you should upgrade your software.  We have softwares in debian
that embed id the nasty way, like luatex.  If we remove it, we leave
them no option.

> > I understand that 5.1 and 5.2 are close verion numbers, and that you
> > may expect incompatible languages to be called 5.0 and 6.0 instead,
> > but this is how it is.
> > 
> So the thing is, having liblua5.1 and liblua5.2 share symbols is a
> recipe for trouble.  There's a number of other libraries using each of
> them, and there's as far as I can tell nothing preventing a program from
> using two of those libs, linked against different liblua5.x versions,
> and exploding at runtime.  So if we want to keep shipping several liblua
> versions, they need to be made safe against this kind of issues, IMO.

You are right, I did not think about that.

AFAIK Lua 5.2 should detect a double runtime and give a decent assertion
failure message.  The upstreams did take care of that.  But I guess you
would prefer a link time error, or simply have a disjoint symbol set.

I can make the point on the Lua mailing list, and suggest to have
symbols named like lua51_foo instead of lua_foo and have #define lua_foo
lua51_foo.  Assuming they listen to me, this won't happen before 5.3.

Best
-- 
Enrico Tassi


Reply to: