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 -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: https://lists.debian.org/[email protected]

