Gentoo Archives: gentoo-portage-dev

From: Alec Joseph Warner <warnera6@×××××××.edu>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] emerge -pv and masked dependencies
Date: Fri, 04 Nov 2005 19:48:21
Message-Id: 436BBACA.40603@egr.msu.edu
In Reply to: Re: [gentoo-portage-dev] emerge -pv and masked dependencies by felix@crowfix.com
1 felix@×××××××.com wrote:
2 > On Sat, Nov 05, 2005 at 03:44:30AM +0900, Jason Stubbs wrote:
3 >
4 >
5 >>Nobody else has shown a real example, why should I?
6 >>...
7 >>I am focusing on what it could do. I stated all the options in my previous
8 >>email.
9 >>...
10 >>To restate: How often is it there is exactly one masked version available?
11 >>What to do when there are two?
12 >
13 >
14 > How old are you? You sound like some crotchety old fart on a rocking
15 > chair on his porch.
16 >
17 > Good god. Probably once or twice a month I read about some program
18 > that sounds interesting, run emerge -p on my amd64, it complains that
19 > some dependency is masked, I edit /etc/portage/packages.keywords,
20 > emerge -p again, get another complaint about some other top level
21 > dependency, rinse, lather, repeat, until I have a half dozen additions
22 > or give up in disgust. If you have never had this happen, then I feel
23 > sorry for you for being so unadventurous.
24 >
25 > And the only way I can provide a real world example is wait til it
26 > comes around again on the gitar, to quote Arlo, and I am not going to
27 > waste my time trying to remember to come back to this dicsussion then,
28 > it will be quite cold in its grave, obviously where you want it to go.
29 >
30 > I swear you have got to be just about the most negative pessimistic
31 > whining poster on this list.
32 >
33
34 Because insulting a portage developer is sure to get your feature
35 implemented. Er...wait a minute ;)
36
37 Why do a half assed job that only prints 1 or 2 levels deep? Even then
38 things can get complicated, especially when there are a lot of masked
39 packages and dependencies ( try emerging enlightenment cvs, for example,
40 like 15+ packages..or god.Modular X even :) ). I guess you could do a
41 iterative DFS, although again, hard to tell when to stop iterating and
42 give up.
43
44 Nothing here is simple, there are a lot of choices here, and if there
45 are a lot of masked packages, the depgraph gets deep very fast. If I
46 try to emerge, say an xorg-meta build, there are 100+ masked ebuilds I
47 have to unmask. Maybe the meta doesn't depend on exact versions and for
48 each masked ebuild there are two versions available. Do you want
49 portage to print all 200 canidates out and be like, hey you need to
50 unmask these. There are a bunch of simple canidates out there for this
51 that make it easy in concept, but there are a few canidates out there
52 that make this very difficult, due to their size. In the example above,
53 we only went 1 level deep in the tree and found 200 masked canidates,
54 there is no way to print less ( unless you just hard mask some integer
55 in there ).
56
57 If you can come up with some simple way to handle these complex cases,
58 by all means, otherwise the solution will work most of the time and die
59 horribly on the complex cases, and IMHO, that is not acceptable.
60
61
62
63 --
64 gentoo-portage-dev@g.o mailing list