github.com
## Summary [summary]: #summary Permit users to `#[cfg(..)]` on whether: + they have a certain minimum Rust version (`#[cfg(version(1.27.0))]`). + a certain external path is accessible (`#[cfg(accessible(::std::mem::ManuallyDrop))]`). ## Mot...
RFC 2523
RFC
2018-08-12
~26 min read
github.com
## Summary [summary]: #summary Unions do not allow fields of types that require drop glue (the code that is automatically run when a variables goes out of scope: recursively dropping the variable and all its fields), but they may still `imp...
RFC 2514
RFC
2018-08-03
~13 min read
github.com
## Summary [summary]: #summary Allow type aliases and associated types to use `impl Trait`, replacing the prototype `existential type` as a way to declare type aliases and associated types for opaque, uniquely inferred types. ## Motivation...
RFC 2515
RFC
2018-08-03
~15 min read
github.com
## Summary [summary]: #summary Unify `std::os::raw::c_void` and `libc::c_void` by making them both re-exports of a definition in libcore. ## Motivation [motivation]: #motivation `std::os::raw::c_void` and `libc::c_void` are different types:...
RFC 2521
RFC
2018-08-02
~5 min read
github.com
## Summary [summary]: #summary Add a macro `concat_bytes!()` to join byte sequences onto an `u8` array, the same way `concat!()` currently supports for `str` literals. ## Motivation [motivation]: #motivation `concat!()` is convenient and us...
RFC 2509
RFC
2018-07-31
~1 min read
github.com
Port of Python's difflib library to Rust.
Crate
v0.4.0
2018-07-22
github.com
## Summary [summary]: #summary Change the `std::error::Error` trait to improve its usability. Introduce a backtrace module to the standard library to provide a standard interface for backtraces. ## Motivation [motivation]: #motivation The `...
RFC 2504
RFC
2018-07-18
~7 min read
github.com
## Summary [summary]: #summary Extends `if let` and `while let`-expressions with chaining, allowing you to combine multiple `let`s and `bool`-typed conditions together naturally. After implementing this RFC, you'll be able to write, among o...
RFC 2497
RFC
2018-07-13
~57 min read
github.com
## This RFC was previously approved, but later **withdrawn** For details see the [summary comment]. [summary comment]: https://github.com/rust-lang/rust/pull/76901#issuecomment-880169952 ## Summary [summary]: #summary Generalize the needle...
RFC 2500
RFC
2018-07-06
~41 min read
github.com
## Summary [summary]: #summary Add `rust` field to the package section of `Cargo.toml` which will be used to specify crate's Minimum Supported Rust Version (MSRV): ```toml [package] name = "foo" version = "0.1.0" rust = "1.30" ``` ## Motiva...
RFC 2495
RFC
2018-06-28
~5 min read
github.com
## Summary [summary]: #summary Release Clippy 1.0, in preparation for it being shipped via rustup and eventually available via Rust Stable. ## Motivation [motivation]: #motivation See also: [The Future of Clippy][future] Clippy, the linter...
RFC 2476
RFC
2018-06-14
~30 min read
github.com
## Summary [summary]: #summary Stabilize the `alloc` crate. This crate provides the subset of the standard library’s functionality that requires a global allocator (unlike the `core` crate) and an allocation error handler, but not other ope...
RFC 2480
RFC
2018-06-14
~9 min read
github.com
## Summary [summary]: #summary Add a lint that warns when marking an inner function as `#[test]`. ## Motivation [motivation]: #motivation `#[test]` is used to mark functions to be run as part of a test suite. The functions being marked need...
RFC 2471
RFC
2018-06-10
~1 min read
github.com
## Summary [summary]: #summary Allow non-ASCII letters (such as accented characters, Cyrillic, Greek, Kanji, etc.) in Rust identifiers. ## Motivation [motivation]: #motivation Writing code using domain-specific terminology simplifies implem...
RFC 2457
RFC
2018-06-03
~19 min read
github.com
## Summary [summary]: #summary This RFC seeks to clarify some ambiguity from [RFC #1023], and expands it to allow type parameters to appear in the type for which the trait is being implemented, regardless of whether a local type appears bef...
RFC 2451
RFC
2018-05-30
~12 min read
github.com
## Summary [summary]: #summary With any luck, Rustfmt 1.0 will happen very soon. The Rust community takes promises of stability very seriously, and Rustfmt (due to being a tool as well as a library) has some interesting constraints on stabi...
RFC 2437
RFC
2018-05-10
~13 min read
github.com
## Summary [summary]: #summary Turn the `overflowing_literals` lint from warn to deny for the 2018 edition. ## Motivation [motivation]: #motivation Rust has a strong focus on providing compile-time protection against common programmer error...
RFC 2438
RFC
2018-05-10
~5 min read
github.com
## Summary [summary]: #summary This RFC defines an official Rust style guide. The style is a specification for the default behaviour of [Rustfmt](https://github.com/rust-lang-nursery/rustfmt), is required for official Rust projects (includi...
RFC 2436
RFC
2018-05-04
~3 min read
github.com
## Summary [summary]: #summary The keyword `proc` gets unreserved. ## Motivation [motivation]: #motivation We are currently not using `proc` as a keyword for anything in the language. Currently, `proc` is a reserved keyword for future use....
RFC 2420
RFC
2018-04-26
~1 min read
github.com
## Summary [summary]: #summary We unreserve: + `pure` + `sizeof` + `alignof` + `offsetof` ## Motivation [motivation]: #motivation We are currently not using any of the reserved keywords listed in the [summary] for anything in the language a...
RFC 2421
RFC
2018-04-26
~7 min read