Debian Bug report logs - #849999
dpkg-dev should not set SOURCE_DATE_EPOCH to the empty string

version graph

Package: dpkg-dev; Maintainer for dpkg-dev is Dpkg Developers <debian-dpkg@lists.debian.org>; Source for dpkg-dev is src:dpkg (PTS, buildd, popcon).

Reported by: Ian Jackson <ijackson@chiark.greenend.org.uk>

Date: Tue, 3 Jan 2017 00:12:02 UTC

Severity: normal

Merged with 849081

Found in versions dpkg/1.18.15, dpkg/1.18.18

Fixed in version dpkg/1.18.19

Done: Guillem Jover <guillem@debian.org>

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, Dpkg Developers <debian-dpkg@lists.debian.org>:
Bug#849999; Package dpkg-dev. (Tue, 03 Jan 2017 00:12:04 GMT) (full text, mbox, link).


Acknowledgement sent to Ian Jackson <ijackson@chiark.greenend.org.uk>:
New Bug report received and forwarded. Copy sent to Dpkg Developers <debian-dpkg@lists.debian.org>. (Tue, 03 Jan 2017 00:12:04 GMT) (full text, mbox, link).


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

From: Ian Jackson <ijackson@chiark.greenend.org.uk>
To: submit@bugs.debian.org
Subject: dpkg-dev should not set SOURCE_DATE_EPOCH to the empty string
Date: Tue, 3 Jan 2017 00:09:37 +0000
Package: dpkg-dev
Version: 1.18.15

If one runs dpkg-buildpackage with an unfinalised changelog entry, it
sets SOURCE_DATE_EPOCH to the empty string.  Then, dpkg-deb can fail.

Steps to reproduce:

 git clone git://git.chiark.greenend.org.uk/~ianmdlvl/vtwm.git \
    -b for-debian/dpkg-dev-source-date-bug
 cd vtwm
 sudo apt-get build-dep vtwm
 dpkg-builldpackage -uc -b

Actual output:

 ...
 dpkg-gencontrol: warning:     debian/changelog(l7): found end of file where expected more change data or trailer
 dh_md5sums
 dh_builddeb
 dpkg-deb: building package 'vtwm-dbgsym' in '../vtwm-dbgsym_5.4.7-4~_amd64.deb'.
 dpkg-deb: error: unable to parse timestamp '': Success
 dh_builddeb: dpkg-deb -z1 -Zxz -Sextreme --build debian/.debhelper/vtwm/dbgsym-root .. returned exit code 2
 debian/rules:55: recipe for target 'binary-arch' failed
 make: *** [binary-arch] Error 1
 dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

Expected output: successful build (with SOURCE_DATE_EPOCH unset, so
unreproducible).

I determined by use of strace that the first program that gets
   SOURCE_DATE_EPOCH=
in the environment is a dpkg-architecture spawned by
dpkg-buildpackage, which is why I think this is dpkg-buildpackage's
fault. 

I think setting SOURCE_DATE_EPOCH to the empty string is always
wrong, so I think the bug is in dpkg-buildpackage, not dpkg-deb.

Thanks,
Ian.

-- 
Ian Jackson <ijackson@chiark.greenend.org.uk>   These opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.



Information forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <debian-dpkg@lists.debian.org>:
Bug#849999; Package dpkg-dev. (Tue, 03 Jan 2017 00:36:05 GMT) (full text, mbox, link).


Acknowledgement sent to Guillem Jover <guillem@debian.org>:
Extra info received and forwarded to list. Copy sent to Dpkg Developers <debian-dpkg@lists.debian.org>. (Tue, 03 Jan 2017 00:36:05 GMT) (full text, mbox, link).


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

From: Guillem Jover <guillem@debian.org>
To: Ian Jackson <ijackson@chiark.greenend.org.uk>, 849999@bugs.debian.org
Subject: Re: Bug#849999: dpkg-dev should not set SOURCE_DATE_EPOCH to the empty string
Date: Tue, 3 Jan 2017 01:31:52 +0100
Hi!

On Tue, 2017-01-03 at 00:09:37 +0000, Ian Jackson wrote:
> Package: dpkg-dev
> Version: 1.18.15

> If one runs dpkg-buildpackage with an unfinalised changelog entry, it
> sets SOURCE_DATE_EPOCH to the empty string.  Then, dpkg-deb can fail.

Yes, and probably other stuff too.

> I think setting SOURCE_DATE_EPOCH to the empty string is always
> wrong, so I think the bug is in dpkg-buildpackage, not dpkg-deb.

Indeed, and that's how I had already locally fixed your other report
(#849081), by always setting SOURCE_DATE_EPOCH in dpkg-buildpackage,
dpkg-source and Dpkg::Source::Archive. :)

I think I'll just merge these bug reports, as they are about the same
underlying issue.

Thanks,
Guillem



Information forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <debian-dpkg@lists.debian.org>:
Bug#849999; Package dpkg-dev. (Wed, 11 Jan 2017 02:42:03 GMT) (full text, mbox, link).


Acknowledgement sent to Guillem Jover <guillem@debian.org>:
Extra info received and forwarded to list. Copy sent to Dpkg Developers <debian-dpkg@lists.debian.org>. (Wed, 11 Jan 2017 02:42:03 GMT) (full text, mbox, link).


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

From: Guillem Jover <guillem@debian.org>
To: Ian Jackson <ijackson@chiark.greenend.org.uk>, 849999@bugs.debian.org
Subject: Re: Bug#849999: dpkg-dev should not set SOURCE_DATE_EPOCH to the empty string
Date: Wed, 11 Jan 2017 03:38:03 +0100
Control: merge -1 849081

On Tue, 2017-01-03 at 01:31:52 +0100, Guillem Jover wrote:
> On Tue, 2017-01-03 at 00:09:37 +0000, Ian Jackson wrote:
> > Package: dpkg-dev
> > Version: 1.18.15
> 
> > If one runs dpkg-buildpackage with an unfinalised changelog entry, it
> > sets SOURCE_DATE_EPOCH to the empty string.  Then, dpkg-deb can fail.
> 
> Yes, and probably other stuff too.
> 
> > I think setting SOURCE_DATE_EPOCH to the empty string is always
> > wrong, so I think the bug is in dpkg-buildpackage, not dpkg-deb.
> 
> Indeed, and that's how I had already locally fixed your other report
> (#849081), by always setting SOURCE_DATE_EPOCH in dpkg-buildpackage,
> dpkg-source and Dpkg::Source::Archive. :)
> 
> I think I'll just merge these bug reports, as they are about the same
> underlying issue.

Doing so now.

Thanks,
Guillem



Marked as found in versions dpkg/1.18.18. Request was from Guillem Jover <guillem@debian.org> to 849999-submit@bugs.debian.org. (Wed, 11 Jan 2017 02:42:03 GMT) (full text, mbox, link).


Merged 849081 849999 Request was from Guillem Jover <guillem@debian.org> to 849999-submit@bugs.debian.org. (Wed, 11 Jan 2017 02:42:05 GMT) (full text, mbox, link).


Added tag(s) pending. Request was from Guillem Jover <guillem@debian.org> to 849081-submitter@bugs.debian.org. (Sun, 22 Jan 2017 23:15:08 GMT) (full text, mbox, link).


Message #22 received at 849081-close@bugs.debian.org (full text, mbox, reply):

From: Guillem Jover <guillem@debian.org>
To: 849081-close@bugs.debian.org
Subject: Bug#849081: fixed in dpkg 1.18.19
Date: Fri, 27 Jan 2017 06:03:34 +0000
Source: dpkg
Source-Version: 1.18.19

We believe that the bug you reported is fixed in the latest version of
dpkg, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 849081@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Guillem Jover <guillem@debian.org> (supplier of updated dpkg package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Fri, 27 Jan 2017 05:43:36 +0100
Source: dpkg
Binary: dpkg libdpkg-dev dpkg-dev libdpkg-perl dselect
Architecture: source
Version: 1.18.19
Distribution: unstable
Urgency: medium
Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
Changed-By: Guillem Jover <guillem@debian.org>
Description:
 dpkg       - Debian package management system
 dpkg-dev   - Debian package development tools
 dselect    - Debian package management front-end
 libdpkg-dev - Debian package management static library
 libdpkg-perl - Dpkg perl modules
Closes: 831524 843925 846164 847926 848705 849081 849913 851441 851889 851891
Changes:
 dpkg (1.18.19) unstable; urgency=medium
 .
   [ Guillem Jover ]
   * Stop emitting Built-For-Profiles from dpkg-gencontrol. The information
     is already provided in .buildinfo files, and including it in the binary
     packages makes them unreproducible even when the profile used would not
     alter its contents. Closes: #831524
   * Do not allow empty epochs and revisions in versions. When there's at
     least one colon or one dash, we should expect epoch and revision numbers.
   * Always set SOURCE_DATE_EPOCH in dpkg-buildpackage and dpkg-source. Use
     the current date if the changelog does not have one. Closes: #849081
   * Refactor update-alternatives pathname existence check into a new function.
   * Avoid useless repeated lstat()s in update-alternatives.
   * Only check for debian/tests/control file once in dpkg-source.
   * Generate Testsuite-Restrictions fields from the test restrictions in
     dpkg-source into .dsc files. Closes: #847926
     Based on a patch by Iain Lane <laney@debian.org>.
   * Improve the ELF ABI mismatch detector in dpkg-shlibdeps, by parsing the
     ELF header ourselves. While still not perfect (things like linux-i386 and
     hurd-i386 will still match), it will filter lots of previously matching
     objects that should have been ignored, and will work even when objdump
     does not know about the specific object details. Closes: #849913
   * Add initial support for DEB_BUILD_OPTIONS to dpkg-genbuildinfo. This will
     make it possible to enable or disable specific features that should be
     recorded in the .buildinfo file. For now only “all” and “path” are
     supported. Closes: #848705
   * Add again the architecture from the filename to .changes files for any
     artifact with one. This reverts the change introduced in dpkg 1.18.11.
   * Fold the filtering and checksumming of files to distribute in a .changes
     file in dpkg-genchanges into the initial loop. This way we do not include
     architectures for artifacts we are not going to distribute, and do not
     unnecessarily recompute the checksums for artifacts like the sources.
   * Do not compute the architecture list twice in dpkg-genchanges.
   * Include .buildinfo files also for source-only uploads in dpkg-genchanges.
     Closes: #846164
   * Fix check for expected number of binary artifacts in dpkg-genchanges, to
     only take into account the artifacts that we are distributing.
   * Fix parsing of Pre-Depends and Depends in dpkg-genbuildinfo, so that
     the code parses both and not just the first to appear in the stanza.
     Based on a patch by Johannes Schauer <josch@debian.org>.
   * Add support for signed .buildinfo files to dpkg-buildpackage. Add new
     -ui and --unsigned-buildinfo options. Closes: #843925
   * Portability:
     - On GNU/Hurd try to use the new process executable name attribute from
       libps, to properly match on start-stop-daemon --exec.
   * Perl modules:
     - Fix Debian architecture wildcard parsing so that matching four-tuple
       matchings work. Missed in dpkg 1.18.11.
       Reported by Julian Andres Klode <jak@debian.org>.
     - Add new import tags for Dpkg::Arch.
     - Abort on EOF in patch name prompt in Dpkg::Source::Package::V2,
       instead of getting into an infinite loop. Closes: #851441
     - Call anonymous subs via -> operator instead of casting with &, and fix
       bogus POD documentation to match the code.
     - Add new Auto-Built-Package field to Dpkg::Control::Fields.
     - Add a new debug() reporting function, and switch code to use it.
     - Add new Dpkg::BuildOption parse_features() method refactored from
       Dpkg::Vendor::Debian.
   * Documentation:
     - Cleanup software requirements in README.
     - Move control member file references from dpkg(1) to deb(5).
     - Fix typos in docs and code comments.
     - Document Auto-Built-Package field in deb-control(5).
   * Build system:
     - Disable disk pre-allocation by default, but let the builder re-enable
       it via a new configure option. This has been causing major performance
       issues on "modern" filesystems.
   * Packaging:
     - Add debsig-verify to dpkg Suggests. The code optionally supports this
       specific signed .deb verification program.
       Prompted by Stuart Prescott <stuart@debian.org>.
   * Test suite:
     - Generate and check all currently possible architecture wildcards.
     - Correctly iterate over all default and passed .dsc template substvars.
 .
   [ Updated programs translations ]
   * Dutch (Frans Spiesschaert). Closes: #851889
   * German (Sven Joachim).
 .
   [ Updated scripts translations ]
   * German (Helge Kreutzmann).
 .
   [ Updated man pages translations ]
   * Dutch (Frans Spiesschaer). Closes: #851891
   * German (Helge Kreutzmann).
Checksums-Sha1:
 b095dc40f8f1a76a1f0cafe3a4c33b9527cead67 2032 dpkg_1.18.19.dsc
 f8ec626d3503e0c8e6dfff5d11c95104811db9db 4516116 dpkg_1.18.19.tar.xz
 a24f616884b03619e07017518053202651875d5a 7301 dpkg_1.18.19_amd64.buildinfo
Checksums-Sha256:
 8b46dcac0a09b0c9ca9a462c1b23b2ece9ec5d5c5d9a4a1aa91406d83de7be78 2032 dpkg_1.18.19.dsc
 67c8b4d580497991892ecd6745267ed4be9f65d2cc842b75b758f999c6ee7bbb 4516116 dpkg_1.18.19.tar.xz
 683b0c34af65ea0ac7ded8e63395d937dd9494a97b7c317640def47a7d30c1e4 7301 dpkg_1.18.19_amd64.buildinfo
Files:
 b41ba9c5d6a34aba330ffec62a2f0cae 2032 admin required dpkg_1.18.19.dsc
 231a66f09747e1b77b236ff48cd71a9e 4516116 admin required dpkg_1.18.19.tar.xz
 d0fd205f0f98b27401700522514e1e37 7301 admin required dpkg_1.18.19_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEETz509DYFDBD1aWV0uXK/PqSuV6MFAliK348ACgkQuXK/PqSu
V6M6Dg//R5i0tqcZStNnQTKmwCfK10A49fS87qTHRydeuqpEZGC2jt8b41LEmmqm
p4dNInnpH3LJPpJ1+SWFWP91vX6AwrRbW1a+5KcSYrsfJQqPzi2TF77uofcPs5Dd
Uf9C1TQCU6TjV9Pb0JA4D1e3QLjIFX2QFyBVQbzqWb1XsLnyvXZ2l2Etj8f2EO97
OXVEDdTNy1s9biY//PYW2d+e+nX7IG+eNXwI5qfy7PXC05bvhUPcxEWA2LSMM+WB
0zjT0QkUFG+Nxf6Fm6FT62N4ms67xbCi4nvYg2PKMbXAGDmhwJYm+JAioFhQFmUv
0S1Y6X1v2RDYuhI/HJfTvJ3SreClvtgGKQR4H231axuv0+ZXNcXe17DXI0z5qe2l
vaUrmafPHcBPxtkl9pNzBJPYUvmev8jKRp2XOqxlwnDWoFkeupcMxjItyK3bTyfN
4alLG4H66BmHGVxyNSTOoSsqoz1Ew+HlhUX0TkacURqigKICLEThgwzVdmqbIm1d
BdI8UVB5trXAmG8nyEoMKkaGkh6nI5a5TKnKsl7iiXJdg6nhaqU8J/MXLeorNe8a
bzWFsp4SbfZuiQuG2OTXBevjmwGaLTa9VXllFtuf1CeiiVxn706lupN/eTieRtZH
VMec0ITJ8U6Hx2mxqmASORuSUfyTJ+AFrxThfkm7Cxc+/AsKmho=
=sLUv
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sat, 25 Feb 2017 07:36:06 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 13:54:49 2023; Machine Name: bembo

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.