Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rust 2024 Edition #117

Open
nikomatsakis opened this issue Jul 22, 2024 · 3 comments
Open

Rust 2024 Edition #117

nikomatsakis opened this issue Jul 22, 2024 · 3 comments

Comments

@nikomatsakis
Copy link
Contributor

nikomatsakis commented Jul 22, 2024

Metadata
Owner(s) @traviscross
Team(s) lang, leadership-council, types
Goal document 2024h2/Rust-2024-Edition
Tracked issues rust-lang/rust label:A-edition-2024 label:C-tracking-issue -label:t-libs

Summary

Feature complete status for Rust 2024, with final release to occur in early 2025.

For details, see the tracking issue:

@nikomatsakis
Copy link
Contributor Author

This issue is intended for status updates only.

For general questions or comments, please contact the owner(s) directly.

@traviscross
Copy link
Contributor

The edition is on track to ship on schedule:

Date Version Edition stage
2024-09-05 Release v1.81 Checking off items...
2024-10-11 Branch v1.83 Go / no go on all items
2024-10-17 Release v1.82 Rust 2024 nightly beta
2024-11-22 Branch v1.84 Prepare to stabilize...
2024-11-28 Release v1.83 Stabilize Rust 2024 on master
2025-01-03 Branch v1.85 Cut Rust 2024 to beta
2025-01-09 Release v1.84 Announce Rust 2024 is pending!
2025-02-20 Release v1.85 Release Rust 2024

All lang priority items have landed and are fully ready for Rust 2024:

Nine other items are fully ready for Rust 2024:

There are currently 10 items that are close to ready, often with only documentation remaining.

There are currently 6 items that still need implementation work. Some of these are rather close to ready also.

There will be items that are currently tracked for the edition that will not make it. That's OK, and we still plan to ship the edition on time and without those items.

Overall, the edition work is going well. We have good communication with each of the item owners and with the relevant teams.

For more details, see the tracking issue for the Rust 2024 edition:

@traviscross
Copy link
Contributor

The Rust 2024 edition is on track to ship on schedule:

Date Version Edition stage
2024-11-22 Branch v1.84 Prepare to stabilize...
2024-11-28 Release v1.83 Stabilize Rust 2024 on master
2025-01-03 Branch v1.85 Cut Rust 2024 to beta
2025-01-09 Release v1.84 Announce Rust 2024 is pending!
2025-02-20 Release v1.85 Release Rust 2024

Our motivating priorities in managing this edition have been to:

  • Make this edition a success.
  • Do so without requiring heroics from anyone.

We're quite happy with how things have turned out. This is going to be big edition -- the largest since Rust 2015. There are a lot of new and exciting things in this edition. Moreover, these changes foreshadow and open the door to continuing work on the bright shiny future for Rust that we all want.

We've carefully managed all aspects of the process to ensure that the many items included in the edition are fully up to our high standards. And while many people have put in substantial and great work to make this edition happen, we've put together Rust 2024 without requiring the kind of high-stress singular personal heroics that have often been required to ship past editions.

We're especially happy that we've been able to do this without cutting many items from the edition, especially late in the game. People end up putting in a lot of work to get these items ready. Cutting them tends to waste this work and often leads to burnout. So we worked hard to avoid that, and are pleased to have done so.

All in all, that's what we call a successful edition.

Let's now review what will be part of Rust 2024.

All lang priority items have landed and are fully ready for Rust 2024:

The other lang items to be included in the edition are:

There are three changes to the standard library that are tied to the new edition:

There are two Cargo items that will be part of Rust 2024:

There is one exciting item for rustdoc that will greatly speed up doctests in Rust 2024:

This will be the first Rust edition that brings with it a new style edition to be applied by rustfmt. That new style edition includes:

At this point, setting aside rustfmt (where some work remains ongoing), there is only one remaining item where we're waiting for a PR to land in nightly (rust-lang/rust#131984). Once that happens, we'll begin the final set of quality assurance crater runs for the edition items and their migrations. When those are complete and triaged, which we expect to happen in the next two weeks, we'll announce the nightly beta for Rust 2024 and will solicit wider testing.

Rust 2024 will be stabilized in nightly in late November, and then will be cut to beta on 2025-01-03.

On 2025-02-20, we'll be releasing Rust 2024.

For more details about the edition items for Rust 2024, see the Edition Guide.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants