Bug#877418: closed by Chris Lamb <lamby at debian.org> (Bug#877418: fixed in strip-nondeterminism 0.039-1)
Rob Browning
rlb at defaultvalue.org
Mon Jun 25 06:38:05 BST 2018
reopen 877418
thanks
Debian Bug Tracking System <owner at bugs.debian.org> writes:
> * Clojure considers the .class file to be stale if it shares the same
> timestamp of the .clj. We thus adjust the timestamps of the .clj to always
> be younger. (Closes: #877418)
> - {jar,zip}.pm: Allow $options{member_normalizer} callback to support
> specifying the timestamp.
> - zip.pm: Calculate the target canonical time in just one place.
> * zip.pm: Ensure that we don't try and write an old timestamp;
> Archive::Zip will do this anyway, just noisily.
Hmm, it looks like the fix may not have been sufficient, or there's been
a regression. With the current clojure 1.8.0-5 and
dh-strip-nondeterminism 0.042-1, building clojure1.8 via "fakeroot
debian/rules binary" normally reveals:
$ time java -cp debian/libclojure1.8-java/usr/share/java/clojure.jar clojure.main -e ''
real 0m3.832s
user 0m11.411s
sys 0m0.206s
and with dh-strip-nodeterminism symlinked to /bin/true in the path:
$ time java -cp debian/libclojure1.8-java/usr/share/java/clojure.jar clojure.main -e ''
real 0m0.846s
user 0m1.600s
sys 0m0.076s
Looking inside the jar, core.clj and derived class files, for example,
do appear to have the same timestamps:
$ jar tvf debian/libclojure1.8-java/usr/share/java/clojure.jar \
| grep -E 'clojure/core(\.clj|\$interleave)'
580 Mon Mar 19 16:59:46 CDT 2018 clojure/core$interleave$fn__5149.class
1138 Mon Mar 19 16:59:46 CDT 2018 clojure/core$interleave$fn__5151.class
1740 Mon Mar 19 16:59:46 CDT 2018 clojure/core$interleave$fn__5154.class
1826 Mon Mar 19 16:59:46 CDT 2018 clojure/core$interleave.class
251643 Mon Mar 19 16:59:46 CDT 2018 clojure/core.clj
Thanks
--
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
More information about the Reproducible-builds
mailing list