On Mon, Jul 24, 2006 at 02:47:46PM +0200, Kevin F. Quinn wrote:
> On Sun, 23 Jul 2006 12:19:28 +0100
> Stuart Herbert <[EMAIL PROTECTED]> wrote:
> >  Just adding an alias
> > into a second category makes the tree more of a mess - not less.
> 
> The alias, once setup, can be left alone forever.  As far as any
> further maintenance is concerned, it requires none.  Even if the
> package is moved again, the alias can still point to the second
> location which becomes an alias for the final location.

That implicitly means that any second level categorizations can never 
be removed.

Like stuart said, makes a bigger mess of the tree.  Package moves can 
be disruptive enough- trying to shift out a non-real category is going 
to be a much larger mess of building that tree and trying to rewrite 
atoms as needed.

>  As far as
> users are concerned, assuming aliases are resolved when being parsed,
> they would see:
> 
>   $ emerge -p net-im/skype
> 
>   These are the packages that would be merged, in order:
> 
>   Calculating dependencies... done!
>   [ebuild     R ] net-voip/skype-1.3.0.30-r1

That doesn't strike you as a bit... daft?  they asked for net-im, not 
net-voip.  Yes, under your scheme, they're the same- that still is far 
from intuitive.


> The only "mess" is that we end up with the alias data in the tree
> and that gradually accumulates.

Err... cruft accumulating in the tree is a no go.

> However it won't change once it's first
> setup so won't incur any significant synchronisation overhead (beyond
> the overhead for the actual move as done currently).

A) potential of circular aliasing (fun fun)
B) potential of aliasing multiple pkgs to the same cat (fun fun)
C) pkgs that grow capabilities after a certain version, thus they now 
belong in a new category.  Now we require full atoms for aliasing 
(which means lookup gets more complicated now, and slower)
D) all tree access now must pass through aliasing.  Additionally, now 
all equality tests must now rely on aliasing to determine if two 
pkgs from seperate categories are actually the same pkg (slower, and 
far more complicated)

Fair amount of thorny issues introduced there, for (imo) no real gain.

> I've mentioned the
> <CP>/alias idea elsewhere, however that's not the only way to do it -
> one simple method could be to have a simple text file (e.g.
> ${PORTDIR}/profiles/alias) listing all the aliases.  That's no mess at
> all:
> 
> ---- example alias file contents
> # Alias category/package   Resident category
> net-im/skype               net-voip
> ----

As I said (and you seemed to have ignored), mandating tree access to 
use the vdb or a standalone binpkg repository == no go.

~harring

Attachment: pgpIr8sQDiWLN.pgp
Description: PGP signature

Reply via email to