Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-03-03 Thread Andre Noll
On Sun, Mar 03, 11:47, Steve Langasek wrote

> > Below it what I've just applied. The patch looks different to what
> > you've sent, but the resulting tree is identical. Please let me know
> > if you're OK with the commit message.
> 
> No objections.

Merged and pushed out to the public repo.

Thanks
Andre
-- 
Max Planck Institute for Biology
Tel: (+49) 7071 601 829
Max-Planck-Ring 5, 72076 Tübingen, Germany
http://people.tuebingen.mpg.de/maan/


signature.asc
Description: PGP signature


Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-03-03 Thread Steve Langasek
On Sun, Mar 03, 2024 at 05:08:19PM +0100, Andre Noll wrote:
> On Fri, Mar 01, 05:37, Steve Langasek wrote:

> > Please find attached a final version of this patch for the time_t
> > transition.  This patch is being uploaded to unstable.

> > Note that this adds a versioned build-dependency on dpkg-dev, to guard
> > against accidental backports with a wrong ABI.

> Applied. Since the previous version was applied and made public
> last month, I've reverted that patch, applied this final version and
> squashed the two new commits into one.

> Below it what I've just applied. The patch looks different to what
> you've sent, but the resulting tree is identical. Please let me know
> if you're OK with the commit message.

No objections.

Cheers,
-- 
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


signature.asc
Description: PGP signature


Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-03-03 Thread Andre Noll
On Fri, Mar 01, 05:37, Steve Langasek wrote:

> Please find attached a final version of this patch for the time_t
> transition.  This patch is being uploaded to unstable.
> 
> Note that this adds a versioned build-dependency on dpkg-dev, to guard
> against accidental backports with a wrong ABI.

Applied. Since the previous version was applied and made public
last month, I've reverted that patch, applied this final version and
squashed the two new commits into one.

Below it what I've just applied. The patch looks different to what
you've sent, but the resulting tree is identical. Please let me know
if you're OK with the commit message.

Thanks
Andre
---
commit b156a0cabd42582e9c430ae4a284f8815746914e
Author: Steve Langasek 
Date:   Sun Mar 3 16:47:53 2024 +0100

debian: Final version of 64-bit time_t transition.

This partially reverts reverts commit b4d4de17a5c8, replacing it with
the version that has been uploaded to unstable.

It adds a versioned build-dependency on dpkg-dev to guard against
accidental backports with a wrong ABI.

Signed-off-by: Andre Noll 

diff --git a/debian/changelog b/debian/changelog
index 44bbaeb..53995e3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,9 @@
-liblopsub (1.0.4-1.1) experimental; urgency=medium
+liblopsub (1.0.4-1.1) unstable; urgency=medium
 
   * Non-maintainer upload.
-  * Rename libraries for 64-bit time_t transition.
+  * Rename libraries for 64-bit time_t transition.  Closes: #1062407
 
- -- Steve Langasek   Thu, 01 Feb 2024 09:30:36 +
+ -- Steve Langasek   Fri, 01 Mar 2024 05:37:06 +
 
 liblopsub (1.0.4-1) unstable; urgency=low
 
diff --git a/debian/control b/debian/control
index fe135b9..f488fe2 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: liblopsub
 Section: libdevel
 Priority: optional
 Maintainer: Andre Noll 
-Build-Depends: m4, flex, debhelper (>= 10.0)
+Build-Depends: dpkg-dev (>= 1.22.5), m4, flex, debhelper (>= 10.0)
 Standards-Version: 4.3.0
 Homepage: http://people.tuebingen.mpg.de/maan/lopsub
 Vcs-Browser: http://git.tuebingen.mpg.de/lopsub.git
diff --git a/debian/liblopsub1t64.install b/debian/liblopsub1t64.install
deleted file mode 100644
index 6234859..000
--- a/debian/liblopsub1t64.install
+++ /dev/null
@@ -1,2 +0,0 @@
-debian/tmp/usr/share/man/man7/*
-debian/tmp/usr/lib/*/liblopsub.so.*
diff --git a/debian/liblopsub1t64.lintian-overrides 
b/debian/liblopsub1t64.lintian-overrides
deleted file mode 100644
index bac78b9..000
--- a/debian/liblopsub1t64.lintian-overrides
+++ /dev/null
@@ -1 +0,0 @@
-liblopsub1t64: package-name-doesnt-match-sonames liblopsub1
-- 
Max Planck Institute for Biology
Max-Planck-Ring 5, 72076 Tübingen, Germany. Phone: (+49) 7071 601 829
http://people.tuebingen.mpg.de/maan/


signature.asc
Description: PGP signature


Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-02-29 Thread Steve Langasek
Dear maintainer,

Please find attached a final version of this patch for the time_t
transition.  This patch is being uploaded to unstable.

Note that this adds a versioned build-dependency on dpkg-dev, to guard
against accidental backports with a wrong ABI.

Thanks!


-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.5.0-14-generic (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
diff -Nru liblopsub-1.0.4/debian/changelog liblopsub-1.0.4/debian/changelog
--- liblopsub-1.0.4/debian/changelog2023-07-02 12:12:13.0 +
+++ liblopsub-1.0.4/debian/changelog2024-03-01 05:37:06.0 +
@@ -1,3 +1,10 @@
+liblopsub (1.0.4-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Rename libraries for 64-bit time_t transition.  Closes: #1062407
+
+ -- Steve Langasek   Fri, 01 Mar 2024 05:37:06 +
+
 liblopsub (1.0.4-1) unstable; urgency=low
 
   * Make the build reproducible (Chris Lamb, Vagrant Cascadian). Closes:
diff -Nru liblopsub-1.0.4/debian/control liblopsub-1.0.4/debian/control
--- liblopsub-1.0.4/debian/control  2023-07-02 12:12:13.0 +
+++ liblopsub-1.0.4/debian/control  2024-03-01 05:37:06.0 +
@@ -2,13 +2,16 @@
 Section: libdevel
 Priority: optional
 Maintainer: Andre Noll 
-Build-Depends: m4, flex, debhelper (>= 10.0)
+Build-Depends: dpkg-dev (>= 1.22.5), m4, flex, debhelper (>= 10.0)
 Standards-Version: 4.3.0
 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 @@
 
 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 -Nru liblopsub-1.0.4/debian/liblopsub1.install 
liblopsub-1.0.4/debian/liblopsub1.install
--- liblopsub-1.0.4/debian/liblopsub1.install   2023-07-02 12:12:13.0 
+
+++ liblopsub-1.0.4/debian/liblopsub1.install   1970-01-01 00:00:00.0 
+
@@ -1,2 +0,0 @@
-debian/tmp/usr/share/man/man7/*
-debian/tmp/usr/lib/*/liblopsub.so.*
diff -Nru liblopsub-1.0.4/debian/liblopsub1t64.install 
liblopsub-1.0.4/debian/liblopsub1t64.install
--- liblopsub-1.0.4/debian/liblopsub1t64.install1970-01-01 
00:00:00.0 +
+++ liblopsub-1.0.4/debian/liblopsub1t64.install2023-07-02 
12:12:13.0 +
@@ -0,0 +1,2 @@
+debian/tmp/usr/share/man/man7/*
+debian/tmp/usr/lib/*/liblopsub.so.*
diff -Nru liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides 
liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides
--- liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides  1970-01-01 
00:00:00.0 +
+++ liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides  2024-03-01 
05:36:52.0 +
@@ -0,0 +1 @@
+liblopsub1t64: package-name-doesnt-match-sonames liblopsub1
diff -Nru liblopsub-1.0.4/debian/rules liblopsub-1.0.4/debian/rules
--- liblopsub-1.0.4/debian/rules2023-07-02 12:12:13.0 +
+++ liblopsub-1.0.4/debian/rules2024-03-01 05:37:05.0 +
@@ -3,7 +3,7 @@
 # invoked with the package root as the current directory.
 
 sourcepackage := liblopsub
-package := liblopsub1
+package := liblopsub1t64
 devpackage := liblopsub-dev
 
 define checkdir


Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-02-02 Thread Andre Noll
On Thu, Feb 01, 21:13, Steve Langasek wrote:

> > * 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?
> 
> You should just drop this hard-coded dependency on liblopsub1. This is
> what shlibs are for.

Done. Thanks for the suggestion.

> > * Do I need to do anything else to get this going besides merging
> > the branch and pushing it to the public repo?
> 
> No.  Please do not upload this change to unstable; these changes will be
> batch-uploaded to unstable at the appropriate time, *after* dpkg has been
> uploaded to unstable changing the default build flags.
> 
> Once the NMU has been uploaded to unstable, you are free to make further
> uploads to unstable incorporating this change.

The master branch of the public repo now contains your patch.

Best
Andre
-- 
Max Planck Institute for Biology
Max-Planck-Ring 5, 72076 Tübingen, Germany. Phone: (+49) 7071 601 829
http://people.tuebingen.mpg.de/maan/


signature.asc
Description: PGP signature


Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-02-01 Thread Steve Langasek
On Thu, Feb 01, 2024 at 02:35:54PM +0100, Andre Noll wrote:
> On Thu, Feb 01, 09:42, Steve Langasek wrote:

> 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?

You should just drop this hard-coded dependency on liblopsub1. This is
what shlibs are for.  

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

This is a very basic question about package versioning which is answered in
Debian Policy.

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

No.  Please do not upload this change to unstable; these changes will be
batch-uploaded to unstable at the appropriate time, *after* dpkg has been
uploaded to unstable changing the default build flags.

Once the NMU has been uploaded to unstable, you are free to make further
uploads to unstable incorporating this change.

-- 
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


signature.asc
Description: PGP signature


Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-02-01 Thread Andre Noll
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 
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 

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   Thu, 01 Feb 2024 09:30:36 +
+
 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 

Bug#1062407: liblopsub: NMU diff for 64-bit time_t transition

2024-02-01 Thread Steve Langasek
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.

If you have any concerns about this patch, please reach out ASAP.  Although
this package will be uploaded to experimental immediately, there will be a
period of several days before we begin uploads to unstable; so if information
becomes available that your package should not be included in the transition,
there is time for us to amend the planned uploads.



-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.5.0-14-generic (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
diff -Nru liblopsub-1.0.4/debian/changelog liblopsub-1.0.4/debian/changelog
--- liblopsub-1.0.4/debian/changelog2023-07-02 12:12:13.0 +
+++ liblopsub-1.0.4/debian/changelog2024-02-01 09:30:36.0 +
@@ -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   Thu, 01 Feb 2024 09:30:36 +
+
 liblopsub (1.0.4-1) unstable; urgency=low
 
   * Make the build reproducible (Chris Lamb, Vagrant Cascadian). Closes:
diff -Nru liblopsub-1.0.4/debian/control liblopsub-1.0.4/debian/control
--- liblopsub-1.0.4/debian/control  2023-07-02 12:12:13.0 +
+++ liblopsub-1.0.4/debian/control  2024-02-01 09:30:35.0 +
@@ -8,7 +8,10 @@
 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 @@
 
 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 -Nru liblopsub-1.0.4/debian/liblopsub1.install 
liblopsub-1.0.4/debian/liblopsub1.install
--- liblopsub-1.0.4/debian/liblopsub1.install   2023-07-02 12:12:13.0 
+
+++ liblopsub-1.0.4/debian/liblopsub1.install   1970-01-01 00:00:00.0 
+
@@ -1,2 +0,0 @@
-debian/tmp/usr/share/man/man7/*
-debian/tmp/usr/lib/*/liblopsub.so.*
diff -Nru liblopsub-1.0.4/debian/liblopsub1t64.install 
liblopsub-1.0.4/debian/liblopsub1t64.install
--- liblopsub-1.0.4/debian/liblopsub1t64.install1970-01-01 
00:00:00.0 +
+++ liblopsub-1.0.4/debian/liblopsub1t64.install2023-07-02 
12:12:13.0 +
@@ -0,0 +1,2 @@
+debian/tmp/usr/share/man/man7/*
+debian/tmp/usr/lib/*/liblopsub.so.*
diff -Nru liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides 
liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides
--- liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides  1970-01-01 
00:00:00.0 +
+++ liblopsub-1.0.4/debian/liblopsub1t64.lintian-overrides  2024-02-01 
09:30:35.0 +
@@ -0,0 +1 @@
+liblopsub1t64: package-name-doesnt-match-sonames liblopsub1
diff -Nru liblopsub-1.0.4/debian/rules liblopsub-1.0.4/debian/rules
--- liblopsub-1.0.4/debian/rules2023-07-02 12:12:13.0 +
+++ liblopsub-1.0.4/debian/rules2024-02-01 09:30:36.0