Gentoo Archives: gentoo-dev

From: Ravi Pinjala <ravi@××××××××.net>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: Python 3.1: Stabilization and news item
Date: Fri, 12 Mar 2010 20:49:15
Message-Id: 4B9AA8B6.1030208@p-static.net
In Reply to: Re: [gentoo-dev] Re: Python 3.1: Stabilization and news item by Arfrever Frehtes Taifersar Arahesis
1 On 03/10/10 11:36, Arfrever Frehtes Taifersar Arahesis wrote:
2 > 2010-03-08 22:28:16 William Hubbs napisał(a):
3 >> On Fri, Mar 05, 2010 at 04:19:36PM -0800, Zac Medico wrote:
4 >>> No, it won't. To prove it, I've just tested with a stable stage3
5 >>> containing portage-2.1.7.x. Here are the steps:
6 >>>
7 >>> 1) extract stable stage3 and chroot into it
8 >>> 2) mkdir /etc/portage&& echo "dev-lang/python ~*">>
9 >>> /etc/portage/package.keywords
10 >>> 3) Run `emerge -pu --deep=1 portage`:
11 >>> These are the packages that would be merged, in order:
12 >>>
13 >>> Calculating dependencies... done!
14 >>> [ebuild UD] sys-apps/sandbox-1.6-r2 [2.2]
15 >>> [ebuild UD] app-shells/bash-4.0_p35 [4.0_p37]
16 >>> [ebuild U ] dev-lang/python-2.6.4-r1 [2.6.4]
17 >>>
18 >>> If you try `emerge -puD world` then you will see
19 >>> dev-lang/python-3.1.1-r1 pulled in by the unspecific dev-lang/python
20 >>> atoms in the cracklib and libxml2 dependencies. However, in
21 >>> portage-2.1.7.x (current stable), there is support for
22 >>> pseudo-version-ranges in dependencies. This allows you use a
23 >>> dependency like<dev-lang/python-3 in a package that doesn't support
24 >>> python3, and that will prevent it from getting pulled into the
25 >>
26 >> According to this, we can fix all of the dependencies in the tree then
27 >> stabilize python3 without having any issues, so I would vote for this
28 >> route, because it still oinsures that the stable tree will work
29 >> together.
30 >
31 > Almost everybody has at least 1 package installed which supports both Python 2
32 > and Python 3 and depends on dev-lang/python without version specification,
33 > so Python 3 would be pulled into dependency graph, so fixing of dependencies
34 > doesn't need to block stabilization of Python 3.
35 >
36
37 What about introducing a python3 USE flag? Seems like that would keep
38 everybody happy.
39
40 --Ravi