Bug#867081: autopkgtest: @ no longer pulls in packages with versioned Provides

Niko Tyni ntyni at debian.org
Mon Jul 31 20:59:04 UTC 2017


On Mon, Jul 03, 2017 at 10:40:45PM +0300, Niko Tyni wrote:
> Package: autopkgtest
> Version: 4.4
> User: debian-perl at lists.debian.org
> Usertags: versioned-provides
> X-Debbugs-Cc: debian-perl at lists.debian.org
> 
> As seen on ci.debian.net with for instance libhttp-tiny-perl and
> libcpan-meta-perl, autopkgtest gets confused about versioned Provides
> that were introduced in sid recently with perl_5.24.1-5.
> 
> It looks like "Depends: @" will no longer pull in the binary packages
> to be tested if the same name is also Provided by installed packages
> with a version.
> 
> My reading of the autopkgtest code is that it synthesizes a dependency
> on 'package (>= 0~)', where the versioning is assumed to guarantee that
> only a real package gets pulled in. This assumption no longer holds with
> versioned Provides.

Oh, I'd mostly forgotten about #761003 which introduced the '(>= 0~)'
thing three years ago and where we predicted that this will break with
versioned Provides.

The solution we discussed there was to insert an additional explicit
 apt-get install <package>
phase to the autopkgtest-satdep.deb installation (which unpacks a
temporary package and then calls 'apt-get --fix-missing' to have apt solve
the dependencies.)

This explicit call prefers real packages to virtual ones (at least in
all my tests though I can't find this documented; possibly this should
be checked with the apt maintainers.)

Is this approach something you would consider now that the versioned
Provides issue has materialized in practice?
-- 
Niko Tyni   ntyni at debian.org



More information about the autopkgtest-devel mailing list