On Fri, 22 Jul 2016 16:41:56 +0300
Andrew Savchenko <birc...@gentoo.org> wrote:
> On Fri, 22 Jul 2016 13:14:23 +0200 Michał Górny wrote:
> > Dnia 22 lipca 2016 13:00:42 CEST, Andrew Savchenko
> > <birc...@gentoo.org> napisał(a):  
> > >On Thu, 21 Jul 2016 07:12:12 +0200 Michał Górny wrote:  
> [...]
> > >> Few important QA notes:
> > >> 
> > >> 1. < is lexicographical comparison, so e.g. 1.6.2.2 < 1.6.18.2
> > >> gives false,  
> > >
> > >Thanks, fixed.
> > >  
> > >> 2. REPLACING_VERSIONS can have more than one value,  
> > >
> > >While it can indeed, I see no way for this to happen if package
> > >hasn't and never had multiple slots.  
> > 
> > Wrong. PMS specifically requests you to account for such a
> > possibility.  
> 
> Common sence must prevail over formal approaches. While PMS is
> great, it is not perfect in all possible aspects, and this one is
> one of them.
> 

And this is a perfect example of why so much stuff in Gentoo is subtly
broken... Things are usually more complicated than you think, buggy code
usually works well enough that the mistakes aren't noticed in most
cases, and too many developers are far too convinced of their own
competence. You need to appreciate that you do not have a complete
understanding of what is going on, your "common sense" is leading you
astray, and that that API was designed the way it was out of necessity.

> I see no point in trashing ebuilds with dead code that will never
> be used. Though if there will be a PMS or eclass function with
> "proper" implementation, I don't mind, since extra code will be
> moved from ebuild elsewhere.

Slots are not the only way in which you can end up with multiple
installed versions of the same package. Another way is if there's a
fatal error during certain parts of the upgrade process.

-- 
Ciaran McCreesh

Reply via email to