[issue332] removing an old multi-version package will not remove dependencies with immediateUpdown = 1

Peter Warasin at Labix Tracker tracker at labix.org
Thu Oct 4 15:22:52 PDT 2007


New submission from Peter Warasin <peter at endian.com>:

This is the szenario:

I have a package "kernel" which requires some "kernel-module-*" packages of the
same version. (Requires: kernel = %{version}-%{release})
Those packages are all multi-version.

I have installed several kernel-packages of different versions with their
respective kernel-module-* packages

Whenever i want to remove a old kernel package by version (smart remove
kernel-2.6.9-55.0.2.EL.endian21), smart wants to remove only that package, which
leads into an error since the kernel-module-* packages require the kernel
package with the specific version:

Removing packages (1):
  kernel-1:2.6.9-55.0.2.EL.endian21 at i386                                        
Committing transaction...                                                      
error: kernel-module-fcdslslusb-3.11.04-4.endian4_2.6.9_55.0.2.EL.endian21
requires kernel = 1:2.6.9-55.0.2.EL.endian21
...

I solved the problem by setting immediateUpdown = 0


Here is what i found out during debugging:

Within class TaskRemove, method _remove, TaskUpDown will be called for each
package which requires the kernel package if immediateUpdown is 1.

Normally, TaskUpdown would upgrade (or downgrade) the kernel-module-* packages,
which would implicitely remove the old packages.

But in this case this has not been happened because of multi-version.
TaskUpdown now will upgrade the kernel-modules-* packages, but the new versions
of them are already installed, so there is nothing to do for TaskUpdown.

But in order to fulfill requirements for the to-be-removed kernel package it
must remove those packages.

----------
messages: 1201
nosy: peter-endian
priority: bug
project: smart
status: unread
title: removing an old multi-version package will not  remove dependencies with immediateUpdown = 1

_______________________________________
Labix issue tracker <tracker at labix.org>
<http://tracker.labix.org/issue332>
_______________________________________



More information about the Smart mailing list