Rust 2018 RC1 is available


cargo fix seems to just convert the extern crate into use crate, it works even after I removed the use crate generated by cargo.

It would be nice if cargo automatically convert #[macro_use] extern crate serde into use serde::Serialize though.


Where could we realistically have a warning if edition = is not set in Cargo.toml?


I just wanted to share a data point, that I recently converted rust-belt, a small Piston game, to Rust 2018 using the current beta. This game has over a 100 transitive dependencies, and the experience was great!

Release compile times are normally about 120 seconds, and Rust 2018 was only a few seconds slower (~2%) (with NLL!). I consider this to be a monumental success.

With cargo fix installed by default and ready to go, following the edition guide was a breeze. This was far, far easier than any similar port in any other language I’ve ever used. The fact that Rust 2015 and 2018 crates interop seamlessly is also quite impressive. This is equivalent to depending a C++17 library from C++03, something I’d never even thought to ask for given how wildly inconceivable it would be in C++'s current compilation model.

So a big thanks and congrats to the whole team :clap:!