uv
uv copied to clipboard
CI Perf: fast-build
Windows seems unchanged, Linux goes from 6:xx min to 4:xx min
Can we use this for the binary builds we use for integration tests too?
Is there risk to using these fast builds for tests? Are we going to lose test coverage?
The fast-build profile strip debug info, so we'd lose information if we running a coverage tools like coverage.py, but I'm not aware that we're using such a tool. No debug info also means that if there's a crash, we don't get a backtrace, similar to our release builds. If that's a good tradeoff IMHO depends on how much faster it is.
We don't use any functional coverage in our tests though, the binaries are only a bit more optimized and stripped of debuginfo, basically half way between a regular debug builds and full release builds.
Can we use this for the binary builds we use for integration tests too?
Added, let's see how it goes
The optimal profile is different for tests vs. for binary builds: For tests, we want opt level 1 and no debug info, while for binary builds, we only want no debug info, opt level 1 makes the builds slower (e.g. 45s to 1min 15s).
LLM'd plot:
Another run, different plotting: