4 ms·
I don't think it's accurate to say that it screws up build reproducibility. Rather, it shows that your build is already not-reproducible. Take the time example
by lultimouomo 5y ago
I don't think it's accurate to say that it screws up build reproducibility. Rather, it shows that your build is already not-reproducible.
Take the time example:
if your build has access to the actual clock time, your build is unreproducible, period. For reproducibile build you need a constant, injected clock time.
So I'd rather day that if you have reproducibile builds this macros won't work at all.
- ratorx 5y agoI don’t think that’s true (being pedantic). If your build doesn’t depend on the value of the time in any way, then it’s reproducible (assuming it doesn’t use/doesn’t have other irreproducible inputs), even without passing in an injected time. The value of things which don’t affect the output don’t matter for reproducibility. But it’s a one-way implication. If your build DOES depend on the time, it can be made reproducible by setting it to a constant fixed value.
- lultimouomo 5y agoYou're technically correct (which is the best kind of correct!). But I would opine that, if your build system is not hermetic, i.e. you don't inject time and don't prevent access to the external world, you cannot know whether your build is reproducible or not.