Debian Bug report logs - #639290
upgrade from squeeze to wheezy fails on i386 (pre-depends loop)

version graph

Package: apt; Maintainer for apt is APT Development Team <deity@lists.debian.org>; Source for apt is src:apt.

Reported by: Adam Heath <doogie@brainfood.com>

Date: Thu, 25 Aug 2011 17:15:02 UTC

Severity: important

Tags: help

Merged with 639689, 640111, 647056, 649685

Found in version apt/0.8.15.9

Fixed in versions apt/0.8.16~exp6, apt/0.9.0

Done: Michael Vogt <mvo@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, GNU Libc Maintainers <debian-glibc@lists.debian.org>:
Bug#639290; Package libc6. (Thu, 25 Aug 2011 17:15:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Heath <doogie@brainfood.com>:
New Bug report received and forwarded. Copy sent to GNU Libc Maintainers <debian-glibc@lists.debian.org>. (Thu, 25 Aug 2011 17:15:05 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Adam Heath <doogie@brainfood.com>
To: submit@bugs.debian.org
Subject: partial upgrade from squeeze to wheezy fails
Date: Thu, 25 Aug 2011 12:13:25 -0500
package: libc6


The warnings about the locales below is because I don't have that
installed in the debootstrap squeeze chroot.
==
zoot:/Media/chroot# rsync squeeze.save/ squeeze/ --exclude
var/cache/apt/archives/ --exclude etc/apt/ -a
zoot:/Media/chroot# chroot squeeze
root@zoot:/# apt-get install perl
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libdb4.7 perl-modules
Suggested packages:
  perl-doc libterm-readline-gnu-perl libterm-readline-perl-perl make
The following NEW packages will be installed:
  libdb4.7 perl perl-modules
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/7907 kB of archives.
After this operation, 30.7 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or
directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Can not write log, openpty() failed (/dev/pts not mounted?)
Selecting previously deselected package libdb4.7.
(Reading database ... 8499 files and directories currently installed.)
Unpacking libdb4.7 (from .../libdb4.7_4.7.25-9_i386.deb) ...
Selecting previously deselected package perl-modules.
Unpacking perl-modules (from
.../perl-modules_5.10.1-17squeeze1_all.deb) ...
Selecting previously deselected package perl.
Unpacking perl (from .../perl_5.10.1-17squeeze1_i386.deb) ...
Processing triggers for man-db ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or
directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Can not write log, openpty() failed (/dev/pts not mounted?)
Setting up libdb4.7 (4.7.25-9) ...
Setting up perl-modules (5.10.1-17squeeze1) ...
Setting up perl (5.10.1-17squeeze1) ...
root@zoot:/# apt-get install -t testing iceweasel
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer
required:
  libdb4.7
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  fontconfig fontconfig-config gcc-4.6-base libasound2 libatk1.0-0
libatk1.0-data libavahi-client3 libavahi-common-data libavahi-common3
libc-bin libc6
  libcairo2 libcups2 libdatrie1 libdb5.1 libdbus-1-3 libevent-1.4-2
libexpat1 libffi5 libfontconfig1 libfreetype6 libgcrypt11
libgdk-pixbuf2.0-0
  libglib2.0-0 libgnutls26 libgpg-error0 libgssapi-krb5-2 libgtk2.0-0
libgtk2.0-common libhunspell-1.2-0 libice6 libjasper1 libjpeg62
libjpeg8 libk5crypto3
  libkeyutils1 libkrb5-3 libkrb5support0 liblocale-gettext-perl
libmozjs5d libnspr4-0d libnss3-1d libpango1.0-0 libpcre3 libpixman-1-0
libpng12-0 libsm6
  libstartup-notification0 libstdc++6 libtasn1-3
libtext-charwidth-perl libtext-iconv-perl libthai-data libthai0
libtiff4 libvpx0 libx11-6 libx11-data
  libx11-xcb1 libxau6 libxcb-render0 libxcb-shm0 libxcb-util0 libxcb1
libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3
libxft2 libxi6
  libxinerama1 libxml2 libxrandr2 libxrender1 libxt6 multiarch-support
perl perl-base perl-modules shared-mime-info ttf-dejavu-core ucf
x11-common
  xulrunner-5.0
Suggested packages:
  defoma ttf-lyx latex-xft-fonts xfonts-mathml ttf-mathematica4.1
xprint mozplugger libasound2-plugins glibc-doc locales cups-common
rng-tools gnutls-bin
  krb5-doc krb5-user librsvg2-common gvfs libjasper-runtime
ttf-baekmuk ttf-arphic-gbsn00lp ttf-arphic-bsmi00lp
ttf-arphic-gkai00mp ttf-arphic-bkai00mp
  perl-doc libterm-readline-gnu-perl libterm-readline-perl-perl make
libdbus-glib-1-2 libgconf2-4 libgnomevfs2-0 libnotify1
libnotify1-gtk2.10 libgnomeui-0
  libcanberra0
Recommended packages:
  libc6-i686 dbus libglib2.0-data hicolor-icon-theme libgtk2.0-bin
hunspell-en-us hunspell-dictionary myspell-dictionary x-ttcidfont-conf
xml-core
  libswitch-perl libpod-plainer-perl libclass-isa-perl
The following NEW packages will be installed:
  fontconfig fontconfig-config gcc-4.6-base iceweasel libasound2
libatk1.0-0 libatk1.0-data libavahi-client3 libavahi-common-data
libavahi-common3
  libcairo2 libcups2 libdatrie1 libdb5.1 libdbus-1-3 libevent-1.4-2
libexpat1 libffi5 libfontconfig1 libfreetype6 libgcrypt11
libgdk-pixbuf2.0-0
  libglib2.0-0 libgnutls26 libgpg-error0 libgssapi-krb5-2 libgtk2.0-0
libgtk2.0-common libhunspell-1.2-0 libice6 libjasper1 libjpeg62
libjpeg8 libk5crypto3
  libkeyutils1 libkrb5-3 libkrb5support0 libmozjs5d libnspr4-0d
libnss3-1d libpango1.0-0 libpcre3 libpixman-1-0 libpng12-0 libsm6
libstartup-notification0
  libtasn1-3 libthai-data libthai0 libtiff4 libvpx0 libx11-6
libx11-data libx11-xcb1 libxau6 libxcb-render0 libxcb-shm0
libxcb-util0 libxcb1 libxcomposite1
  libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxft2 libxi6
libxinerama1 libxml2 libxrandr2 libxrender1 libxt6 multiarch-support
  shared-mime-info ttf-dejavu-core ucf x11-common xulrunner-5.0
The following packages will be upgraded:
  libc-bin libc6 liblocale-gettext-perl libstdc++6
libtext-charwidth-perl libtext-iconv-perl perl perl-base perl-modules
9 upgraded, 78 newly installed, 0 to remove and 90 not upgraded.
Need to get 17.7 MB/56.6 MB of archives.
After this operation, 122 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://ftp.us.debian.org/debian/ wheezy/main libtasn1-3 i386
2.9-4 [64.2 kB]
Get:2 http://ftp.us.debian.org/debian/ wheezy/main libkeyutils1 i386
1.4-6 [7398 B]
Get:3 http://ftp.us.debian.org/debian/ wheezy/main libatk1.0-data all
2.0.1-2 [215 kB]
Get:4 http://ftp.us.debian.org/debian/ wheezy/main libatk1.0-0 i386
2.0.1-2 [91.8 kB]
Get:5 http://ftp.us.debian.org/debian/ wheezy/main
libavahi-common-data i386 0.6.30-5 [136 kB]
Get:6 http://ftp.us.debian.org/debian/ wheezy/main libavahi-common3
i386 0.6.30-5 [55.0 kB]
Get:7 http://ftp.us.debian.org/debian/ wheezy/main libdbus-1-3 i386
1.4.14-1 [166 kB]
Get:8 http://ftp.us.debian.org/debian/ wheezy/main libavahi-client3
i386 0.6.30-5 [58.7 kB]
Get:9 http://ftp.us.debian.org/debian/ wheezy/main libkrb5support0
i386 1.9.1+dfsg-1 [47.0 kB]
Get:10 http://ftp.us.debian.org/debian/ wheezy/main libk5crypto3 i386
1.9.1+dfsg-1 [107 kB]
Get:11 http://ftp.us.debian.org/debian/ wheezy/main libkrb5-3 i386
1.9.1+dfsg-1 [392 kB]
Get:12 http://ftp.us.debian.org/debian/ wheezy/main libgssapi-krb5-2
i386 1.9.1+dfsg-1 [148 kB]
Get:13 http://ftp.us.debian.org/debian/ wheezy/main libcups2 i386
1.4.8-2 [246 kB]
Get:14 http://ftp.us.debian.org/debian/ wheezy/main libdatrie1 i386
0.2.4-3 [28.6 kB]
Get:15 http://ftp.us.debian.org/debian/ wheezy/main libfreetype6 i386
2.4.6-1 [437 kB]
Get:16 http://ftp.us.debian.org/debian/ wheezy/main ucf all
3.0025+nmu2 [70.6 kB]
Get:17 http://ftp.us.debian.org/debian/ wheezy/main ttf-dejavu-core
all 2.33-1 [1550 kB]
Get:18 http://ftp.us.debian.org/debian/ wheezy/main fontconfig-config
all 2.8.0-3 [221 kB]
Get:19 http://ftp.us.debian.org/debian/ wheezy/main libfontconfig1
i386 2.8.0-3 [285 kB]
Get:20 http://ftp.us.debian.org/debian/ wheezy/main libjasper1 i386
1.900.1-9 [158 kB]
Get:21 http://ftp.us.debian.org/debian/ wheezy/main libpng12-0 i386
1.2.46-3 [192 kB]
Get:22 http://ftp.us.debian.org/debian/ wheezy/main libjpeg62 i386
6b1-2 [93.7 kB]
Get:23 http://ftp.us.debian.org/debian/ wheezy/main libtiff4 i386
3.9.5-1 [187 kB]
Get:24 http://ftp.us.debian.org/debian/ wheezy/main libxau6 i386
1:1.0.6-3 [16.9 kB]
Get:25 http://ftp.us.debian.org/debian/ wheezy/main libxdmcp6 i386
1:1.1.0-3 [23.3 kB]
Get:26 http://ftp.us.debian.org/debian/ wheezy/main libxcb1 i386 1.7-3
[48.8 kB]
Get:27 http://ftp.us.debian.org/debian/ wheezy/main libx11-data all
2:1.4.4-1 [183 kB]
Get:28 http://ftp.us.debian.org/debian/ wheezy/main libx11-6 i386
2:1.4.4-1 [895 kB]
Get:29 http://ftp.us.debian.org/debian/ wheezy/main x11-common all
1:7.6+8 [276 kB]

Get:30 http://ftp.us.debian.org/debian/ wheezy/main libice6 i386
2:1.0.7-2 [55.2 kB]

Get:31 http://ftp.us.debian.org/debian/ wheezy/main libnspr4-0d i386
4.8.9-1 [146 kB]

Get:32 http://ftp.us.debian.org/debian/ wheezy/main libsm6 i386
2:1.2.0-2 [29.1 kB]

Get:33 http://ftp.us.debian.org/debian/ wheezy/main libthai-data all
0.1.15-2 [201 kB]

Get:34 http://ftp.us.debian.org/debian/ wheezy/main libthai0 i386
0.1.15-2 [43.3 kB]

Get:35 http://ftp.us.debian.org/debian/ wheezy/main libx11-xcb1 i386
2:1.4.4-1 [125 kB]

Get:36 http://ftp.us.debian.org/debian/ wheezy/main libxcb-render0
i386 1.7-3 [17.3 kB]

Get:37 http://ftp.us.debian.org/debian/ wheezy/main libxcomposite1
i386 1:0.4.3-2 [16.6 kB]

Get:38 http://ftp.us.debian.org/debian/ wheezy/main libxfixes3 i386
1:5.0-4 [21.2 kB]

Get:39 http://ftp.us.debian.org/debian/ wheezy/main libxrender1 i386
1:0.9.6-2 [31.1 kB]

Get:40 http://ftp.us.debian.org/debian/ wheezy/main libxcursor1 i386
1:1.1.12-1 [27.2 kB]

Get:41 http://ftp.us.debian.org/debian/ wheezy/main libxdamage1 i386
1:1.1.3-2 [14.1 kB]

Get:42 http://ftp.us.debian.org/debian/ wheezy/main libxext6 i386
2:1.3.0-3 [52.4 kB]

Get:43 http://ftp.us.debian.org/debian/ wheezy/main libxft2 i386
2.2.0-3 [58.4 kB]

Get:44 http://ftp.us.debian.org/debian/ wheezy/main libxi6 i386
2:1.4.3-3 [66.6 kB]

Get:45 http://ftp.us.debian.org/debian/ wheezy/main libxinerama1 i386
2:1.1.1-3 [15.9 kB]

Get:46 http://ftp.us.debian.org/debian/ wheezy/main libxrandr2 i386
2:1.3.2-2 [33.2 kB]

Get:47 http://ftp.us.debian.org/debian/ wheezy/main libxt6 i386
1:1.1.1-2 [200 kB]

Get:48 http://ftp.us.debian.org/debian/ wheezy/main libxml2 i386
2.7.8.dfsg-4 [882 kB]

Get:49 http://ftp.us.debian.org/debian/ wheezy/main fontconfig i386
2.8.0-3 [335 kB]

Get:50 http://ftp.us.debian.org/debian/ wheezy/main libgtk2.0-common
all 2.24.4-3 [7205 kB]

Get:51 http://ftp.us.debian.org/debian/ wheezy/main libpango1.0-0 i386
1.28.4-1 [439 kB]

Get:52 http://ftp.us.debian.org/debian/ wheezy/main shared-mime-info
i386 0.90-1 [1016 kB]

Get:53 http://ftp.us.debian.org/debian/ wheezy/main libhunspell-1.2-0
i386 1.2.14-4 [174 kB]

Get:54 http://ftp.us.debian.org/debian/ wheezy/main libxcb-util0 i386
0.3.8-1 [24.3 kB]

Get:55 http://ftp.us.debian.org/debian/ wheezy/main
libstartup-notification0 i386 0.12-1 [25.6 kB]

Fetched 17.7 MB in 12s (1363 kB/s)


E: Could not perform immediate configuration on 'perl'. Please see man
5 apt.conf under APT::Immediate-Configure for details. (2)
==

libc6(wheezy) breaks perl << 5.12.  perl 5.12 depends on libgdm3.
libgdm3 pre-depends multiarch-support.  multiarch-support depends on
libc6(wheezy).

This loop can't be broken by apt, so it complains.

An upgrade or dist-upgrade from squeeze to wheezy *does* work.






Information forwarded to debian-bugs-dist@lists.debian.org, GNU Libc Maintainers <debian-glibc@lists.debian.org>:
Bug#639290; Package libc6. (Thu, 25 Aug 2011 17:27:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Heath <doogie@brainfood.com>:
Extra info received and forwarded to list. Copy sent to GNU Libc Maintainers <debian-glibc@lists.debian.org>. (Thu, 25 Aug 2011 17:27:03 GMT) Full text and rfc822 format available.

Message #10 received at 639290@bugs.debian.org (full text, mbox):

From: Adam Heath <doogie@brainfood.com>
To: 639290@bugs.debian.org
Subject: Re: Bug#639290: Acknowledgement (partial upgrade from squeeze to wheezy fails)
Date: Thu, 25 Aug 2011 12:19:55 -0500
Summary of simple steps to replicate the problem:
==
debootstrap squeeze squeeze
chroot squeeze
(edit sources.list, add wheezy)
(edit apt.conf, disable suggests/recommends, set default-release to
stable)
apt-get install perl
apt-get -t testing install iceweasel
(or perl, or libc6)
==




Information forwarded to debian-bugs-dist@lists.debian.org, GNU Libc Maintainers <debian-glibc@lists.debian.org>:
Bug#639290; Package libc6. (Thu, 25 Aug 2011 17:39:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to GNU Libc Maintainers <debian-glibc@lists.debian.org>. (Thu, 25 Aug 2011 17:39:03 GMT) Full text and rfc822 format available.

Message #15 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: apt@packages.debian.org
Cc: Adam Heath <doogie@brainfood.com>, 639290@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Thu, 25 Aug 2011 12:37:00 -0500
Hi APT team,

Quick puzzle for you.

Adam Heath wrote:

> E: Could not perform immediate configuration on 'perl'. Please see man
> 5 apt.conf under APT::Immediate-Configure for details. (2)
> ==
>
> libc6(wheezy) breaks perl << 5.12.  perl 5.12 depends on libgdm3.
> libgdm3 pre-depends multiarch-support.  multiarch-support depends on
> libc6(wheezy).
>
> This loop can't be broken by apt, so it complains.
>
> An upgrade or dist-upgrade from squeeze to wheezy *does* work.

The dependencies seem right.  I would expect my package manager to
either unpack the new perl or temporarily deconfigure perl in order to
upgrade libc.  perl should not satisfy dependencies until the new
version is configured because the output of "perl -V:libpth" is wrong,
as described at <http://bugs.debian.org/636686>.

But as pointed out at [*], when APT::Immediate-Configure is set,
"apt-get install" just bails out in this situation instead.  Is that a
libc bug, a perl bug, or an apt bug?

[*] http://bugs.debian.org/639290




Information forwarded to debian-bugs-dist@lists.debian.org, GNU Libc Maintainers <debian-glibc@lists.debian.org>:
Bug#639290; Package libc6. (Thu, 25 Aug 2011 20:01:08 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Heath <doogie@brainfood.com>:
Extra info received and forwarded to list. Copy sent to GNU Libc Maintainers <debian-glibc@lists.debian.org>. (Thu, 25 Aug 2011 20:01:08 GMT) Full text and rfc822 format available.

Message #20 received at 639290@bugs.debian.org (full text, mbox):

From: Adam Heath <doogie@brainfood.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: apt@packages.debian.org, 639290@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Thu, 25 Aug 2011 14:47:46 -0500
On 08/25/2011 12:37 PM, Jonathan Nieder wrote:
> Hi APT team,
> 
> Quick puzzle for you.
> 
> Adam Heath wrote:
> 
>> E: Could not perform immediate configuration on 'perl'. Please see man
>> 5 apt.conf under APT::Immediate-Configure for details. (2)
>> ==
>>
>> libc6(wheezy) breaks perl << 5.12.  perl 5.12 depends on libgdm3.
>> libgdm3 pre-depends multiarch-support.  multiarch-support depends on
>> libc6(wheezy).
>>
>> This loop can't be broken by apt, so it complains.
>>
>> An upgrade or dist-upgrade from squeeze to wheezy *does* work.
> 
> The dependencies seem right.  I would expect my package manager to
> either unpack the new perl or temporarily deconfigure perl in order to
> upgrade libc.  perl should not satisfy dependencies until the new
> version is configured because the output of "perl -V:libpth" is wrong,
> as described at <http://bugs.debian.org/636686>.
> 
> But as pointed out at [*], when APT::Immediate-Configure is set,
> "apt-get install" just bails out in this situation instead.  Is that a
> libc bug, a perl bug, or an apt bug?
> 
> [*] http://bugs.debian.org/639290

639290 says that you can deconfigure perl.  That is not possible.  You
can only unpack a newer perl(but not configure), which then causes
perl to be in a deconfigured state.

My guess here is that Breaks should not be used, but Conflicts.

That still won't solve the actual problem(I think).




Information forwarded to debian-bugs-dist@lists.debian.org, GNU Libc Maintainers <debian-glibc@lists.debian.org>:
Bug#639290; Package libc6. (Thu, 25 Aug 2011 20:03:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Heath <doogie@brainfood.com>:
Extra info received and forwarded to list. Copy sent to GNU Libc Maintainers <debian-glibc@lists.debian.org>. (Thu, 25 Aug 2011 20:03:03 GMT) Full text and rfc822 format available.

Message #25 received at 639290@bugs.debian.org (full text, mbox):

From: Adam Heath <doogie@brainfood.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: apt@packages.debian.org, 639290@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Thu, 25 Aug 2011 15:01:43 -0500
On 08/25/2011 12:37 PM, Jonathan Nieder wrote:
> Hi APT team,
> 
> Quick puzzle for you.
> 
> Adam Heath wrote:
> 
>> E: Could not perform immediate configuration on 'perl'. Please see man
>> 5 apt.conf under APT::Immediate-Configure for details. (2)
>> ==
>>
>> libc6(wheezy) breaks perl << 5.12.  perl 5.12 depends on libgdm3.
>> libgdm3 pre-depends multiarch-support.  multiarch-support depends on
>> libc6(wheezy).
>>
>> This loop can't be broken by apt, so it complains.
>>
>> An upgrade or dist-upgrade from squeeze to wheezy *does* work.
> 
> The dependencies seem right.  I would expect my package manager to
> either unpack the new perl or temporarily deconfigure perl in order to
> upgrade libc.  perl should not satisfy dependencies until the new
> version is configured because the output of "perl -V:libpth" is wrong,
> as described at <http://bugs.debian.org/636686>.
> 
> But as pointed out at [*], when APT::Immediate-Configure is set,
> "apt-get install" just bails out in this situation instead.  Is that a
> libc bug, a perl bug, or an apt bug?
> 
> [*] http://bugs.debian.org/639290

And or remove the Depends: libc6(wheeze) from multiarch-support, and
have that package provide the multiarch-aware ld.so, and dpkg-divert
the one in libc6.

Then have libc6 Replaces: multiarch-support, replacing the diverted-to
ld.so, then undo the diversion.

Or something.






Added tag(s) help. Request was from Aurelien Jarno <aurelien@aurel32.net> to control@bugs.debian.org. (Fri, 26 Aug 2011 04:51:05 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, GNU Libc Maintainers <debian-glibc@lists.debian.org>:
Bug#639290; Package libc6. (Fri, 26 Aug 2011 05:45:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to GNU Libc Maintainers <debian-glibc@lists.debian.org>. (Fri, 26 Aug 2011 05:45:05 GMT) Full text and rfc822 format available.

Message #32 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: Adam Heath <doogie@brainfood.com>
Cc: apt@packages.debian.org, 639290@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 00:43:20 -0500
reassign 639290 apt
quit

Hi again,

Adam Heath wrote:

> 639290 says that you can deconfigure perl.  That is not possible.

Why?  I thought the whole point of having a separate perl and
perl-base is that perl is not essential.

So as an intermediate state during an upgrade, it should be perfectly
fine to deconfigure perl or to upgrade it without immediately
configuring it.

Reassigning to APT.  Please feel free to reassign back to libc6 or
perl when the problem is clearer.




Bug reassigned from package 'libc6' to 'apt'. Request was from Jonathan Nieder <jrnieder@gmail.com> to control@bugs.debian.org. (Fri, 26 Aug 2011 05:45:07 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 07:51:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Julian Andres Klode <jak@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 07:51:08 GMT) Full text and rfc822 format available.

Message #39 received at 639290@bugs.debian.org (full text, mbox):

From: Julian Andres Klode <jak@debian.org>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: Adam Heath <doogie@brainfood.com>, apt@packages.debian.org, 639290@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 09:48:54 +0200
On Fri, Aug 26, 2011 at 12:43:20AM -0500, Jonathan Nieder wrote:
> reassign 639290 apt
> quit
> 
> Hi again,
> 
> Adam Heath wrote:
> 
> > 639290 says that you can deconfigure perl.  That is not possible.
> 
> Why?  I thought the whole point of having a separate perl and
> perl-base is that perl is not essential.
Obviously dpkg has no --deconfigure command that you could
use for this.

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 09:09:30 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 09:09:34 GMT) Full text and rfc822 format available.

Message #44 received at 639290@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: 639290@bugs.debian.org
Cc: 636686@bugs.debian.org, 639290-submitter@bugs.debina.org
Subject: Re: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Fri, 26 Aug 2011 02:07:36 -0700
[Message part 1 (text/plain, inline)]
retitle 639290 upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
thanks

Yes, this is a bug in apt, *not* a bug in the dependencies; perl is not
Essential and never has been, and apt should be able to handle Breaks by
temporarily deconfiguring the old perl package before unpacking libc6.  That
apt is not handling this indicates a problem in the apt resolver in squeeze.

However, since this bug does exist in the apt in stable, we will need to
cope with that bug somehow.

But before we start waffling on the implementation, I would like to have a
reproducible test case - for one thing, I'd like to see if wheezy's apt does
any better.  But I can't reproduce the problem in a clean squeeze i386
chroot.  Adam, can you provide a minimal package list that can be used to
reproduce the error?


For the actual workaround, there are a few options that I see:

 - release-note that users must upgrade apt first before running
   dist-upgrade.  This is a fairly standard release note requirement, of
   late; it's possible *at present* because apt's dependencies are fairly
   light.  If that changes between now and release, this option will not be
   available to us.  It also depends on us having an apt in wheezy that
   *can* handle the case (see above).

 - revert libc's Breaks: on perl.  The original bug report causing this to
   be added suggests that the only known breakage is that using old perl on
   a system with new libc6 to *build* software that embeds perl will fail.
   If that's the case, I think that's not a very strong reason to use a
   Breaks at all since the main functionality of perl remains intact, and
   only one specific use case is broken.

 - revert libc's Breaks: on perl on i386 and armhf only.  Like the above,
   but retains the protection on archs not affected by the pre-depends loop,
   if we really have to keep it.

 - include the ld.so.conf.d multiarch snippets in the multiarch-support
   package, have libc Replaces: multiarch-support to take over these files
   on upgrade, and relax the multiarch-support dependency on i386 and armhf.
   (I haven't tested this solution; Adam proposed it on IRC, and it seems
   plausible.)

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Changed Bug title to 'upgrade from squeeze to wheezy fails on i386 (pre-depends loop)' from 'partial upgrade from squeeze to wheezy fails' Request was from Steve Langasek <vorlon@debian.org> to control@bugs.debian.org. (Fri, 26 Aug 2011 09:09:37 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 09:15:20 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 09:15:23 GMT) Full text and rfc822 format available.

Message #51 received at 639290@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: 639290@bugs.debian.org
Cc: 636686@bugs.debian.org, 639290-submitter@bugs.debina.org
Subject: Re: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Fri, 26 Aug 2011 02:12:21 -0700
[Message part 1 (text/plain, inline)]
On Fri, Aug 26, 2011 at 02:07:36AM -0700, Steve Langasek wrote:
> Adam, can you provide a minimal package list that can be used to
> reproduce the error?

Sorry, I just noticed the test case in your second message.  However, it
still doesn't work for me on an existing squeeze i386 chroot.  Could you
please post your exact apt preferences file for this?  I'll debootstrap a
fresh one tomorrow to see if I can reproduce the problem that way.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 12:18:55 GMT) Full text and rfc822 format available.

Acknowledgement sent to Vincent Danjean <Vincent.Danjean@ens-lyon.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 12:20:10 GMT) Full text and rfc822 format available.

Message #56 received at 639290@bugs.debian.org (full text, mbox):

From: Vincent Danjean <Vincent.Danjean@ens-lyon.org>
To: 636686@bugs.debian.org
Cc: 639290@bugs.debian.org, 639290-submitter@bugs.debian.org
Subject: Re: Bug#636686: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Fri, 26 Aug 2011 14:14:00 +0200
On 26/08/2011 11:12, Steve Langasek wrote:
> On Fri, Aug 26, 2011 at 02:07:36AM -0700, Steve Langasek wrote:
>> Adam, can you provide a minimal package list that can be used to
>> reproduce the error?
> 
> Sorry, I just noticed the test case in your second message.  However, it
> still doesn't work for me on an existing squeeze i386 chroot.  Could you
> please post your exact apt preferences file for this?  I'll debootstrap a
> fresh one tomorrow to see if I can reproduce the problem that way.

  For info, I've been hit by this bug a few days ago on amd64 (so this
bug does not seem to be restricted to i386).
  It was on a mostly squeeze laptop where I tried to upgrade and/or install
all R packages from testing. Perl and libc6 have been pulled-in and I got
this error message. I "solve" it by disabling the APT option suggested by
the error message for this apt-get run.
  As the laptop was not exactly squeeze (a few external repo) and as I
did not have too much time for now, I did not investigate more this
bug (nor I reported it with reportbug)

  Regards,
    Vincent

-- 
Vincent Danjean       GPG key ID 0x9D025E87         vdanjean@debian.org
GPG key fingerprint: FC95 08A6 854D DB48 4B9A  8A94 0BF7 7867 9D02 5E87
Unofficial packages: http://moais.imag.fr/membres/vincent.danjean/deb.html
APT repo:  deb http://people.debian.org/~vdanjean/debian unstable main





Message sent on to Adam Heath <doogie@brainfood.com>:
Bug#639290. (Fri, 26 Aug 2011 12:20:29 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 14:24:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 14:24:03 GMT) Full text and rfc822 format available.

Message #64 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: 639290@bugs.debian.org
Cc: Julian Andres Klode <jak@debian.org>, Adam Heath <doogie@brainfood.com>
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 09:20:28 -0500
Julian Andres Klode wrote:

> Obviously dpkg has no --deconfigure command that you could
> use for this.

But it does have an --auto-deconfigure command that does just what one
might expect, so...

We are dancing around the actual point, which is that if I understand
the report correctly, apt does not allow

	A	Depends: B (>= new)
	B	Breaks: A (<= old)

when A is important enough to get the immediate-configure treatment.
In this example, A is "a full-featured perl, including the -V:libpth
feature" and B is "support in the dynamic linker for multiarch paths".

If A were essential or an unpack-time dependency of an essential
package, I would understand.  But it is not.  I don't think this is
right, unless that new category with new constraints on its
dependencies is described in policy or a similar document somewhere.

Hoping that is clearer.
Jonathan




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 14:33:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 14:33:03 GMT) Full text and rfc822 format available.

Message #69 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: 639290@bugs.debian.org
Cc: Julian Andres Klode <jak@debian.org>, Adam Heath <doogie@brainfood.com>
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 09:29:21 -0500
Jonathan Nieder wrote:
> Julian Andres Klode wrote:

>> Obviously dpkg has no --deconfigure command that you could
>> use for this.
[...]
> Hoping that is clearer.

Oops!  I missed Steve's message which already says everything
important.  Sorry for the noise.




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 14:45:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Aurelien Jarno <aurelien@aurel32.net>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 14:45:05 GMT) Full text and rfc822 format available.

Message #74 received at 639290@bugs.debian.org (full text, mbox):

From: Aurelien Jarno <aurelien@aurel32.net>
To: Steve Langasek <vorlon@debian.org>, 636686@bugs.debian.org
Cc: 639290@bugs.debian.org, 639290-submitter@bugs.debina.org
Subject: Re: Bug#636686: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Fri, 26 Aug 2011 16:40:49 +0200
On Fri, Aug 26, 2011 at 02:07:36AM -0700, Steve Langasek wrote:
> retitle 639290 upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
> thanks
> 
> Yes, this is a bug in apt, *not* a bug in the dependencies; perl is not
> Essential and never has been, and apt should be able to handle Breaks by
> temporarily deconfiguring the old perl package before unpacking libc6.  That
> apt is not handling this indicates a problem in the apt resolver in squeeze.
> 
> However, since this bug does exist in the apt in stable, we will need to
> cope with that bug somehow.
> 
> But before we start waffling on the implementation, I would like to have a
> reproducible test case - for one thing, I'd like to see if wheezy's apt does
> any better.  But I can't reproduce the problem in a clean squeeze i386
> chroot.  Adam, can you provide a minimal package list that can be used to
> reproduce the error?
> 
> 
> For the actual workaround, there are a few options that I see:
> 
>  - release-note that users must upgrade apt first before running
>    dist-upgrade.  This is a fairly standard release note requirement, of
>    late; it's possible *at present* because apt's dependencies are fairly
>    light.  If that changes between now and release, this option will not be
>    available to us.  It also depends on us having an apt in wheezy that
>    *can* handle the case (see above).
> 
>  - revert libc's Breaks: on perl.  The original bug report causing this to
>    be added suggests that the only known breakage is that using old perl on
>    a system with new libc6 to *build* software that embeds perl will fail.
>    If that's the case, I think that's not a very strong reason to use a
>    Breaks at all since the main functionality of perl remains intact, and
>    only one specific use case is broken.
> 
>  - revert libc's Breaks: on perl on i386 and armhf only.  Like the above,
>    but retains the protection on archs not affected by the pre-depends loop,
>    if we really have to keep it.
> 
>  - include the ld.so.conf.d multiarch snippets in the multiarch-support
>    package, have libc Replaces: multiarch-support to take over these files
>    on upgrade, and relax the multiarch-support dependency on i386 and armhf.
>    (I haven't tested this solution; Adam proposed it on IRC, and it seems
>    plausible.)
> 

I don't think this one is a good idea, it means that we rely on the
ld.so.cache for executing system libraries. In case of problem with the
cache, the system is simply broken, at least until ldconfig is ran
manually or if the user tries to reboot the machine to fix the issue.

-- 
Aurelien Jarno	                        GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 18:06:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 18:06:05 GMT) Full text and rfc822 format available.

Message #79 received at 639290@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Aurelien Jarno <aurelien@aurel32.net>
Cc: 636686@bugs.debian.org, 639290@bugs.debian.org, 639290-submitter@bugs.debina.org
Subject: Re: Bug#636686: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Fri, 26 Aug 2011 11:03:35 -0700
[Message part 1 (text/plain, inline)]
On Fri, Aug 26, 2011 at 04:40:49PM +0200, Aurelien Jarno wrote:
> >  - include the ld.so.conf.d multiarch snippets in the multiarch-support
> >    package, have libc Replaces: multiarch-support to take over these files
> >    on upgrade, and relax the multiarch-support dependency on i386 and armhf.
> >    (I haven't tested this solution; Adam proposed it on IRC, and it seems
> >    plausible.)

> I don't think this one is a good idea, it means that we rely on the
> ld.so.cache for executing system libraries. In case of problem with the
> cache, the system is simply broken, at least until ldconfig is ran
> manually or if the user tries to reboot the machine to fix the issue.

True.  That's a bit worse than unbuildability of embedded perl...

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 19:42:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Heath <doogie@brainfood.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 19:42:06 GMT) Full text and rfc822 format available.

Message #84 received at 639290@bugs.debian.org (full text, mbox):

From: Adam Heath <doogie@brainfood.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: apt@packages.debian.org, 639290@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 14:38:37 -0500
On 08/26/2011 12:43 AM, Jonathan Nieder wrote:
> reassign 639290 apt
> quit
> 
> Hi again,
> 
> Adam Heath wrote:
> 
>> 639290 says that you can deconfigure perl.  That is not possible.
> 
> Why?  I thought the whole point of having a separate perl and
> perl-base is that perl is not essential.
> 
> So as an intermediate state during an upgrade, it should be perfectly
> fine to deconfigure perl or to upgrade it without immediately
> configuring it.

How would you change the status in dpkg from Installed to
Half-Installed(ie, deconfigure it)?  I don't believe there is a way to
do that, except by way of unpacking some version(any version).

> Reassigning to APT.  Please feel free to reassign back to libc6 or
> perl when the problem is clearer.





Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 19:45:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Heath <doogie@brainfood.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 19:45:06 GMT) Full text and rfc822 format available.

Message #89 received at 639290@bugs.debian.org (full text, mbox):

From: Adam Heath <doogie@brainfood.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: 639290@bugs.debian.org, Julian Andres Klode <jak@debian.org>
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 14:40:57 -0500
On 08/26/2011 09:20 AM, Jonathan Nieder wrote:
> Julian Andres Klode wrote:
> 
>> Obviously dpkg has no --deconfigure command that you could
>> use for this.
> 
> But it does have an --auto-deconfigure command that does just what one
> might expect, so...
> 
> We are dancing around the actual point, which is that if I understand
> the report correctly, apt does not allow
> 
> 	A	Depends: B (>= new)
> 	B	Breaks: A (<= old)
> 
> when A is important enough to get the immediate-configure treatment.
> In this example, A is "a full-featured perl, including the -V:libpth
> feature" and B is "support in the dynamic linker for multiarch paths".
> 
> If A were essential or an unpack-time dependency of an essential
> package, I would understand.  But it is not.  I don't think this is
> right, unless that new category with new constraints on its
> dependencies is described in policy or a similar document somewhere.

Well, fixing this in apt won't be good enough, as that version won't
be made available in stable.  And you won't be able to upgrade to the
newer apt in testing first, as that will eventually pull in the newer
package set that is broken.

Changing the algo apt is not the correct fix for this problem.




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 26 Aug 2011 21:16:15 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 26 Aug 2011 21:16:26 GMT) Full text and rfc822 format available.

Message #94 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: 639290@bugs.debian.org
Cc: 639290-submitter@bugs.debian.org, 636686@bugs.debian.org, 636686-submitter@bugs.debian.org
Subject: Re: partial upgrade from squeeze to wheezy fails
Date: Fri, 26 Aug 2011 16:05:56 -0500
Adam Heath wrote:

> Well, fixing this in apt won't be good enough, as that version won't
> be made available in stable.

Of course.  But it's still an apt bug, seriously.

As for the case at hand: the more I think about it, the less the
Breaks by libc6 makes sense.  In the motivating example Bug#629670,
as far as I can tell it is libc6-dev that broke perl:

	Note (probably harmless): No library found for -lpthread

Of course that problem isn't libc6-dev-specific --- any development
library installed to /usr/lib/$arch instead of /usr/lib could trigger
the same problem.  It is possible (except on armhf and i386) to use
libc/squeeze with gcc/wheezy as a multiarch development environment
and completely avoid that Breaks.

So maybe the Breaks should be from gcc, if from anywhere.  Niko,
what do you think?

Jonathan




Message sent on to Adam Heath <doogie@brainfood.com>:
Bug#639290. (Fri, 26 Aug 2011 21:16:42 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Wed, 31 Aug 2011 11:54:12 GMT) Full text and rfc822 format available.

Acknowledgement sent to Niko Tyni <ntyni@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Wed, 31 Aug 2011 11:54:15 GMT) Full text and rfc822 format available.

Message #102 received at 639290@bugs.debian.org (full text, mbox):

From: Niko Tyni <ntyni@debian.org>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: 639290@bugs.debian.org, 639290-submitter@bugs.debian.org, 636686@bugs.debian.org, perl@packages.debian.org
Subject: Re: Bug#636686: partial upgrade from squeeze to wheezy fails
Date: Wed, 31 Aug 2011 14:51:16 +0300
On Fri, Aug 26, 2011 at 04:05:56PM -0500, Jonathan Nieder wrote:

> As for the case at hand: the more I think about it, the less the
> Breaks by libc6 makes sense.  In the motivating example Bug#629670,
> as far as I can tell it is libc6-dev that broke perl:
> 
> 	Note (probably harmless): No library found for -lpthread
> 
> Of course that problem isn't libc6-dev-specific --- any development
> library installed to /usr/lib/$arch instead of /usr/lib could trigger
> the same problem.  It is possible (except on armhf and i386) to use
> libc/squeeze with gcc/wheezy as a multiarch development environment
> and completely avoid that Breaks.
> 
> So maybe the Breaks should be from gcc, if from anywhere.  Niko,
> what do you think?

Sorry about the late reply. I'm OK with reverting the libc6 Breaks,
given the problems it's causing.

The most significant perl breakage here IMO is indeed specific to
libc6-dev: embedding perl itself.

I suppose this could be prevented by making libc6-dev Break just
libperl-dev, which would hopefully avoid any trouble inside the base
system.

However, it's true that any development library in /usr/lib/$arch causes
the same problem for Perl modules looking for it when perl itself isn't
upgraded yet. See #638785 for a recent example of this. Breaking just
libperl-dev will not prevent this.

The core issue is that perl embeds the gcc search path statically at
build time, and the embedded search path in the squeeze version became
outdated due to gcc changes.  So I think it would make sense for gcc*
to Break perl.

I have currently no idea which one(s) of gcc-* should declare the Breaks
and if this varies with the architecture. It would be great if somebody
could look into that, I'm really short on time myself.
-- 
Niko Tyni   ntyni@debian.org




Message sent on to Adam Heath <doogie@brainfood.com>:
Bug#639290. (Wed, 31 Aug 2011 11:54:20 GMT) Full text and rfc822 format available.

Merged 639290 639689. Request was from Niko Tyni <ntyni@debian.org> to control@bugs.debian.org. (Wed, 31 Aug 2011 13:27:21 GMT) Full text and rfc822 format available.

Message sent on to Adam Heath <doogie@brainfood.com>:
Bug#639290. (Wed, 31 Aug 2011 16:09:06 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Thu, 01 Sep 2011 15:15:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to swh <swh@austin.rr.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Thu, 01 Sep 2011 15:15:03 GMT) Full text and rfc822 format available.

Message #115 received at 639290@bugs.debian.org (full text, mbox):

From: swh <swh@austin.rr.com>
To: 639290@bugs.debian.org
Subject: another example
Date: Thu, 1 Sep 2011 15:12:20 +0000
The same error message occurs when trying to install the nvidia driver per instructions on this page: http://rustyshacklefordslibrarycard.wordpress.com/2010/03/08/install-nvidia-drivers-in-debian-squeeze/

Specifically this command fails: apt-get -t unstable install nvidia-kernel-source

The procedure detailed on that page worked within the past week, now it always fails with the above quoted error message.





Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sat, 03 Sep 2011 11:54:19 GMT) Full text and rfc822 format available.

Acknowledgement sent to Niko Tyni <ntyni@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sat, 03 Sep 2011 11:54:19 GMT) Full text and rfc822 format available.

Message #120 received at 639290@bugs.debian.org (full text, mbox):

From: Niko Tyni <ntyni@debian.org>
To: Steve Langasek <vorlon@debian.org>, 639290@bugs.debian.org
Cc: Jonathan Nieder <jrnieder@gmail.com>, Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sat, 3 Sep 2011 14:51:51 +0300
On Fri, Aug 26, 2011 at 02:07:36AM -0700, Steve Langasek wrote:
> retitle 639290 upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
> thanks

> Yes, this is a bug in apt, *not* a bug in the dependencies; perl is not
> Essential and never has been, and apt should be able to handle Breaks by
> temporarily deconfiguring the old perl package before unpacking libc6.  That
> apt is not handling this indicates a problem in the apt resolver in squeeze.

> But before we start waffling on the implementation, I would like to have a
> reproducible test case - for one thing, I'd like to see if wheezy's apt does
> any better.  But I can't reproduce the problem in a clean squeeze i386
> chroot.  Adam, can you provide a minimal package list that can be used to
> reproduce the error?

>  - revert libc's Breaks: on perl.  The original bug report causing this to
>    be added suggests that the only known breakage is that using old perl on
>    a system with new libc6 to *build* software that embeds perl will fail.
>    If that's the case, I think that's not a very strong reason to use a
>    Breaks at all since the main functionality of perl remains intact, and
>    only one specific use case is broken.

This issue seem to be somewhat stalled ATM. As I'm the one who requested
the problematic libc Breaks entry, I feel it's my responsibility to get
it reverted.

Steve: are you OK with reverting it now or are you still looking for a
reproducible test case for the apt bug?

(I still think we should have a Breaks entry somewhere, probably gcc,
 but we have plenty of time to discuss and implement that afterwards.)
-- 
Niko Tyni   ntyni@debian.org




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sat, 03 Sep 2011 16:18:10 GMT) Full text and rfc822 format available.

Acknowledgement sent to Michal Suchanek <hramrach@centrum.cz>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sat, 03 Sep 2011 16:18:10 GMT) Full text and rfc822 format available.

Message #125 received at 639290@bugs.debian.org (full text, mbox):

From: Michal Suchanek <hramrach@centrum.cz>
To: Niko Tyni <ntyni@debian.org>, 639290@bugs.debian.org
Cc: Steve Langasek <vorlon@debian.org>, Jonathan Nieder <jrnieder@gmail.com>, Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sat, 3 Sep 2011 18:08:26 +0200
On 3 September 2011 13:51, Niko Tyni <ntyni@debian.org> wrote:
> On Fri, Aug 26, 2011 at 02:07:36AM -0700, Steve Langasek wrote:
>> retitle 639290 upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
>> thanks
>
>
>> But before we start waffling on the implementation, I would like to have a
>> reproducible test case - for one thing, I'd like to see if wheezy's apt does
>> any better.  But I can't reproduce the problem in a clean squeeze i386
>> chroot.  Adam, can you provide a minimal package list that can be used to
>> reproduce the error?

I could easily reproduce on two systems so it's something that actually happens.

Reproducing it in mostly empty chroot may be another thing, though.

>
>>  - revert libc's Breaks: on perl.  The original bug report causing this to
>>    be added suggests that the only known breakage is that using old perl on
>>    a system with new libc6 to *build* software that embeds perl will fail.
>>    If that's the case, I think that's not a very strong reason to use a
>>    Breaks at all since the main functionality of perl remains intact, and
>>    only one specific use case is broken.
>
> This issue seem to be somewhat stalled ATM. As I'm the one who requested
> the problematic libc Breaks entry, I feel it's my responsibility to get
> it reverted.
>
> Steve: are you OK with reverting it now or are you still looking for a
> reproducible test case for the apt bug?

I guess changing the dependencies so that apt can cope it the only
reasonable way to deal with this for Wheezy.

There is libapt-pkg-perl and when you have packages depending on that
upgrading apt separately from perl is not possible.

I am not quite sure why the old libapt-pkg can't be kept around but I
am quite sure I had to rebuild  libapt-pkg-perl a few times to allow
installing it together with my preferred apt and perl versions.

Thanks

Michal




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sun, 04 Sep 2011 01:57:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sun, 04 Sep 2011 01:57:03 GMT) Full text and rfc822 format available.

Message #130 received at 639290@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Niko Tyni <ntyni@debian.org>, Michal Suchanek <hramrach@centrum.cz>
Cc: 639290@bugs.debian.org, Jonathan Nieder <jrnieder@gmail.com>, Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sat, 3 Sep 2011 20:55:56 -0500
[Message part 1 (text/plain, inline)]
Hi Niko,

On Sat, Sep 03, 2011 at 02:51:51PM +0300, Niko Tyni wrote:
> On Fri, Aug 26, 2011 at 02:07:36AM -0700, Steve Langasek wrote:
> > But before we start waffling on the implementation, I would like to have a
> > reproducible test case - for one thing, I'd like to see if wheezy's apt does
> > any better.  But I can't reproduce the problem in a clean squeeze i386
> > chroot.  Adam, can you provide a minimal package list that can be used to
> > reproduce the error?

> >  - revert libc's Breaks: on perl.  The original bug report causing this to
> >    be added suggests that the only known breakage is that using old perl on
> >    a system with new libc6 to *build* software that embeds perl will fail.
> >    If that's the case, I think that's not a very strong reason to use a
> >    Breaks at all since the main functionality of perl remains intact, and
> >    only one specific use case is broken.
> 
> This issue seem to be somewhat stalled ATM. As I'm the one who requested
> the problematic libc Breaks entry, I feel it's my responsibility to get
> it reverted.
> 
> Steve: are you OK with reverting it now or are you still looking for a
> reproducible test case for the apt bug?

Once I tried with a clean i386 debootstrap, Adam's test case was sufficient.
I have not yet tested to see whether wheezy's apt can handle this scenario;
I still will, but Michal's comment seems pretty decisive:

On Sat, Sep 03, 2011 at 06:08:26PM +0200, Michal Suchanek wrote:
> I guess changing the dependencies so that apt can cope it the only
> reasonable way to deal with this for Wheezy.

> There is libapt-pkg-perl and when you have packages depending on that
> upgrading apt separately from perl is not possible.

That means telling users to just upgrade to the wheezy apt before
dist-upgrading is insufficient.  So I think that yes, we should revert the
breaks.

> (I still think we should have a Breaks entry somewhere, probably gcc,
>  but we have plenty of time to discuss and implement that afterwards.)

gcc seems like a reasonable place to do this.

Thanks,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sun, 04 Sep 2011 08:06:11 GMT) Full text and rfc822 format available.

Acknowledgement sent to Niko Tyni <ntyni@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sun, 04 Sep 2011 08:06:12 GMT) Full text and rfc822 format available.

Message #135 received at 639290@bugs.debian.org (full text, mbox):

From: Niko Tyni <ntyni@debian.org>
To: Steve Langasek <vorlon@debian.org>
Cc: Michal Suchanek <hramrach@centrum.cz>, 639290@bugs.debian.org, Jonathan Nieder <jrnieder@gmail.com>, Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sun, 4 Sep 2011 11:04:23 +0300
On Sat, Sep 03, 2011 at 08:55:56PM -0500, Steve Langasek wrote:
> On Sat, Sep 03, 2011 at 06:08:26PM +0200, Michal Suchanek wrote:

> > There is libapt-pkg-perl and when you have packages depending on that
> > upgrading apt separately from perl is not possible.
> 
> That means telling users to just upgrade to the wheezy apt before
> dist-upgrading is insufficient.  So I think that yes, we should revert the
> breaks.

OK, I've requested that in #640300.

> > (I still think we should have a Breaks entry somewhere, probably gcc,
> >  but we have plenty of time to discuss and implement that afterwards.)
> 
> gcc seems like a reasonable place to do this.

Thanks. As the default on all the release architectures is currently
gcc-4.6, I suppose that's the right place. If somebody has better ideas,
please let me know.
-- 
Niko Tyni   ntyni@debian.org




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sun, 04 Sep 2011 12:54:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to David Kalnischkies <kalnischkies+debian@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sun, 04 Sep 2011 12:54:08 GMT) Full text and rfc822 format available.

Message #140 received at 639290@bugs.debian.org (full text, mbox):

From: David Kalnischkies <kalnischkies+debian@gmail.com>
To: 639290@bugs.debian.org
Cc: Steve Langasek <vorlon@debian.org>
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sun, 4 Sep 2011 14:50:58 +0200
[Message part 1 (text/plain, inline)]
tl;dr-version: From an APT point of view: Yes, please move this breakage of
non-essential tools away from a pseudo-essential package for the sake of
partial upgrades (and in the long run maybe also non-partial, who knows).


On Sun, Sep 4, 2011 at 03:55, Steve Langasek <vorlon@debian.org> wrote:
> Once I tried with a clean i386 debootstrap, Adam's test case was sufficient.
> I have not yet tested to see whether wheezy's apt can handle this scenario;
> I still will, but Michal's comment seems pretty decisive:

APT currently in wheezy can't as well (as it's more or less the same code).
Quiet a few very complex problems with the ordering are "well" known -
so well that we even had a GSoC project this year to have someone to
work on these longstanding issues.
And indeed a few preliminary tests with Chris Baines code are promising
that even this specific problem is fixed (and the follow-up "error", even
through APT ignores this one for the sake of the universe)

The situation is a bit complicated so i will spare details and instead just
refer to the attached stripped down testcase (if you want, download apt
sources, build them, move the testcase into test/integration and run it).
The error message is not the same and the packages involved are a squeeze
to unstable upgrade (libdb5.1 is only in unstable for now), but its similar
and the original problem is to hard to setup in a minimal environment
(yes, if you want to debug ordering even a minimal chroot is too big…).

In essence: The dependency-tree
libc6 breaks perl depends libdb5.1 pre-depends multiarch-support depends libc6
can't be ordered in an immediate configuration setup as long as libdb5.1
(and therefore multiarch-support) isn't (pseudo) essential in this setup
(it will be thanks to e.g. pam-stuff in wheezy) which it is not in
a partial upgrade.

The human solution to just unpack perl sounds very easy - but only because
we know that it is not a big deal, for APT breaking a bunch of dependencies
is a big deal. Would you be equally willing to unpack lets say bash without a
clear idea then you are able to configure it again [0]? (or X? APT? libc6?)
And bash has properly far less dependencies…
So the code doesn't consider it as an option to unpack without the target
to configure it soon as long as immediate configuration is enabled.
Suddenly the config-option name makes sense…
Immediate vs "i don't know then i will be able to…"

Best regards

David Kalnischkies

[0] This is what is fixed in the GSoC code by Chris, APT can look ahead
what it has to do - and it knows that it can do more than on action at
once, so it can offload cycles to dpkg which is better in breaking them
as it knows which packages doesn't have maintainer-scripts…

P.S.: Yes, this tl;dr-text is really the "spare details" version.
I am accepting pre-orders for the full-size non-fiction novel edition…
(through delivery has to wait until my exams are over, which is also
 the reason why i am so late for the party…)

P.P.S.: If someone can tell me (maybe off-list) why we just can't upload
a fixed libc6 (and co.) in a point-release for squeeze instead of this
trickery with multiarch-support, feel free to do so, i would appreciate it.
[test-perl (application/octet-stream, attachment)]

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sun, 04 Sep 2011 15:18:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sun, 04 Sep 2011 15:18:05 GMT) Full text and rfc822 format available.

Message #145 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: David Kalnischkies <kalnischkies+debian@gmail.com>
Cc: 639290@bugs.debian.org
Subject: Re: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sun, 4 Sep 2011 10:14:31 -0500
David Kalnischkies wrote:

> Would you be equally willing to unpack lets say bash without a
> clear idea then you are able to configure it again [0]? (or X? APT? libc6?)

Yes, I would.  Core packages continue to function when they have been
configured before and are unpacked without deconfiguring.  Otherwise,
the whole system would break unrecoverably during every upgrade in the
unpack stage.

Which is not to say I dislike the idea of prioritizing the
configuration of some packages!  Just that changing de facto policy
like this without documenting it for packagers is not very pleasant.
One way to fix that would be to write a patch for policy.




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sun, 04 Sep 2011 19:09:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to David Kalnischkies <kalnischkies+debian@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sun, 04 Sep 2011 19:09:03 GMT) Full text and rfc822 format available.

Message #150 received at 639290@bugs.debian.org (full text, mbox):

From: David Kalnischkies <kalnischkies+debian@gmail.com>
To: 639290@bugs.debian.org
Cc: Jonathan Nieder <jrnieder@gmail.com>
Subject: Re: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sun, 4 Sep 2011 21:05:42 +0200
On Sun, Sep 4, 2011 at 17:14, Jonathan Nieder <jrnieder@gmail.com> wrote:
> David Kalnischkies wrote:
>
>> Would you be equally willing to unpack lets say bash without a
>> clear idea then you are able to configure it again [0]? (or X? APT? libc6?)
>
> Yes, I would.  Core packages continue to function when they have been
> configured before and are unpacked without deconfiguring.  Otherwise,
> the whole system would break unrecoverably during every upgrade in the
> unpack stage.

E: User worked with an embedded system too recently…
Sorry, in my eyes bash has lost it's essential status already.
Using it as my example wasn't that well chosen…

My point was that we have a lot of "core" packages which are not
really core but are so important that many people will not be able
to recover from a broken state with out those (and/or a lot of help).

APT for example (that it keeps working is because it treats itself special),
a texteditor or even something as simple as an internet connection…


> Which is not to say I dislike the idea of prioritizing the
> configuration of some packages!  Just that changing de facto policy
> like this without documenting it for packagers is not very pleasant.
> One way to fix that would be to write a patch for policy.

JFTR: There is no change, this behavior was included already in the
very first commit in the available vcs history (around 1998).
That this behavior is a problem is known since then (I assume it at
 least as it was an old bug at the time I joined three years ago…)
That the alternatives are worse in case of failure is known, too.

That it needed 13 years and a bit of money to motivate someone to really
work on it for the better part of 3 months might tell us something about
how many really care about programs they consider important through.

Anyway arguing with the policy is a bit strange as APT isn't violating
the policy by applying a stricter view by default on a problem.
The policy defines the minimum - that is relatively easy to implement.
The problem is through that every small packaging bug can bring you
into a completely broken system state then…


Best regards

David Kalnischkies




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sun, 04 Sep 2011 19:36:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sun, 04 Sep 2011 19:36:05 GMT) Full text and rfc822 format available.

Message #155 received at 639290@bugs.debian.org (full text, mbox):

From: Jonathan Nieder <jrnieder@gmail.com>
To: David Kalnischkies <kalnischkies+debian@gmail.com>
Cc: 639290@bugs.debian.org
Subject: Re: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Sun, 4 Sep 2011 14:32:22 -0500
David Kalnischkies wrote:

> APT for example (that it keeps working is because it treats itself special),
> a texteditor or even something as simple as an internet connection…

Does upgrading these without immediately configuring break any of them?
If so, that's a (pretty severe) bug.  (However, I don't mean to say
the idea of immediate configuration is not good for other reasons.  On
the contrary, I think it's good, especially as modified by the gsoc
project you mention if I understand correctly.)

[...]
> Anyway arguing with the policy is a bit strange as APT isn't violating
> the policy by applying a stricter view by default on a problem.
> The policy defines the minimum - that is relatively easy to implement.
> The problem is through that every small packaging bug can bring you
> into a completely broken system state then…

I think you misunderstood.  Policy documents the meaning of dependency
fields, package maintainer scripts, and so on, not as a specification
of how dpkg and APT work (though it can sometimes vaguely approximate
one), but as documentation for the technical requirements on Debian
packages that use those facilities.  Let's say a new package manager
came along and started ensuring that all dependencies are satisfied at
unpack time --- that is, all Depends are promoted to Pre-Depends.
Absurd, right?  But it would not be hurting what packages can rely on
by declaring a Depends relation, so it seems kosher wrt policy, right?

And in fact such a package manager would probably be fine, _except_
that relationships that were previously satisfiable (e.g., dependency
loops) would no longer be satisfiable.  Maybe we don't want to support
dependency loops anyway; that could be proposed as a new policy
change.  Until then, breaking previously working packages without
documenting the new requirements would be harmful and I don't think
it's unreasonable to call such a change problematic.

Of course the immediate-configure bit is both older and less drastic
than that.  Nevertheless it is a bug either in APT or in policy that
this creates a technical requirement on Debian packages that packagers
would have no easy way to learn about.

Luckily you seem to have said there is a fix in the pipeline, so... :)

Hope that helps,
Jonathan




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Mon, 12 Sep 2011 18:45:12 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Mon, 12 Sep 2011 18:45:12 GMT) Full text and rfc822 format available.

Message #160 received at 639290@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: David Kalnischkies <kalnischkies+debian@gmail.com>
Cc: 639290@bugs.debian.org
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Mon, 12 Sep 2011 13:03:50 +0100
[Message part 1 (text/plain, inline)]
Hi David,

Thanks for the explanations!

On Sun, Sep 04, 2011 at 02:50:58PM +0200, David Kalnischkies wrote:
> In essence: The dependency-tree
> libc6 breaks perl depends libdb5.1 pre-depends multiarch-support depends libc6
> can't be ordered in an immediate configuration setup as long as libdb5.1
> (and therefore multiarch-support) isn't (pseudo) essential in this setup
> (it will be thanks to e.g. pam-stuff in wheezy) which it is not in
> a partial upgrade.

> The human solution to just unpack perl sounds very easy - but only because
> we know that it is not a big deal, for APT breaking a bunch of dependencies
> is a big deal. Would you be equally willing to unpack lets say bash without a
> clear idea then you are able to configure it again [0]? (or X? APT? libc6?)
> And bash has properly far less dependencies…

bash - no, because it's essential.  perl is not, so breaking it during the
upgrade should be considered acceptable (or at least, should be considered).
X could be broken during upgrade.  apt should be virtually essential.  libc6
is pseudo-essential.

Is there some reason for perl specifically to be treated as virtually
essential here, or is immediate configuration being applied to all packages
with a certain number of reverse-dependencies installed?

> P.P.S.: If someone can tell me (maybe off-list) why we just can't upload
> a fixed libc6 (and co.) in a point-release for squeeze instead of this
> trickery with multiarch-support, feel free to do so, i would appreciate it.

We can't rely on users to apply, or even have access to, packages published
in -updates before they upgrade between releases.  Occasionally we have
recommended inter-release upgrade paths that involve pulling packages from
-updates or from a release-upgrade suite, but the failure mode for not
following the directions is just that you will have to sort out the upgrade
path manually.  Dropping the multiarch-support pre-depends, with the result
that users who skip pulling from -updates have a completely broken and
unbootable system due to an undeclared dependency relationship, isn't a very
palatable solution.

Anyway, I did ask for feedback on debian-devel before introducing this
Pre-Depends; if you would like to propose a better way to address the
problem, feel free to follow up there :)

Cheers,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Wed, 14 Sep 2011 18:57:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to David Kalnischkies <kalnischkies+debian@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Wed, 14 Sep 2011 18:57:03 GMT) Full text and rfc822 format available.

Message #165 received at 639290@bugs.debian.org (full text, mbox):

From: David Kalnischkies <kalnischkies+debian@gmail.com>
To: 639290@bugs.debian.org
Cc: Steve Langasek <vorlon@debian.org>
Subject: Re: Bug#639290: upgrade from squeeze to wheezy fails on i386 (pre-depends loop)
Date: Wed, 14 Sep 2011 20:55:49 +0200
On Mon, Sep 12, 2011 at 14:03, Steve Langasek <vorlon@debian.org> wrote:
>> The human solution to just unpack perl sounds very easy - but only because
>> we know that it is not a big deal, for APT breaking a bunch of dependencies
>> is a big deal. Would you be equally willing to unpack lets say bash without a
>> clear idea then you are able to configure it again [0]? (or X? APT? libc6?)
>> And bash has properly far less dependencies…
>
> bash - no, because it's essential.  perl is not, so breaking it during the
> upgrade should be considered acceptable (or at least, should be considered).
> X could be broken during upgrade.  apt should be virtually essential.  libc6
> is pseudo-essential.

apt isn't "virtually" essential. Nothing in required depends on it as it is
just "important". It's just essential for apt because it thinks for itself
that it is goddamn important and marks itself essential, but if you install
stuff with dpkg directly you are "free" to break APT…

That bash was the worst example i could take, i already clarified in the log.
Maybe it gets better with zsh as login shell. Maybe i should have used the
"try to download a file from the web only with required packages" as the
"without wget/curl" is too easy (if all goes wrong: apt has a http transport).
Or for all vi/emacs lovers their preferred editor…
My whole point was that while there are tools which absolutely need to be
available its not a good idea to only handle these with care and just hope the
best for the others just because we could.
That we are doing something wrong, regardless of what we do can be seen
in #22550 and silbings - title says it all: "Packages are left in an
unconfigured state for a long time when installing many packages".
So, please pick your poison now.


> Is there some reason for perl specifically to be treated as virtually
> essential here, or is immediate configuration being applied to all packages
> with a certain number of reverse-dependencies installed?

perl isn't pseudo essential. In fact APT would be happy in this case if it
would be as all it's dependencies would be pseudo-essential then, too, and
the problem is not really perl (consider the message a red hering) but that
a (pseudo) essential package as important as libc6 breaks this "leaf" package
with a bunch of even more "leafy" packages (in partial upgrades, the situation
changes in full upgrades: multiarch-support and libdb5.1 are essential then)
which in the end depend on our essential libc6 again.
So a "workaround" for this situation would be to follow Breaks to mark these
packages as essential, too, but given that a better solution is in the
pipeline i don't want to think about this - especially as enlarging the
pseudo essential set is likely causing problems in another scenarios.

In a very simplified essence: APT doesn't want to allow "leaf" packages to
be upgraded between unpack and configure of an essential package, but it has
"no problem" with it as soon as the other packages are essential, too.


>> P.P.S.: If someone can tell me (maybe off-list) why we just can't upload
>> a fixed libc6 (and co.) in a point-release for squeeze instead of this
>> trickery with multiarch-support, feel free to do so, i would appreciate it.
>
> We can't rely on users to apply, or even have access to, packages published
> in -updates before they upgrade between releases.  Occasionally we have
> recommended inter-release upgrade paths that involve pulling packages from
> -updates or from a release-upgrade suite, but the failure mode for not
> following the directions is just that you will have to sort out the upgrade
> path manually.  Dropping the multiarch-support pre-depends, with the result
> that users who skip pulling from -updates have a completely broken and
> unbootable system due to an undeclared dependency relationship, isn't a very
> palatable solution.
>
> Anyway, I did ask for feedback on debian-devel before introducing this
> Pre-Depends; if you would like to propose a better way to address the
> problem, feel free to follow up there :)

I saw it there and i saw the reference to the debian-release discussion in
which a point-release upgrade was proposed as one of the "counter"-options,
but nobody said something against it, so i guessed it has some very
good and obvious reason so i just didn't cared enough to ask back then.
It just doesn't occurred to me that there are people out their who doesn't
upgrade from time to time… (professionally blinkered it seems), thanks!


Best regards

David Kalnischkies

P.S.: Upcoming experimental upload will have Chris branch merged, so this bug
will be closed with it. Just as a mild warning - this is obviously no fix for
the partial upgraders but i guess what to do about those is discussed and
handled elsewhere already.




Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Wed, 14 Sep 2011 19:51:20 GMT) Full text and rfc822 format available.

Notification sent to Adam Heath <doogie@brainfood.com>:
Bug acknowledged by developer. (Wed, 14 Sep 2011 19:51:20 GMT) Full text and rfc822 format available.

Message #170 received at 639290-close@bugs.debian.org (full text, mbox):

From: Michael Vogt <mvo@debian.org>
To: 639290-close@bugs.debian.org
Subject: Bug#639290: fixed in apt 0.8.16~exp6
Date: Wed, 14 Sep 2011 19:47:18 +0000
Source: apt
Source-Version: 0.8.16~exp6

We believe that the bug you reported is fixed in the latest version of
apt, which is due to be installed in the Debian FTP archive:

apt-doc_0.8.16~exp6_all.deb
  to main/a/apt/apt-doc_0.8.16~exp6_all.deb
apt-transport-https_0.8.16~exp6_amd64.deb
  to main/a/apt/apt-transport-https_0.8.16~exp6_amd64.deb
apt-utils_0.8.16~exp6_amd64.deb
  to main/a/apt/apt-utils_0.8.16~exp6_amd64.deb
apt_0.8.16~exp6.dsc
  to main/a/apt/apt_0.8.16~exp6.dsc
apt_0.8.16~exp6.tar.gz
  to main/a/apt/apt_0.8.16~exp6.tar.gz
apt_0.8.16~exp6_amd64.deb
  to main/a/apt/apt_0.8.16~exp6_amd64.deb
libapt-inst1.4_0.8.16~exp6_amd64.deb
  to main/a/apt/libapt-inst1.4_0.8.16~exp6_amd64.deb
libapt-pkg-dev_0.8.16~exp6_amd64.deb
  to main/a/apt/libapt-pkg-dev_0.8.16~exp6_amd64.deb
libapt-pkg-doc_0.8.16~exp6_all.deb
  to main/a/apt/libapt-pkg-doc_0.8.16~exp6_all.deb
libapt-pkg4.12_0.8.16~exp6_amd64.deb
  to main/a/apt/libapt-pkg4.12_0.8.16~exp6_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 639290@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael Vogt <mvo@debian.org> (supplier of updated apt package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Wed, 14 Sep 2011 21:06:51 +0200
Source: apt
Binary: apt libapt-pkg4.12 libapt-inst1.4 apt-doc libapt-pkg-dev libapt-pkg-doc apt-utils apt-transport-https
Architecture: source all amd64
Version: 0.8.16~exp6
Distribution: experimental
Urgency: low
Maintainer: APT Development Team <deity@lists.debian.org>
Changed-By: Michael Vogt <mvo@debian.org>
Description: 
 apt        - APT's commandline package manager
 apt-doc    - Documentation for APT
 apt-transport-https - https download transport for APT
 apt-utils  - APT utility programs
 libapt-inst1.4 - APT's deb package format runtime library
 libapt-pkg-dev - Development files for APT's libapt-pkg and libapt-inst
 libapt-pkg-doc - Documentation for APT development
 libapt-pkg4.12 - APT's package managment runtime library
Closes: 353290 540227 559733 621836 639290
Changes: 
 apt (0.8.16~exp6) experimental; urgency=low
 .
   [ Christopher Baines ]
   * enable APT in unpack/configure ordering to handle loops as well
     as tight dependencies between immediate packages better
     enabling also the possibility to mark all packages as immediate
     (at least Closes: #353290, #540227, #559733, #621836, #639290)
 .
   [ David Kalnischkies ]
   * [abi-break] Support large files in the complete toolset. Indexes of this
     size are pretty unlikely for now, but we need it for deb
     packages which could become bigger than 4GB now (LP: #815895)
   * merged the debian-sid branch
 .
   [ Michael Vogt ]
   * bump ABI version
Checksums-Sha1: 
 7738ea23db61bfd467b815f3d5bc13f8d1272f62 1402 apt_0.8.16~exp6.dsc
 5b7ec8c184469bbf872f54c0ff71f564157d1f2b 3359611 apt_0.8.16~exp6.tar.gz
 6aab13c7a9ffa2f8dcfa8d87019ddf6a18b02224 247340 apt-doc_0.8.16~exp6_all.deb
 e38116b1fa977f623d3711d41125007809f836b5 784008 libapt-pkg-doc_0.8.16~exp6_all.deb
 3f6a960542aed0944ce5fddf4231d59dca854907 997800 libapt-pkg4.12_0.8.16~exp6_amd64.deb
 af69efb798b0d2ef01e1f6789e5ea519e434d2b6 182344 libapt-inst1.4_0.8.16~exp6_amd64.deb
 ed0abff773322b890e55d15dfa9656c645238c80 1124926 apt_0.8.16~exp6_amd64.deb
 681f3d57cf3b026e3c9d446f65444d4d494005b3 170026 libapt-pkg-dev_0.8.16~exp6_amd64.deb
 99bca748982ea41640770683750cdf5462f9f759 266272 apt-utils_0.8.16~exp6_amd64.deb
 b8cf08a5e31cb10d8da5bc2461aa807ff2764f89 94102 apt-transport-https_0.8.16~exp6_amd64.deb
Checksums-Sha256: 
 f163caff86f3d549ca21ba79e44f62e0b69b42502daf3b8a9f94db1e7bfe0be2 1402 apt_0.8.16~exp6.dsc
 7f9855df0077b6221e3706ef7470e64d8219c2eb415d11371d5d6194e0bc18db 3359611 apt_0.8.16~exp6.tar.gz
 f1de9cb349909e2a8d5ef7fb198722a82420b314ef4abfae94f44ec7239c107f 247340 apt-doc_0.8.16~exp6_all.deb
 44e338f65e429422bfc04571cb9387dd114bf20379232594af304b2d391385d3 784008 libapt-pkg-doc_0.8.16~exp6_all.deb
 636a11e37c4f21e107c60fdeb8e75b0528291b2d5966ba1cbd1b411e9344339a 997800 libapt-pkg4.12_0.8.16~exp6_amd64.deb
 97b509dc4737d5510a2902d3d24569dc6668bcb9699ebd9f600bd2c493ebb2ae 182344 libapt-inst1.4_0.8.16~exp6_amd64.deb
 2bbc7c4e0947113e5dc0a5615ef517c98411a455874e22c7c1006a609381e88d 1124926 apt_0.8.16~exp6_amd64.deb
 1d8c62bf1b284fbfb5ccc0215bf9ff01f622acd9292adc103efcdd126dd9a2d3 170026 libapt-pkg-dev_0.8.16~exp6_amd64.deb
 903a2a8510e8d22573d20018c1f0f299a789a6ce2fe6262fc1df6677ec73f835 266272 apt-utils_0.8.16~exp6_amd64.deb
 ccd38ef790bf924cde7384a7b7186f97bb0e4fc5361d9a5bad112fab06fe0412 94102 apt-transport-https_0.8.16~exp6_amd64.deb
Files: 
 564683e760acffd02e857fbd6aabbb0d 1402 admin important apt_0.8.16~exp6.dsc
 e3b4ac86fcfad9b7c21eda8cfbae52d1 3359611 admin important apt_0.8.16~exp6.tar.gz
 b41974a258661c00cd7b7ec7d7cfa830 247340 doc optional apt-doc_0.8.16~exp6_all.deb
 c30e6a9f51aaa74c2eadc2537dd56d9f 784008 doc optional libapt-pkg-doc_0.8.16~exp6_all.deb
 ee31677b81239c9284fb35b1ec01e3f2 997800 admin important libapt-pkg4.12_0.8.16~exp6_amd64.deb
 dcb1fe5f0a27bbf04b926ae7757c5487 182344 admin important libapt-inst1.4_0.8.16~exp6_amd64.deb
 7d2701b31f5ce671476cdcc127eb41d0 1124926 admin important apt_0.8.16~exp6_amd64.deb
 a28e1f41c07d4a61b08d7cb6116f970a 170026 libdevel optional libapt-pkg-dev_0.8.16~exp6_amd64.deb
 f1bf829a7591c7a2ae9414faa3dd31ee 266272 admin important apt-utils_0.8.16~exp6_amd64.deb
 c2089422183c6a34fa8d183ddd754d0d 94102 admin optional apt-transport-https_0.8.16~exp6_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iEYEARECAAYFAk5w/HcACgkQliSD4VZixzTsogCgo6D5gJWUHCJmbA+WqpN1XQ9d
VQ0An3Eei2uJbU3qp7SAZPv6Di082Pcx
=RqgH
-----END PGP SIGNATURE-----





Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Wed, 14 Sep 2011 19:51:20 GMT) Full text and rfc822 format available.

Notification sent to Michal Suchanek <michal.suchanek@ruk.cuni.cz>:
Bug acknowledged by developer. (Wed, 14 Sep 2011 19:51:21 GMT) Full text and rfc822 format available.

Added indication that 639290 affects perl Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Thu, 15 Sep 2011 21:46:30 GMT) Full text and rfc822 format available.

Forcibly Merged 639290 639689 640111. Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Thu, 15 Sep 2011 22:27:15 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Thu, 22 Sep 2011 02:51:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Kyle Moffett <kyle@moffetthome.net>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Thu, 22 Sep 2011 02:51:06 GMT) Full text and rfc822 format available.

Message #184 received at 639290@bugs.debian.org (full text, mbox):

From: Kyle Moffett <kyle@moffetthome.net>
To: 639290@bugs.debian.org
Subject: APT resolution issue occurs even without libc6 in the loop
Date: Wed, 21 Sep 2011 22:47:20 -0400
I've been able to reproduce this same issue on my new laptop with only
perl and modules in the dependency chain.

I just installed it with squeeze, then decided I wanted to upgrade
since my graphics card isn't well supported under 2.6.32.

Initially the failing package set was much larger, but I was able to
install a bunch of stuff by hand and get it down to just this list.

I almost wonder if the issue could be related to the virtual
"perlapi-5.10.1" versus "perlapi-5.12.4" packages?

The odd-looking "libsnmp15" is because it apparently includes perl
modules or embeds perl or something.

Cheers,
Kyle Moffett

Upgrading:
  perl
  perl-base
  perl-modules
  libcairo-perl
  libdigest-sha1-perl
  libfont-freetype-perl
  libglib-perl
  libgnome2-canvas-perl
  libgnome2-perl
  libgnome2-vfs-perl
  libgtk2-perl
  libhtml-parser-perl
  liblocale-gettext-perl
  libnet-dbus-perl
  libpango-perl
  libsnmp15
  libsub-name-perl
  libtext-charwidth-perl
  libtext-iconv-perl
  libuuid-perl
  libxml-parser-perl

Removing:
  libperl5.10

Installing:
  libclass-isa-perl
  libperl5.12
  libpod-plainer-perl
  libswitch-perl




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Thu, 22 Sep 2011 03:21:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Kyle Moffett <kyle@moffetthome.net>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Thu, 22 Sep 2011 03:21:03 GMT) Full text and rfc822 format available.

Message #189 received at 639290@bugs.debian.org (full text, mbox):

From: Kyle Moffett <kyle@moffetthome.net>
To: 639290@bugs.debian.org
Subject: Re: APT resolution issue occurs even without libc6 in the loop
Date: Wed, 21 Sep 2011 23:18:44 -0400
On Wed, Sep 21, 2011 at 22:47, Kyle Moffett <kyle@moffetthome.net> wrote:
> I've been able to reproduce this same issue on my new laptop with only
> perl and modules in the dependency chain.
>
> I just installed it with squeeze, then decided I wanted to upgrade
> since my graphics card isn't well supported under 2.6.32.
>
> Initially the failing package set was much larger, but I was able to
> install a bunch of stuff by hand and get it down to just this list.

Ok, by removing some leaf packages that depended on other things in
the list, I was able to work it down to this smaller list that still
fails due to inability to immediately configure perl.  Unfortunately
gnome-desktop-environment depends on libgnome2-perl, which depends on
a lot of other modules, so I doubt I will be able to shrink it
appreciably from here.  For a point of reference, this system was
literally installed from scratch very recently with the squeeze
installer, using the bog-standard tasksel for Laptop + Standard System
+ Desktop Environment.

Cheers,
Kyle Moffett

Upgrade:
  libcairo-perl
  libglib-perl
  libgnome2-canvas-perl
  libgnome2-perl
  libgtk2-perl
  libhtml-parser-perl
  liblocale-gettext-perl
  libnet-dbus-perl
  libpango-perl
  libtext-charwidth-perl
  libtext-iconv-perl
  libuuid-perl
  libxml-parser-perl
  perl
  perl-base
  perl-modules




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 23 Oct 2011 07:34:33 GMT) Full text and rfc822 format available.

Bug unarchived. Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Sun, 30 Oct 2011 16:57:03 GMT) Full text and rfc822 format available.

Bug No longer marked as fixed in versions apt/0.8.16~exp6 and reopened. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 30 Oct 2011 16:57:05 GMT) Full text and rfc822 format available.

Forcibly Merged 639290 639689 640111 647056. Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Sun, 30 Oct 2011 16:57:07 GMT) Full text and rfc822 format available.

Added indication that 639290 affects perl Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Sun, 30 Oct 2011 16:57:10 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Sat, 19 Nov 2011 18:30:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to James Cloos <cloos@jhcloos.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Sat, 19 Nov 2011 18:30:03 GMT) Full text and rfc822 format available.

Message #204 received at 639290@bugs.debian.org (full text, mbox):

From: James Cloos <cloos@jhcloos.com>
To: 639290@bugs.debian.org
Subject: sid dist-upgrade failing
Date: Sat, 19 Nov 2011 13:13:48 -0500
My i386 sid box has started complaining:

E: Could not perform immediate configuration on 'perl-modules'. Please see man 5 apt.conf under APT::Immediate-Configure for details. (2)

I've tried using -o APT::Immediate-Configure=0 and I've also tried
apt-get install on each of the package dist-upgrade wants to upgrade.

Botht echniques failed.

This seems to be related to the perl 5.12 -> 5.14 update.

My amd64 box dist-upgraded w/o such a problem.

Is there any way around this?

-JimC
-- 
James Cloos <cloos@jhcloos.com>         OpenPGP: 1024D/ED7DAEA6




Bug Marked as fixed in versions apt/0.8.16~exp6. Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Mon, 21 Nov 2011 17:57:06 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Mon, 21 Nov 2011 18:03:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dominic Hargreaves <dom@earth.li>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Mon, 21 Nov 2011 18:03:06 GMT) Full text and rfc822 format available.

Message #211 received at 639290@bugs.debian.org (full text, mbox):

From: Dominic Hargreaves <dom@earth.li>
To: 639290@bugs.debian.org
Cc: debian-release@lists.debian.org
Subject: Fixed perl upgrade in sid for me
Date: Mon, 21 Nov 2011 18:00:24 +0000
Hi,

Just a note to say that installing 0.8.16~exp6 (had to remove
libapt-pkg-perl first) allowed me to dist-upgrade one of my sid
development chroots blocked by the APT::Immediate-Configure message.

oot@carme:~# apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be REMOVED:
  libextutils-cbuilder-perl libextutils-parsexs-perl libperl5.12
The following NEW packages will be installed:
  libgnome-keyring-common libgtk-3-0 libgtk-3-bin libgtk-3-common libperl5.14
  libx11-doc
The following packages will be upgraded:
  gconf2 gconf2-common gir1.2-gconf-2.0 libalgorithm-diff-xs-perl
  libapache2-mod-perl2 libapt-pkg-perl libbsd-resource-perl libcgi-fast-perl
  libclass-c3-xs-perl libclone-perl libcrypt-ssleay-perl libdatetime-perl
  libdbd-sqlite3-perl libdbi-perl libdevel-size-perl libdigest-sha1-perl
  libfcgi-perl libfile-libmagic-perl libfont-freetype-perl libgconf2-4
  libgconf2-dev libglib-perl libgnome-keyring-dev libgnome-keyring0
  libhtml-parser-perl libio-pty-perl libipc-sharelite-perl libjson-xs-perl
  liblist-moreutils-perl liblocale-gettext-perl
  liblocale-maketext-lexicon-perl libmouse-perl libnet-dns-perl
  libnet-libidn-perl libnet-ssleay-perl libossp-uuid-perl
  libpackage-stash-xs-perl libparams-classify-perl libparams-util-perl
  libparams-validate-perl libperl-dev libperlio-eol-perl libreadonly-xs-perl
  libsocket6-perl libsub-name-perl libsvn-perl libterm-readkey-perl
  libterm-size-perl libtext-charwidth-perl libtext-iconv-perl libversion-perl
  libwant-perl libx11-6 libx11-dev libxml-parser-perl libyaml-syck-perl perl
  perl-base perl-modules speedy-cgi-perl
60 upgraded, 6 newly installed, 3 to remove and 0 not upgraded.
Need to get 0 B/35.7 MB of archives.
After this operation, 13.5 MB of additional disk space will be used.
Do you want to continue [Y/n]?
E: Could not perform immediate configuration on 'perl-modules'. Please see man 5 apt.conf under APT::Immediate-Configure for details. (2)

remove libapt-pkg-perl

install apt from experimental

root@carme:~# apt-get dist-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages will be REMOVED:
  libextutils-cbuilder-perl libextutils-parsexs-perl libperl5.12
The following NEW packages will be installed:
  libgnome-keyring-common libgtk-3-0 libgtk-3-bin libgtk-3-common libperl5.14
  libx11-doc
The following packages will be upgraded:
  gconf2 gconf2-common gir1.2-gconf-2.0 libalgorithm-diff-xs-perl
  libapache2-mod-perl2 libbsd-resource-perl libcgi-fast-perl
  libclass-c3-xs-perl libclone-perl libcrypt-ssleay-perl libdatetime-perl
  libdbd-sqlite3-perl libdbi-perl libdevel-size-perl libdigest-sha1-perl
  libfcgi-perl libfile-libmagic-perl libfont-freetype-perl libgconf2-4
  libgconf2-dev libglib-perl libgnome-keyring-dev libgnome-keyring0
  libhtml-parser-perl libio-pty-perl libipc-sharelite-perl libjson-xs-perl
  liblist-moreutils-perl liblocale-gettext-perl
  liblocale-maketext-lexicon-perl libmouse-perl libnet-dns-perl
  libnet-libidn-perl libnet-ssleay-perl libossp-uuid-perl
  libpackage-stash-xs-perl libparams-classify-perl libparams-util-perl
  libparams-validate-perl libperl-dev libperlio-eol-perl libreadonly-xs-perl
  libsocket6-perl libsub-name-perl libsvn-perl libterm-readkey-perl
  libterm-size-perl libtext-charwidth-perl libtext-iconv-perl libversion-perl
  libwant-perl libx11-6 libx11-dev libxml-parser-perl libyaml-syck-perl perl
  perl-base perl-modules speedy-cgi-perl
59 upgraded, 6 newly installed, 3 to remove and 0 not upgraded.
Need to get 2944 kB/35.6 MB of archives.
After this operation, 13.5 MB of additional disk space will be used.
Do you want to continue [Y/n]? 
Get:1 http://mirror.ox.ac.uk/debian/ sid/main libx11-doc i386 2:1.4.4-4 [2944 kB]
Fetched 2944 kB in 0s (14.9 MB/s)
Extracting templates from packages: 100%
[...]

Might it be worth getting this involved in the perl transition?
I'm not aware of another workaround in being able to upgrade to perl
5.14 if this situation arises.

Cheers,
Dominic.

-- 
Dominic Hargreaves | http://www.larted.org.uk/~dom/
PGP key 5178E2A5 from the.earth.li (keyserver,web,email)




Bug Marked as found in versions apt/0.8.15.9. Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Mon, 21 Nov 2011 18:15:10 GMT) Full text and rfc822 format available.

Forcibly Merged 639290 639689 640111 647056 649685. Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Wed, 23 Nov 2011 23:27:23 GMT) Full text and rfc822 format available.

Severity set to 'important' from 'normal' Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Wed, 23 Nov 2011 23:27:27 GMT) Full text and rfc822 format available.

Removed indication that 639290 affects perl Added indication that 639290 affects perl-modules Request was from Dominic Hargreaves <dom@earth.li> to control@bugs.debian.org. (Wed, 23 Nov 2011 23:27:30 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Tue, 06 Dec 2011 05:27:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Clemens Schwaighofer <gullevek@gullevek.org>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>.

Your message did not contain a Subject field. They are recommended and useful because the title of a $gBug is determined using this field. Please remember to include a Subject field in your messages in future.

(Tue, 06 Dec 2011 05:27:03 GMT) Full text and rfc822 format available.


Message #224 received at 639290@bugs.debian.org (full text, mbox):

From: Clemens Schwaighofer <gullevek@gullevek.org>
To: Debian Bug Tracking System <639290@bugs.debian.org>
Date: Tue, 06 Dec 2011 13:25:32 +0900
I had the following packages in the to remove list:
libdigest-sha1-perl libextutils-cbuilder-perl libextutils-parsexs-perl libperl5.12

after I removed those packages (and the dependencies) by hand via dpkg -r the apt-get dist-upgrade worked without a problem.

Subject: apt: perl-modules upgrade problems
Followup-For: Bug #639290
Package: apt

Version: 0.8.15.9

Dear Maintainer,
*** Please consider answering these questions, where appropriate ***

   * What led up to the situation?
   * What exactly did you do (or not do) that was effective (or
     ineffective)?
   * What was the outcome of this action?
   * What outcome did you expect instead?

*** End of the template - remove these lines ***


-- Package-specific info:

-- apt-config dump --

APT "";
APT::Architecture "i386";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "1";
APT::Install-Suggests "0";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image.*";
APT::NeverAutoRemove:: "^kfreebsd-image.*";
APT::NeverAutoRemove:: "^linux-restricted-modules.*";
APT::NeverAutoRemove:: "^linux-ubuntu-modules-.*";
APT::NeverAutoRemove:: "^gnumach$";
APT::NeverAutoRemove:: "^gnumach-image.*";
APT::Never-MarkAuto-Sections "";
APT::Never-MarkAuto-Sections:: "metapackages";
APT::Never-MarkAuto-Sections:: "restricted/metapackages";
APT::Never-MarkAuto-Sections:: "universe/metapackages";
APT::Never-MarkAuto-Sections:: "multiverse/metapackages";
APT::Never-MarkAuto-Sections:: "oldlibs";
APT::Never-MarkAuto-Sections:: "restricted/oldlibs";
APT::Never-MarkAuto-Sections:: "universe/oldlibs";
APT::Never-MarkAuto-Sections:: "multiverse/oldlibs";
APT::Architectures "";
APT::Architectures:: "i386";
Dir "/";
Dir::State "var/lib/apt/";
Dir::State::lists "lists/";
Dir::State::cdroms "cdroms.list";
Dir::State::mirrors "mirrors/";
Dir::State::extended_states "extended_states";
Dir::State::status "/var/lib/dpkg/status";
Dir::Cache "var/cache/apt/";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";
Dir::Etc "etc/apt/";
Dir::Etc::sourcelist "sources.list";
Dir::Etc::sourceparts "sources.list.d";
Dir::Etc::vendorlist "vendors.list";
Dir::Etc::vendorparts "vendors.list.d";
Dir::Etc::main "apt.conf";
Dir::Etc::netrc "auth.conf";
Dir::Etc::parts "apt.conf.d";
Dir::Etc::preferences "preferences";
Dir::Etc::preferencesparts "preferences.d";
Dir::Etc::trusted "trusted.gpg";
Dir::Etc::trustedparts "trusted.gpg.d";
Dir::Bin "";
Dir::Bin::methods "/usr/lib/apt/methods";
Dir::Bin::dpkg "/usr/bin/dpkg";
Dir::Media "";
Dir::Media::MountPath "/media/apt";
Dir::Log "var/log/apt";
Dir::Log::Terminal "term.log";
Dir::Log::History "history.log";
Dir::Ignore-Files-Silently "";
Dir::Ignore-Files-Silently:: "~$";
Dir::Ignore-Files-Silently:: "\.disabled$";
Dir::Ignore-Files-Silently:: "\.bak$";
Dir::Ignore-Files-Silently:: "\.dpkg-[a-z]+$";
Dir::Ignore-Files-Silently:: "\.save$";
Dir::Ignore-Files-Silently:: "\.orig$";
Acquire "";
Acquire::cdrom "";
Acquire::cdrom::mount "/media/cdrom/";
Acquire::Languages "";
Acquire::Languages:: "en";
Acquire::Languages:: "none";
DPkg "";
DPkg::Pre-Install-Pkgs "";
DPkg::Pre-Install-Pkgs:: "/usr/sbin/dpkg-preconfigure --apt || true";
 "APT::Immediate-Configure=0";
CommandLine "";
CommandLine::AsString "apt-config dump";

-- (no /etc/apt/preferences present) --


-- /etc/apt/sources.list --

#deb http://apt-proxy.tokyo.tequila.jp:9999/debian/ testing main contrib non-free
#deb-src http://apt-proxy.tokyo.tequila.jp:9999/debian/ testing main contrib non-free
#deb http://apt-proxy.tokyo.tequila.jp:9999/security/ testing/updates main contrib non-free

deb http://apt-proxy.tokyo.tequila.jp:9998/ftp.jp.debian.org/debian/ testing main contrib non-free
deb-src http://apt-proxy.tokyo.tequila.jp:9998/ftp.jp.debian.org/debian/ testing main contrib non-free
deb http://apt-proxy.tokyo.tequila.jp:9998/security.debian.org/ testing/updates main contrib non-free
deb-src http://apt-proxy.tokyo.tequila.jp:9998/security.debian.org/ testing/updates main contrib non-free

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 3.0.4 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages apt depends on:
ii  debian-archive-keyring  2010.08.28      
ii  gnupg                   1.4.11-3        
ii  libc6                   2.13-21         
ii  libgcc1                 1:4.6.2-5       
ii  libstdc++6              4.6.2-5         
ii  zlib1g                  1:1.2.3.4.dfsg-3

apt recommends no packages.

Versions of packages apt suggests:
ii  apt-doc     <none>   
ii  aptitude    0.6.4-1.2
ii  bzip2       1.0.5-7  
ii  dpkg-dev    <none>   
ii  lzma        4.43-14  
ii  python-apt  0.8.0    

-- no debconf information




Information forwarded to debian-bugs-dist@lists.debian.org, APT Development Team <deity@lists.debian.org>:
Bug#639290; Package apt. (Fri, 16 Dec 2011 08:45:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Julien Wajsberg <felash@gmail.com>:
Extra info received and forwarded to list. Copy sent to APT Development Team <deity@lists.debian.org>. (Fri, 16 Dec 2011 08:45:04 GMT) Full text and rfc822 format available.

Message #229 received at 639290@bugs.debian.org (full text, mbox):

From: Julien Wajsberg <felash@gmail.com>
To: 639290@bugs.debian.org
Subject: what can we do to help ?
Date: Fri, 16 Dec 2011 09:41:54 +0100
Hi,

For me, dpkg -r libdigest-sha1-perl libextutils-cbuilder-perl
libextutils-parsexs-perl was sufficient.

If this can help...

cheers,
-- 
Julien




Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Mon, 16 Apr 2012 17:21:25 GMT) Full text and rfc822 format available.

Notification sent to Adam Heath <doogie@brainfood.com>:
Bug acknowledged by developer. (Mon, 16 Apr 2012 17:21:25 GMT) Full text and rfc822 format available.

Message #234 received at 639290-close@bugs.debian.org (full text, mbox):

From: Michael Vogt <mvo@debian.org>
To: 639290-close@bugs.debian.org
Subject: Bug#639290: fixed in apt 0.9.0
Date: Mon, 16 Apr 2012 17:17:21 +0000
Source: apt
Source-Version: 0.9.0

We believe that the bug you reported is fixed in the latest version of
apt, which is due to be installed in the Debian FTP archive:

apt-doc_0.9.0_all.deb
  to main/a/apt/apt-doc_0.9.0_all.deb
apt-transport-https_0.9.0_amd64.deb
  to main/a/apt/apt-transport-https_0.9.0_amd64.deb
apt-utils_0.9.0_amd64.deb
  to main/a/apt/apt-utils_0.9.0_amd64.deb
apt_0.9.0.dsc
  to main/a/apt/apt_0.9.0.dsc
apt_0.9.0.tar.gz
  to main/a/apt/apt_0.9.0.tar.gz
apt_0.9.0_amd64.deb
  to main/a/apt/apt_0.9.0_amd64.deb
libapt-inst1.5_0.9.0_amd64.deb
  to main/a/apt/libapt-inst1.5_0.9.0_amd64.deb
libapt-pkg-dev_0.9.0_amd64.deb
  to main/a/apt/libapt-pkg-dev_0.9.0_amd64.deb
libapt-pkg-doc_0.9.0_all.deb
  to main/a/apt/libapt-pkg-doc_0.9.0_all.deb
libapt-pkg4.12_0.9.0_amd64.deb
  to main/a/apt/libapt-pkg4.12_0.9.0_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 639290@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael Vogt <mvo@debian.org> (supplier of updated apt package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Mon, 16 Apr 2012 15:53:17 +0200
Source: apt
Binary: apt libapt-pkg4.12 libapt-inst1.5 apt-doc libapt-pkg-dev libapt-pkg-doc apt-utils apt-transport-https
Architecture: source all amd64
Version: 0.9.0
Distribution: unstable
Urgency: low
Maintainer: APT Development Team <deity@lists.debian.org>
Changed-By: Michael Vogt <mvo@debian.org>
Description: 
 apt        - commandline package manager
 apt-doc    - documentation for APT
 apt-transport-https - https download transport for APT
 apt-utils  - package managment related utility programs
 libapt-inst1.5 - deb package format runtime library
 libapt-pkg-dev - development files for APT's libapt-pkg and libapt-inst
 libapt-pkg-doc - documentation for APT development
 libapt-pkg4.12 - package managment runtime library
Closes: 353290 500198 540227 559733 596498 619646 621836 622110 624218 625960 632271 632520 639008 639290 640590 643787 646288 646381 649314 649340 649451 650513 652834 652835 653504 655590 656530 657560 657695 657732 657902 658096 658346 659333 662762 663372 664833 665833
Changes: 
 apt (0.9.0) unstable; urgency=low
 .
   * upload to debian/unstable
 .
 apt (0.9.0~exp1) experimental; urgency=low
 .
   [ Michael Vogt ]
   * apt-pkg/packagemanager.cc:
     - fix inconsistent clog/cout usage in the debug output
     - add APT::pkgPackageManager::MaxLoopCount to ensure that the
       ordering code does not get into a endless loop when it flip-flops
       between two states
   * update libapt-inst1.4 to libapt-inst1.5 because of the cleanup
     performed
   * prepare debian/unstable upload, if there are no issues with this
     upload it will directly go into unstable as 0.9.0
 .
   [ David Kalnischkies ]
   * do not update po and pot files in the process of the build as this
     causes timestamp changes for the mo files which therefore can't
     be refcounted by dpkg for your M-A: same packages
     (Closes: #659333, LP: #924628)
   * apt-inst/database.{cc,h}, apt-inst/deb/dpkgdb.{cc,h}:
     - drop instead of fix as it is only needed if you want to reimplement dpkg
       and comes straight from the beginning of last decade (Closes: #663372)
   * apt-inst/deb/debfile.cc:
     - {Extract,Merge}Control() is another instance of "lets reimplement dpkg"
       so shot of this code before someone ends up using this…
   * debian/libapt-pkg4.12:
     - update symbols file
   * debian/apt-utils.install:
     - ship the ftparchive, apt-extractemplates and apt-sortpkgs locales
       in the apt-utils package instead of the apt package
   * apt-pkg/packagemanager.cc:
     - recheck all dependencies if we changed a package in SmartConfigure
       as this could break an earlier dependency (LP: #940396)
     - recheck dependencies in SmartUnpack after a change, too
   * apt-pkg/acquire-worker.cc:
     - check return of write() as gcc recommends
   * apt-pkg/acquire.cc:
     - check return of write() as gcc recommends
   * apt-pkg/cdrom.cc:
     - check return of chdir() and link() as gcc recommends
   * apt-pkg/clean.cc:
     - check return of chdir() as gcc recommends
   * apt-pkg/contrib/netrc.cc:
     - check return of asprintf() as gcc recommends
   * methods/rred.cc:
     - check return of writev() as gcc recommends
   * methods/mirror.cc:
     - check return of chdir() as gcc recommends
   * apt-pkg/deb/dpkgpm.cc:
     - check return of write() a gcc recommends
   * apt-inst/deb/debfile.cc:
     - check return of chdir() as gcc recommends
   * apt-inst/deb/dpkgdb.cc:
     - check return of chdir() as gcc recommends
   * methods/makefile:
     - do not link rred against libz anymore as FileFd handles all
       this transparently now
   * debian/control:
     - bump Standards-Version to 3.9.3 (no changes needed)
     - add libbz2-dev as new build-dependency
     - remove the libz-dev alternative from zlib1g-dev build-dependency
     - suggest xz-utils instead of bzip2 and lzma
   * doc/apt-get.8.xml:
     - typofix: respect → respecting, thanks Mike Erickson! (Closes: #664833)
   * debian/rules:
     - do not sed in configure.in to set the version-number
   * prepare-release:
     - add as a small script to lazy check and prepare releases
   * doc/*:
     - move the command synopsis out of each manpage into apt-verbatim.ent
       as they are a hell to translate and just single out the parameters
       which can be translated to apt.ent
   * apt-pkg/aptconfiguration.cc:
     - if present, prefer xz binary over lzma
     - if we have zlib builtin insert add a dummy gzip compressor for FileFD
     - do the same for bz2 builtin if available
   * methods/bzip2.cc:
     - remove it as the functionality for all compressors can be
       provided by gzip.cc now with the usage of FileFD
   * apt-pkg/contrib/fileutl.cc:
     - use libz2 library for (de)compression instead of the bzip2 binary as
       the first is a dependency of dpkg and the later just priority:optional
       so we gain 'easier' access to bz2-compressed Translation files this way
   * cmdline/apt-get.cc:
     - print list of autoremoves in alphabetical order (Closes: #639008)
 .
   [ Bogdan Purcareata ]
   * doc/apt-get.8.xml:
     - add 'download' to the usage line (Closes: #649340)
   * cmdline/apt-get.cc:
     - distinguish information about 'apt-get autoremove' based on the
       number of auto-removed packages both before and after the list
       of packages (Closes: #665833)
 .
   [ Steve Langasek ]
   * don't treat build-depends-indep as cross-build-dependencies; we should
     always install the host arch versions.  LP: #968828.
 .
   [ Paolo Rotolo ]
   * Fix string from automatic to automatically (LP: #967393).
 .
 apt (0.8.16~exp13) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * apt-pkg/acquire-item.cc:
     - remove 'old' InRelease file if we can't get a new one before
       proceeding with Release.gpg to avoid the false impression of a still
       trusted repository by a (still present) old InRelease file.
       Thanks to Simon Ruderich for reporting this issue! (CVE-2012-0214)
     - add Debug::pkgAcqArchive::NoQueue to disable package downloading
   * apt-pkg/deb/dpkgpm.cc:
     - chroot if needed before dpkg --assert-multi-arch
     - ensure that dpkg binary doesn't have the chroot-directory prefixed
     - call dpkg --assert-multi-arch with execvp instead of execv
     - save the universe by not printing messages about apport if a package
       with this name is not installed (Closes: #619646)
     - handle a SIGINT in all modes as a break after the currently running
       dpkg transaction instead of ignoring it completely
   * apt-pkg/depcache.cc:
     - if a M-A:same package is marked for reinstall, mark all it's installed
       silbings for reinstallation as well (LP: #859188)
   * apt-pkg/contrib/configuration.cc:
     - do not stop parent transversal in FindDir if the value is empty
   * methods/http{s,}.cc:
     - if a file without an extension is requested send an 'Accept: text/*'
       header to avoid that the server chooses unsupported compressed files
       in a content-negotation attempt (Closes: #657560)
     - remove the arbitrary MAXLEN limit for response lines (Closes: #658346)
   * apt-pkg/aptconfiguration.cc:
     - chroot if needed before calling dpkg --print-foreign-architectures
     - ensure that architectures are not added multiple times
   * cmdline/apt-mark.cc:
     - detect if dpkg has multiarch support before calling --set-selections
     - correctly ignore already (un)hold packages
   * apt-pkg/cachefile.cc:
     - clean up lost atomic cachefiles with 'clean' (Closes: #650513)
   * apt-pkg/indexrecords.cc:
     - do not create empty Entries as a sideeffect of Lookup()
   * apt-pkg/acquire-item.cc:
     - drop support for i18n/Index file (introduced in 0.8.11) and use
       the Release file instead to get the Translations (Closes: #649314)
     - use pdiff for Translation-* files if available (Closes: #657902)
   * ftparchive/writer.cc:
     - add 'Translation-*' to the default patterns
   * cmdline/apt-get.cc:
     - if a package can't be removed as it is not installed, suggest to
       the user an (installed) multiarch silbing with 'Did you mean?'
     - improve 'error' message for packages which are only referenced
       e.g. in a Depends line and are now requested for removal
   * cmdline/apt-cache.cc:
     - correct --pre-depends option by using dash consistently (LP: #940837)
   * apt-pkg/packagemanager.cc:
     - do not try to a void a breaks if the broken package pre-depends
       on the breaker, but let dpkg auto-deconfigure it
   * apt-pkg/contrib/fileutl.cc:
     - do not warn about the ignoring of directories (Closes: #662762)
 .
   [ Steve Langasek ]
   * cmdline/apt-get.cc:
     - for cross-build-dependencies M-A: none should be DEB_HOST_ARCH,
       not DEB_BUILD_ARCH (Closes: #646288)
 .
   [ Colin Watson ]
   * apt-pkg/algorithms.cc:
     - don't break out of the main-resolver loop for Breaks to deal with all
       of them in a single iteration (Closes: #657695, LP: #922485)
     - use a signed int instead of short for score calculation as upgrades
       become so big now that it can overflow (Closes: #657732, LP: #917173)
   * Fix IndexCopy::CopyPackages and TranslationsCopy::CopyTranslations to
     handle compressed files again (LP: #924182, closes: #658096)
 .
   [ Michael Vogt ]
   * apt-pkg/deb/dpkgpm.cc:
     - fix crash when a package is in removed but residual config state
       (LP: #923807)
   * apt-pkg/contrib/fileutl.h:
     - fix compat with FileFd::OpenDescriptor() in ReadOnlyGzip mode
   * apt-pkg/packagemanager.cc:
     - fix bug in predepends handling - ensure that packages that needs
       unpackaging are unpacked before they are configured (LP: #927993)
 .
   [ Julian Andres Klode ]
   * apt-pkg/deb/deblistparser.cc:
     - Set the Essential flag on APT instead of only Important
   * apt-pkg/packagemanager.cc:
     - Do not use immediate configuration for packages with the Important flag
   * Treat the Important flag like the Essential flag with those differences:
     - No Immediate configuration (see above)
     - Not automatically installed during dist-upgrade
     - No higher score for installation ordering
 .
 apt (0.8.16~exp12) experimental; urgency=low
 .
   [ Michael Vogt ]
   * apt-pkg/deb/dpkgpm.cc:
     - fix segfault on pkg removal
 .
   [ David Kalnischkies ]
   * apt-pkg/cacheiterators.h:
     - return the correct version arch for all+foreign, too
   * apt-pkg/packagemanager.cc:
     - ignore breaks on not-installed versions while searching for
       breakage loops as we don't have to avoid them
   * debian/control:
     - remove APT from the short descriptions as lintian doesn't like it
       and it doesn't transport any information for a reader anyway
     - apply typofixes by Pascal De Vuyst, thanks! (Closes: #652834, #652835)
   * debian/rules:
     - apply patch to enable usage of hardning CPPFLAGS and LDFLAGS by
       Moritz Muehlenhoff, thanks! (Closes: #653504)
   * methods/https.cc:
     - use curls list append instead of appending Range and If-Range by hand
       which generates malformed requests, thanks Mel Collins for the hint!
       (Closes: #646381)
   * test/libapt/run-tests:
     - hurd doesn't have dmesg yet and we don't really need it either,
       so use with $0 a more stable data source for hashsumming
 .
   [ Pino Toscano ]
   * test/libapt/globalerror_test.cc:
     - errno 0 has a different strerror on hurd, so generate the expected
       message dynamically instead of hardcoding 'Success' (Closes: #656530)
 .
 apt (0.8.16~exp11) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * apt-pkg/deb/dpkgpm.cc:
     - redirect out/input of dpkg --assert-multi-arch to /dev/null
     - if multi-arch is detected ensure that pkg:all is reported as pkg:all
 .
 apt (0.8.16~exp10) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * apt-pkg/depcache.cc:
     - implicit conflicts (for multiarch) are supposed to conflict
       only with real packages, not with virtual providers
   * apt-pkg/pkgcache.cc:
     - ignore implicit conflicts on providers in AllTarget, too
   * apt-pkg/deb/dpkgpm.cc:
     - check if dpkg supports multiarch with --assert-multi-arch
       and if it does be always explicit about the architecture
   * apt-pkg/contrib/fileutl.h:
     - store the offset in the internal fd before calculate size of
       the zlib-handled file to jump back to this place again
   * apt-pkg/aptconfiguration.cc:
     - parse dpkg --print-foreign-architectures correctly in
       case archs are separated by newline instead of space, too.
       (Closes: #655590)
 .
   [ Michael Vogt ]
   * apt-pkg/contrib/fileutl.h:
     - fix segfault triggered by the python-apt testsuite
 .
 apt (0.8.16~exp9) experimental; urgency=low
 .
   [ Julian Andres Klode ]
   * apt-pkg/cdrom.cc:
     - Accept .bz2, .xz files in addition to .gz files (Closes: #649451)
 .
   [ Michael Vogt ]
   * apt-pkg/cdrom.cc:
     - use aptconfiguration to get the supported compression types
   * debian/control:
     - bump debhelper build-dep to debhelper (>= 8.1.3~)
     - set libapt-pkg-dev to multi-arch: same too
   * g++ 4.7 fixes
 .
   [ Colin Watson ]
   * Convert libapt-pkg4.12 and libapt-inst1.4 to Multi-Arch: same.
 .
   [ David Kalnischkies ]
   * apt-pkg/cacheset.cc:
     - make the cachesets real containers which can embedding any container
       to be able to use the same interface regardless of set or list usage
     - provide a {Package,Version}List similar to {Package,Version}Set
   * cmdline/apt-{get,cache,mark}.cc:
     - use Lists instead of Sets if input order should be preserved for
       commands accepting lists of packages, e.g. policy (Closes: #625960)
   * apt-pkg/depcache.cc:
     - prefer native providers over foreigns even if the chain is foreign
   * cmdline/apt-get.cc:
     - ignore foreign architectures if we check if a provides has only one
       resolver as it's basically the same for the user, so no need to choose
   * cmdline/apt-config.cc:
     - dump the APT::Compressor settings correctly and completely
   * apt-pkg/contrib/fileutl.{h,cc}:
     - implement a ModificationTime method for FileFd
     - add a ReadLine method
     - drop the explicit export of gz-compression handling
   * apt-pkg/cdrom.cc:
     - support InRelease files on cdrom
 .
 apt (0.8.16~exp8) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * algorithms.cc:
     - show a debug why a package was kept by ResolveByKeep()
   * apt-pkg/packagemanager.cc:
     - do not fail on unpacked packages in SmartUnPack, just don't
       shedule them for unpack, but do all checks and configure them
     - do not enter an endless loop for (essential) pre-dependency loops
   * apt-pkg/contrib/sha2_internal.cc:
     - use a pointer-union to peace gcc strict-aliasing warning
   * apt-pkg/deb/deblistparser.cc:
     - M-A: foreign packages provide for other archs, too
 .
 apt (0.8.16~exp7) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * do not pollute namespace in the headers with using (Closes: #500198)
   * use forward declaration in headers if possible instead of includes
   * remove old APT_COMPATIBILITY ifdef's
   * apt-pkg/deb/dpkgpm.cc:
     - use std::vector instead of fixed size arrays to store args and
       multiarch-packagename strings
     - load the dpkg base arguments only one time and reuse them later
   * cmdline/apt-get.cc:
     - follow Provides in the evaluation of saving candidates, too, for
       statisfying garbage package dependencies (Closes: #640590)
   * apt-pkg/algorithms.cc:
     - if a package is garbage, don't try to save it with FixByInstall
   * apt-pkg/deb/debsrcrecords.cc:
     - remove the limit of 400 Binaries for a source package (Closes: #622110)
   * apt-pkg/deb/deblistparser.cc:
     - fix crash when the dynamic mmap needs to be grown in
       LoadReleaseInfo (LP: #854090)
   * apt-pkg/deb/debmetaindex.cc:
     - none is a separator, not a language: no need for Index (Closes: #624218)
   * apt-pkg/aptconfiguration.cc:
     - do not builtin languages only if none is forced (Closes: #643787)
   * apt-pkg/pkgcachegen.cc:
     - refactor MergeList by creating -Group, -Package and -Version specialist
     - share description list between "same" versions (LP: #868977)
       This also means that descriptions are shared across archives now.
     - add implicit dependencies needed for Multi-Arch at the time a Version
       struct is created and not at the end of the cache generation
   * apt-pkg/pkgcache.cc:
     - always prefer "en" over "" for "en"-language regardless of cache-order
 .
   [ Michael Vogt ]
   * apt-pkg/contrib/configuration.cc:
     - fix double delete (LP: #848907)
     - ignore only the invalid regexp instead of all options
   * apt-pkg/acquire-item.h, apt-pkg/deb/debmetaindex.cc:
     - fix fetching language information by adding OptionalSubIndexTarget
   * methods/https.cc:
     - cleanup broken downloads properly
 .
   [ Colin Watson ]
   * ftparchive/cachedb.cc:
     - fix buffersize in bytes2hex
 .
 apt (0.8.16~exp6) experimental; urgency=low
 .
   [ Christopher Baines ]
   * enable APT in unpack/configure ordering to handle loops as well
     as tight dependencies between immediate packages better
     enabling also the possibility to mark all packages as immediate
     (at least Closes: #353290, #540227, #559733, #621836, #639290)
 .
   [ David Kalnischkies ]
   * [abi-break] Support large files in the complete toolset. Indexes of this
     size are pretty unlikely for now, but we need it for deb
     packages which could become bigger than 4GB now (LP: #815895)
   * merged the debian-sid branch
 .
   [ Michael Vogt ]
   * bump ABI version
 .
 apt (0.8.16~exp5) experimental; urgency=low
 .
   * merged the latest debian-sid fixes
   * apt-pkg/makefile:
     - install sha256.h compat header
   * apt-pkg/pkgcachegen.{cc,h}:
     - use ref-to-ptr semantic in NewDepends() to ensure that the
       libapt does not segfault if the cache is remapped in between
       (LP: #812862)
     - fix crash when P.Arch() was used but the cache got remapped
   * apt-pkg/acquire-item.{cc,h}:
     - do not check for a "Package" tag in optional index targets
       like the translations index
   * apt-pkg/acquire.cc:
     - fix potential divide-by-zero
   * methods/mirror.cc:
     - include the architecture(s) in the query string as well so
       that the server can make better decisions
 .
 apt (0.8.16~exp4) experimental; urgency=low
 .
   [ Julian Andres Klode ]
   * apt-pkg/pkgcache.h:
     - [ABI break] Add pkgCache::Header::CacheFileSize, storing the cache size
   * apt-pkg/pkgcachegen.cc:
     - Write the file size to the cache
   * apt-pkg/pkgcache.cc:
     - Check that cache is at least CacheFileSize bytes large (LP: #16467)
 .
   [ Michael Vogt ]
   * merged latest fixes from debian-sid
   * apt-pkg/cdrom.{cc,h}:
     - cleanup old ABI break avoidance hacks
   * [ABI break] apt-pkg/acquire-item.{cc,h}:
     - cleanup around OptionalIndexTarget and SubIndexTarget
   * [ABI break] merged patch from Jonathan Thomas to have a new
     RecordField() function in the pkgRecorder parser. Many thanks
     Thomas
   * [ABI break] merge patch from Jonathan Thomas to speed up the
     depcache by caching the install-recommends and install-suggests
     values
   * apt-pkg/contrib/fileutl.{cc,h}:
     - add GetModificationTime() helper
   * apt-pkg/pkgcachegen.cc:
     - regenerate the cache if the sources.list changes to ensure
       that changes in the ordering there will be honored by apt
   * apt-pkg/sourcelist.{cc,h}:
     - add pkgSourceList::GetLastModifiedTime() helper
 .
 apt (0.8.16~exp3) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * apt-pkg/pkgcache.h:
     - readd All{Foreign,Allowed} as suggested by Julian to
       remain strictly API compatible
   * apt-pkg/acquire*.{cc,h}:
     - try even harder to support really big files in the fetcher by
       converting (hopefully) everything to 'long long' (Closes: #632271)
   * ftparchive/writer.cc:
     - generate all checksums in one run over the file for Release
   * cmdline/apt-get.cc:
     - add an --assume-no option for testing to say 'no' to everything
   * apt-pkg/deb/debmetaindex.cc:
     - add trusted=yes option to mark unsigned (local) repository as trusted
       based on a patch from Ansgar Burchardt, thanks a lot! (Closes: #596498)
 .
   [ Michael Vogt ]
   * merge fixes from the debian/unstable upload
   * merge lp:~mvo/apt/sha512-template to get fixes for the
     sha1/md5 verifiation (closes: #632520)
 .
 apt (0.8.16~exp2) experimental; urgency=low
 .
   [ David Kalnischkies ]
   * [ABI-Break] Implement EDSP in libapt-pkg so that all front-ends which
     use the internal resolver can now be used also with external
     ones as the usage is hidden in between the old API
   * provide two edsp solvers in apt-utils:
     - 'dump' to quickly output a complete scenario and
     - 'apt' to use the internal as an external resolver
   * apt-pkg/pkgcache.h:
     - clean up mess with the "all" handling in MultiArch to
       fix LP: #733741 cleanly for everyone now
   * apt-pkg/depcache.cc:
     - use a boolean instead of an int for Add/Remove in AddStates
       similar to how it works with AddSizes
     - let the Mark methods return if their marking was successful
     - if a Breaks can't be upgraded, remove it. If it or a Conflict
       can't be removed the installation of the breaker fails.
   * cmdline/apt-get.cc:
     - do not discard the error messages from the resolver and instead
       only show the general 'Broken packages' message if nothing else
 .
   [ Stefano Zacchiroli ]
   * doc/external-dependency-solver-protocol.txt:
     - describe EDSP and the configuration interface around it
 .
   [ Michael Vogt ]
   * [ABI-Break] merge lp:~mvo/apt/sha512-template to add support for sha512
   * [ABI-Break] merge lp:~mvo/apt/dpointer to support easier extending
     without breaking the ABI
   * increase ABI version and update package names
 .
 apt (0.8.16~exp1) experimental; urgency=low
 .
   * merged with the debian/unstable upload
Checksums-Sha1: 
 fc95da4daa2a1568bc5acd39ab4af63ec1820780 1663 apt_0.9.0.dsc
 fc3f40502d23333f220e4e6514ca9d001d387b77 3413809 apt_0.9.0.tar.gz
 13f76db32f4ce0311c8d74ab4170e3fa46c6202a 253740 apt-doc_0.9.0_all.deb
 c82ea78974c9c49cbfebf4cf2378610c715d395d 829988 libapt-pkg-doc_0.9.0_all.deb
 47ba3fd9d06f4d923ccdd4bb133c456a5b3de57b 873740 libapt-pkg4.12_0.9.0_amd64.deb
 418b2736f47b3c22ec9caa3bc9d8d5bfcc9a9b09 156814 libapt-inst1.5_0.9.0_amd64.deb
 efb3a085bc077bbadccd11bcb7fa726865820243 1157074 apt_0.9.0_amd64.deb
 c0046bfbdc1be9f50769fd52ef1e2d7b75a9ca40 176948 libapt-pkg-dev_0.9.0_amd64.deb
 50c59ca1d1baba9d6c6cd6a81c4a48839ba21931 369252 apt-utils_0.9.0_amd64.deb
 812d23a09ce7acdee2c463e8d1df1d1212482810 99976 apt-transport-https_0.9.0_amd64.deb
Checksums-Sha256: 
 b5efa4315aa7956a467356cbd5a9647f04a0b726d52dffd651fcce3e94e60835 1663 apt_0.9.0.dsc
 a8cf8af3251a2f8e3d939dce69ce84d4c9320c499c01183471a4918d2fcef0be 3413809 apt_0.9.0.tar.gz
 d5246add11f5ea8007ba0f5c16add3750583ba689ea72726cd7b4237dd1e42c3 253740 apt-doc_0.9.0_all.deb
 8f669ee3f961df54ad7ffbb39ca1ff5eac9b5700bad20165997eb1a7efd0c860 829988 libapt-pkg-doc_0.9.0_all.deb
 49a07e004d87678a56c21efc49109d85666a09a559487f960a9969f3ad1f9abd 873740 libapt-pkg4.12_0.9.0_amd64.deb
 52d53e744546181288e94a5526046e45113b9b0cb45ff9d2d9287dfa7797668b 156814 libapt-inst1.5_0.9.0_amd64.deb
 9db94005d54437feee3eac020e22fd9e85ca53d10528a52150241a3fe1f493f1 1157074 apt_0.9.0_amd64.deb
 e71efeda5b64d29aeb4da6b051e3732319c3ebaa49b6be57a81de57d7e242fab 176948 libapt-pkg-dev_0.9.0_amd64.deb
 d5f6a970d25152a304b7d4cdfa7592399bd7a379b456be543b4aac3fa4d6555b 369252 apt-utils_0.9.0_amd64.deb
 0f44eb74360b8ace4c03a190df566f88033e7d4c8dcb1e177a24e7f320a50f93 99976 apt-transport-https_0.9.0_amd64.deb
Files: 
 a606ce414eb9a7234d43276601383622 1663 admin important apt_0.9.0.dsc
 cf73c2b5f5428d536801a1edc48f0d11 3413809 admin important apt_0.9.0.tar.gz
 2cd144c8fdbe818cfc6e2bb16ddc0b33 253740 doc optional apt-doc_0.9.0_all.deb
 1bc9224c399e7dd0fc7dfcc730b3947e 829988 doc optional libapt-pkg-doc_0.9.0_all.deb
 fe831381997d9423c3daa80ce0d8491c 873740 admin important libapt-pkg4.12_0.9.0_amd64.deb
 63676485e73e922621cb2e0fac3ace6f 156814 admin important libapt-inst1.5_0.9.0_amd64.deb
 76e6ab6d2d06d7a895c4ef2f4da98ad6 1157074 admin important apt_0.9.0_amd64.deb
 e304af794f6f4be0b877882877f3c88a 176948 libdevel optional libapt-pkg-dev_0.9.0_amd64.deb
 0df83118a37c5893155ac2d9fcf8b2a9 369252 admin important apt-utils_0.9.0_amd64.deb
 7e9150fe4ee5be28a476c714bd70422c 99976 admin optional apt-transport-https_0.9.0_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAk+MUBMACgkQliSD4VZixzRuGQCfQrCgw4t9ts0LCLxZeafSquT2
X10AoJFelZR+3rybe+zx15X0jaxiIcuz
=+UJn
-----END PGP SIGNATURE-----





Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Mon, 16 Apr 2012 17:21:26 GMT) Full text and rfc822 format available.

Notification sent to Michal Suchanek <michal.suchanek@ruk.cuni.cz>:
Bug acknowledged by developer. (Mon, 16 Apr 2012 17:21:26 GMT) Full text and rfc822 format available.

Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Mon, 16 Apr 2012 17:21:27 GMT) Full text and rfc822 format available.

Notification sent to Krasu <ksquirrel.iv@gmail.com>:
Bug acknowledged by developer. (Mon, 16 Apr 2012 17:21:27 GMT) Full text and rfc822 format available.

Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Mon, 16 Apr 2012 17:21:28 GMT) Full text and rfc822 format available.

Notification sent to Stelios <chefarov@gmail.com>:
Bug acknowledged by developer. (Mon, 16 Apr 2012 17:21:28 GMT) Full text and rfc822 format available.

Reply sent to Michael Vogt <mvo@debian.org>:
You have taken responsibility. (Mon, 16 Apr 2012 17:21:29 GMT) Full text and rfc822 format available.

Notification sent to faulstich@fh-swf.de:
Bug acknowledged by developer. (Mon, 16 Apr 2012 17:21:29 GMT) Full text and rfc822 format available.

Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Tue, 15 May 2012 07:36:06 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Thu Apr 17 18:59:13 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.