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 1NxHxt-0001iU-GN for garchives@archives.gentoo.org; Thu, 01 Apr 2010 10:49:33 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B2005E08D9; Thu, 1 Apr 2010 10:49:31 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 85AFAE0899 for ; Thu, 1 Apr 2010 10:49:26 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp.gentoo.org (Postfix) with ESMTP id 216411B4025 for ; Thu, 1 Apr 2010 10:49:26 +0000 (UTC) X-Virus-Scanned: amavisd-new at gentoo.org X-Spam-Score: -2.599 X-Spam-Level: X-Spam-Status: No, score=-2.599 required=5.5 tests=[AWL=0.000, BAYES_00=-2.599] Received: from smtp.gentoo.org ([127.0.0.1]) by localhost (smtp.gentoo.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id GM6eUyfsvH-y for ; Thu, 1 Apr 2010 10:49:19 +0000 (UTC) Received: from mail-bw0-f215.google.com (mail-bw0-f215.google.com [209.85.218.215]) by smtp.gentoo.org (Postfix) with ESMTP id B178D1B40C8 for ; Thu, 1 Apr 2010 10:49:18 +0000 (UTC) Received: by bwz7 with SMTP id 7so738030bwz.24 for ; Thu, 01 Apr 2010 03:49:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:in-reply-to:references:x-mailer:mime-version :content-type; bh=uH8PIS/ulWK55aGKsr5/zlXYVQe/tRRUrpTGiCvtW4Y=; b=BhR8/gctZUaUQiVyL00A5kjmgQqH9TbPeDvbQy4wBluGHtquyx0lbt5BijgMRMdMl7 GlENb33Oo6QpOku37ANao7ekbEhPVwQtYAofnUpHXSvwI4FtbhD9u4HzRSDAG8S4/znJ N71k9BbBn0Fa/XUvKhQSdjyGexKI6Q7gsoGMs= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:in-reply-to:references:x-mailer :mime-version:content-type; b=TqEYfJNdoWYzqFxNgAPqMr8unfIiR9sfnCpov2Deud6Bm7ksYZ7JiBQzN0AXqNz0D1 aoCnLI3nokUJBcGKbJ15SLeh1/rZh0nC6p58nHsTQUmM/3Q9LLfm0Rh0Njrvrq/mLX/V VK21E0qBUhTJNmLEW9Ce4kDLvsdTzZqgJg3AY= Received: by 10.204.156.22 with SMTP id u22mr1239145bkw.24.1270118957346; Thu, 01 Apr 2010 03:49:17 -0700 (PDT) Received: from snowmobile ([92.24.222.23]) by mx.google.com with ESMTPS id s17sm66148619bkd.16.2010.04.01.03.49.16 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 01 Apr 2010 03:49:17 -0700 (PDT) Date: Thu, 1 Apr 2010 11:49:07 +0100 From: Ciaran McCreesh To: Brian Harring Cc: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] pkg_pretend USE validation and VALID_USE alternative Message-ID: <20100401114907.5ab3fe67@snowmobile> In-Reply-To: <20100401075608.GJ11663@hrair> References: <20100331092035.GA11663@hrair> <20100331174925.GA16267@faith> <20100331194626.GG11663@hrair> <20100331205628.368fb02c@snowmobile> <20100401073109.GI11663@hrair> <20100401084102.2560f3a3@snowmobile> <20100401075608.GJ11663@hrair> X-Mailer: Claws Mail 3.7.4 (GTK+ 2.18.5; i686-pc-linux-gnu) 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: multipart/signed; micalg=PGP-SHA1; boundary="Sig_/qmctTrOISLikfw0YAoH.T3D"; protocol="application/pgp-signature" X-Archives-Salt: 5a8c8ac2-667a-4965-aa11-f3543d8feae5 X-Archives-Hash: 31add77c66013c8bceb88392cf8f8f67 --Sig_/qmctTrOISLikfw0YAoH.T3D Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Thu, 1 Apr 2010 00:56:08 -0700 Brian Harring wrote: > Actually, I'm well aware I did. See, if PMS wasn't developed in a=20 > void you'd know build, bootstrap, acl and friends were already a > known issue with use cycle breaking. So since it's a known issue, why are you pushing for VALID_USE "because it allows cycle breaking" without also pushing for a solution to flags that can't be toggled at the same time? > pkg_setup: ran just before the build of the pkg, after the pkg's=20 > DEPENDS are all built. Meaning you *can* do has_version checks,=20 > kernel config checks, etc, because the proceeding deps are now=20 > satisfied. Except that they might change, because, as we established on the bug, two packages that aren't interdependent can affect each other's assumptions, and can be built in parallel. pkg_pretend does not alter the problem here. > Cherry picking the argument again. Main !=3D whole, meaning the=20 > majority reason I could see w/in council logs for supporting=20 > pkg_pretend was USE constraint validation. >=20 > As I've said, and as you seem to finally understand, VALID_USE isn't > a replacement for pkg_pretend- it just replaces the *main* usage of > it. You said on the bug that you wanted pkg_pretend removed in favour of VALID_USE. I don't object to VALID_USE; I object to you claiming that it replaces pkg_pretend, and I object to you claiming that using VALID_USE instead of pkg_pretend is enough to allow cycle breaking. > > Simply adding VALID_USE won't let you do cycle breaking. You also > > need extensive lists of which flags for which packages can safely > > be toggled and when without breaking the system, and the only way > > you'll get those lists is if developers care enough to update their > > ebuilds to provide them. >=20 > That's one view, but sure, I'll run with it. >=20 > The thing is, *without* VALID_USE you cannot do use cycle breaking=20 > *period*. executable vs data for the representation of the=20 > constraints (as I've spelled out for you 3 times now). You also can't do it *with* VALID_USE, unless you also have extensive help from ebuilds. Why are you pushing for VALID_USE without also proposing a way for the package mangler to be told which flags it can change? > pkg_pretend however completely disallows even *doing* use cycle=20 > breaking. How in the hell is that a better next step? pkg_pretend is a pragmatic, cheap solution that solves a larger number of problems, whilst not ruling out anything that Portage will realistically be able to do in a relevant timeframe. If, in the distant future, Portage supports use cycle breaking, then people can switch their ebuilds to use VALID_USE when they're also updating their ebuilds to export the cycle breaking information the package mangler requires to do it without trashing a system. But since we don't know exactly what that information looks like yet, we might as well just stick with the single solution that solves all of the problems. --=20 Ciaran McCreesh --Sig_/qmctTrOISLikfw0YAoH.T3D Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (GNU/Linux) iEYEARECAAYFAku0eiYACgkQ96zL6DUtXhHwugCfczpMuajWz2DSkLWP904DqEpS cPMAn24cm6d/EsuqKjVvtIOEpCw6YMhk =TWUb -----END PGP SIGNATURE----- --Sig_/qmctTrOISLikfw0YAoH.T3D--