On the project I'm working on we're trying to get reproducible builds with a project that uses ember.js. We're using ember-cli-webfont (which uses broccoli-webfont).
The ember-cli build system uses temporary directories to store the addons output. Furthermore - it uses absolute paths. This means that two builds can have very different dest options (e.g. /home/user1/project/tmp/something-RLHbiENl.tmp and /home/user2/work/project/tmp/something-QMgOe8NX.tmp). Since dest is part of options it will be used when a hash is created in renderCss.js.
The proposal here is to ignore the dest, cssDest, htmlDest (all options that are only relative to the output) when calculating the hash. This way otherwise identical options can generate identical output.
On the project I'm working on we're trying to get reproducible builds with a project that uses ember.js. We're using
ember-cli-webfont
(which usesbroccoli-webfont
).The ember-cli build system uses temporary directories to store the addons output. Furthermore - it uses absolute paths. This means that two builds can have very different
dest
options (e.g./home/user1/project/tmp/something-RLHbiENl.tmp
and/home/user2/work/project/tmp/something-QMgOe8NX.tmp
). Sincedest
is part of options it will be used when a hash is created in renderCss.js.The proposal here is to ignore the
dest
,cssDest
,htmlDest
(all options that are only relative to the output) when calculating the hash. This way otherwise identical options can generate identical output.