Debian Bug report logs - #934405
debhelper: Please ignore binNMUs in get_source_date_epoch() function

version graph

Package: debhelper; Maintainer for debhelper is Debhelper Maintainers <debhelper@packages.debian.org>; Source for debhelper is src:debhelper (PTS, buildd, popcon).

Reported by: Dmitry Shachnev <mitya57@debian.org>

Date: Sat, 10 Aug 2019 18:27:11 UTC

Severity: wishlist

Tags: wontfix

Found in version debhelper/12.3

Done: Niels Thykier <niels@thykier.net>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debhelper Maintainers <debhelper@packages.debian.org>:
Bug#934405; Package debhelper. (Sat, 10 Aug 2019 18:27:13 GMT) (full text, mbox, link).


Acknowledgement sent to Dmitry Shachnev <mitya57@debian.org>:
New Bug report received and forwarded. Copy sent to Debhelper Maintainers <debhelper@packages.debian.org>. (Sat, 10 Aug 2019 18:27:13 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Dmitry Shachnev <mitya57@debian.org>
To: submit@bugs.debian.org
Subject: debhelper: Please ignore binNMUs in get_source_date_epoch() function
Date: Sat, 10 Aug 2019 21:24:37 +0300
[Message part 1 (text/plain, inline)]
Package: debhelper
Version: 12.3
Severity: wishlist

Dear debhelper maintainers,

Our package qtbase5-dev (which is marked as Multi-Arch: same) was recently
binNMUed, after which it started producing errors when trying to install it
for different architectures (so it has become non-same actually). Please
see bugs #934215 and #934265.

diffoscope showed me the following diff for
/usr/share/qt5/doc/global/template/images/Qt-logo.png:

   tIME {
  -    #  7 Aug 2019 18:06:40 GMT
  +    #  7 Aug 2019 17:59:06 GMT
  ...

I figured out that these timestamps are coming from binNMU changelogs.
For example, usr/share/doc/qtbase5-dev/changelog.Debian.i386.gz has:

  qtbase-opensource-src (5.11.3+dfsg1-2+b1) sid; urgency=low, binary-only=yes

    * Binary-only non-maintainer upload for i386; no source changes.
    * Rebuild with libdouble-conversion3.

   -- i386 Build Daemon (x86-grnet-01) <buildd_amd64-x86-grnet-01@buildd.debian.org>  Wed, 07 Aug 2019 17:59:06 +0000

The date in PNG metadata is changed by dh_strip_nondeterminism. Originally
I wanted to submit a bug against that tool, but I noticed that it uses
get_source_date_epoch() function from Debian::Debhelper::Dh_Lib module.

I think it would be nice if that function ignored binNMU changelog entries.
As a workaround, we will use the -X option of dh_strip_nondeterminism for now.

--
Dmitry Shachnev
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debhelper Maintainers <debhelper@packages.debian.org>:
Bug#934405; Package debhelper. (Mon, 12 Aug 2019 15:51:03 GMT) (full text, mbox, link).


Acknowledgement sent to Holger Levsen <holger@layer-acht.org>:
Extra info received and forwarded to list. Copy sent to Debhelper Maintainers <debhelper@packages.debian.org>. (Mon, 12 Aug 2019 15:51:03 GMT) (full text, mbox, link).


Message #10 received at 934405@bugs.debian.org (full text, mbox, reply):

From: Holger Levsen <holger@layer-acht.org>
To: Dmitry Shachnev <mitya57@debian.org>, 934405@bugs.debian.org, Reproducible Builds discussion list <reproducible-builds@lists.alioth.debian.org>
Subject: Re: Bug#934405: debhelper: Please ignore binNMUs in get_source_date_epoch() function
Date: Mon, 12 Aug 2019 15:48:06 +0000
[Message part 1 (text/plain, inline)]
Hi,

thanks for filing a bug report about this issue. However...

On Sat, Aug 10, 2019 at 09:24:37PM +0300, Dmitry Shachnev wrote:
> I figured out that these timestamps are coming from binNMU changelogs.

yes, binNMUs change the sources, despite their name. they are a hack.

see #894441: 'binNMUs should be replaced by easy "no-change-except-debian/changelog-uploads"'

though by now I've realized that binNMUs are needed by the releaseteam
to get transitions done, and thus binNMUs should be followed (once the
transition in question is done) by (easily triggered) sourceful uploads,
to get all archs in sync, also for multiarch.

> I think it would be nice if that function ignored binNMU changelog entries.

nope, please dont. using changelog entries inconsistently is a recipe
for desaster.


-- 
cheers,
	Holger

-------------------------------------------------------------------------------
               holger@(debian|reproducible-builds|layer-acht).org
       PGP fingerprint: B8BF 5413 7B09 D35C F026 FE9D 091A B856 069A AA1C
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debhelper Maintainers <debhelper@packages.debian.org>:
Bug#934405; Package debhelper. (Mon, 12 Aug 2019 16:57:16 GMT) (full text, mbox, link).


Message #13 received at 934405@bugs.debian.org (full text, mbox, reply):

From: Mattia Rizzolo <mattia@debian.org>
To: Holger Levsen <holger@layer-acht.org>
Cc: Dmitry Shachnev <mitya57@debian.org>, 934405@bugs.debian.org, Reproducible Builds discussion list <reproducible-builds@lists.alioth.debian.org>
Subject: Re: Bug#934405: debhelper: Please ignore binNMUs in get_source_date_epoch() function
Date: Mon, 12 Aug 2019 18:53:01 +0200
[Message part 1 (text/plain, inline)]
On Mon, Aug 12, 2019 at 03:48:06PM +0000, Holger Levsen wrote:
> > I think it would be nice if that function ignored binNMU changelog entries.
> 
> nope, please dont. using changelog entries inconsistently is a recipe
> for desaster.

Same.

My notes from IRC, so they can last longer:

[09:08:42 PM] <nthykier> comments on #934405 is welcome
[09:08:45 PM] -zwiebelbot- Debian#934405: debhelper: Please ignore binNMUs in get_source_date_epoch() function - https://bugs.debian.org/934405
[10:53:13 PM] <mapreri> nthykier: well, we used to do that in the past, i.e. using the previous changelog date.  But we switched away because it was also causing problems: #843773
[10:53:18 PM] -zwiebelbot- Debian#843773: sbuild should use build date as binnmu changelog date - https://bugs.debian.org/843773
[10:53:45 PM] <mapreri> nthykier: I fear that having debhelper's get_source_date_epoch() do that, would still lead to the same situation it was in the past, leading to that same bug once again, just via a different route.
[10:55:06 PM] <mapreri> If I have to express my opinion on this matter, it's a clear case on why keeping the timestamps within file metadata of generated files is mostly a horrible idea and should be removed, instead of normalized.

-- 
regards,
                        Mattia Rizzolo

GPG Key: 66AE 2B4A FCCF 3F52 DA18  4D18 4B04 3FCD B944 4540      .''`.
more about me:  https://mapreri.org                             : :'  :
Launchpad user: https://launchpad.net/~mapreri                  `. `'`
Debian QA page: https://qa.debian.org/developer.php?login=mattia  `-
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debhelper Maintainers <debhelper@packages.debian.org>:
Bug#934405; Package debhelper. (Tue, 13 Aug 2019 11:57:03 GMT) (full text, mbox, link).


Acknowledgement sent to Dmitry Shachnev <mitya57@debian.org>:
Extra info received and forwarded to list. Copy sent to Debhelper Maintainers <debhelper@packages.debian.org>. (Tue, 13 Aug 2019 11:57:04 GMT) (full text, mbox, link).


Message #18 received at 934405@bugs.debian.org (full text, mbox, reply):

From: Dmitry Shachnev <mitya57@debian.org>
To: Mattia Rizzolo <mattia@debian.org>, 934405@bugs.debian.org
Cc: Holger Levsen <holger@layer-acht.org>, Reproducible Builds discussion list <reproducible-builds@lists.alioth.debian.org>
Subject: Re: Bug#934405: debhelper: Please ignore binNMUs in get_source_date_epoch() function
Date: Tue, 13 Aug 2019 14:53:03 +0300
[Message part 1 (text/plain, inline)]
Hi all,

On Mon, Aug 12, 2019 at 06:53:01PM +0200, Mattia Rizzolo wrote:
> On Mon, Aug 12, 2019 at 03:48:06PM +0000, Holger Levsen wrote:
> > > I think it would be nice if that function ignored binNMU changelog entries.
> >
> > nope, please dont. using changelog entries inconsistently is a recipe
> > for desaster.
>
> Same.
>
> My notes from IRC, so they can last longer:
> 
> [09:08:42 PM] <nthykier> comments on #934405 is welcome
> [09:08:45 PM] -zwiebelbot- Debian#934405: debhelper: Please ignore binNMUs
> in get_source_date_epoch() function - https://bugs.debian.org/934405
> [10:53:13 PM] <mapreri> nthykier: well, we used to do that in the past, i.e.
> using the previous changelog date.  But we switched away because it was also
> causing problems: #843773
> [10:53:18 PM] -zwiebelbot- Debian#843773: sbuild should use build date as
> binnmu changelog date - https://bugs.debian.org/843773
> [10:53:45 PM] <mapreri> nthykier: I fear that having debhelper's
> get_source_date_epoch() do that, would still lead to the same situation it
> was in the past, leading to that same bug once again, just via a different
> route.

OK, fair enough — using the previous changelog entry has its downsides.

For now I have just disabled normalizing PNGs in qtbase-opensource-src.

Feel free to close this bug as wontfix.

> [10:55:06 PM] <mapreri> If I have to express my opinion on this matter,
> it's a clear case on why keeping the timestamps within file metadata of
> generated files is mostly a horrible idea and should be removed, instead of
> normalized.

+1.

--
Dmitry Shachnev
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debhelper Maintainers <debhelper@packages.debian.org>:
Bug#934405; Package debhelper. (Tue, 13 Aug 2019 21:03:03 GMT) (full text, mbox, link).


Acknowledgement sent to Niels Thykier <niels@thykier.net>:
Extra info received and forwarded to list. Copy sent to Debhelper Maintainers <debhelper@packages.debian.org>. (Tue, 13 Aug 2019 21:03:03 GMT) (full text, mbox, link).


Message #23 received at 934405@bugs.debian.org (full text, mbox, reply):

From: Niels Thykier <niels@thykier.net>
To: 934405@bugs.debian.org, Dmitry Shachnev <mitya57@debian.org>
Subject: Re: debhelper: Please ignore binNMUs in get_source_date_epoch() function
Date: Tue, 13 Aug 2019 20:43:00 +0000
Control: tags -1 wontfix

On Sat, 10 Aug 2019 21:24:37 +0300 Dmitry Shachnev <mitya57@debian.org>
wrote:
> Package: debhelper
> Version: 12.3
> Severity: wishlist
> 
> Dear debhelper maintainers,
> 
> Our package qtbase5-dev (which is marked as Multi-Arch: same) was recently
> binNMUed, after which it started producing errors when trying to install it
> for different architectures (so it has become non-same actually). Please
> see bugs #934215 and #934265.
> 
> diffoscope showed me the following diff for
> /usr/share/qt5/doc/global/template/images/Qt-logo.png:
> 
>    tIME {
>   -    #  7 Aug 2019 18:06:40 GMT
>   +    #  7 Aug 2019 17:59:06 GMT
>   ...
> 
> I figured out that these timestamps are coming from binNMU changelogs.
> For example, usr/share/doc/qtbase5-dev/changelog.Debian.i386.gz has:
> 
>   qtbase-opensource-src (5.11.3+dfsg1-2+b1) sid; urgency=low, binary-only=yes
> 
>     * Binary-only non-maintainer upload for i386; no source changes.
>     * Rebuild with libdouble-conversion3.
> 
>    -- i386 Build Daemon (x86-grnet-01) <buildd_amd64-x86-grnet-01@buildd.debian.org>  Wed, 07 Aug 2019 17:59:06 +0000
> 
> The date in PNG metadata is changed by dh_strip_nondeterminism. Originally
> I wanted to submit a bug against that tool, but I noticed that it uses
> get_source_date_epoch() function from Debian::Debhelper::Dh_Lib module.
> 
> I think it would be nice if that function ignored binNMU changelog entries.
> As a workaround, we will use the -X option of dh_strip_nondeterminism for now.
> 
> --
> Dmitry Shachnev

Hi Dmitry,

I brought up this bug in the #debian-reproducible IRC channel and was
pointed to #843773 as a counter argument against fiddling with the
timestamp get_source_date_epoch.
  Often it is better to *not* store timestamps within file metadata of
generated files in the first place instead of normalizing them (if
possible).

Thanks,
~Niels




Added tag(s) wontfix. Request was from Niels Thykier <niels@thykier.net> to 934405-submit@bugs.debian.org. (Tue, 13 Aug 2019 21:03:03 GMT) (full text, mbox, link).


Reply sent to Niels Thykier <niels@thykier.net>:
You have taken responsibility. (Wed, 14 Aug 2019 07:51:17 GMT) (full text, mbox, link).


Notification sent to Dmitry Shachnev <mitya57@debian.org>:
Bug acknowledged by developer. (Wed, 14 Aug 2019 07:51:17 GMT) (full text, mbox, link).


Message #30 received at 934405-done@bugs.debian.org (full text, mbox, reply):

From: Niels Thykier <niels@thykier.net>
To: 934405-done@bugs.debian.org
Subject: Re: Bug#934405: debhelper: Please ignore binNMUs in get_source_date_epoch() function
Date: Wed, 14 Aug 2019 07:33:00 +0000
On Tue, 13 Aug 2019 14:53:03 +0300 Dmitry Shachnev <mitya57@debian.org>
wrote:
> Hi all,
> 
> On Mon, Aug 12, 2019 at 06:53:01PM +0200, Mattia Rizzolo wrote:
> > On Mon, Aug 12, 2019 at 03:48:06PM +0000, Holger Levsen wrote:
> > > > I think it would be nice if that function ignored binNMU changelog entries.
> > >
> > > nope, please dont. using changelog entries inconsistently is a recipe
> > > for desaster.
> >
> > Same.
> >
> > My notes from IRC, so they can last longer:
> > 
> > [09:08:42 PM] <nthykier> comments on #934405 is welcome
> > [09:08:45 PM] -zwiebelbot- Debian#934405: debhelper: Please ignore binNMUs
> > in get_source_date_epoch() function - https://bugs.debian.org/934405
> > [10:53:13 PM] <mapreri> nthykier: well, we used to do that in the past, i.e.
> > using the previous changelog date.  But we switched away because it was also
> > causing problems: #843773
> > [10:53:18 PM] -zwiebelbot- Debian#843773: sbuild should use build date as
> > binnmu changelog date - https://bugs.debian.org/843773
> > [10:53:45 PM] <mapreri> nthykier: I fear that having debhelper's
> > get_source_date_epoch() do that, would still lead to the same situation it
> > was in the past, leading to that same bug once again, just via a different
> > route.
> 
> OK, fair enough — using the previous changelog entry has its downsides.
> 
> For now I have just disabled normalizing PNGs in qtbase-opensource-src.
> 
> Feel free to close this bug as wontfix.
> 
> > [10:55:06 PM] <mapreri> If I have to express my opinion on this matter,
> > it's a clear case on why keeping the timestamps within file metadata of
> > generated files is mostly a horrible idea and should be removed, instead of
> > normalized.
> 
> +1.
> 
> --
> Dmitry Shachnev

Sorry, I missed there had been replies already.

Closing the bug as it has already been resolved.

Thanks,
~Niels



Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 12 Sep 2019 07:25:47 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed May 17 09:42:03 2023; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.