Control: tags -1 + patch

On 2023-03-29 08:50 -0700, Steve Langasek wrote:

> On Wed, Mar 29, 2023 at 03:45:26PM +0500, Lev Lamberov wrote:
>> Thanks for reporting!
>
>> I've tagged this bug report with 'help'. I'm a bit overwhelmed at the
>> moment and don't think I will have time for it or any other Debian stuff
>> in the coming weeks. NMU is most welcome.
>
> Afraid I don't have capacity to help with this either.  I've applied a
> quick-stop fix to Ubuntu to have swi-prolog-core declare Breaks: against
> older incompatible versions of logol - and also libppl-swi, which turns out
> to also be affected.  Doing the same in Debian may be enough for the current
> release, but it's good to not lose sight of a long-term fix since there are
> bound to be other SONAME changes in the future.

If only the Breaks are added, the situation will resurface as soon as
libswipl.so.10 comes along.  To prevent this from happening, I have
attached a minimal fix that provides the libswipl9 virtual package and a
shlibs file.  Rebuilding logol-bin then made it depend on libswipl9 as
desired.  The second patch adds the necessary Breaks (ppl actually needs
a binNMU, its version in bookworm is the same as in bullseye).

I think that libswipl9 should be split into its own package after the
bookworm release, the freeze policy forbids doing that now.

Cheers,
       Sven

From b9d119873ed8d7fa891bce356cffe4432c82f517 Mon Sep 17 00:00:00 2001
From: Sven Joachim <svenj...@gmx.de>
Date: Thu, 30 Mar 2023 19:29:55 +0200
Subject: [PATCH 1/2] Provide a virtual libswipl9 package in swi-prolog-core

Provide the libswipl9 virtual package and ship a minimal shlibs file
to ensure that reverse dependencies pick up the dependency on
libswipl9 rather than swi-prolog-core.

Closes: #1033636
---
 debian/control                | 3 ++-
 debian/swi-prolog-core.shlibs | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)
 create mode 100644 debian/swi-prolog-core.shlibs

diff --git a/debian/control b/debian/control
index eb2b7309..ed7a4d28 100644
--- a/debian/control
+++ b/debian/control
@@ -104,7 +104,8 @@ Provides: swi-prolog-abi-${swi-prolog:ABI},
           swi-prolog-abi-foreign-${swi-prolog:FABI},
           swi-prolog-abi-binary-${swi-prolog:BABI},
           swi-prolog-abi-qlf-${swi-prolog:QLF},
-          swi-prolog-abi-states-${swi-prolog:SSTATES}
+          swi-prolog-abi-states-${swi-prolog:SSTATES},
+          libswipl9
 Description: ISO/Edinburgh-style Prolog interpreter - core system
  SWI-Prolog is a fast and powerful ISO/Edinburgh-style Prolog compiler with a
  rich set of built-in predicates. It offers a fast, robust and small
diff --git a/debian/swi-prolog-core.shlibs b/debian/swi-prolog-core.shlibs
new file mode 100644
index 00000000..6251db33
--- /dev/null
+++ b/debian/swi-prolog-core.shlibs
@@ -0,0 +1 @@
+libswipl 9 libswipl9
--
2.40.0

From 4ed85ac59ee892ed199da19f0d9dd0874e31a05f Mon Sep 17 00:00:00 2001
From: Sven Joachim <svenj...@gmx.de>
Date: Thu, 30 Mar 2023 19:31:40 +0200
Subject: [PATCH 2/2] Add Versioned Breaks against logol-bin and libppl-swi

Older versions of these packages were linked against libswipl.so.8
rather than libswipl.so.9 and will stop working after swi-prolog-core
has been upgraded.

Note that libppl-swi actually has not been rebuilt yet.
---
 debian/control | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/debian/control b/debian/control
index ed7a4d28..fce48eb2 100644
--- a/debian/control
+++ b/debian/control
@@ -98,7 +98,9 @@ Suggests: elpa-ediprolog,
           swi-prolog-java (= ${binary:Version}),
           swi-prolog-odbc (= ${binary:Version}),
           swi-prolog-bdb (= ${binary:Version})
-Breaks: swi-prolog-nox (<< 8.1.30+dfsg-1)
+Breaks: swi-prolog-nox (<< 8.1.30+dfsg-1),
+        logol-bin (<< 1.7.9+dfsg-6),
+        libppl-swi (<< 1:1.2-8.1+b1)
 Replaces: swi-prolog-nox (<< 8.1.30+dfsg-1)
 Provides: swi-prolog-abi-${swi-prolog:ABI},
           swi-prolog-abi-foreign-${swi-prolog:FABI},
--
2.40.0

Reply via email to