Source: pywavelets
Version: 0.3.0-1
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

Whilst working on the "reproducible builds" effort [0], we noticed that 
pywavelets could not be built reproducibly.

The attached patch removes varying timestamps from the build system. Once 
applied, pywavelets can be built reproducibly using our reproducible toolchain.

 [0] https://wiki.debian.org/ReproducibleBuilds


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/03-source_date_epoch.patch 1970-01-01 01:00:00.000000000 
+0100
--- b/debian/patches/03-source_date_epoch.patch 2015-12-20 10:44:22.922882957 
+0000
@@ -0,0 +1,26 @@
+--- pywavelets-0.3.0.orig/doc/source/conf.py
++++ pywavelets-0.3.0/doc/source/conf.py
+@@ -11,10 +11,14 @@
+ # All configuration values have a default; values that are commented out
+ # serve to show the default.
+ 
++import os
+ import re
++import time
+ import datetime
+ import jinja2.filters
+ 
++build_date = 
datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', 
time.time())))
++
+ # If extensions (or modules to document with autodoc) are in another 
directory,
+ # add these directories to sys.path here. If the directory is relative to the
+ # documentation root, use os.path.abspath to make it absolute, like shown 
here.
+@@ -40,7 +44,7 @@ master_doc = 'index'
+ 
+ # General information about the project.
+ project = 'PyWavelets'
+-copyright = jinja2.filters.do_mark_safe('2006-%s, <a 
href="https://groups.google.com/forum/#!forum/pywavelets";>The PyWavelets 
Developers</a>' % datetime.date.today().year)
++copyright = jinja2.filters.do_mark_safe('2006-%s, <a 
href="https://groups.google.com/forum/#!forum/pywavelets";>The PyWavelets 
Developers</a>' % build_date.year)
+ 
+ # The version info for the project you're documenting, acts as replacement for
+ # |version| and |release|, also used in various other places throughout the
--- a/debian/patches/series     2015-12-20 10:36:07.735457306 +0000
--- b/debian/patches/series     2015-12-20 10:44:15.587118136 +0000
@@ -1,3 +1,4 @@
 01-get_version_from_source.patch
 02-remove_privacy_offenders.patch
 do_not_rewrite_git_revision_on_build.patch
+03-source_date_epoch.patch
_______________________________________________
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Reply via email to