Matti Bickel dixit (2010-03-08, 10:39):
> >> A stable user who doesn't want python 3 installed shouldn't have it
> >> forced on them. If something is pulling in python-3 then that
> >> package needs to have its dependencies fixed. IIRC Portage isn't
> >> greedy wrt. SLOTs like it was before (unless you use @installed) so
> >> it shouldn't be pulled in by anything that doesn't require it.
> +1 on that. If your program is only tested with python-2 or has
> regressions with python-3 (e.g. performance loss), a maintainer can and
> should mark that package as python-2 only. For new systems, the only
> "must have" python user i can think of is portage. And that has an
> explicit USE="python3" and as Zac outlined takes DEPEND-pains to ensure
> python-2.* is pulled in if available. So you're starting with python-2.*
> and every program not explicitly pulling in python-3.* should be happy
> with that.
> > I think that is being said is, due to python 3 being unnecessary for
> > majority of users, due to a small number of applications actually
> > using it, it should be in ~arch.
> You're actually damning most of the tree to be ~arch, if that's the
> criterion for stable.
> > Of course an application that depends on python 3, but is entirely
> > stable should not be marked testing (to my reckoning at least). I
> > think the best way to go about it is to set python-3 in ~arch.
> These are contradicting statements. Repoman will and should kill anyone
> attempting to do that. All [R,]DEPENDS of an ebuild must be stable, if
> that ebuild is to be marked stable, too.
> So b/c i still can't understand what's so horrible about python-3 going
> into stable (even if p.mask'ed, if that's the consensus), my vote goes
> to "mark it stable already".
Sorry guys if I missed something crucial in this lengthy thread, but
from what I'm understanding:
if python-3 goes stable (and unmasked):
- it is a separate, slotted version
- it generally shouldn't get pulled in (current portage non-greedy
behaviour on slots)
- if it does get pulled in by, say, and old portage version, or a
package with badly defined deps, it shouldn't do any harm because it
will just sit quietly in its slot and old packages will still
compile/run against (already installed) python-2.x
PS. one thing I realize I may be missing is the /usr/bin/python symlink
and the /usr/bin/python-wrapper to which it points. Will the default
change to python31 upon python-3 installation?