#727082 apt: dist-upgrade says "no longer required" and "will be installed" for the same packages

Package:
apt
Source:
apt
Description:
commandline package manager
Submitter:
"Ph. Marek"
Date:
2013-10-28 06:33:04 UTC
Severity:
normal
#727082#5
Date:
2013-10-22 06:08:01 UTC
From:
To:
Using debian testing/unstable, and dist-upgrade says this:


$ LANG=C apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... The following packages were automatically installed and
are no longer required:
  gir1.2-gstreamer-1.0 python3-enchant python3-gtkspellcheck
Use 'apt-get autoremove' to remove them.
Done
The following NEW packages will be installed:
  gir1.2-gstreamer-1.0 python3-enchant python3-gtkspellcheck
The following packages have been kept back:
  gaupol
The following packages will be upgraded:
  audacity audacity-data easytag gimp-gmic gmic gstreamer1.0-plugins-good
libsoundtouch0 libwayland-client0 libwayland-server0 php5-json translate-
toolkit
11 upgraded, 3 newly installed, 0 to remove and 1 not upgraded.
Need to get 12.2 MB of archives.
After this operation, 5690 kB of additional disk space will be used.
Do you want to continue? [Y/n]

$ LANG=C dpkg-query -l gir1.2-gstreamer-1.0 python3-enchant
python3-gtkspellcheck
dpkg-query: no packages found matching gir1.2-gstreamer-1.0
dpkg-query: no packages found matching python3-enchant
dpkg-query: no packages found matching python3-gtkspellcheck


Attached is the dpkg.log for the last 3 weeks.

I have created a tar of /var/lib/{apt,dpkg}/{...} and hope that this is
sufficient to answer any questions.
I just did the dist-upgrade, and afterwards I get

$ LANG=C apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... The following packages were automatically installed and
are no longer required:
  gir1.2-gstreamer-1.0 python3-enchant python3-gtkspellcheck
Use 'apt-get autoremove' to remove them.
Done
The following packages have been kept back:
  gaupol
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

and

$ LANG=C dpkg-query -l gir1.2-gstreamer-1.0 python3-enchant
python3-gtkspellcheck
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                    Version
Architecture             Description
+++-=======================================-========================-========================-====================================================================================
ii  gir1.2-gstreamer-1.0                    1.2.0-1                  amd64
Description: GObject introspection data for the GStreamer library
ii  python3-enchant                         1.6.5-2                  all
spellchecking library for Python 3
ii  python3-gtkspellcheck                   3.0-1.1                  all
spellchecking library written in Python for Gtk based on Enchant

#727082#10
Date:
2013-10-22 06:24:12 UTC
From:
To:
I think I'm caught in a loop here.
"dist-upgrade" installs, next call says "use autoremove"; that removes
the packages, but next "dist-upgrade" installs again ...


$ LANG=C apt-get autoremove
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  gir1.2-gstreamer-1.0 python3-enchant python3-gtkspellcheck
0 upgraded, 0 newly installed, 3 to remove and 1 not upgraded.
After this operation, 1496 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 383626 files and directories currently installed.)
Removing gir1.2-gstreamer-1.0 ...
Removing python3-gtkspellcheck ...
Removing python3-enchant ...

[root@cacao:~]$ LANG=C apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... The following packages were automatically
installed and are no longer required:
  gir1.2-gstreamer-1.0 python3-enchant python3-gtkspellcheck
Use 'apt-get autoremove' to remove them.
Done
The following NEW packages will be installed:
  gir1.2-gstreamer-1.0 python3-enchant python3-gtkspellcheck
The following packages have been kept back:
  gaupol
0 upgraded, 3 newly installed, 0 to remove and 1 not upgraded.
Need to get 0 B/910 kB of archives.
After this operation, 1496 kB of additional disk space will be used.
Do you want to continue? [Y/n]

#727082#15
Date:
2013-10-22 13:08:16 UTC
From:
To:
Hi,

This shows a "display bug" – there shouldn't be code printing stuff between
"Calculating upgrade…" and "Done", but it looks like the recent reshuffling of
code made it happen.

This should be the reported problem itself.

I presume you have 0.19.2-1 installed and apt is trying to upgrade you to
0.24.3-1, but decides against it because of $REASON.

I can construct a testcase here with conflicting packages as $REASON,
but I guess your $REASON is different which would be interesting to know
so that we can cover all bases. Running:
$ apt-get dist-upgrade -s -o Debug::pkgProblemResolver=1 -o
Debug::pkgDepCache::Marker=1 -o Debug::pkgDepCache::AutoInstall=1
should print a bunch of stuff telling us what the $REASON is.


Best regards

David Kalnischkies

#727082#20
Date:
2013-10-22 13:13:14 UTC
From:
To:
Hello David,
here you are.


Regards,

Phil

#727082#25
Date:
2013-10-22 18:42:14 UTC
From:
To:
Is this possibly another instance of the problem described in #726174?

Cheers,

#727082#30
Date:
2013-10-23 05:53:10 UTC
From:
To:
[..]

Indeed, this is broken in the current apt in unstable, but the
out-of-order printing should be fixed in the debian/sid git branch.

Cheers,
 Michael

#727082#35
Date:
2013-10-28 06:31:25 UTC
From:
To:
Now I get this output:

# apt-get install kmail=4:4.11.2-2 -t experimental
...
The following extra packages will be installed:
  akonadi-backend-mysql akonadi-server akonadiconsole akregator blogilo
  kaddressbook kalarm kdelibs-bin kdelibs5-data kdelibs5-plugins kdepim
...
The following packages will be upgraded:
  akonadi-backend-mysql akonadi-server akonadiconsole akregator blogilo
  kaddressbook kalarm kdelibs-bin kdelibs5-data kdelibs5-plugins kdepim


This is about packages that are already installed, so the "extra
packages will be installed" seems to be wrong:

# dpkg-query -l akonadiconsole
ii  akonadiconsole     4:4.10.5-2    amd64      management and ...



Regards,

Phil