--- layout: blog week: 89 published: 2017-01-11 15:01:04 --- What happened in the [Reproducible Builds](https://wiki.debian.org/ReproducibleBuilds) effort between Sunday January 1 and Saturday January 7 2017: GSoC and Outreachy updates -------------------------- * Maria Glukhova blogged about [Getting to know diffoscope better](https://siamezzze.github.io/Getting-to-know-diffoscope-better/). Toolchain development --------------------- * [#849999](https://bugs.debian.org/849999) was filed: "dpkg-dev should not set SOURCE_DATE_EPOCH to the empty string" Packages reviewed and fixed, and bugs filed ------------------------------------------- Chris Lamb: * [#849968](https://bugs.debian.org/849968) filed against [pciutils](https://tracker.debian.org/pkg/pciutils). * [#849972](https://bugs.debian.org/849972) filed against [yard](https://tracker.debian.org/pkg/yard). * [#850556](https://bugs.debian.org/850556) filed against [sed](https://tracker.debian.org/pkg/sed). Dhole: * [#849926](https://bugs.debian.org/849926) filed against [nxt-firmware](https://tracker.debian.org/pkg/nxt-firmware). Reviews of unreproducible packages ---------------------------------- 13 package reviews have been added, 4 have been updated and 6 have been removed in this week, adding to our knowledge about [identified issues](https://tests.reproducible-builds.org/debian/index_issues.html). 2 issue types have been added/updated: - [Add new randomness\_in\_documentation\_generated\_by\_yardoc toolchain issue.](https://salsa.debian.org/reproducible-builds/reproducible-notes/commit/d041183b) - [Add fix for randomness\_in\_documentation\_generated\_by\_yardoc toolchain issue.](https://salsa.debian.org/reproducible-builds/reproducible-notes/commit/a0ebf1f5) Upstreaming of reproducibility fixes ------------------------------------ Merged: - [calibre](https://bugs.launchpad.net/calibre/+bug/1654211) - [jna](https://github.com/java-native-access/jna/pull/748) - [rocksndiamonds](http://www.artsoft.org/forum/viewtopic.php?f=7&t=2276) - [avfs](https://sourceforge.net/p/avf/git/ci/b5a2b041d9e1b18b8632cda0df5cafe3a9b2ea81/tree/src/make_info?diff=2e121bfe2f42e010b71b1d76fda035f52579cd8e) - [jackaudio1](https://github.com/jackaudio/jack1/pull/38) - [jackaudio2](https://github.com/jackaudio/jack2/pull/196) - [gri](https://github.com/dankelley/gri/pull/10) Opened: - [rockdodger](https://bitbucket.org/rpkrawczyk/rockdodger/pull-requests/1/allow-to-override-compiledate/diff) Weekly QA work -------------- During our reproducibility testing, the following FTBFS bugs have been detected and reported by: - Chris Lamb (4) diffoscope development ---------------------- [diffoscope](https://diffoscope.org) 67 was uploaded to unstable by Chris Lamb. It included [contributions](https://salsa.debian.org/reproducible-builds/diffoscope/commits/67) from : [ Chris Lamb ] * Optimisations: - Avoid multiple iterations over archive by unpacking once for an ~8X runtime optimisation. - Avoid unnecessary splitting and interpolating for a ~20X optimisation when writing --text output. - Avoid expensive diff regex parsing until we need it, speeding up diff parsing by 2X. - Alias expensive Config() in diff parsing lookup for a 10% optimisation. * Progress bar: - Show filenames, ELF sections, etc. in progress bar. - Emit JSON on the the status file descriptor output instead of a custom format. * Logging: - Use more-Pythonic logging functions and output based on __name__, etc. - Use Debian-style "I:", "D:" log level format modifier. - Only print milliseconds in output, not microseconds. - Print version in debug output so that saved debug outputs can standalone as bug reports. * Profiling: - Also report the total number of method calls, not just the total time. - Report on the total wall clock taken to execute diffoscope, including cleanup. * Tidying: - Rename "NonExisting" -> "Missing". - Entirely rework diffoscope.comparators module, splitting as many separate concerns into a different utility package, tidying imports, etc. - Split diffoscope.difference into diffoscope.diff, etc. - Update file references in debian/copyright post module reorganisation. - Many other cleanups, etc. * Misc: - Clarify comment regarding why we call python3(1) directly. Thanks to Jérémy Bobbio . - Raise a clearer error if trying to use --html-dir on a file. - Fix --output-empty when files are identical and no outputs specified. [ Reiner Herrmann ] * Extend .apk recognition regex to also match zip archives (Closes: #849638) [ Mattia Rizzolo ] * Follow the rename of the Debian package "python-jsbeautifier" to "jsbeautifier". [ siamezzze ] * Fixed no newline being classified as order-like difference. reprotest development --------------------- [reprotest](https://packages.debian.org/sid/reprotest) 0.5 was uploaded to unstable by Chris Lamb. It included [contributions](https://salsa.debian.org/reproducible-builds/reprotest/commits/debian/0.5) from: [ Ximin Luo ] * Stop advertising variations that we're not actually varying. That is: domain_host, shell, user_group. * Fix auto-presets in the case of a file in the current directory. * Allow disabling build-path variations. (Closes: #833284) * Add a faketime variation, with NO_FAKE_STAT=1 to avoid messing with various buildsystems. This is on by default; if it causes your builds to mess up please do file a bug report. * Add a --store-dir option to save artifacts. Other contributions (not yet uploaded): - Chris Lamb: - [setup.py: Specify a Python3 env shebang](https://salsa.debian.org/reproducible-builds/reprotest.git/commit/?id=8c464f4) - [Drop reprotest/{runner,tools} from DEP-5 copyright wildcard matching.](https://salsa.debian.org/reproducible-builds/reprotest.git/commit/?id=84e3384) reproducible-builds.org website development ------------------------------------------- * ``website.git notifications now go to `#reproducible-builds`. Thanks to `danielsh` and the KGB bot maintainers. - Daniel Shahaf: - [events: add IRC meeting](https://salsa.debian.org/reproducible-builds/reproducible-website/commit/ee01467) - [Move mailing list from 'who' to 'resources'.](https://salsa.debian.org/reproducible-builds/reproducible-website/commit/d1c83e9) - Holger Levsen: - [link to meetbot.debian.net IRC meetings archives](https://salsa.debian.org/reproducible-builds/reproducible-website/commit/087a560) - Chris Lamb: - [tools: Underscore that disorderfs is deliberately adding such randomness.](https://salsa.debian.org/reproducible-builds/reproducible-website/commit/0215123) tests.reproducible-builds.org ----------------------- * Debian `arm64` architecture was fully tested in all three suites in just 15 days. Thanks again to [Codethink.co.uk](https://www.codethink.co.uk/) for their support! * Log diffoscope profiling info. (lamby) * Run `pg_dump` with `-O --column-inserts` to make easier to import [our main database dump](https://reproducible.debian.net/reproducible.sql.xz) into a non-PostgreSQL database. (mapreri) * Debian `armhf` network: CPU frequency scaling was enabled for three Firefly boards, enabling the CPUs to run at full speed. (vagrant) * Arch Linux and Fedora tests have been disabled (h01ger) * Improve mail notifications about daily problems. (h01ger) Misc. ----- This week's edition was written by Chris Lamb, Holger Levsen and Vagrant Cascadian, reviewed by a bunch of Reproducible Builds folks on IRC & the mailing lists.