Re:We built the fastest CI in the world and it failed
by no_wizard on Tuesday September 12, 2023 @12:37PM
(#37483887)
One thing these tools should do automatically is at the end log to the console (or whatever system) what was compiled and what wasn't.
This made debugging so much easier for these issues. They're bound to happen, because we're all human and bugs are a thing. Automatically being able to audit the build as step 1 makes this easy to spot
Re:We built the fastest CI in the world and it failed
by jcparkyn on Wednesday September 13, 2023 @01:19AM
(#37492502)
Visual studio does give a fairly detailed explanation of what was compiled each time, in the output>build view.
Re:We built the fastest CI in the world and it failed
by pharmakom on Tuesday September 12, 2023 @01:14PM
(#37484420)
Bazel does this.
I have to be honest - MS Build does not scale well. Companies use it because it’s the default.
Re:We built the fastest CI in the world and it failed
by no_wizard on Tuesday September 12, 2023 @01:56PM
(#37484959)
Seems they came up with a way to scale up build toolchains with BuildXL[0]
Doesn't seem fully baked yet though
Re:We built the fastest CI in the world and it failed
by CobsterLock on Tuesday September 12, 2023 @02:29PM
(#37485388)
I don't have a ton of experience in Bazel, but from what I have experienced with Bazel I think it would be more accurate to say that you configure the dependency graph yourself in Bazel. Then Bazel can determine what to build from scratch and what to take from cache
Re:We built the fastest CI in the world and it failed
by howinteresting on Tuesday September 12, 2023 @05:46PM
(#37488941)
Yes, but Bazel requires an all-in commitment and also tons of work to fit the rest of the world into it.
I've had Visual Studio and MSBuild fail on me multiple times by deciding not to recompile a certain .cpp file, because they got the dependency graph wrong. This results in a running but inconsistent executable that's a bitch to debug.
If you're selling me another tool that duplicates this work, but that has even less context on my project than the build system, I'll pass.