Debian Bug report logs -
#984809
php8.0: please make the build (mostly) reproducible
Reported by: "Chris Lamb" <lamby@debian.org>
Date: Mon, 8 Mar 2021 15:54:02 UTC
Severity: wishlist
Tags: patch
Found in version php8.0/8.0.3-1
Fixed in version 8.0.8-1+rm
Done: Debian FTP Masters <ftpmaster@ftp-master.debian.org>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, reproducible-bugs@lists.alioth.debian.org, Debian PHP Maintainers <team+pkg-php@tracker.debian.org>:
Bug#984809; Package src:php8.0.
(Mon, 08 Mar 2021 15:54:04 GMT) (full text, mbox, link).
Acknowledgement sent
to "Chris Lamb" <lamby@debian.org>:
New Bug report received and forwarded. Copy sent to reproducible-bugs@lists.alioth.debian.org, Debian PHP Maintainers <team+pkg-php@tracker.debian.org>.
(Mon, 08 Mar 2021 15:54:04 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Source: php8.0
Version: 8.0.3-1
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org
Hi,
Whilst working on the Reproducible Builds effort [0] we noticed that
php8.0 could not be built reproducibly.
Patch attached to make the build-defs.h, /usr/bin/php-config8.0 and
test-results.txt.gz reproducible. However, the phar8.0.phar file
remains unreproducible - it seems to embed a bunch of inline, zlibbed
(?) code that I haven't yet looked at yet and I thought I would send
over this much at least.
[0] https://reproducible-builds.org/
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby@debian.org / chris-lamb.co.uk
`-
[php8.0.diff.txt (text/plain, attachment)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian PHP Maintainers <team+pkg-php@tracker.debian.org>:
Bug#984809; Package src:php8.0.
(Tue, 13 Jul 2021 01:24:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Vagrant Cascadian <vagrant@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian PHP Maintainers <team+pkg-php@tracker.debian.org>.
(Tue, 13 Jul 2021 01:24:02 GMT) (full text, mbox, link).
Message #10 received at 984809@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
On 2021-03-08, Chris Lamb wrote:
> Whilst working on the Reproducible Builds effort [0] we noticed that
> php8.0 could not be built reproducibly.
>
> Patch attached to make the build-defs.h, /usr/bin/php-config8.0 and
> test-results.txt.gz reproducible.
The test-results.txt.gz also embeds the hostname, kernel version, build
time, etc. ...
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/php8.0.html
Some of these things may be sanitized usefully (although perhaps a bit
of a whack-a-mole game over time), but if any sort of timing information
is desired, sanitizing that data would defeat the purpose of the log.
We had a similar discussion for binutils which does something similar:
https://bugs.debian.org/950585
If the test suite output is not too huge, I think it might be better to
not ship test-results.txt in the package, but to output the contents to
the build log (so you could access the necessary test-results from
buildd.debian.org).
We may also need to explore finding a way for source packages to store
things like test suite logs outside of the actual .deb packages, as for
binutils it was not feasible to output the full test-suite log during
the build for size constraints...
FWIW, it looks like PHP 7.4 has the same issues, although I haven't
checked if the patch applies without modification.
live well,
vagrant
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian PHP Maintainers <team+pkg-php@tracker.debian.org>:
Bug#984809; Package src:php8.0.
(Thu, 15 Jul 2021 21:15:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Vagrant Cascadian <vagrant@reproducible-builds.org>:
Extra info received and forwarded to list. Copy sent to Debian PHP Maintainers <team+pkg-php@tracker.debian.org>.
(Thu, 15 Jul 2021 21:15:02 GMT) (full text, mbox, link).
Message #15 received at 984809@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
On 2021-07-12, Vagrant Cascadian wrote:
> On 2021-03-08, Chris Lamb wrote:
>> Whilst working on the Reproducible Builds effort [0] we noticed that
>> php8.0 could not be built reproducibly.
>>
>> Patch attached to make the build-defs.h, /usr/bin/php-config8.0 and
>> test-results.txt.gz reproducible.
>
> The test-results.txt.gz also embeds the hostname, kernel version, build
> time, etc. ...
>
> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/php8.0.html
>
> Some of these things may be sanitized usefully (although perhaps a bit
> of a whack-a-mole game over time), but if any sort of timing information
> is desired, sanitizing that data would defeat the purpose of the log.
>
> We had a similar discussion for binutils which does something similar:
>
> https://bugs.debian.org/950585
>
>
> If the test suite output is not too huge, I think it might be better to
> not ship test-results.txt in the package, but to output the contents to
> the build log (so you could access the necessary test-results from
> buildd.debian.org).
Apparently php8.0 already outputs the test-results.txt to the build log.
An updated patch that simply doesn't install test-restults.txt is
attached.
live well,
vagrant
[reproducible-builds.patch (text/x-diff, inline)]
diff --git a/debian/rules b/debian/rules
index 8aa4d27..8696a51 100755
--- a/debian/rules
+++ b/debian/rules
@@ -519,9 +519,14 @@ override_dh_install-arch: remove-files-stamp prepare-fpm-pools
ifeq (yes,$(RUN_TESTS))
mkdir -p debian/$(PHP_COMMON)/usr/share/doc/$(PHP_COMMON)/
- cp test-results.txt debian/$(PHP_COMMON)/usr/share/doc/$(PHP_COMMON)/
endif
+ $(SED) -i -e's@-ffile-prefix-map=[^ ]*[ ]*@@g' \
+ -e's@-fdebug-prefix-map=[^ ]*[ ]*@@g' \
+ -e's@$(CURDIR)@/tmp/buildd/nonexistent@g' \
+ debian/$(PHP_DEV)/usr/include/php/*/main/build-defs.h \
+ debian/$(PHP_DEV)/usr/bin/php-config$(PHP_NAME_VERSION)
+
override_dh_installinit:
dh_installinit --restart-after-upgrade
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian PHP Maintainers <team+pkg-php@tracker.debian.org>:
Bug#984809; Package src:php8.0.
(Thu, 15 Jul 2021 21:21:03 GMT) (full text, mbox, link).
Acknowledgement sent
to Vagrant Cascadian <vagrant@reproducible-builds.org>:
Extra info received and forwarded to list. Copy sent to Debian PHP Maintainers <team+pkg-php@tracker.debian.org>.
(Thu, 15 Jul 2021 21:21:03 GMT) (full text, mbox, link).
Message #20 received at 984809@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Control: clone 984809 -1
Control: reassign -1 php7.4
Control: retitle -1 php7.4: please make the build (mostly) reproducible
On 2021-07-12, Vagrant Cascadian wrote:
> On 2021-03-08, Chris Lamb wrote:
>> Whilst working on the Reproducible Builds effort [0] we noticed that
>> php8.0 could not be built reproducibly.
>>
>> Patch attached to make the build-defs.h, /usr/bin/php-config8.0 and
>> test-results.txt.gz reproducible.
...
> FWIW, it looks like PHP 7.4 has the same issues, although I haven't
> checked if the patch applies without modification.
Patch applies and is effective; cloning into new bug...
live well,
vagrant
[signature.asc (application/pgp-signature, inline)]
Bug 984809 cloned as bug 991154
Request was from Vagrant Cascadian <vagrant@reproducible-builds.org>
to 984809-submit@bugs.debian.org.
(Thu, 15 Jul 2021 21:21:03 GMT) (full text, mbox, link).
Reply sent
to Debian FTP Masters <ftpmaster@ftp-master.debian.org>:
You have taken responsibility.
(Mon, 29 Nov 2021 18:42:11 GMT) (full text, mbox, link).
Notification sent
to "Chris Lamb" <lamby@debian.org>:
Bug acknowledged by developer.
(Mon, 29 Nov 2021 18:42:11 GMT) (full text, mbox, link).
Message #27 received at 984809-done@bugs.debian.org (full text, mbox, reply):
Version: 8.0.8-1+rm
Dear submitter,
as the package php8.0 has just been removed from the Debian archive
unstable we hereby close the associated bug reports. We are sorry
that we couldn't deal with your issue properly.
For details on the removal, please see https://bugs.debian.org/997821
The version of this package that was in Debian prior to this removal
can still be found using http://snapshot.debian.org/.
Please note that the changes have been done on the master archive and
will not propagate to any mirrors until the next dinstall run at the
earliest.
This message was generated automatically; if you believe that there is
a problem with it please contact the archive administrators by mailing
ftpmaster@ftp-master.debian.org.
Debian distribution maintenance software
pp.
Scott Kitterman (the ftpmaster behind the curtain)
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Tue, 28 Dec 2021 07:25:51 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 11:07:52 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.