On Tuesday 04 October 2005 03:30, Brian Harring wrote:
> On Tue, Oct 04, 2005 at 01:06:35AM +0900, Jason Stubbs wrote:
> > Don't like the size of this patch, but it's quite repetitive so...
>
> Wouldn't worry on the repetitive, it's repetitive due to the fact the
> *dbapi classes don't (ab|)use inheritance...
>
> > * Make all aux_get() functions return a list of strings again
>
> Why is this a good thing for EAPI?

Consistency. There is no mapping of names to types so any tool that uses 
aux_get to enumerate values and assumes that they are strings (as they have 
always been and still are for every other key) would break.

> > * Move the EAPI validity check into a separate function
> > * Raise a specific UnsupportedAPIException instead of plain Exception

No problem with these two?

> > * Mark metadata of unsupported EAPIs as "INVALID" rather than -1
>
> This doesn't really fly imo. You mark it as invalid, and _no_ portage
> version (regardless of it's ability to handle that EAPI) will _ever_
> regenerate that entry.
>
> An old portage version updating the cache would make certain nodes
> never usable.
>
> The -1 is wrong, should be -EAPI. 

So negative numbers signals invalid cache entries in the scheme?

> This however is getting back into 
> the "eapi should be freeform, not just ints", which I thought I
> clarified why it should be ints (or people shut up instead of
> listening to me argue it). :)

The only reasoning that I recall without checking is that it wouldn't 
complicate certain code paths. That's not a valid reason, in my opinion.

Can leave that debate alone though. s/INVALID/\-1/ in the patch works for me.

--
Jason Stubbs
-- 
gentoo-portage-dev@gentoo.org mailing list

Reply via email to