Why is v1.12 "more prone to invalidations"?

When v1.12.0 was first released some time ago, my precompile script immediately stopped being effective, even though my code was unchanged. In particular, it was ineffective if IJulia.jl was also loaded. The full details are here, and the maintainer very generously helped reduce the replicator down to this.

I am wondering why this happening? And, why would the issue only appear with Julia 1.12 suddenly? At the moment I am pointing all my users to the LTS version of Julia to avoid this issue. But in long-term maintenance of the package, I have concerns about having a “moving target” to keep following each new Julia release to make sure precompilation remains effective.

2 Likes