Bug#1094736: transition: libcdio
* gregor herrmann:
>
> No, they are green all across the board (for tests _within_ testing
> or unstable):
> https://ci.debian.net/packages/libd/libdevice-cdio-perl/
Thanks for pointing this out.
* Paul Gevers:
>
> I'm the first to admit that properly testing transitions in the Debian
> CI setup is a hard problem because of trade-offs. How it currently works
> is that britney2 tries to figure out for a source package in unstable
> what packages need to come from unstable in order to fulfill the test
> requirements of a reverse (test) dependency in testing. Because
> libraries are typically co-installable, britney2 doesn't currently know
> that we have a rebuild that we want to test (bug 944458). However, if we
> are going to wait for rebuilds and their test results, we basically
> loose the ability to do smooth-updates, which make transitions
> longer/harder. So far, we have not fixed bug 944458 because of that.
Thanks for the explanation. It makes sense to me.
> That does mean that occasionally we run into issues where tests fail,
> but so far we've been able to manage that.
Are you saying that I might need some sort of manual intervention?
Anyhow, I did a little bit more digging (and awful hacking) and I found
out that the issue happens when we have libdevice-cdio-perl built
against libcdio19t64 (2.1.0-5), but the testbed has the newer version
of libcdio19t64 (2.2.0-1).
Steps to reproduce:
Install the following versions:
dpkg --no-pager --list libdevice-cdio-perl libiso9660-12 libiso9660-11t64 libiso9660-dev libcdio19t64 libcdio-dev
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================-============-============-============================================================
ii libcdio-dev 2.1.0-5 i386 library to read and control CD-ROM (development files)
ii libcdio19t64:i386 2.1.0-5 i386 library to read and control CD-ROM
ii libdevice-cdio-perl 2.0.0-2+b4 i386 CD Input and control library
ii libiso9660-11t64:i386 2.1.0-5 i386 library to work with ISO9660 filesystems
ii libiso9660-12:i386 2.2.0-1 i386 library to work with ISO9660 filesystems
ii libiso9660-dev:i386 2.1.0-5 i386 library to work with ISO9660 filesystems (development files)
Run `autopkgtest -B . -- null' and check that it passes.
Then, since installing the newer version of libcdio19t64 (2.2.0-1) with
`dpkg -i' would require reinstalling other packages too, I manually
extracted the library binary and copied it to the file system, i.e.:
# dpkg-deb --extract libcdio19t64_2.2.0-1_i386.deb ext/
# cp ext/usr/lib/i386-linux-gnu/libcdio.so.19.0.0 /usr/lib/i386-linux-gnu/libcdio.so.19.0.0
Re-run `autopkgtest -B . -- null' and check that it now fails!
Finally, installing a freshly built version of libdevice-cdio-perl (one
that is linked against the new version of libcdio (2.2.0-1)), makes the
test pass again.
* Gabriel F. T. Gomes:
> I think it is impossible to do what you're suggesting
I said this before, but I found this hacky way of doing it to pin-point
(somewhat) the source of the test failures.
Reply to: