Your message dated Wed, 03 Jun 2020 22:06:05 +0000
with message-id <e1jgbwp-000ak0...@fasolo.debian.org>
and subject line Bug#962098: Removed package(s) from unstable
has caused the Debian Bug report #944364,
regarding dpkg: ldconfig is not invoked for Depends or even Pre-Depends
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
944364: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944364
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: dpkg
Version: 1.19.7
Severity: important

Dear Maintainer,

This was first discovered in Ubuntu 18.04 and has already been filed as
Ubuntu bug #1851675, but was later on found to have originated in changes
to dpkg in Debian itself.

https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1851675

In a nutshell, if a package has a Depends: that will cause a library to
be installed, and the package relies on that library in a postinst hook,
then this hook will fail if the library was not already installed before
performing an apt-get install of the package itself.

As an example, I have a package that has a "Depends: python-augeas".
A stripped-down example of this package can be downloaded from the
Ubuntu bug report.
In its postinst script, a Python script is invoked that tries to do:
  from augeas import Augeas

This should work because all the requirements to make this import work,
should be made available by installing the python-augeas dependency. The
actual result however, is:

Unpacking the-package (1.2.3) ...
Setting up the-package (1.2.3) ...
Traceback (most recent call last):
  File "/usr/lib/the-package/setup-package.py", line 3, in <module>
    from augeas import Augeas
  File "/usr/lib/python2.7/dist-packages/augeas.py", line 78, in <module>
    class Augeas(object):
  File "/usr/lib/python2.7/dist-packages/augeas.py", line 82, in Augeas
    _libaugeas = _dlopen("augeas")
  File "/usr/lib/python2.7/dist-packages/augeas.py", line 75, in _dlopen
    raise ImportError("Unable to import lib%s!" % args[0])
ImportError: Unable to import libaugeas!
dpkg: error processing package the-package (--configure):
 installed the-package package post-installation script subprocess returned 
error exit status 1

The reason why this fails is because python-augeas depends on libaugeas0,
but this library has not yet been completely configured. This can be seen
by adding `ldconfig -p >/tmp/ldconfig-output` to the postinst script.
Simply running apt-get -f install afterwards, will work, because then
libaugeas0 is fully configured.

Moving python-augeas or even libaugeas0 to Pre-Depends, does not help as
a workaround (and according to my interpretation of debian-policy,
should not be needed).

This worked as expected until recently. The regression must have been
introduced by one of the changes listed here, most likely one of the
changes related to trigger loops:
http://launchpadlibrarian.net/433311114/dpkg_1.19.0.5ubuntu2.1_1.19.0.5ubuntu2.2.diff.gz

ldconfig is one of the triggers of libc-bin. It seems that its
invocation is now postponed too late. If a package 'Depends' directly or
indirectly on libraries that were installed during the same run, then
ldconfig must be invoked before setting up the package to ensure it can
use the libraries in its postinst hook.


-- Package-specific info:

-- System Information:
Debian Release: 10.1
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.3.0-19-generic (SMP w/8 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C.UTF-8 
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages dpkg depends on:
ii  libbz2-1.0   1.0.6-9.2~deb10u1
ii  libc6        2.28-10
ii  liblzma5     5.2.4-1
ii  libselinux1  2.8-1+b1
ii  tar          1.30+dfsg-6
ii  zlib1g       1:1.2.11.dfsg-1

dpkg recommends no packages.

Versions of packages dpkg suggests:
ii  apt            1.8.2
pn  debsig-verify  <none>

-- no debconf information

--- End Message ---
--- Begin Message ---
Version: 3.7.7-1+rm

Dear submitter,

as the package python3.7 has just been removed from the Debian archive
unstable we hereby close the associated bug reports.  We are sorry
that we couldn't deal with your issue properly.

For details on the removal, please see https://bugs.debian.org/962098

The version of this package that was in Debian prior to this removal
can still be found using http://snapshot.debian.org/.

Please note that the changes have been done on the master archive and
will not propagate to any mirrors until the next dinstall run at the
earliest.

This message was generated automatically; if you believe that there is
a problem with it please contact the archive administrators by mailing
ftpmas...@ftp-master.debian.org.

Debian distribution maintenance software
pp.
Scott Kitterman (the ftpmaster behind the curtain)

--- End Message ---

Reply via email to