[Pkg-javascript-devel] Bug#918361: node-browserify-lite: unreproducible output order
    Rebecca N. Palmer 
    rebecca_palmer at zoho.com
       
    Sat Jan  5 14:15:24 GMT 2019
    
    
  
Package: node-browserify-lite
Version: 0.5.0-1
Control: tags -1 upstream patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: toolchain randomness
X-Debbugs-Cc: reproducible-builds at alioth-lists.debian.net
browserify-lite produces its output in a (pseudo)random order: see e.g. 
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/theano.html
This is known to the reproducible builds team as 
randomness_in_browserify_lite_output (and I suspect 
nondeterminstic_output_from_uglifyjs is actually the same issue).
It appears to be trivially fixable:
--- a/index.js
+++ b/index.js
@@ -79,6 +79,7 @@ function renderBundle(options, cb) {
    function render(entrySourcePath, cb) {
      var modules = Object.keys(sources);
+    modules.sort();
      var aliases = {};
      modules.forEach(function(canonicalSourcePath, index) {
        aliases[canonicalSourcePath] = index;
This has had only limited testing: on graphlib-dot and dagre-d3 (in 
theano's debian/missing-sources), it's reproducible between 2 runs on 
the same source tree, and its output runs in Firefox without obvious error.
The bug appears to exist upstream (with the same fix), but I have not 
tested this.
    
    
More information about the Pkg-javascript-devel
mailing list