## Summary [summary]: #summary Adds a *"Future possibilities"* section to the `0000-template.md` RFC template that asks authors to elaborate on what natural extensions there might to their RFC and what future directions this may take the pr...
## Summary [summary]: #summary Extend Rust's pattern matching exhaustiveness checks to cover the integer types: `u8`, `u16`, `u32`, `u64`, `u128`, `usize`, `i8`, `i16`, `i32`, `i64`, `i128`, `isize` and `char`. ```rust fn matcher_full(x: u8...
A collection of non-cryptographic hashing algorithms for Rust
crate
v1.0.1
github.com
2018-10-10
Discard trait which allows for intentionally leaking memory
crate
v1.0.4
github.com
2018-09-17
## Summary [summary]: #summary Change `cfg_attr` to allow multiple attributes after the configuration predicate, instead of just one. When the configuration predicate is true, replace the attribute with all following attributes. ## Motivati...
## Summary [summary]: #summary Allow `|` to be arbitrarily nested within a pattern such that `Some(A(0) | B(1 | 2))` becomes a valid pattern. ## Motivation [motivation]: #motivation Nothing this RFC proposes adds anything with respect to ex...
## Summary [summary]: #summary [RFC 192]: https://github.com/rust-lang/rfcs/blob/master/text/0195-associated-items.md#defaults [Resolve][changes] the design of associated type defaults, first introduced in [RFC 192], such that provided meth...
## Summary [summary]: #summary Extend struct update syntax (a.k.a. functional record update (FRU)) to support instances of the *same* struct that have different types due to generic type or lifetime parameters. Fields of different types mus...
## Summary [summary]: #summary Allow assigning constants to `_`, as in `const _: TYPE = VALUE`, analogous to `let _ = VALUE`. ## Motivation [motivation]: #motivation The ability to ensure that code type checks while discarding the result is...
## 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...
## 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...
## 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...
## 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:...
## 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...
Port of Python's difflib library to Rust.
crate
v0.4.0
github.com
2018-07-22
## 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 `...
## 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...
## 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...
## 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...
## 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...