From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1OL2wo-0004MG-E5 for garchives@archives.gentoo.org; Sat, 05 Jun 2010 23:38:38 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 299EEE0ABD; Sat, 5 Jun 2010 23:38:34 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 4F3CFE0916 for ; Sat, 5 Jun 2010 23:38:16 +0000 (UTC) Received: from gentoo.org (cp1107341-a.dbsch1.nb.home.nl [84.31.115.1]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTP id 31F881B401E for ; Sat, 5 Jun 2010 23:38:15 +0000 (UTC) Date: Sun, 6 Jun 2010 01:38:06 +0200 From: Harald van =?utf-8?Q?D=C4=B3k?= To: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] Actions of python team, especially Arfrever wrt python eclass and python-3* Message-ID: <20100605233806.GA17168@boostbox> References: <4BFE82C3.2050400@gentoo.org> <201006051644.20150.Arfrever@gentoo.org> <4C0A720C.20300@gentoo.org> <20100605183154.GA19296@boostbox> <4C0AD7EC.2010700@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <4C0AD7EC.2010700@gentoo.org> User-Agent: Mutt/1.5.20 (2009-06-14) Content-Transfer-Encoding: quoted-printable X-Archives-Salt: 43b89d5f-e56f-445d-9a26-7d2e35f7d2aa X-Archives-Hash: 87572f4fb9ca2c2c577de39eee050a2b On Sun, Jun 06, 2010 at 01:03:48AM +0200, Thomas Sachau wrote: > Am 05.06.2010 20:31, schrieb Harald van D=C4=B3k: > > On Sat, Jun 05, 2010 at 05:49:08PM +0200, Thomas Sachau wrote: > >> If any package does inherit python or distutils eclass, then those e= classes do pull in > >> "dev-lang/python", which is unversioned, so it will always pull in t= he latest version, in this case > >> python-3*. You could change this, so it allows any major installed s= lot to satisfy the python > >> dependency. > >=20 > > A dependency on dev-lang/python *is* satisfied by any slot, any versi= on. You've > > been told so already, if I recall correctly. >=20 > Every slot and every version *should* satisfy a "dev-lang/python" depen= dency, but currently such > unspecified version dependency does automaticly pull in the latest vers= ion/slot, which in case of > python does mean python-3*, even when you have e.g. python:2.6 installe= d. Fine, I'll be as explicit as possible: not quite. I have a Python 3-free = system. I created a dummy ebuild that does nothing but pull in unversioned python. Let's see how it behaves. $ emerge -pv python These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild NS ] dev-lang/python-3.1.2-r3 [2.6.5-r2] USE=3D"gdbm ipv6 ncur= ses readline sqlite ssl threads tk (wide-unicode) xml -build -doc -exampl= es -wininst" ELIBC=3D"(-uclibc)" 9,558 kB $ cat test-2.0.ebuild=20 KEYWORDS=3D"~amd64" SLOT=3D"0" DEPEND=3D"dev-lang/python" $ emerge -pv test These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] test/test-2.0 0 kB [1] Total: 1 package (1 new), Size of downloads: 0 kB Portage tree and overlays: [0] /usr/portage [1] /etc/portage/overlay Note how python 3 is *not* pulled in, despite an unversioned dependency o= n dev-lang/python. You only get that if you tell portage to try and update dependencies as well, and yes, if you do that, it's only fair that it attempts to update = python.