Hello Sten Heinze,

First of all: Thanks for your report!

(Julian has said already most of it ~ i have written the mail in the train,
 so some paragraphs are simply duplicates…)

2010/3/16 Sten Heinze <s...@gmx.de>:
> # apt-cache policy libqt4-designer
> libqt4-designer:
>  Installiert: 4:4.6.2-1
>  Kandidat: 4:4.6.2-1
>  Versions-Tabelle:
>     4:4.6.2-1 0
>          1 http://ftp.de.debian.org experimental/main Packages
>     4:4.6.2-1 0
>        500 file: ./ Packages
>  *** 4:4.6.2-1 0
>        100 /var/lib/dpkg/status
>     4:4.5.3-4 0
>        500 http://ftp.de.debian.org testing/main Packages
>         50 http://ftp.de.debian.org unstable/main Packages
>     4.4.3-1+lenny1 0
>        500 http://security.debian.org stable/updates/main Packages
>     4.4.3-1 0
>        500 http://ftp.de.debian.org stable/main Packages
>
> If I remove either my local or the experimental deb-line (or both), it works
> fine. This looks very similar to reports of old apt versions, like #351056,
> except I use the current testing/squeeze version.

Your policy paste looks a bit strange as version 4:4.6.2-1 is provided by
three different archives (proper debian mirror, your local mirror and now) -
the problem is that these versions are not identified but treated as different:
APT doesn't only identify a version by its version string but also by a
checksum created from data like the installed-size and dependencies.
As these versions are treated independently APT will proceed with
installing a freshly downloaded version instead of accepting the locally
installed version to handle cases in which binary rebuilds are done without
a version change or something alike (You can see the check in action
at version 4:4.5.3-4 -- the listed archives really provide the same version
and are therefore merged).

For starters, we can look at the output of
apt-cache show -a libqt4-designer
maybe also (in comparison) the original entries from the status/Packages file.
Hopefully this will show as where the difference in the versions are.
(i guess you don't edit them by hand yourself, so it maybe also of
 interest which repository creator do you use.)

Oh, and if someone want to look at the VersionHash method:
It is located at apt-pkg/deb/deblistparser.cc [0].


Best regards / Mit freundlichen Grüßen,

David Kalnischkies

[0] 
http://bazaar.launchpad.net/~mvo/apt/debian-sid/annotate/head%3A/apt-pkg/deb/deblistparser.cc



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to