We’re past the midpoint in the current release cycle, which will culminate in cutting Rust 1.29, aka “2018 Edition Preview 2”.
The Lang Team recently reviewed the remaining major language features on the docket for Rust 2018, and has proposed entering final comment period (FCP) on the following features for this cycle:
FCP has just been proposed for each of these features, but is still waiting for full review from the relevant teams. In the meantime, if these are features you care about, please take this opportunity to try working with these features in the new Edition. Each link above provides additional pointers on how to do this, and feedback should be left on that thread as well.
In addition, depending on how some final tweaking goes, procedural macros may also stabilize this cycle.
Finally, we are expecting NLL to be on by default in Preview 2, and to have the new variant of the module system changes available (under a distinct feature gate) as well.
I wonder if we could put this issue into stabilization for the edition:
(I’m not sure what the procedure is for doing this for cargo features! Will we just make the edition feature in cargo turn this on also?)
I’ve been using the 2018 edition, and its mostly been great. One problem is that the project I’m writing depends on ed25519_dalek, which is a very long name that I prefer to abbreviate to ed25519. Not knowing that this feature had been implemented, I’ve been use ed25519_dalek as ed25519; at the top of each relevant module, which is no fun.
Otherwise, I’ve found the new edition super smooth
EDIT: Oh, but trying to use it I’ve hit an ICE (already reported). Seems like the feature needs some love…
That's great! Is there any way for us mere mortals to easily keep up to date about this kind of decisions by the way? I was just yesterday evening trying to figure out roughly what the status of this was, and this is the first place I've been able to find any official looking decision seemingly made on about to be made.
After an RFC is accepted, all official discussion about it happens through its "tracking issue" (which is also linked to from the RFC thread). You can find the one for the module system changes here.
I know that part, but there wasn’t any actual discussion on the new variant of the module system changes there, or any kind of decision about actually going for that one instead though? Just a single comment mentioning this other proposal, and then this post saying that that proposal is expected to be implemented in Preview 2.
To clarify: no decision has been made about which variant to go with. What I meant in this post was just that the other variant would be available under a separate feature flag so that we can try it out for real.