Re: [Python-modules-team] Bug#852289: python-passlib: please make the build reproducible (timestamps)
On Jan 31, 2017, at 09:43 AM, Eli Collins wrote: >Passlib 1.7.1 is out, which should fix #852289; I'll try to keep an eye on >the reproducible build status for a bit in case there's any other hiccups. Thanks! I'm working on the new upstream in git right now. It looks like we can also drop the 0001-Disable-Django-support.patch since https://bitbucket.org/ecollins/passlib/issues/68/tests-fail-with-django-19 is resolved upstream. I'm not a Django expert though so please let me know if this is not correct. Cheers, -Barry pgpYSMy6g9X1C.pgp Description: OpenPGP digital signature ___ Python-modules-team mailing list Python-modules-team@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/python-modules-team
Re: [Python-modules-team] Bug#852289: python-passlib: please make the build reproducible (timestamps)
Passlib 1.7.1 is out, which should fix #852289; I'll try to keep an eye on the reproducible build status for a bit in case there's any other hiccups. - Eli On Mon, Jan 23, 2017 at 5:12 PM, Barry Warsawwrote: > On Jan 23, 2017, at 04:40 PM, Eli Collins wrote: > > >In case this helps the debian package maintainer decide on this patch / > >schedule things, the timestamp problem this addresses is due to a bug in > >the passlib 1.7.0 setup script, which should be fixed in the 1.7.1 > upstream > >release (due out next weekend). > > Thanks for the status Eli. If the bug is fixed upstream, I think it makes > sense to just wait until 1.7.1. Feel free to drop us a ping when that's > available (though I'll eventually notice it anyway). If Brian doesn't > beat me > to it, I'm happy to update to 1.7.1 once it's available. > ___ Python-modules-team mailing list Python-modules-team@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/python-modules-team
[Python-modules-team] Bug#852289: python-passlib: please make the build reproducible (timestamps)
Passlib author here - In case this helps the debian package maintainer decide on this patch / schedule things, the timestamp problem this addresses is due to a bug in the passlib 1.7.0 setup script, which should be fixed in the 1.7.1 upstream release (due out next weekend). - Eli On Mon, 23 Jan 2017 01:59:13 -0800 Dholewrote: > Source: python-passlib > Version: 1.7.0-1 > Severity: wishlist > Tags: patch > User: reproducible-bui...@lists.alioth.debian.org > Usertags: timestamps > X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org > > Hi, > > While working on the "reproducible builds" effort [1], we have noticed that > python-passlib could not be built reproducibly. > > The version string of the package includes a timestamp that is generated at > build time. > > The attached patch fixes this by using SOURCE_DATE_EPOCH as the timestamp for > the version string. Once applied, python-passlib can be built reproducibly in > our current experimental framework. > > [1]: https://wiki.debian.org/ReproducibleBuilds > > Regards, > -- > Dhole ___ Python-modules-team mailing list Python-modules-team@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/python-modules-team
[Python-modules-team] Bug#852289: python-passlib: please make the build reproducible (timestamps)
Source: python-passlib Version: 1.7.0-1 Severity: wishlist Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: timestamps X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org Hi, While working on the "reproducible builds" effort [1], we have noticed that python-passlib could not be built reproducibly. The version string of the package includes a timestamp that is generated at build time. The attached patch fixes this by using SOURCE_DATE_EPOCH as the timestamp for the version string. Once applied, python-passlib can be built reproducibly in our current experimental framework. [1]: https://wiki.debian.org/ReproducibleBuilds Regards, -- Dhole diff -Nru python-passlib-1.7.0/debian/changelog python-passlib-1.7.0/debian/changelog --- python-passlib-1.7.0/debian/changelog 2016-11-28 17:31:28.0 +0100 +++ python-passlib-1.7.0/debian/changelog 2017-01-23 10:36:30.0 +0100 @@ -1,3 +1,11 @@ +python-passlib (1.7.0-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Use date from SOURCE_DATE_EPOCH for version number to make the build +reproducible. + + -- redMon, 23 Jan 2017 10:36:30 +0100 + python-passlib (1.7.0-1) unstable; urgency=medium * Team upload. diff -Nru python-passlib-1.7.0/debian/patches/reproducible-version-name.patch python-passlib-1.7.0/debian/patches/reproducible-version-name.patch --- python-passlib-1.7.0/debian/patches/reproducible-version-name.patch 1970-01-01 01:00:00.0 +0100 +++ python-passlib-1.7.0/debian/patches/reproducible-version-name.patch 2017-01-23 10:36:30.0 +0100 @@ -0,0 +1,20 @@ +Description: Generate a reproducible version name + Use date from SOURCE_DATE_EPOCH for version number to make the build + reproducible. +Author: red + + +Index: python-passlib-1.7.0/setup.py +=== +--- python-passlib-1.7.0.orig/setup.py python-passlib-1.7.0/setup.py +@@ -58,7 +58,8 @@ if os.environ.get("PASSLIB_SETUP_TAG_REL + stamp = stamp.decode("ascii") + except (OSError, subprocess.CalledProcessError): + # fallback - just use build date +-stamp = time.strftime("%Y%m%d%H%M%S") ++build_date = int(os.environ.get('SOURCE_DATE_EPOCH', time.time())) ++stamp = time.strftime("%Y%m%d%H%M%S", time.gmtime(build_date)) + + # modify version + if version.endswith((".dev0", ".post0")): diff -Nru python-passlib-1.7.0/debian/patches/series python-passlib-1.7.0/debian/patches/series --- python-passlib-1.7.0/debian/patches/series 2016-11-28 17:31:28.0 +0100 +++ python-passlib-1.7.0/debian/patches/series 2017-01-23 10:36:30.0 +0100 @@ -1 +1,2 @@ 0001-Disable-Django-support.patch +reproducible-version-name.patch ___ Python-modules-team mailing list Python-modules-team@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/python-modules-team