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 6EA8613877A for ; Sun, 27 Jul 2014 21:46:31 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 414FFE0DA1; Sun, 27 Jul 2014 21:46:27 +0000 (UTC) Received: from mail-vc0-f180.google.com (mail-vc0-f180.google.com [209.85.220.180]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 59CABE0D54 for ; Sun, 27 Jul 2014 21:46:26 +0000 (UTC) Received: by mail-vc0-f180.google.com with SMTP id ij19so10105941vcb.39 for ; Sun, 27 Jul 2014 14:46:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:content-type; bh=eksBr2j8ngVSUkHhD5Oybn2r9X8D0EQzvKuFbHDFbhs=; b=GvoS+eed5Z7mSZx4mOidiCNj9GZsgbqej6MZel54b6F6OpWb84XYzcDIe0c1S14YjU 0f2Ba/YUUi0ZRWTlq+vmbwRhTiN7L1mx2jOhgipLzRPk3ZrdzhRRHESC/MeyMWhmKYHb zVdnuuyshFjDIfdLfBKS5jyHoNvzBnVH5fKcywlx1PzV3K0kVvYquvvH5QhkaX/6wNo8 sKDc4Bi7uzJ2F7HvxVRhAV26Oprqu9Id7rk6MMMQy8mM5P9pugxwvtWmGXqgJ+yyise9 8Q12WyUg30lPAqAt0TuEVlxiTbLkzVwl/Cd7KWSSkt2v/b+9XgjcPKP8hUKDemk/OAJb G8nA== 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 X-Received: by 10.52.135.133 with SMTP id ps5mr32280472vdb.33.1406497585520; Sun, 27 Jul 2014 14:46:25 -0700 (PDT) Sender: freemanrich@gmail.com Received: by 10.52.8.229 with HTTP; Sun, 27 Jul 2014 14:46:25 -0700 (PDT) In-Reply-To: References: <53CD6BED.10603@gentoo.org> <53CD8BBA.2010605@gentoo.org> <53CE11F9.8020700@gentoo.org> Date: Sun, 27 Jul 2014 17:46:25 -0400 X-Google-Sender-Auth: J-zzNUitnz3SIrw8UoTUGukWhYc Message-ID: Subject: Re: [gentoo-dev] Re: don't rely on dynamic deps From: Rich Freeman To: gentoo-dev Content-Type: text/plain; charset=UTF-8 X-Archives-Salt: 785f19f2-5407-4b2a-9e73-a1a22fffec04 X-Archives-Hash: 3b5e67dfd3aa11b60eb01333f80dc33e On Sun, Jul 27, 2014 at 8:04 AM, Rich Freeman wrote: > > Doing this would require having portage cache a hash of whatever > ebuild it last parsed, and perhaps its eclasses as well if we permit > revbump-less eclass changes. Then it would have to check for when > these change, perhaps this might be stored in the metadata to speed > things up. I was thinking about this a little more, and the way I'd do it is ID whatever ebuild variables we want to allow to be dynamic. Then the ebuild would be sourced, and then those variables would be extracted and hashed, and that would be treated as the ebuilds dependency state. That would be stored in the metadata, and portage would store it in vdb when a package is installed. Then portage could look for any change in state and that would trigger a build-less re-merge, which would update vdb with the new state (including the new hash). With this approach you don't need minor revision numbers - any change to an ebuild would be considered a minor revision, and when that is inappropriate a full revbump should be used instead. Rich