Good evening rustlers! Today Iād like to turn our attention to the topic of
rust-lang/rustās build system. We have historically been using makefiles for
everything, but recently there have been efforts to rewrite it into a Rust/Cargo
based world, dubbed rustbuild. This new build system is nearing completion and
Iād like to see if we can push it the last mile to outright delete the
makefiles! If youāre curious, you can find lots of motivation for this change on
the original PR.
I believe that rustbuild is feature-complete enough to get in front of
rustc developers today and I also think weāre ready to start moving over all
official builds to it. To that end, I would propose the following schedule:
- Rust 1.15, starts 2016-11-10, releases 2017-02-02 - makefiles are deprecated
- Rust 1.16, starts 2016-12-22, releases 2017-03-16 - makefiles are deprecated
- Rust 1.17, starts 2017-02-02, released 2017-04-27 - makefiles are removed
In other words, the current nightly, 1.15, and the next, 1.16, weāll message out
deprecation of the makefiles. During this time weāll switch infrastructure away
from the makefiles (except for one bot to keep testing them), flesh out any
final bugs in rustbuild, and give users ample time to switch. Once the 1.16 beta
release is cut (2016-01-02), the master branch would become 1.17 and weād delete the
makefiles for good. This should give stable users around 6 months to ensure that
rustbuild works for them.
So with that in mind, Iām curious for otherās opinions! Do you think this is an
acceptable time frame for this transition? Do you think that rustbuild has
critical bugs that still need fixing? As a reminder all bugs against rustbuild
can be filed against rust-lang/rust
and you can cc me (@alexcrichton) to tag it with A-rustbuild.