github.com
## Summary When a thread panics in Rust, the unwinding runtime currently prints a message to standard error containing the panic argument as well as the filename and line number corresponding to the location from which the panic originated....
RFC 1328
RFC
2015-10-08
~5 min read
github.com
## Summary Add some additional utility methods to OsString and OsStr. ## Motivation OsString and OsStr are extremely bare at the moment; some utilities would make them easier to work with. The given set of utilities is taken from String, an...
RFC 1307
RFC
2015-10-04
~1 min read
github.com
## Summary Define the general semantics of intrinsic functions. This does not define the semantics of the individual intrinsics, instead defines the semantics around intrinsic functions in general. ## Motivation Intrinsics are currently poo...
RFC 1300
RFC
2015-09-29
~1 min read
github.com
## Summary Promote the `libc` crate from the nursery into the `rust-lang` organization after applying changes such as: * Remove the internal organization of the crate in favor of just one flat namespace at the top of the crate. * Set up a l...
RFC 1291
RFC
2015-09-21
~12 min read
github.com
## Summary This RFC proposes several new types and associated APIs for working with times in Rust. The primary new types are `Instant`, for working with time that is guaranteed to be monotonic, and `SystemTime`, for working with times acros...
RFC 1288
RFC
2015-09-20
~11 min read
github.com
## Summary Improve Cargo's story around multi-crate single-repo project management by introducing the concept of workspaces. All packages in a workspace will share `Cargo.lock` and an output directory for artifacts. ## Motivation A common m...
RFC 1525
RFC
2015-09-15
~9 min read
github.com
## Summary This RFC proposes to allow library authors to use a `#[deprecated]` attribute, with optional `since = "`*version*`"` and `note = "`*free text*`"`fields. The compiler can then warn on deprecated items, while `rustdoc` can document...
RFC 1270
RFC
2015-09-03
~4 min read
github.com
## Summary Preventing overlapping implementations of a trait makes complete sense in the context of determining method dispatch. There must not be ambiguity in what code will actually be run for a given type. However, for marker traits, the...
RFC 1268
RFC
2015-09-02
~3 min read
github.com
## Summary Allow a re-export of a function as entry point `main`. ## Motivation Functions and re-exports of functions usually behave the same way, but they do not for the program entry point `main`. This RFC aims to fix this inconsistency....
RFC 1260
RFC
2015-08-19
~1 min read
github.com
## Summary Implement `.drain(range)` and `.drain()` respectively as appropriate on collections. ## Motivation The `drain` methods and their draining iterators serve to mass remove elements from a collection, receiving them by value in an it...
RFC 1257
RFC
2015-08-14
~3 min read
github.com
## Summary Taking a reference into a struct marked `repr(packed)` should become `unsafe`, because it can lead to undefined behaviour. `repr(packed)` structs need to be banned from storing `Drop` types for this reason. ## Motivation Issue [#...
RFC 1240
RFC
2015-08-06
~10 min read
github.com
## Summary Revise the Drop Check (`dropck`) part of Rust's static analyses in two ways. In the context of this RFC, these revisions are respectively named `cannot-assume-parametricity` and `unguarded-escape-hatch`. 1. `cannot-assume-paramet...
RFC 1238
RFC
2015-08-05
~15 min read
github.com
## Summary Document and expand the open options. ## Motivation The options that can be passed to the os when opening a file vary between systems. And even if the options seem the same or similar, there may be unexpected corner cases. This R...
RFC 1252
RFC
2015-08-04
~22 min read
github.com
## Summary Enable the compiler to cache incremental workproducts. ## Motivation The goal of incremental compilation is, naturally, to improve build times when making small edits. Any reader who has never felt the need for such a feature is...
RFC 1298
RFC
2015-08-04
~23 min read
github.com
## Summary [summary]: #summary Copy most of the static `ptr::` functions to methods on unsafe pointers themselves. Also add a few conveniences for `ptr.offset` with unsigned integers. ```rust // So this: ptr::read(self.ptr.offset(idx as isi...
RFC 1966
RFC
2015-08-01
~8 min read
github.com
## Summary If the constant evaluator encounters erroneous code during the evaluation of an expression that is not part of a true constant evaluation context a warning must be emitted and the expression needs to be translated normally. ## De...
RFC 1229
RFC
2015-07-30
~2 min read
github.com
## Summary This RFC proposes a policy around the crates under the rust-lang github organization that are not part of the Rust distribution (compiler or standard library). At a high level, it proposes that these crates be: - Governed similar...
RFC 1242
RFC
2015-07-29
~8 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/issues/27779#issuecomment-378416911 ## Summary Rather than trying to find a clever synt...
RFC 1228
RFC
2015-07-28
~6 min read
github.com
## Summary Move `std::thread::catch_panic` to `std::panic::recover` after replacing the `Send + 'static` bounds on the closure parameter with a new `PanicSafe` marker trait. ## Motivation In today's stable Rust it's not possible to catch a...
RFC 1236
RFC
2015-07-24
~17 min read
github.com
## Summary A Cargo crate's dependencies are associated with constraints that specify the set of versions of the dependency with which the crate is compatible. These constraints range from accepting exactly one version (`=1.2.3`), to accepti...
RFC 1241
RFC
2015-07-23
~5 min read