Closed
Description
This is a tracking issue for the RFC "3085" (rust-lang/rfcs#3085).
About tracking issues
Tracking issues are used to record the overall progress of implementation.
They are also used as hubs connecting to other relevant issues, e.g., bugs or open design questions.
A tracking issue is however not meant for large scale discussion, questions, or bug reports about a feature.
Instead, open a dedicated issue for the specific matter and add the relevant feature gate label.
Steps
This is really a meta-tracker, since each individual edition feature tracked separately
The 2021 edition is tracked in https://github.com/orgs/rust-lang/projects/7
The edition change are:
- Edition-specific preludes: Tracking issue for edition-specific preludes #85684
- Cargo
resolver = "2"
default: Prepare Cargo forresolver = "2"
as the default in the 2021 edition cargo#9048 - IntoIterator for array with backwards compatibility hack: Tracking Issue for edition-dependent IntoIterator for arrays #84513
- Disjoint capture in closures: https://github.com/rust-lang/project-rfc-2229/milestone/5
- Panic macro consistency: Tracking Issue for RFC 3007: Making core and std's panic identical in Rust 2021 #80162
- Reserved syntax: Tracking Issue for RFC 3101: Reserved Prefixes #84978
- Promoting two warnings to hard errors: Update BARE_TRAIT_OBJECT and ELLIPSIS_INCLUSIVE_RANGE_PATTERNS to errors in Rust 2021 #83213
- Or patterns in macro_rules: Tracking issue for RFC 2535, 2530, 2175, "Or patterns, i.e
Foo(Bar(x) | Baz(x))
" #54883
Unresolved Questions
- When should we use a migration and when should we prefer to be strictly backwards compatible?
- This will roughly be decided on a per-feature basis
- What is the policy on warnings and lints tied to the edition?
Metadata
Metadata
Assignees
Labels
Area: The 2021 editionBlocker: Approved by a merged RFC but not yet implemented.Category: An issue tracking the progress of sth. like the implementation of an RFCRelevant to the core team, which will review and decide on the PR/issue.Relevant to the language teamRelevant to the library API team, which will review and decide on the PR/issue.