Source: swi-prolog
Version: 9.0.4+dfsg-1
Severity: serious

The swi-prolog core package ships a shared library, libswipl.so.  The soname
of this library has changed between stable and testing, from libswipl.so.8
to libswipl.so.9.

While swi-prolog-core declares many "ABI" virtual packages, it doesn't
declare one saying what the soname is, which is the most standard way of
expressing dependencies in Debian packages.

As a result, logol-bin in stable has dependencies on:

  swi-prolog-core (>= 8.4.2+dfsg), swi-prolog, swi-prolog-abi-binary-68

And these dependencies are satisfied by the swi-prolog-core in testing BUT
installing the swi-prolog-core from testing with the logol-bin from stable
is broken.

This was correctly detected by the ci.debian.net infrastructure back in
December (though the logs from those runs have now been discarded).
https://ci.debian.net/packages/l/logol/testing/amd64/

swi-prolog should:
- make sure there is a real or virtual package libswipl9
- make sure there is a shlibs or symbols file pointing to libswipl9, so that
packages which have an ELF dependency on this library also have that
expressed as a package dependency
- declare a Breaks: on logol-bin (<< 1.7.9+dfsg-6) so that older versions
which depend on a different SONAME aren't broken by partial upgrades.

logol should then be rebuilt to pick up a dependency on libswipl9.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                   https://www.debian.org/
slanga...@ubuntu.com                                     vor...@debian.org

Attachment: signature.asc
Description: PGP signature

Reply via email to