github.com
## Summary [summary]: #summary Add a warn-by-default lint for items inside functions or expressions that implement methods or traits that are visible outside the function or expression. Consider ramping that lint to deny-by-default for Rust...
RFC 3373
RFC
2022-01-19
~2 min read
github.com
## Summary Allow explicitly specifying lifetimes on closures via `for<'a> |arg: &'a u8| { ... }`. This will always result in a higher-ranked closure which can accept *any* lifetime (as in `fn bar<'a>(val: &'a u8) {}`). Closures defined with...
RFC 3216
RFC
2022-01-06
~13 min read
github.com
## RFC: Cargo `--crate-type` CLI Argument - Feature Name: `cargo_cli_crate_type` - Start Date: 2021-10-07 - RFC PR: [rust-lang/rfcs#3180](https://github.com/rust-lang/rfcs/pull/3180) - Tracking Issue: [rust-lang/cargo#10083](https://github....
RFC 3180
RFC
2021-11-14
~4 min read
github.com
## This RFC was previously approved, but part of it later **rejected** The `Provider` interface that is core to this proposal has been rejected for now by [the libs team meeting]. Without that element, what remains here is essentially just...
RFC 3192
RFC
2021-11-04
~15 min read
github.com
## Summary [summary]: #summary This RFC aims to improve the debugging experience for Rust developers, by enabling Rust developers to package debugger visualizer scripts with their crates. ## Motivation [motivation]: #motivation Most, if not...
RFC 3191
RFC
2021-11-01
~21 min read
github.com
## Static async fn in traits - Feature Name: `async_fn_in_trait` - Start Date: 2021-10-13 - RFC PR: [rust-lang/rfcs#3185](https://github.com/rust-lang/rfcs/pull/3185) - Rust Issue: [rust-lang/rust#91611](https://github.com/rust-lang/rust/is...
RFC 3185
RFC
2021-10-26
~7 min read
github.com
## Summary [summary]: #summary Adding methods to `LocalKey` for `LocalKey<Cell<T>>` and `LocalKey<RefCell<T>>` to make thread local cells easier to use. ## Motivation [motivation]: #motivation Almost all real-world usages of `thread_local!...
RFC 3184
RFC
2021-10-17
~8 min read
github.com
## Summary [summary]: #summary Allow Cargo packages to depend on the same crate multiple times with different dependency names, to support artifact dependencies for multiple targets. ## Motivation [motivation]: #motivation [RFC 3028](https:...
RFC 3176
RFC
2021-09-14
~6 min read
github.com
# Rust crate ownership policy - Feature Name: none - Start Date: 2021-05-04 - RFC PR: [rust-lang/rfcs#3119](https://github.com/rust-lang/rfcs/pull/3119) - Rust Issue: [rust-lang/rust#88867](https://github.com/rust-lang/rust/issues/88867) ##...
RFC 3119
RFC
2021-09-11
~10 min read
github.com
## Summary [summary]: #summary This RFC adds two argumentless methods to `f32`/`f64`, `next_up` and `next_down`. These functions are specified in the IEEE 754 standard, and provide the capability to enumerate floating point values in order....
RFC 3173
RFC
2021-09-06
~9 min read
github.com
## Summary [summary]: #summary `Option` has the methods `unwrap`, `unwrap_or`, `unwrap_or_else` and `unwrap_or_default`. It similarly has `map`, `map_or`, `map_or_else`, however `map_or_default` is missing. The exact same problem exists for...
RFC 3148
RFC
2021-07-14
~1 min read
github.com
## Summary This RFC proposes to stabilize the `weak-dep-features` and `namespaced-features` enhancements to Cargo. These introduce the following additions to how Cargo's [feature system] works: Weak dependency features adds the ability to s...
RFC 3143
RFC
2021-06-10
~11 min read
github.com
## Summary [summary]: #summary Introduce a new `let PATTERN: TYPE = EXPRESSION else DIVERGING_BLOCK;` construct (informally called a **let-else statement**), the counterpart of if-let expressions. If the pattern match from the assigned expr...
RFC 3137
RFC
2021-05-31
~21 min read
github.com
## Summary [summary]: #summary Cargo should have a [profile setting](https://doc.rust-lang.org/cargo/reference/profiles.html#profile-settings) named `trim-paths` to sanitise absolute paths introduced during compilation that may be embedded...
RFC 3127
RFC
2021-05-24
~16 min read
github.com
## Summary [summary]: #summary Close a hole in encapsulation boundaries in Rust by providing users of `AsRawFd` and related traits guarantees about their raw resource handles, by introducing a concept of *I/O safety* and a new set of types...
RFC 3128
RFC
2021-05-24
~14 min read
github.com
## Summary [summary]: #summary This RFC proposes an extension to Rustdoc that automatically scrapes code examples from the project's `examples/` directory. Check out a live demo here: https://willcrichton.net/example-analyzer/warp/trait.Fil...
RFC 3123
RFC
2021-05-09
~6 min read
github.com
## Summary [summary]: #summary An attribute `#[default]`, usable on `enum` unit variants, is introduced thereby allowing some enums to work with `#[derive(Default)]`. ```rust #[derive(Default)] enum Padding { Space, Zero, #[default] None, }...
RFC 3107
RFC
2021-04-07
~7 min read
github.com
## Summary [summary]: #summary Beginning with the 2021 edition, reserve the syntax `ident#foo`, `ident"foo"`, `ident'f'`, and `ident#123`, as a way of future-proofing against future language changes. ## Motivation [motivation]: #motivation...
RFC 3101
RFC
2021-03-31
~8 min read
github.com
## Summary Enables Cargo to include the authorization token for all API requests, crate downloads and index updates (when using HTTP) by adding a configuration option to `config.json` in the registry index. ## Motivation Organizations need...
RFC 3139
RFC
2021-03-31
~7 min read
github.com
## RFC: Make the authors field optional - Feature Name: `optional_authors_field` - Start Date: 2021-01-07 - RFC PR: [rust-lang/rfcs#3052](https://github.com/rust-lang/rfcs/pull/3052) - Rust Issue: [rust-lang/rust#83227](https://github.com/r...
RFC 3052
RFC
2021-03-17
~4 min read