3 ms·
Right but build environment are awfully stupid about it. Re-downloading deps when they did not change is utterly wasteful that achieves nothing, same as re-comp
by ilyt 3y ago
Right but build environment are awfully stupid about it. Re-downloading deps when they did not change is utterly wasteful that achieves nothing, same as re-compiling stuff that did not change.
> broken (or in some cases, regular) build attempts leaving files behind that confuse later build attempts (e.g. because someone forgot to do a git clean before checkout step)
But thanks to CI you will never fix such broken build system!.
- lazide 3y agoNot a fan of it, but I have some experience behind why this happens! Download gets corrupted (randomly) at some point. Corrupted file gets stuffed into the cache. Now, since everyone is using the cache, everything/everyone is broken because the cache is ‘always good’, and the key didn’t change! So then, someone figured it out and turned off caching - and it fixed it. So now caching is always off.
- ilyt 3y agoThat's bug to be filled with language tooling...
- lazide 3y agoAnd of course everyone has time to setup a reproducible test case for this random data corruption bug, and can wait for the language tooling to get fixing while all their builds break…. Or they just turn off caching and forget about it.