On Thu, Feb 01, 09:42, Steve Langasek wrote:

> Source: liblopsub
> Version: 1.0.4-1
> Severity: serious
> Tags: patch pending
> Justification: library ABI skew on upgrade
> User: debian-...@lists.debian.org
> Usertags: time-t
> 
> Dear maintainer,
> 
> As part of the 64-bit time_t transition required to support 32-bit
> architectures in 2038 and beyond
> (https://wiki.debian.org/ReleaseGoals/64bit-time), we have identified
> liblopsub as a source package shipping runtime libraries whose ABI
> either is affected by the change in size of time_t, or could not be
> analyzed via abi-compliance-checker (and therefore to be on the safe
> side we assume is affected).
> 
> To ensure that inconsistent combinations of libraries with their
> reverse-dependencies are never installed together, it is necessary to
> have a library transition, which is most easily done by renaming the
> runtime library package.
> 
> Since turning on 64-bit time_t is being handled centrally through a change
> to the default dpkg-buildflags (https://bugs.debian.org/1037136), it is
> important that libraries affected by this ABI change all be uploaded close
> together in time.  Therefore I have prepared a 0-day NMU for liblopsub
> which will initially be uploaded to experimental if possible, then to
> unstable after packages have cleared binary NEW.
> 
> Please find the patch for this NMU attached.

Thanks for the patch. I've applied it to a temporary git branch for
now, see below. Since the previous upload (1.0.4-1 in 2023-06) two
unrelated bugs have been found and fixed, so it would be good to get
these in as well. Do you want me to adjust the debian/changelog to
mention these fixes before merging the temporary branch?

> If you have any concerns about this patch, please reach out ASAP.

No concerns but some questions:

* The tfortune package depends on liblopsub and currently has

        Depends: ${shlibs:Depends}, liblopsub1, ${misc:Depends}

in its own debian/control file. When would be the best time to replace
liblopsub1 by liblopsub1t64?

* Why did you call the new version 1.0.4-1.1? Why not 1.0.5-1 instead?

* Do I need to do anything else to get this going besides merging
the branch and pushing it to the public repo?

Thanks
Andre
---
commit 806c7a89423cf70c1593325de24be0b160ffde96
Author: Steve Langasek <vor...@debian.org>
Date:   Thu Feb 1 12:47:49 2024 +0100

    64-bit time_t transition.
    
    As part of the 64-bit time_t transition required
    to support 32-bit architectures in 2038 and beyond
    (https://wiki.debian.org/ReleaseGoals/64bit-time), we have identified
    liblopsub as a source package shipping runtime libraries whose ABI
    either is affected by the change in size of time_t, or could not be
    analyzed via abi-compliance-checker (and therefore to be on the safe
    side we assume is affected).
    
    To ensure that inconsistent combinations of libraries with their
    reverse-dependencies are never installed together, it is necessary
    to have a library transition, which is most easily done by renaming
    the runtime library package.
    
    Since turning on 64-bit time_t is being handled
    centrally through a change to the default dpkg-buildflags
    (https://bugs.debian.org/1037136), it is important that libraries
    affected by this ABI change all be uploaded close together in time.
    Therefore I have prepared a 0-day NMU for liblopsub which will
    initially be uploaded to experimental if possible, then to unstable
    after packages have cleared binary NEW.
    
    Signed-off-by: Andre Noll <m...@tuebingen.mpg.de>

diff --git a/debian/changelog b/debian/changelog
index 08cd28f..44bbaeb 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+liblopsub (1.0.4-1.1) experimental; urgency=medium
+
+  * Non-maintainer upload.
+  * Rename libraries for 64-bit time_t transition.
+
+ -- Steve Langasek <vor...@debian.org>  Thu, 01 Feb 2024 09:30:36 +0000
+
 liblopsub (1.0.4-1) unstable; urgency=low
 
   * Make the build reproducible (Chris Lamb, Vagrant Cascadian). Closes:
diff --git a/debian/control b/debian/control
index 004a71d..fe135b9 100644
--- a/debian/control
+++ b/debian/control
@@ -8,7 +8,10 @@ Homepage: http://people.tuebingen.mpg.de/maan/lopsub
 Vcs-Browser: http://git.tuebingen.mpg.de/lopsub.git
 Vcs-Git: git://git.tuebingen.mpg.de/lopsub.git
 
-Package: liblopsub1
+Package: liblopsub1t64
+Provides: ${t64:Provides}
+Replaces: liblopsub1
+Breaks: liblopsub1 (<< ${source:Version})
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: Long Option Parser for Subcommands
@@ -25,7 +28,7 @@ Homepage: http://people.tuebingen.mpg.de/maan/lopsub
 
 Package: liblopsub-dev
 Architecture: any
-Depends: ${shlibs:Depends}, liblopsub1 (= ${binary:Version}), ${misc:Depends}
+Depends: ${shlibs:Depends}, liblopsub1t64 (= ${binary:Version}), 
${misc:Depends}
 Description: Long Option Parser for Subcommand - headers
  Lopsub  is  an  open  source library written in C which aims to ease
  the task of creating, documenting and parsing the options of Unix
diff --git a/debian/liblopsub1.install b/debian/liblopsub1t64.install
similarity index 100%
rename from debian/liblopsub1.install
rename to debian/liblopsub1t64.install
diff --git a/debian/liblopsub1t64.lintian-overrides 
b/debian/liblopsub1t64.lintian-overrides
new file mode 100644
index 0000000..bac78b9
--- /dev/null
+++ b/debian/liblopsub1t64.lintian-overrides
@@ -0,0 +1 @@
+liblopsub1t64: package-name-doesnt-match-sonames liblopsub1
diff --git a/debian/rules b/debian/rules
index 3e73eac..3b5e4f1 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,7 +3,7 @@
 # invoked with the package root as the current directory.
 
 sourcepackage := liblopsub
-package := liblopsub1
+package := liblopsub1t64
 devpackage := liblopsub-dev
 
 define checkdir
-- 
Max Planck Institute for Biology
Max-Planck-Ring 5, 72076 Tübingen, Germany. Phone: (+49) 7071 601 829
http://people.tuebingen.mpg.de/maan/

Attachment: signature.asc
Description: PGP signature

Reply via email to