github.com
## Summary [summary]: #summary This RFC describes the plan for the 2021 Edition. It supersedes [RFC 2052]. The proposed 2021 Edition is intentionally more limited than the 2018 Edition. Rather than representing a major marketing push, the 2...
RFC 3085
RFC
2021-02-19
~24 min read
github.com
## Summary [summary]: #summary A new prelude for the 2021 edition, featuring several extra traits. ## Motivation [motivation]: #motivation While types and free functions can be added to the prelude independent of edition boundaries, the sam...
RFC 3114
RFC
2021-02-16
~6 min read
github.com
## Summary [summary]: #summary Add new syntax to declarative macros to give their authors easy access to additional metadata about macro metavariables, such as the index, length, or count of macro repetitions. ## Motivation [motivation]: #m...
RFC 3086
RFC
2021-01-23
~10 min read
github.com
## Summary [summary]: #summary Replace [RFC #1859, `try_trait`](https://rust-lang.github.io/rfcs/1859-try-trait.html), with a new design for the currently-unstable [`Try` trait](https://doc.rust-lang.org/nightly/std/ops/trait.Try.html) and...
RFC 3058
RFC
2020-12-12
~44 min read
github.com
## Summary [summary]: #summary The focus of this year is on project health, specifically as it relates to Rust's governance structure. * Establishing charters for teams in the Rust project * Provide for unified process and vocabulary across...
RFC 3037
RFC
2020-12-03
~12 min read
github.com
## Summary [summary]: #summary Allow Cargo packages to depend on `bin`, `cdylib`, and `staticlib` crates, and use the artifacts built by those crates. ## Motivation [motivation]: #motivation There are many different possible use cases. - [R...
RFC 3028
RFC
2020-11-30
~15 min read
github.com
## Summary [summary]: #summary Introduce a `#[must_not_suspend]` lint in the compiler that will warn the user when they are incorrectly holding a struct across an await boundary. ## Motivation [motivation]: #motivation Enable users to fearl...
RFC 3014
RFC
2020-11-09
~6 min read
github.com
## Summary [summary]: #summary Restrict (implicit) [promotion][rfc1414], such as lifetime extension of rvalues, to infallible operations. [rfc1414]: https://github.com/rust-lang/rfcs/blob/master/text/1414-rvalue_static_promotion.md ## Motiv...
RFC 3027
RFC
2020-11-08
~11 min read
github.com
## Checking conditional compilation at compile time ## Summary Rust supports conditional compilation, analogous to `#ifdef` in C / C++ / C#. Experience has shown that managing conditional compilation is a significant burden for large-scale...
RFC 3013
RFC
2020-11-04
~18 min read
github.com
## Summary [summary]: #summary The current design of the `Read` trait is nonoptimal as it requires that the buffer passed to its various methods be pre-initialized even though the contents will be immediately overwritten. This RFC proposes...
RFC 2930
RFC
2020-10-28
~18 min read
github.com
## Summary This RFC proposes to make `core::panic!` and `std::panic!` identical and consistent in Rust 2021, and proposes a way to deal with the differences in earlier editions without breaking code. ## Problems `core::panic!` and `std::pan...
RFC 3007
RFC
2020-10-25
~5 min read
github.com
## Summary [summary]: #summary Define UB during const evaluation to lead to an unspecified result or hard error for the affected CTFE query, but not otherwise infect the compilation process. ## Motivation [motivation]: #motivation So far, n...
RFC 3016
RFC
2020-10-10
~6 min read
github.com
## Summary [summary]: #summary Introduce the `AsyncIterator` trait into the standard library, using the design from `futures`. Redirect the `Stream` trait definition in the `futures-core` crate (which is "pub-used" by the `futures` crate) t...
RFC 2996
RFC
2020-09-29
~22 min read
github.com
## Summary [summary]: #summary This proposes a new `cfg`: `target_abi`, which specifies certain aspects of the target's [Application Binary Interface (ABI)][abi]. This also adds a `CARGO_CFG_TARGET_ABI` environment variable for parity with...
RFC 2992
RFC
2020-09-27
~2 min read
github.com
## This RFC was previously approved, but part of it later **withdrawn** The `cfg(target = "...")` conditional compilation key was previously approved, but was later withdrawn. For details, see the [summary comment]. [summary comment]: https...
RFC 3239
RFC
2020-09-27
~2 min read
github.com
## Summary [summary]: #summary This is a project group RFC version of [`lang-team#29`]. This RFC establishes a new project group, under the libs team, to produce a portable SIMD API in a new `rust-lang/stdsimd` repository, exposed through a...
RFC 2977
RFC
2020-08-28
~2 min read
github.com
## Summary This document attempts to increase the utility of [naked functions](https://github.com/rust-lang/rfcs/blob/master/text/1201-naked-fns.md) by constraining their use and increasing their defined invariants. ## Motivation Naked func...
RFC 2972
RFC
2020-08-06
~7 min read
github.com
## Summary [summary]: #summary This RFC establishes a new project group, under the libs team, to drive efforts to improve error handling in Rust. ## Motivation [motivation]: #motivation The error handling project group aims to reduce confus...
RFC 2965
RFC
2020-07-23
~5 min read
github.com
## Summary [summary]: #summary Promote the Arm aarch64-unknown-linux-gnu Rust target to Tier-1. The next section provides a justification for the promotion. **Please note that the following are required next steps that should ideally emerge...
RFC 2959
RFC
2020-07-17
~8 min read
github.com
## Summary [summary]: #summary This RFC describes the design of a JSON output for the tool `rustdoc`, to allow tools to lean on its data collection and refinement but provide a different front-end. ## Motivation [motivation]: #motivation Th...
RFC 2963
RFC
2020-06-26
~28 min read