Open
Description
While working on reproducible builds for openSUSE, I found that
various rust packages produced different binaries in every build,
even when trying to run builds as similar as possible.
versions:
- openSUSE Tumbleweed 20231108
- libLLVM17-17.0.4
- rust-1.73
affected packages:
- contrast
- difftastic
- rage-encryption
- sad
- tiny
Diffs (from filterdiff strings {1,2}/usr/bin/sad
) look like this:
_ZN12aho_corasick6packed5teddy7compile7Builder5build17h1ec13fda1b911f51E
-_ZN71_$LT$sad..argparse..Arguments$u20$as$u20$clap_builder..derive..Args$GT$12augment_args17hb63754f2b3f23d81E.llvm.7060706947469140631
_ZN9hashbrown11rustc_entry62_$LT$impl$u20$hashbrown..map..HashMap$LT$K$C$V$C$S$C$A$GT$$GT$11rustc_entry17h3404a67c5ebadd16E
...
_ZN4core3ptr37drop_in_place$LT$sad..types..Fail$GT$17h4a94ee46810be113E.llvm.8642040941601995225
+_ZN71_$LT$sad..argparse..Arguments$u20$as$u20$clap_builder..derive..Args$GT$12augment_args17hb63754f2b3f23d81E.llvm.5074700338430727270
_ZN5tokio7runtime9scheduler6Handle5spawn17he9d3e7b13daae14fE
...
anon.f8976536234e6da06679650d2fbaaa4b.3.llvm.2679463096021464399
-anon.cf22f61d4b59a658db753519f084dfc2.29.llvm.7060706947469140631
anon.cdafd13cf3071da50e39cc55ae689763.5.llvm.15702125857252448827
@@ -40685,6 +40684,7 @@
anon.865f8e79028a90f3ec901722c5bc9a01.1751.llvm.141406229195693483
anon.a3ee08d29b32c89866319fa543dc03d1.3.llvm.17006684412476199951
_ZN61_$LT$std..io..stdio..StdoutLock$u20$as$u20$std..io..Write$GT$5flush17ha20f2e5d3ef392cdE
+anon.cf22f61d4b59a658db753519f084dfc2.29.llvm.5074700338430727270
rust_panic
so it seems there is some random number appended and that influences ordering.