|
|
Log in / Subscribe / Register

Rust 1.50.0 released

Version 1.50.0 of the Rust language has been released. "For this release, we have improved array indexing, expanded safe access to union fields, and added to the standard library."

to post comments

Rust 1.50.0 released

Posted Feb 11, 2021 19:29 UTC (Thu) by kragil (guest, #34373) [Link] (5 responses)

I just started with Rust (mostly because of the Bevy game engine) and besides the slow compile times it is fairly nice so far.
I hope this release will lessen the reliance on the nightly compiler for all the projects I care about (rocket and bevy). That was a bit offputting.

Rust 1.50.0 released

Posted Feb 11, 2021 20:57 UTC (Thu) by josh (subscriber, #17465) [Link]

At this point, all the features that Rocket needs are in the stable compiler, and the next stable release of Rocket should work on stable Rust. Work on the next Rocket release is ongoing.

Rust 1.50.0 released

Posted Feb 12, 2021 4:32 UTC (Fri) by dcz (subscriber, #128371) [Link] (3 responses)

Bevy hasn't required the nightly Rust compiler since at least Bevy 3.0. Nightly can supposedly provide faster compilation, but I've never tried that.

Rust 1.50.0 released

Posted Feb 12, 2021 5:18 UTC (Fri) by kragil (guest, #34373) [Link] (2 responses)

Sure, but some docs say you should use the nightly compiler for bevy because the fast compilation is one of bevys features. So every time you comple your game you think: I am missing out.

Not great.

Rust 1.50.0 released

Posted Feb 12, 2021 8:33 UTC (Fri) by dcz (subscriber, #128371) [Link] (1 responses)

Do you know what you're missing out on though? Bevy doesn't publish benchmarks done on the stable Rust version, and I took your statement to mean you haven't tried stable yet, whereas I never tried nightly.

Of course, this depends on how much you value staying on the stable compiler. To me, as someone using the Debian package, taking a speed hit is worth it if I don't have to use rustup.

Rust 1.50.0 released

Posted Feb 12, 2021 14:08 UTC (Fri) by mathstuf (subscriber, #69389) [Link]

I use Fedora's Rust package pretty much all the time, but I have rustup to test my minimum Rust versions. CI is using nightly clippy, so being able to iterate with that locally is nice too. It's really handy even if you're using the distro packages by default.

Niches and Option<File>

Posted Feb 14, 2021 19:54 UTC (Sun) by JoeBuck (subscriber, #2330) [Link] (2 responses)

Using a niche to say that a File can never be -1, and -1 is used as the "null" value is an interesting idea. This reminds me that the most common integer overflow bug I've had to deal with has been related to the handling of -x where x is a signed integer type and x is the most negative value (INT_MIN in C and C++). Maybe it would have been better to have the valid range of signed integer types exclude the problematic value that is its own negative, and treat that as the niche. Then Option<i32> could fit in four bytes. Of course, it's too late to do that now, so we would need new, symmetric signed integer types to allow this.

Perhaps it's already been done?

Niches and Option<File>

Posted Feb 14, 2021 22:27 UTC (Sun) by mathstuf (subscriber, #69389) [Link] (1 responses)

How about s32 (for symmetric 32-bit integer)? Extrapolate as needed. Sounds like a useful crate (though I don't know how easy it is to declare a niche for a non-stdlib crate) to use as an experiment to see how it works out.

Symmetric integer type

Posted Feb 20, 2021 1:00 UTC (Sat) by david.a.wheeler (subscriber, #72896) [Link]

I like this idea!

I wonder about the name. s32 might be confused with signed 32 (i32 in Rust, but "signed int" is a thing in C/C++). m32 (symMetric 32) might be safer?


Copyright © 2021, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds