On Oct 20, 2008, at 9:42 PM, Jeff Johnson wrote:
>
>
> There are several pieces to a real fix, displaying the loops that
> are triggering the problem are the first step.
>
And here's another simple reproducer:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
error: LOOP:
error: removing python-libs-2.5.2-1.fc10.i386 "Requires: python =
2.5.2-1.fc10" from tsort relations.
error: removing python-2.5.2-1.fc10.i386 "Requires(auto):
libpython2.5.so.1.0" from tsort relations.
error: LOOP:
error: removing python-libs-2.5.1-30.fc10.i386 "Requires(auto):
libpython2.5.so.1.0" from tsort relations.
error: removing python-2.5.1-30.fc10.i386 "Requires: python =
2.5.1-30.fc10" from tsort relations.
Running Transaction
Erasing : python-devel
[1/8]
Erasing : tkinter
[2/8]
Updating : python
[3/8]
Updating : python-libs
[4/8]
Cleanup : python
[5/8]
Cleanup : python-libs
[6/8]
Updating : python-devel
[7/8]
Updating : tkinter
[8/8]
Ordering packages is mathematically impossible when loops are present.
Unless distros are gonna to clear up some of the loops that packagers
have added, then one of the next pieces of the puzzle are gonna be to
__IGNORE__ all dependencies added by humans involved in a loop.
That's as good a heuristic as just about any other pragma I can think
of ...
73 de Jeff
Received on Tue Oct 21 03:58:56 2008