Marius Mauch wrote:

> On Wed, 10 Sep 2008 01:43:45 +0100
> Steve Long <[EMAIL PROTECTED]> wrote:
> 
>> Marius Mauch wrote:
>> 
>> > Second for the suggestions on how to handle the transition:
>> > - treating 'world' and '@world' differently is a no go from my POV.
>> > One of the main reasons to implement them as sets was to remove
>> > special case code in emerge, so I'm quite opposed to adding new
>> > special cases instead. And I'm quite sure that such a separation
>> > would cause confusion, and some isues regarding (end-user)
>> > documentation.
>> 
>> We're talking about one special case in the command-line processing,
>> to support the existing usage that all our users are used to. It adds
>> practically nothing in execution time, simply expanding to @system
>> @world, and means that users who don't want to know about sets, or
>> are not thinking in set terms at the time of using emerge, will get
>> the result they expect.
> 
> It also means we'd indefinitely have to carry another special
> case around for legacy reasons (removing it later would be even more
> painful than doing the switch now). You know, those are the things we
> want to get rid off, as they really make our life harder in the long
> run. YOu may consider it trivial in this cse, but these things always
> look trivial when you're adding them, and you curse about them when you
> have to modify the code later on.

I know exactly what you mean. However, this special case *will* save Gentoo
a great deal of support hassle, imo at least, and is confined to the
option-parsing code. It's perfectly well encapsulated and will never `leak'
into any of your dependency resolution or set-handling code.

> Maybe the best solution is to drop the non-prefixed versions of 'world'
> and 'system' completely ....

I'm fine with system ;) although as outlined, I don't see that it can add
maintenance to anywhere but the option parser, and only then if what you
want the end-user to update by default changes.

I see that indirection as an added bonus, since it means you can easily
maintain a cli api for end-users (or tired admins) as opposed to
power-users or devs, and the sets [or indeed options] used can change over
time (since we're discussing long-term maintenance) without the same
switchover hassles as now. There'd be zero need to reeducate the end-users,
and interested ones would be following dev, or would read about any new set
in GMN.



Reply via email to