1 |
On Fri, 2003-12-05 at 23:43, Spider wrote: |
2 |
> > > Why isn't this a DEPEND then? *smacks* :) |
3 |
> > |
4 |
> > Apparently, it is not a depend in order to avoid a circular |
5 |
> > dependency. |
6 |
> > |
7 |
> |
8 |
> Weird, but reasonable.. Couldn't it just be a block on older versions? |
9 |
|
10 |
I could, except it is not that obvious to the user what he/she should do |
11 |
with the block. For instance, if I add that DEPEND, it would say: |
12 |
|
13 |
bash-2.05b# emerge -p python |
14 |
These are the packages that I would merge, in order: |
15 |
|
16 |
Calculating dependencies ...done! |
17 |
[blocks B ] <sys-apps/portage-2.0.49-r16 (from pkg |
18 |
dev-lang/python-2.3.2-r2) |
19 |
[ebuild N ] dev-lang/python-2.3.2-r2 |
20 |
|
21 |
Luckily, portage is smart enough not to allow anyone unmerging portage |
22 |
itself (phew!). Except, that if you do: |
23 |
|
24 |
bash-2.05b# emerge -up portage |
25 |
... |
26 |
[blocks B ] <sys-apps/portage-2.0.49-r16 (from pkg |
27 |
dev-lang/python-2.3.2-r2) |
28 |
[ebuild N ] dev-lang/python-2.3.2-r2 |
29 |
[ebuild U ] sys-apps/portage-2.0.49-r18 [2.0.49-r10] |
30 |
|
31 |
Which is rather unintuitive in itself, and there lies the circular |
32 |
dependency, even though we've effectively avoided portage from detecting |
33 |
a circular dep. |
34 |
|
35 |
The solution is to do "emerge portage" instead, but that is also not |
36 |
obvious from the output, at least to me. Anyone thinks that putting |
37 |
<sys-apps/portage-2.0.49-r16 would be more intuitive to the user than |
38 |
actually checking that in pkg_setup()? |
39 |
|
40 |
|
41 |
Cheers, |
42 |
-- |
43 |
Alastair 'liquidx' Tse |
44 |
>> Gentoo Developer |
45 |
>> http://www.liquidx.net/ | http://dev.gentoo.org/~liquidx/ |