#752519 apt: Confusing error messages when trying to install a package against which exists a "Breaks" in an already installed package

Package:
apt
Source:
apt
Description:
commandline package manager
Submitter:
Klaus Ethgen
Date:
2014-06-24 13:33:04 UTC
Severity:
normal
#752519#5
Date:
2014-06-24 12:33:26 UTC
From:
To:
I had the following on a other node that I don't want to send mails at
all. So I purged the package informations below and will give the
versions by hand.

Affected apt version: 1.0.5 (amd64)

   > apt-get install libdbd-anydata-perl
   Reading package lists... Done
   Building dependency tree
   Reading state information... Done
   Some packages could not be installed. This may mean that you have
   requested an impossible situation or if you are using the unstable
   distribution that some required packages have not yet been created
   or been moved out of Incoming.
   The following information may help to resolve the situation:

   The following packages have unmet dependencies:
    libdbd-anydata-perl : Depends: libdbi-perl (>= 1.612) but it is not going to be installed
   E: Unable to correct problems, you have held broken packages.
   > apt-cache policy libdbi-perl
   libdbi-perl:
     Installed: 1.631-3
     Candidate: 1.631-3
     Version table:
    *** 1.631-3 0
	   500 ftp://ftp.de.debian.org/debian/ sid/main amd64 Packages
	   100 /var/lib/dpkg/status
   > dpkg --compare-versions 1.631-3 '>=' 1.612; echo $?
   0

So apt wrongly don't take 1.631-3 bigger than 1.612. That makes
libdbd-anydata-perl uninstallable so I would even see this bug as
serious (But I filled it as just as important).

And before you ask, no, libdbi-perl is not hold as it is suggested by
the error.

#752519#10
Date:
2014-06-24 13:21:06 UTC
From:
To:
Hi,

Klaus Ethgen wrote:

Nope. The reason is that libdbi-perl version 1.631-3 "Breaks
libdbd-anydata-perl (<< 0.11+)" (which has been removed from Sid
btw.).

Hence the only thing which is at least confusing is the claim the
combination of "libdbi-perl (>= 1.612)" and "is not going to be
installed" despite it is already installed.

I suspect this is because apt internally tried to see if downgrading
would be an option and then noticed that it isn't an option and only
gives the reason for why downgrading is not an option without
providing any detail.

		Regards, Axel