Description
In theory, opening config.toml and toggling build.profiler
between false and true should be cheap. Setting it to true should cause the profiler runtime to be built, without rebuilding std. And setting it to false should simply cause the rest of the build to pretend that any previously-built compiler runtime doesn't exist.
In practice, toggling build.profiler
does trigger a rebuild of std, which also naturally triggers a rebuild of the compiler.
I think this is an artifact of library/profiler_runtime
being considered an optional dependency of std. And I think that is just an artifact of how the profiler runtime was originally added (#42433), not something that inherently has to be true.
Of course, the tricky part will be fixing this without accidentally breaking anything.
Activity