Skip to content

Commit 5c379a0

Browse files
committed
Set up scaffolding for 2024
1 parent bbffb07 commit 5c379a0

9 files changed

+98
-0
lines changed

src/SUMMARY.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,13 @@
3434
- [Warnings promoted to errors](rust-2021/warnings-promoted-to-error.md)
3535
- [Or patterns in macro-rules](rust-2021/or-patterns-macro-rules.md)
3636
- [C-string literals](rust-2021/c-string-literals.md)
37+
38+
## Rust 2024
39+
40+
- [Rust 2024 🚧](rust-2024/index.md)
41+
- [`unsafe_op_in_unsafe_fn` warning](rust-2024/unsafe-op-in-unsafe-fn.md)
42+
- [RPIT lifetime capture](rust-2024/rpit-lifetime-capture.md)
43+
- [Disallow references to `static mut`](rust-2024/static-mut-reference.md)
44+
- [Public/private dependencies](rust-2024/public-private-dependencies.md)
45+
- [Cargo: Remove implicit features](rust-2024/cargo-remove-implicit-features.md)
46+
- [Rustfmt: Combine all delimited exprs as last argument](rust-2024/rustfmt-overflow-delimited-expr.md)

src/editions/transitioning-an-existing-project-to-a-new-edition.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,19 @@ If new warnings are issued, you may want to consider running `cargo fix` again (
8383

8484
Congrats! Your code is now valid in both Rust 2015 and Rust 2018!
8585

86+
## Migrating to an unstable edition
87+
88+
After an edition is released, there is roughly a three year window before the next edition.
89+
During that window, new features may be added to the next edition, which will only be available on the [nightly channel].
90+
If you want to help test those new features before they are stabilized, you can use the nightly channel to try them out.
91+
92+
The steps are roughly similar to the stable channel:
93+
94+
1. Install the most recent nightly: `rustup update nightly`.
95+
2. Run `cargo +nightly fix --edition`.
96+
3. Edit `Cargo.toml` and place `cargo-features = ["edition2024"]` at the top (above `[package]`), and change the edition field to say `edition = "2024"`.
97+
4. Run `cargo +nightly check` to verify it now works in the new edition.
98+
8699
[`cargo fix`]: ../../cargo/commands/cargo-fix.html
87100
[`cargo test`]: ../../cargo/commands/cargo-test.html
88101
[Advanced migration strategies]: advanced-migrations.md
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Cargo: Remove implicit features
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
## Summary
6+
7+
## Details
8+
9+
## Migration

src/rust-2024/index.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Rust 2024
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
| Info | |
6+
| --- | --- |
7+
| RFC | [#3501](https://rust-lang.github.io/rfcs/3501-edition-2024.html) |
8+
| Release version | 1.82.0 (anticipated) |
9+
10+
The Rust 2024 Edition is currently slated for release in Rust 1.82.0.
11+
Rust 1.82.0 will be in beta for six weeks,
12+
after which it is released as stable on October 17th.
13+
14+
However, note that Rust is a project run by volunteers.
15+
We prioritize the personal well-being of everyone working on Rust
16+
over any deadlines and expectations we might have set.
17+
This could mean delaying the edition a version if necessary,
18+
or dropping a feature that turns out to be too difficult or stressful to finish in time.
19+
20+
That said, we are on schedule and many of the difficult problems are already tackled,
21+
thanks to all the people contributing to Rust 2024! 💛
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Public/private dependencies
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
## Summary
6+
7+
## Details
8+
9+
## Migration
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# RPIT lifetime capture
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
## Summary
6+
7+
## Details
8+
9+
## Migration
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Rustfmt: Combine all delimited exprs as last argument
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
## Summary
6+
7+
## Details
8+
9+
## Migration

src/rust-2024/static-mut-reference.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Disallow references to static mut
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
## Summary
6+
7+
## Details
8+
9+
## Migration
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# unsafe_op_in_unsafe_fn warning
2+
3+
🚧 The 2024 Edition has not yet been released and hence this section is still "under construction".
4+
5+
## Summary
6+
7+
## Details
8+
9+
## Migration

0 commit comments

Comments
 (0)