How "stable" is nightly?


#1

I am currently implementing a vector library and I want to use specialization but this requires nightly. I am doing this because this allows me specialize on vectors and unit vectors.

But I am wondering how the experience will be on nighty? The last time I used “nightly” or “master” was on 0.7, which was not very fun.

Do compiler crashes happen frequently on nightly?

Would you recommend me to just stay on stable? Is nightly just for experimentation?


#2

As long as you keep your code mostly stables compatible, your risk should be acceptable. As a data point, my overflower_support crate uses specialization and I’ve yet to encounter an ICE.


#3

“Stable” is a bit overloaded here. In terms of crashing, I’ve found nightly to be very stable. In terms of unstable features changing, well, that’s why they’re in nightly. :slight_smile:


#4

Rust uses a not-rocket-science build system: before any changes to the compiler are accepted, the changed compiler must build and be able to pass the test suite. This results in a compiler that pretty much always works. Of course, if you’re using “all the features,” don’t be surprised when some of them stop working.