python3-apt_2.7.7ubuntu2 uninstallable on armhf

Bug #2077685 reported by Chris Halse Rogers
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
apt (Ubuntu)
Triaged
Undecided
Unassigned
Noble
Triaged
Undecided
Unassigned
python-apt (Ubuntu)
Fix Released
Undecided
Unassigned
Noble
Fix Committed
Critical
Unassigned

Bug Description

The python-apt 2.7.7ubuntu2 update has a versioned dependency on libapt-pkg6.0t64 (>= 2.8.1) (on armhf only). Presumably there's an armhf-only symbols difference resulting in the armhf package (and *only* the armhf package - none of i386, amd64, ppc64el, s390x, or riscv64 are affected) picking up this tighter dependency.

The version of apt which could satisfy this is still in -proposed:
```
 apt | 2.7.14build2 | noble | source, amd64, arm64, armhf, i386, ppc64el, riscv64, s390x
 apt | 2.8.2 | noble-proposed | source, amd64, arm64, armhf, i386, ppc64el, riscv64, s390x
```

Changed in python-apt (Ubuntu Noble):
status: New → Triaged
Changed in python-apt (Ubuntu):
status: New → Fix Released
Changed in python-apt (Ubuntu Noble):
importance: Undecided → Critical
tags: added: regression-update
Revision history for this message
Chris Halse Rogers (raof) wrote :

I've set the phasing of python-apt to 0.

Now, of course, we have the most annoying kind of regression to untangle - any rebuild of python-apt in -proposed will *also* exhibit this bug.

Revision history for this message
Chris Halse Rogers (raof) wrote :

Ok. So, as far as I can tell, python3-apt on armhf *and only* on armhf gets a versioned dependency on libapt-pkg6.0t64 (>= $THE_VERSION_IT_BUILT_AGAINST). It's unclear to me what is causing this behaviour; the symbols file for that library in the apt source looks unremarkable, and there's no weird architecture-specific wrangling that I can see in the rules.

I have verified that a no-change rebuild of python-apt in an archive containing noble-updates but *not* noble-proposed will generate a package that has correct dependencies on armhf. Thus, we should be able to build in a PPA and binary-copy the result to noble-proposed (and then release into -updates from there).

I'm aware that there are special considerations around building a package in a PPA to be binary-copied into the main archive, but I'm not familiar with setting up a suitable build archive. I shall coordinate with others on the SRU/Archive teams to get this happening.

Changed in python-apt (Ubuntu Noble):
status: Triaged → In Progress
Revision history for this message
Julian Andres Klode (juliank) wrote :

This is a time_t transition issue most likely, the symbols files was not updated for 64-bit time_t, and hence all the time_t symbols will now depend on the build version on armhf.

Changed in apt (Ubuntu Noble):
status: New → Triaged
Changed in apt (Ubuntu):
status: New → Triaged
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Please test proposed package

Hello Chris, or anyone else affected,

Accepted python-apt into noble-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/python-apt/2.7.7ubuntu3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-noble to verification-done-noble. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-noble. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in python-apt (Ubuntu Noble):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-noble
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (python-apt/2.7.7ubuntu3)

All autopkgtests for the newly accepted python-apt (2.7.7ubuntu3) for noble have finished running.
The following regressions have been reported in tests triggered by the package:

apport/2.28.1-0ubuntu3.1 (arm64, armhf, ppc64el)
apt/2.7.14build2 (arm64)
ubuntu-advantage-tools/unknown (armhf)
ubuntu-dev-tools/unknown (s390x)
unattended-upgrades/unknown (s390x)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/noble/update_excuses.html#python-apt

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Julian Andres Klode (juliank) wrote :

Update verified.

root@55d22e9f8666:/# apt update
Hit:1 http://ports.ubuntu.com/ubuntu-ports noble InRelease
Get:2 http://ports.ubuntu.com/ubuntu-ports noble-updates InRelease [126 kB]
Hit:3 http://ports.ubuntu.com/ubuntu-ports noble-proposed InRelease
Get:4 http://ports.ubuntu.com/ubuntu-ports noble-updates/main armhf Packages [319 kB]
Get:5 http://ports.ubuntu.com/ubuntu-ports noble-updates/main Translation-en [114 kB]
Fetched 559 kB in 6s (99.0 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
77 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@55d22e9f8666:/# apt install python3-apt
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 python3-apt : Depends: libapt-pkg6.0t64 (>= 2.8.1) but 2.7.14build2 is to be installed
E: Unable to correct problems, you have held broken packages.
root@55d22e9f8666:/# apt install -tnoble-proposed python3-apt
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  python-apt-common
Suggested packages:
  python-apt-doc
The following packages will be upgraded:
  python-apt-common python3-apt
2 upgraded, 0 newly installed, 0 to remove and 92 not upgraded.
Need to get 236 kB of archives.
After this operation, 383 kB of additional disk space will be used.
Do you want to continue? [Y/n]

tags: added: verification-done verification-done-noble
removed: verification-needed verification-needed-noble
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.