Description
Bootstrapping from arbitrary commits is too difficult for downstream distributors that want to bootstrap from their own binaries.
We'll retire the current snapshot system, and bootstrap off of the previous stable compiler. This means that upstream will need to wait six weeks between making changes that are incompatible with the bootstrap compiler. At present, the snapshot compiler is regenerated rarely, so this is expected to be ok.
I expect that smaller distros will not be able to keep up with our six week release schedule, but a simple script should allow them to catch up on the bootstrap by rebuilding the intermediate compilers.
We'll set up CI to ensure that the distro scenario of locally providing the previous compiler works for each release.
Make sure to consider what happens for stable point releases, which we have never done. We probably need to guarantee that all point releases from series N
can bootstrap all point releases from series N+1
.
Details TBD.
re https://internals.rust-lang.org/t/perfecting-rust-packaging-the-plan/2767