Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] Lua 5.2 migration

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: flux <flux AT sourcemage.org>
  • To: sm-discuss AT lists.ibiblio.org
  • Subject: Re: [SM-Discuss] Lua 5.2 migration
  • Date: Sun, 18 Dec 2011 23:51:35 +0900

Vlad Glagolev (stealth AT sourcemage.org) wrote [11.12.18 22:21]:
> On Sat Dec 17 21:56:48 EST 2011
> flux <flux AT sourcemage.org> wrote:
>
> > Why didn't you just update the lua spell in the branch instead of in
> > test? That way none of the spells would have to be changed to lua51
>
> We can't go away from 5.1 at once with one merge. lua51 spell is needed
> for those who can have modules/libraries that will never work with
> anything >5.1 (cause their development isn't active or so).
>
> And it's better to update spell-by-spell migrating from Lua 5.1 to Lua
> 5.2, since such migration for several spells could take a lot of time
> (and we can't wait for the years to have Lua 5.2 in stable for the
> people). This is how it's done in Python community about 2<->3.
> Developers rewrite/adapt programs to fresh 3 version. The difference is
> that we can't keep Lua 5.1 and 5.2 at once in a system (transparently
> at least, without modification of INSTALL_ROOT per spell).
>
> Creation of lua52 spell logic was refused due to a simple reason also:
> Lua 5.2 is newer than Lua 5.1, so by default "lua" must go for 5.2
> version. Also, many among us think that the same strategy must go for
> our python spell (and we should rename python3 spell to just 'python',
> and create python2 spell; and yes -- it's how it's done in Arch). As
> you know for the first time I was against this, but now I see it's a
> better way (also recently I note that many people are trying to go with
> Python 3 with theirs new projects since the beginning).
>
> > They will also need to be instructed to do this, or we will have to add
> > a lot of magic to triggers or whatever.
>
> Yes, I'm thinking and working on this; until it's not in stable -- it's
> safe to keep it as-is.
>
> > Is there a reason you updated lua itself in test separately from in a
> > branch?
>
> The answer is simple: to let people have a new version of Lua. As we
> know, branches-only strategy never worked. Proved by devel-xorg-modular,
> devel-libpng branches exp, and so on (and will never work like
> Ladislav said many times).

Although there is a good answer to my last question, it's not the answer
you gave directly to it. The good answer is that there are spells that
are no longer being updated/maintained upstream, and they will
perpetually rely on Lua 5.1. This is a good reason to create a separate
lua51 spell and go ahead with updating all the dependees.

Stating that branches never works is simply a bad answer. The need to
give people the latest-and-greatest is also not a good answer, as not
breaking systems is more important than providing the newest stuff if it
causes a break. If it doesn't break anything, than of course newer is
great, but stability should be the primary goal IMHO. Note that I'm not
saying this specifically about Lua, but about spells/updates in general,
as a kind of rule of thumb.

Just because the integrators don't integrate the branches, or testers
don't test the branches, doesn't make the branches themselves a bad
idea. I'm actually wondering if there would really be any more testers
of libpng or xorg if they weren't done separately. These days we simply
have very little testing going on, or at least very little feedback
about it, in general. Of course, this is IMHO, and I'm biased, so feel
free to disagree with me. We've had a little more activity over the new
bugtracker in chiliproject, but mostly from the same people that were
active in bugzilla. In other words, the problem with testing/feedback is
widespread, and repo branches end up being a scapegoat for the real
problem.

As a final note, it's good that you're working on a solution to the
migration problem for end-users, but bear in mind that not all users are
on a stable grimoire. If a user has a Lua-based spell installed from the
test grimoire, or via a local git clone, then they will get hit with the
updates whenever they do a system update, as this is already in the
master branch. In other words, if it's only "safe" for stable, then it
isn't "safe" for test or git grimoires. This is the primary reason I
suggested doing this in a separate branch. If it's determined safe for
test and git too, then fine, it doesn't need to be in a separate branch
since there's no problem anyway.

If everyone wants to avoid using separate branches, maybe we should
change policy and have all users only use stable grimoire? Or at least
let everyone know that if they use what's in test/git that there's no
guarantee it will work? Then everyone could happily merge in whatever
they want, and we'd only need to be careful with merging to stable.

--
Justin "flux_control" Boffemmyer
Cauldron wizard and general mage
Source Mage GNU/Linux
http://www.sourcemage.org

Attachment: pgp4ZPeb3pGoZ.pgp
Description: PGP signature




Archive powered by MHonArc 2.6.24.

Top of Page