So, just pushed an update.
I had this idea that perhaps we can start precompilation as you type and do it in the background. That way your packages are compiled before you run your program. So I added that as a new option (Settings - Languages & Frameworks - Julia - Experimental - “Enable Joovy lazy compilation”). Afterwards, the IDE watches your using/import lines while you edit and precompiles those packages in a background process - shows up like indexing, cancellable. On my machine adding “using CairoMakie” and running went from a minute long wait to ~5s, simply because by the time i ended up in repl it had already compiled.
Sessions also record what they actually JIT (–trace-compile) and replay it into a small per-project warmup package that auto-loads next session. This significantly cut my Makie project runtime down when I tried it.
Apart from that, I also tried adding an image based approach where I bake in the dependencies to julia and store them all in cache in a single image. That way even a fresh session doesn’t need to precompile at all. Played around with it, and it seemed to work, but I dropped it again after realizing that at that point I am simply copying the precompilation cache and it would just end up with 200MB+ (Julia alone is 200mb) files on your harddrive that could also go stale… Anyway, something perhaps to come back to in the future. Maybe this could lead to another idea, like a julia image registry where we share base images like that…