Tools
Some of the highlights from the past two weeks:
- MSVC backtraces now have line numbers where possible.
- LLVM has been updated to the 3.7 release branch.
- OpenBSD has a snapshot and a few fixes so it’s almost passing tests and "vanilla bootstrapping".
- 1.3 was released, be sure to thank @brson for his awesome work in preparing all the artifacts!
- There’s a thread on internals about packaging Rust and Cargo with lots of good discussion.
- A new RFC has been proposed for adding machine readable output to the test harness that rustc generates.
Libs
Last week marked the 1.3 stable/1.4 beta release. As part of this cycle, we went through a round of API stabilization and deprecation for the 1.4 release (after a cycle’s worth of collecting final comments). You can see the outcome here.
We will be selecting the next batch of APIs to put up for stabilization or deprecation (for the 1.5 release) this week. Please take a look at the "stabilization phase" dashboard below, and leave a comment if you’d like to nominate an API for this process.
On the RFC front, we’ve been continuing to churn on some controversial points. The wildcard dependencies RFC remains open for another round of final comments:
- FCP PR #1241: Forbid wildcard dependencies on crates.io
In addition, there’s been substantial discussion about catch_panic
(now
recover
) since it was merged, including new alternative proposals for more
sophisticated bounds; check out the latest comments
here.
Finally, a long-awaited RFC for building out our std::time
APIs has been posted:
- PR #1288: Improvements to the Time APIs
Please leave feedback on those RFCs to help drive the discussion forward!
Lang
We decided to accept a number of RFCs:
- RFC #1199: SIMD groundwork.
- RFC #1224: RFC process.
- RFC #1237: Clarify extreme operator behavior.
- RFC #1238: Non-parametric dropck.
- RFC #1240: References into packed structs should be unsafe.
We decided to place the following RFCs into final comment period:
-
RFC #1228: Change the
"placement new" syntax from
in place { value }
toplace <- value
. The discussion has centered about what uses for “placement new” will be most common; this syntax seems well-suited to uses that do not yield a result, such asvec <- elem
, and less well-suited to those that do, such aslet value = (arena <- value)
. -
RFC #1245: Allow
const fn
functions to beunsafe
.
Thanks!
–nmatsakis
Compiler
We held our first compiler subteam meeting today, in which we primarily conducted triage, as well as having some general discussion about how to phase in MIR, and other possibilities regarding how to represent the HIR.
Thanks!
–nmatsakis