From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 6F3D71389F5 for ; Thu, 2 Apr 2015 16:56:45 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 77F42E0888; Thu, 2 Apr 2015 16:56:44 +0000 (UTC) Received: from mail-ig0-f175.google.com (mail-ig0-f175.google.com [209.85.213.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id ED531E07F4 for ; Thu, 2 Apr 2015 16:56:43 +0000 (UTC) Received: by igcau2 with SMTP id au2so81586884igc.0 for ; Thu, 02 Apr 2015 09:56:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=saU4+wYyZBFUwLZBD0m/zM/AS2kace+1MuQnKJYhCog=; b=PMfWai8hoy55HLa3J2lF7cd+EHlMxccmT/XoK3ZtV3j7iJrhFZ6C7rECQHSInDtahn Sx3ek7LX2LaBkRY+hEtar81WV5Ld7YU/rq53rO3bJMLqk5mA/sWnixNmBMuXzwFRLN8D sq5hXsHjcOqMdPn0XMk/Y6HLHqsXIaJZJ5gj6ABNqixrvEgAns7j8fnsnDBovmQnad/s F7jJiokc5/5JyrFckiR8Cz8f0wQr0Kw2Ln7x/YXLywjga0mhmA8RGKA7RIAZ7/GV8dqr R7GQcj4Y3i/MMCJJ3f2ONpGLOcZQOXU1FtpfEJz4gQYN3VI1q9/mQoLd300CCIW7oKG0 DZUg== Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-portage-dev@lists.gentoo.org Reply-to: gentoo-portage-dev@lists.gentoo.org MIME-Version: 1.0 X-Received: by 10.50.28.8 with SMTP id x8mr21357424igg.19.1427993803292; Thu, 02 Apr 2015 09:56:43 -0700 (PDT) Received: by 10.64.33.239 with HTTP; Thu, 2 Apr 2015 09:56:43 -0700 (PDT) In-Reply-To: References: Date: Fri, 3 Apr 2015 05:56:43 +1300 Message-ID: Subject: Re: [gentoo-portage-dev] Dynamic USE dependencies From: Kent Fredric To: gentoo-portage-dev@lists.gentoo.org Content-Type: multipart/alternative; boundary=089e015386d66305690512c0b744 X-Archives-Salt: 1abfc01b-e552-4cf8-b7c0-92acf89d19e8 X-Archives-Hash: 83c5c30573be6c0f7276766f931dba7a --089e015386d66305690512c0b744 Content-Type: text/plain; charset=UTF-8 On 3 April 2015 at 05:32, Rich Freeman wrote: > Out of curiosity, what is keeping us from having USE flag dependencies > handled dynamically, in the same way that package dependencies are? > If portage can figure out that I need libxml2 installed even if I > don't put it in /var/lib/portage/world, why can't it figure out that I > need it built with USE=icu even if I don't put that in > /etc/portage/package.use? > I'd say its more a concept issue than an application issue. USE flags often signify a need for code to be recompiled to grant the feature. How do you disambiguate between USE flags that *do* need a recompile to enable their power, and those that *dont* need a recompile to enable their power. Or even clarify to portage that, "The older version of X that didn't have IUSE=foo, actually had feature foo, but just didn't have the use flag" vs "The older version of X that didn't have IUSE=foo, didnt have feature foo or the IUSE". Splitting this logic into an explicit bump kinda avoids the need for some of these questions. That last one however I'd like to see improved, because I often see new USE flags turn up on packages, and I have no idea of knowing "Is this useflag adding a feature, or exposing an existing one" "Is this new useflag defaulted on because it already existed, or is it defaulted on because its a new feature and its awesome" "Is this new useflag defaulted off because it didnt already exist, or did it exist and were disabling the feature because its bad" .... Ad Infinitum. -- Kent *KENTNL* - https://metacpan.org/author/KENTNL --089e015386d66305690512c0b744 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

= On 3 April 2015 at 05:32, Rich Freeman <rich0@gentoo.org> wro= te:
Out of curiosity, what is keeping us from having USE f= lag dependencies
handled dynamically, in the same way that package dependencies are?
If portage can figure out that I need libxml2 installed even if I
don't put it in /var/lib/portage/world, why can't it figure out tha= t I
need it built with USE=3Dicu even if I don't put that in
/etc/portage/package.use?


I'd say its more a concept issue than an application i= ssue.

USE flags often signify a nee= d for code to be recompiled to grant the feature.

How do you disambiguate between USE flags that *do* need a= recompile to enable their power, and those that *dont* need a recompile to= enable their power.

Or even clarif= y to portage that, "The older version of X that didn't have IUSE= =3Dfoo, actually had feature foo, but just didn't have the use flag&quo= t; vs "The older version of X that didn't have IUSE=3Dfoo, didnt h= ave feature foo or the IUSE".

= Splitting this logic into an explicit bump kinda avoids the need for some o= f these questions.

That last one ho= wever I'd like to see improved, because I often see new USE flags turn = up on packages, and I have no idea of knowing "Is this useflag adding = a feature, or exposing an existing one"

"Is this new useflag defaulted on because it already existed= , or is it defaulted on because its a new feature and its awesome"
=
"Is this new useflag defaulted of= f because it didnt already exist, or did it exist and were disabling the fe= ature because its bad"

.... Ad= Infinitum.




--
<= div dir=3D"ltr">
Kent

KENTNL - https://meta= cpan.org/author/KENTNL

--089e015386d66305690512c0b744--