Package: libasyncns0
Version: 0.8-7
Severity: serious
Justification: Policy 7.3
X-Debbugs-Cc: [email protected], [email protected]
User: [email protected]
Usertags: i386
User: [email protected]
Usertags: amd64

Dear Maintainer,

After a routine `apt-get update; apt-get dist-upgrade`(*), several packages are 
'kept back', including 'libasyncns0'.

This package received an NMU of :amd64 only.  The previous package had these 
headers:

    Package: libasyncns0
    Version: 0.8-7
    Architecture: amd64
    Breaks: libasyncns0:i386 (!= 0.8-7)
    Replaces: libasyncns0:i386 (< 0.8-7)

and the new one has:

    Package: libasyncns0
    Version: 0.8-7+b1
    Architecture: amd64
    Breaks: libasyncns0:i386 (!= 0.8-7+b1)
    Replaces: libasyncns0:i386 (< 0.8-7+b1)

However, since the NMU included only :amd64, it cannot be installed on a system 
which has 'libasyncns0:i386' installed, as it claims to break it.

=====

It seems like this could be fixed by uploading the 0.8.7+b1:i386 package; or by 
changing :amd64's 'Breaks:' to '< 0.8-7' (*without* '+b1').

This seems to highlight a danger: uploading 'just one arch' of a package can 
have wild consequences, especially in the case of amd64/i386 (I imagine similar 
dangers might apply in other closely related arches like ARM 64 vs 32).  The 
maintainer has to keep a careful eye on cross-arch dependencies -- OR, maybe, 
just upload all arches even for a change that 'only' affects one?

Some terminal logs.  Note in particular that if I insist it install 
'libasyncns0:amd64=0.8-7+b1' -- merely by saying to install 'libasyncns0' 
(implying 'upgrade to current') -- it well *remove* 'libasyncns0:i386' and 
consequently 2 other packages which depend on it, as well as leaving an 
additional 69 packages in a to-be-removed state (auto-installed and nothing 
depends on them, as they were brought in by the 3 that are being removed).

<<<<<
$ apt-get -Vs dist-upgrade
NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
The following packages have been kept back:
   libasyncns0 (0.8-7 => 0.8-7+b1)
   libbsd0 (0.12.2-2 => 0.12.2-2+b1)
   libgmp10 (2:6.3.0+dfsg-5 => 2:6.3.0+dfsg-5+b1)
   libgraphite2-3 (1.3.14-11 => 1.3.14-11+b1)
   libjack-jackd2-0 (1.9.22~dfsg-5 => 1.9.22~dfsg-5+b1)
   libjbig0 (2.1-6.1+b2 => 2.1-6.1+b3)
0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
$ apt-get -Vs install libasyncns0
NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists...
Building dependency tree...
Reading state information...
Solving dependencies...
The following packages were automatically installed and are no longer required:
   libaom3:i386 (3.13.1-2)
   libasound2t64:i386 (1.2.15.1-1)
   libavcodec62:i386 (7:8.0.1-3)
   libavutil60:i386 (7:8.0.1-3)
   libcairo-gobject2:i386 (1.18.4-3)
   libcairo2:i386 (1.18.4-3)
   libcodec2-1.2:i386 (1.2.0-4)
   libdatrie1:i386 (0.2.14-1)
   libdav1d7:i386 (1.5.3-1+b1)
   libdb5.3t64:i386 (5.3.28+dfsg2-11)
   libdbus-1-3:i386 (1.16.2-2+b1)
   libdeflate0:i386 (1.23-2)
   libflac14:i386 (1.5.0+ds-5)
   libfribidi0:i386 (1.0.16-5)
   libgdk-pixbuf-2.0-0:i386 (2.44.4+dfsg-1)
   libgomp1:i386 (15.2.0-12)
   libgraphite2-3:i386 (1.3.14-11)
   libgsm1:i386 (1.0.23-2)
   libharfbuzz0b:i386 (12.3.0-4)
   libhwy1t64:i386 (1.3.0-2)
   libjack-jackd2-0:i386 (1.9.22~dfsg-5)
   libjbig0:i386 (2.1-6.1+b2)
   libjpeg62-turbo:i386 (1:2.1.5-4)
   libjxl0.11:i386 (0.11.1-6)
   liblcms2-2:i386 (2.17-1)
   liblerc4:i386 (4.0.0+ds-5)
   liblzma5:i386 (5.8.2-2)
   libmp3lame0:i386 (3.100-6+b3)
   libmpg123-0t64:i386 (1.33.3-2)
   libnuma1:i386 (2.0.19-1)
   libogg0:i386 (1.3.6-2)
   libopenjp2-7:i386 (2.5.4-1)
   libopus0:i386 (1.6-1)
   libpango-1.0-0:i386 (1.57.0-1)
   libpangocairo-1.0-0:i386 (1.57.0-1)
   libpangoft2-1.0-0:i386 (1.57.0-1)
   libpixman-1-0:i386 (0.46.4-1)
   librav1e0.8:i386 (0.8.1-7)
   librsvg2-2:i386 (2.61.3+dfsg-3)
   librsvg2-common:i386 (2.61.3+dfsg-3)
   libsamplerate0:i386 (0.2.2-4+b2)
   libsharpyuv0:i386 (1.5.0-0.1)
   libshine3:i386 (3.1.1-3)
   libsnappy1v5:i386 (1.2.2-2)
   libsndfile1:i386 (1.2.2-3)
   libsoxr0:i386 (0.1.3-4.1)
   libspeex1:i386 (1.2.1-3)
   libspeexdsp1:i386 (1.2.1-3)
   libsvtav1enc2:i386 (2.3.0+dfsg-1)
   libswresample6:i386 (7:8.0.1-3)
   libsystemd0:i386 (259-1)
   libthai0:i386 (0.1.30-1)
   libtheoradec2:i386 (1.2.0+dfsg-6)
   libtheoraenc2:i386 (1.2.0+dfsg-6)
   libtiff6:i386 (4.7.1-1)
   libtwolame0:i386 (0.4.0-2+b2)
   libvdpau1:i386 (1.5-4)
   libvorbis0a:i386 (1.3.7-3)
   libvorbisenc2:i386 (1.3.7-3)
   libvpx11:i386 (1.15.2-2)
   libwebp7:i386 (1.5.0-0.1)
   libwebpmux3:i386 (1.5.0-0.1)
   libx264-165:i386 (2:0.165.3222+gitb35605ac-3+b1)
   libx265-215:i386 (4.1-4)
   libxcb-render0:i386 (1.17.0-2+b1)
   libxrender1:i386 (1:0.9.12-1)
   libxvidcore4:i386 (2:1.3.7-3)
   libzvbi0t64:i386 (0.2.44-1)
   ocl-icd-libopencl1:i386 (2.3.4-1)
Use 'apt autoremove' to remove them.
The following packages will be REMOVED:
   libasound2-plugins:i386 (1.2.12-2+b4)
   libasyncns0:i386 (0.8-7)
   libpulse0:i386 (17.0+dfsg1-2+b1)
The following packages will be upgraded:
   libasyncns0 (0.8-7 => 0.8-7+b1)
1 upgraded, 0 newly installed, 3 to remove and 5 not upgraded.
Remv libasound2-plugins:i386 [1.2.12-2+b4]
Remv libpulse0:i386 [17.0+dfsg1-2+b1]
Remv libasyncns0:i386 [0.8-7]
Inst libasyncns0 [0.8-7] (0.8-7+b1 Debian:unstable [amd64])
Conf libasyncns0 (0.8-7+b1 Debian:unstable [amd64])
$ apt-get download libasyncns0
Get:1 https://deb.debian.org/debian unstable/main amd64 libasyncns0 amd64 
0.8-7+b1 [12.4 kB]
Fetched 12.4 kB in 0s (80.8 kB/s)  
$ apt-listchanges libasyncns0_0.8-7+b1_amd64.deb
apt-listchanges: Reading changelogs...
apt-listchanges: Changelogs
---------------------------

--- Binary NMU of: libasyncns (0.8-7+b1)

  * Binary-only non-maintainer upload for amd64; no source changes.
  * Rebuild to enable GCS on arm64

$ aptitude show libasyncns0{,:i386}={0.8-7,0.8-7+b1}
Package: libasyncns0
Version: 0.8-7
State: installed
Automatically installed: yes
Multi-Arch: same
Priority: optional
Section: libs
Maintainer: Debian QA Group <[email protected]>
Architecture: amd64
Uncompressed Size: 48.1 k
Depends: libc6 (>= 2.34)
Breaks: libasyncns0:i386 (!= 0.8-7)
Replaces: libasyncns0:i386 (< 0.8-7)
Description: Asynchronous name service query library
 libasyncns is a C library for Linux/Unix for executing name service queries 
asynchronously. It is an asynchronous wrapper around getaddrinfo(3), 
getnameinfo(3), res_query(3) and res_search(3) from libc and libresolv.
Homepage: https://0pointer.de/lennart/projects/libasyncns/
Tags: role::shared-lib

Package: libasyncns0
Version: 0.8-7+b1
State: installed (0.8-7), upgrade available (0.8-7+b1)
Automatically installed: yes
Multi-Arch: same
Priority: optional
Section: libs
Maintainer: Debian QA Group <[email protected]>
Architecture: amd64
Uncompressed Size: 45.1 k
Depends: libc6 (>= 2.34)
Breaks: libasyncns0:i386 (!= 0.8-7+b1)
Replaces: libasyncns0:i386 (< 0.8-7+b1)
Description: Asynchronous name service query library
 libasyncns is a C library for Linux/Unix for executing name service queries 
asynchronously. It is an asynchronous wrapper around getaddrinfo(3), 
getnameinfo(3), res_query(3) and res_search(3) from libc and libresolv.
Homepage: https://0pointer.de/lennart/projects/libasyncns/
Tags: role::shared-lib

Package: libasyncns0:i386
Version: 0.8-7
State: installed
Automatically installed: yes
Multi-Arch: same
Priority: optional
Section: libs
Maintainer: Debian QA Group <[email protected]>
Architecture: i386
Uncompressed Size: 44.0 k
Depends: libc6:i386 (>= 2.34)
Breaks: libasyncns0 (!= 0.8-7)
Replaces: libasyncns0 (< 0.8-7)
Description: Asynchronous name service query library
 libasyncns is a C library for Linux/Unix for executing name service queries 
asynchronously. It is an asynchronous wrapper around getaddrinfo(3), 
getnameinfo(3), res_query(3) and res_search(3) from libc and libresolv.
Homepage: https://0pointer.de/lennart/projects/libasyncns/
Tags: role::shared-lib

Unable to find a version "0.8-7+b1" for the package "libasyncns0:i386"
Package: libasyncns0:i386
Version: 0.8-7
State: installed
Automatically installed: yes
Multi-Arch: same
Priority: optional
Section: libs
Maintainer: Debian QA Group <[email protected]>
Architecture: i386
Uncompressed Size: 44.0 k
Depends: libc6:i386 (>= 2.34)
Breaks: libasyncns0 (!= 0.8-7)
Replaces: libasyncns0 (< 0.8-7)
Description: Asynchronous name service query library
 libasyncns is a C library for Linux/Unix for executing name service queries 
asynchronously. It is an asynchronous wrapper around getaddrinfo(3), 
getnameinfo(3), res_query(3) and res_search(3) from libc and libresolv.
Homepage: https://0pointer.de/lennart/projects/libasyncns/
Tags: role::shared-lib
>>>>>

*** Reporter, 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 template lines ***


-- System Information:
Debian Release: forky/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.18.3+deb14-amd64 (SMP w/20 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libasyncns0 depends on:
ii  libc6  2.42-8

libasyncns0 recommends no packages.

libasyncns0 suggests no packages.

-- no debconf information

Reply via email to