Here’s what happened in the Reproducible Builds effort between Sunday June 17 and Saturday June 23 2018:
The Toward a fully reproducible Debian LWN article linked in last week’s blog was mentioned and discussed on many different forums including Hacker News, Reddit and LWN itself.
Torsten Grote started a discussion on our mailing list regarding reproducible Android apps, filing an issue on Google’s issue tracker.
Jeremie Dimino also asked a question about deterministic compilation with OCaml and there was further movement on OCaml’s support for reproducible builds in their issue tracker.
Sylvain Beucler updated our website to clarify
8 package reviews were added, 65 have been updated and 45 have been removed in this week, adding to our knowledge about identified issues. In addition, two issue types were been removed (max_output_size_reached & ftbfs_in_jenkins_setup_due_to_socket_binding)
The next reproducible builds IRC meeting has been scheduled for Tuesday the 17th of July at 16:00 UTC and an agenda is being collected.
Packages reviewed and fixed, and bugs filed
Bernhard M. Wiedemann:
There were a large number of changes to our Jenkins-based testing framework that powers tests.reproducible-builds.org, including:
- Chris Lamb:
- Mattia Rizzolo:
- Improve our script handling the database schema updates (1, 2, 3).
- Normalize the status names as the code sees them: “not for us” and “not_for_us” to “NFU”, “unreproducible” to “FTBR”, and rename “404” to “E404”.
- Introduce a new “Status” enum and use it (1, 2, 3, 4).
- Reschedule stale builds, instead of dropping them.
- list packages in all status in the issues pages.
- Error out when
- Various improvements to the build script (1, 2, 3, 4, 5, 6), and especially:
- change the way ftbfs are handled making the remote script exit with a clear error, instead of inferring the FTBFS status by the lack of build artifacts.
- apply the 120m timeout directly to diffoscope instead of the wrapping schroot in a tentative to reduce the schroot errors.
- differentiate the irc message between diffoscope errors and timeouts (and fixup).
- Perform SQL
UPSERToperation instead of manually checking for presence before UPDATE/INSERT (and fixup).
- List packages in all statuses in the issues pages.
- Introduce a new “timeout” status to represent build timeouts (this required multiple changes reported above, and several other fixups).
- Don’t install Lintian on our hosts. (commit)
- Use APT pinning instead of using
apt-get install -t.
This week’s edition was written by Bernhard M. Wiedemann, Chris Lamb & reviewed by a bunch of Reproducible Builds folks on IRC & the mailing lists.