Duncan <[EMAIL PROTECTED]> posted [EMAIL PROTECTED],
excerpted below, on  Wed, 11 Jun 2008 12:52:24 +0000:

> Ciaran McCreesh <[EMAIL PROTECTED]> posted
> [EMAIL PROTECTED], excerpted below, on  Tue, 10 Jun
> 2008 15:00:18 +0100:
> 
>> On Tue, 10 Jun 2008 09:49:04 -0400
>> Richard Freeman <[EMAIL PROTECTED]> wrote:
>>> 4) Putting EAPI inside the ebuild, but in a manner that does not
>>> require sourcing using bash (ie comment at top of file).
> 
>> - it doubles the number of file reads necessary during resolution.
> 
> No comment, except that it should be cached after the first one, so the
> second read should be a memory read.

Yeah, replying to myself...

Having read the metadata-file/ebuild discussion, I see that despite the 
current sourcing "requirement", it's not being done in practice for 
dependency building during which the EAPI is a necessary data point.  
Only the metadata is being read, thus speeding up the process where seeks 
between metadata and the ebuild would otherwise be needed.  While a 
single additional seek per ebuild would suffice (it'd be in cache after 
that), that could still add up to a LOT of extra seeks (with the 
resultant time and cache usage increase), especially on an --emptytree 
world or similar.

Still, it's essentially required by the current spec even if the now-
current EAPIs manage to avoid it due to similarity of the current EAPIs, 
so it'd be no new imposition.  

The question then becomes, if everything else needed is stored in the pre-
generated metadata cache, why isn't this?  Shouldn't it be there along 
with the rest of the (meta)data used for building the dependency tree, 
thus avoiding the extra seek?  Why not put it in the ebuild as is the 
dependency data, then along with said dependency data, copy it to 
metadata cache when it's generated?

As for backward compatibility on the metadata, append or separate (single 
per repository) file.

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman

-- 
gentoo-dev@lists.gentoo.org mailing list

Reply via email to