I optimized it a bit. There are multiple “verbosities” of version needed. The standard project.version is just one rendering of it and it doesn’t need all the input data. I made all the inputs lazy as well so only what is needed is obtained (and cached in memory). That helps a bit.
I’d like to understand more about the impact/effect versions have outside the major/visible tasks. If I knew more about it I might be able to figure something out…