Source: python-itemloaders Version: 1.2.0-3 Severity: wishlist Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: timestamps X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org
Hi, Whilst working on the Reproducible Builds effort [0], we noticed that python-itemloaders could not be built reproducibly. This is because the manual pages embed the build year in copyright messages. A patch is therefore attached that seeds the date from SOURCE_DATE_EPOCH if available. [0] https://reproducible-builds.org/ Regards, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org / chris-lamb.co.uk `-
--- a/debian/patches/0002-Reproducible-build.patch 1970-01-01 01:00:00.000000000 +0100 --- b/debian/patches/0002-Reproducible-build.patch 2024-04-24 16:57:48.698090140 +0100 @@ -0,0 +1,37 @@ +Description: Make the build reproducible +Author: Chris Lamb <la...@debian.org> +Last-Update: 2024-04-24 + +--- python-itemloaders-1.2.0.orig/docs/conf.py ++++ python-itemloaders-1.2.0/docs/conf.py +@@ -13,7 +13,8 @@ + + import os + import sys +-from datetime import datetime ++import time ++import datetime + from os import path + + import sphinx_rtd_theme +@@ -24,6 +25,11 @@ import sphinx_rtd_theme + sys.path.append(path.dirname(__file__)) + sys.path.insert(0, path.dirname(path.dirname(__file__))) + ++build_date = datetime.datetime.fromtimestamp( ++ int(os.environ.get('SOURCE_DATE_EPOCH', time.time())), ++ tz=datetime.timezone.utc, ++) ++ + # General configuration + # --------------------- + +@@ -51,7 +57,7 @@ master_doc = "index" + + # General information about the project. + project = "itemloaders" +-copyright = "2020\u2013{}, Zyte Group Ltd".format(datetime.now().year) ++copyright = "2020\u2013{}, Zyte Group Ltd".format(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 2024-04-24 16:32:44.741767684 +0100 --- b/debian/patches/series 2024-04-24 16:50:13.629191809 +0100 @@ -1 +1,2 @@ 0001-Use-local-intersphinx-files.patch +0002-Reproducible-build.patch