Gentoo Archives: gentoo-dev

From: Steve Long <slong@××××××××××××××××××.uk>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: Re: News item: World file handling changes in Portage-2.2
Date: Wed, 10 Sep 2008 09:41:12
Message-Id: ga84mu$of1$1@ger.gmane.org
In Reply to: Re: [gentoo-dev] Re: News item: World file handling changes in Portage-2.2 by Marius Mauch
1 Marius Mauch wrote:
2
3 > On Wed, 10 Sep 2008 01:43:45 +0100
4 > Steve Long <slong@××××××××××××××××××.uk> wrote:
5 >
6 >> Marius Mauch wrote:
7 >>
8 >> > Second for the suggestions on how to handle the transition:
9 >> > - treating 'world' and '@world' differently is a no go from my POV.
10 >> > One of the main reasons to implement them as sets was to remove
11 >> > special case code in emerge, so I'm quite opposed to adding new
12 >> > special cases instead. And I'm quite sure that such a separation
13 >> > would cause confusion, and some isues regarding (end-user)
14 >> > documentation.
15 >>
16 >> We're talking about one special case in the command-line processing,
17 >> to support the existing usage that all our users are used to. It adds
18 >> practically nothing in execution time, simply expanding to @system
19 >> @world, and means that users who don't want to know about sets, or
20 >> are not thinking in set terms at the time of using emerge, will get
21 >> the result they expect.
22 >
23 > It also means we'd indefinitely have to carry another special
24 > case around for legacy reasons (removing it later would be even more
25 > painful than doing the switch now). You know, those are the things we
26 > want to get rid off, as they really make our life harder in the long
27 > run. YOu may consider it trivial in this cse, but these things always
28 > look trivial when you're adding them, and you curse about them when you
29 > have to modify the code later on.
30
31 I know exactly what you mean. However, this special case *will* save Gentoo
32 a great deal of support hassle, imo at least, and is confined to the
33 option-parsing code. It's perfectly well encapsulated and will never `leak'
34 into any of your dependency resolution or set-handling code.
35
36 > Maybe the best solution is to drop the non-prefixed versions of 'world'
37 > and 'system' completely ....
38
39 I'm fine with system ;) although as outlined, I don't see that it can add
40 maintenance to anywhere but the option parser, and only then if what you
41 want the end-user to update by default changes.
42
43 I see that indirection as an added bonus, since it means you can easily
44 maintain a cli api for end-users (or tired admins) as opposed to
45 power-users or devs, and the sets [or indeed options] used can change over
46 time (since we're discussing long-term maintenance) without the same
47 switchover hassles as now. There'd be zero need to reeducate the end-users,
48 and interested ones would be following dev, or would read about any new set
49 in GMN.