Key dates:
- 4/14 - backport deadline
- 4/21 - build starts
- 4/27 - release
Rust 1.17 is releasing on 4/27, about 4 weeks from now. As with the
last two releases, please get backports in two weeks ahead of time, by
4/14 - last minute scrambling to land fixes creates major risk. That
means there are two weeks to fix bugs.
The number of outstanding regressions right now is alarming, more so I
think than recent releases.
The milestone predictions indicate what’s in the release, but
so far the release notes are not written. Milestone predictions have
not been updated for future releases yet.
Alex and I are traveling for the next few weeks, and we are concerned
about the impact on the release. Help is greatly appreciated.
There are 11 open beta regressions, and 4 new stable regressions
that look potentially bad.
I have lately been concerned that intentional breakage is not being
documented well enough - there are plenty of reported regressions
closed wontfix, and each of these should be reported in the release
notes as a compatibility note. Please Rust developers, tag all PRs
that introduce intentional breakage with ‘relnotes’. It is vital we
communicate these decisions to our users. If you are aware of
intentional breakage in the current release, please do check on those
PRs and see if they are tagged, and ensure they end up in the final
release notes.
Current cargobomb reports have been triaged, and cargobomb is running
against the latest beta now.
The next two release triages occur while Alex and I are
travelling and have been rescheduled.
There is one item on the 1.17 milestone. It is a pet-paranoia of
mine, and I will take care of it next week.
Tasks that need to be done yet:
- Fix beta/stable bugs and nominate for backports
- Write release notes
- Port and land backports
- Identify compatibility notes for milestone predictions / relnotes
- Update milestone predictions
Anybody interested in tackling these?
Here’s my process for compiling release notes:
- Create a GitHub PR query for rust-lang/rust over the date range the
release was on nightly
- Scan all PRs for notability, especially the ‘relnotes’ tag. For each
one that should go in the notes, verify it is actually in the 'beta’
branch, add it to appropriate section
- Scan all beta backports for notability
- Do the same for rust-lang/cargo
- Find the ‘library stabilization’ PR for the release and add APIs
under the appropriate relnotes section
- Review the milestone predictions thread for other notable items
- Post PR and ask for review, nominate for backport
Here is the process for backporting to beta.
The milestone predictions thread is I think the best resource we
have right now for communicating where Rust is going in the short
term. The OP on that thread is editable by anyone. To add to it, in
addition to just being always looking for interesting work going on
that will land soon, I typically do GitHub queries for FCPs and
otherwise browse the B-unstable tag.
Finally, releases seem to be getting ever more challenging to make as
Rust grows, and I expect to be increasingly desperate for more help
keeping them on track. Releases are where the rubber hits the road -
it is where we prove that we really do uphold the ideals we claim to
with respect to the stability of our product. If we relent for even
a single week we risk a major error.
Let’s keep doing our best!