Announcing Rust 1.24

The Rust team is happy to announce a new version of Rust, 1.24.0. Rust is a systems programming language focused on safety, speed, and concurrency.
This release contains two very exciting new features: rustfmt and incremental compilation!
For years now, we’ve wanted a tool that automatically can reformat your Rust code to some sort of “standard style.” With this release, we’re happy to announce that a preview of rustfmt can be used with 1.24 stable.

Back in September of 2016 (!!!), we blogged about Incremental Compilation. While that post goes into the details, the idea is basically this: when you’re working on a project, you often compile it, then change something small, then compile again. Historically, the compiler has compiled your entire project, no matter how little you’ve changed the code. The idea with incremental compilation is that you only need to compile the code you’ve actually changed, which means that that second build is faster.

As of Rust 1.24, this is now turned on by default. This means that your builds should get faster! Don’t forget about cargo check when trying to get the lowest possible build times.

This is still not the end story for compiler performance generally, nor incremental compilation specifically. We have a lot more work planned in the future. For example, another change related to performance hit stable this release: codegen-units is now set to 16 by default. One small note about this change: it makes builds faster, but makes the final binary a bit slower. For maximum speed, setting codegen-units to 1 in your Cargo.toml is needed to eke out every last drop of performance.

Other urls found in this thread:


how come hes smart enough to make rust but stupid enough to believe in antifa?

Steve Klabnik mostly writes documentation.

and btw he fucking sucks at it. The first edition of the book is meh at best and the second edition is still not even close to being finished.

Thank fuck Steve is alive. I was getting worried that you might have been beheaded by Ahmed.

The actual Steve Klabniks job is to write the Rust book(which isn't done and has been dragging along for multiple years), posting on social media and rewriting the documentation thing in meme.js.

So what does this mean for Redox?

lol if this doesn't tell you everything you need to know about Rust.

so is it really safe now?
or there is still some UB in "safe" subset?

Rust is and always was safe. It is rustc, the compiler, which has bugs that allow memory unsafety. But they will be fixed soon. The reason why those bugs existed so long is that the Rust developers decided to rewrite parts of the compiler. These rewrites will bring yuge improvements. You can test some of it in nightly Rust btw.



I'm unironically curious and want to learn rust in my free time. What's the best place to start ?


lol do please tell me about your non-unix unix-like OS and your webdev systems language.

it isn't
nodev detected

stop shitting up my thread, anti Rust shill

You can't shit up an already-shit thread, though.

kill you're are self


you should stop talking about irrelevant shit in a Rust thread

It's like we have an alternative to rustc in this Universe right now, or can interpret Rust code in our brains at comparable speeds.
Nice evasion.

I think what you're ultimately referring to is that despite being unix-like, they don't conform to POSIX if they feel that their way of doing things is better.

From a page on their shell:
So they keep dash around for compatibility's sake, but their main shell deviates from POSIX for the sake of innovation.

As far as the actual OS goes, one of their ideas is "Everything is a URL":

it is not something new. even Android has something similar, and it took it from plan9 or something I dont remember.

Alternative Rust compiler:
Nice anti Rust shill post.

it is even less safe.
LOL WTF dude, did you even read the fucking README from your link?

calm down anti Rust shill. I didn't claim mrustc to be safe.

Compiling is different from type checking and borrow checking, dumbass.

the point is that there's no safe implementation of Rust right now.

Very nice anti Rust shill post. I rate it 8/10.

anti Rust shills detected.
it is safe.

Perhaps you have any facts that counter my argument?

What argument? That rustc has a few bugs? That is a fact and can't be countered.

That the lack of safe imlepmentations impiles the langauge can't be called safe yet.

You are contradicting yourself. The language is safe. rustc is not safe bacause of bugs. Prove me wrong or fuck off anti Rust shill.


this is a strong statement and needs a proof.

Is Redox the FreeBSD killer?

You literally talk like a brainlet.

This, please don't present this rat-man as the face of the language when all he is is a verbal parasite.

But I AM the face of Rust. Everyone knows. Someone mentions Rust? I'm there instantly. I have multiple web crawlers that scavenge the interwebs for mentions of Rust/my name (written in Rust btw). I will be the Jon Skeet of the Rust world and you can't do anything about it.

hey rustfag kannst du mir nen job beschaffen?

nee, bin selber arbeitslos daily reminder

About time.
t. Ada

Steve is willing (for other people) to fight to preserve his supply of third world dick

uh i'll just keep using c thanks

Off-by-one error redirects insult back at you C queer.

These commie leftists (using computes and other devices of capitalism) are such cocksucking faggots. Hopefully Steve gets some documentation work done before being beat to death by the niggers he attempts to rile up.

C is for cuck nigger.

what the fuck guys?
99% of these posts are >>>Holla Forums tier bullshit
can we actually talk about the tech instead of shitposting?

If you've been here for more than a week, you know that that we're inundated with pointless Rust threads to an extent where there isn't much to say anymore. It's partly their own fault, for allowing the technicals of their language to be lost amidst the worthless SJW talking points espoused by a vocal section of their community.

thats just about every community in the normie world tho, i mean my opinion of it is meh, but it would be nice to see that shit ignored and have some decent tech talk on this tech board...

That would be the dream. Politics is not technology.

There was never decent tech talk on Holla Forums.

As a successful candidate, you will lead a team of engineers working on Mononoke, identify new use cases that Mononoke unlocks, and be instrumental in open-sourcing Mononoke and helping others across the industry to adopt it. Mononoke is written in Rust, so experience in Rust is desirable. A love of data structures and algorithms is a must. We are looking for someone who loves solving hard problems at scale.

pls discuss

There is no difference between unsafe Zig and Zig. There exists no safe Zig. This clickbait blog post is just the creator of Zig desperately trying to get Zig onto Hackernews/Reddit.
Thanks for bumping my thread btw

Because there is no need to create a "safe" subset for a language that is already reasonably safe if the author is not acting maliciously. (and if we count malice, then no language could prevent intentionally malicious code)
Similarly as there's no "safe" Python or Java because no one needs that.
Unsafe Rust, on the other hand, is a footgun, as it was just demonstrated.
Python and Java are memory safe. So yes, there is a safe Python/Java.
So just like C/C++/Zig?

import ctypes
import sun.misc.Unsafe;

Better than C and C++ and worse than Zig

They aren't about Zig, are they?

So? This allows you to call shared libraries from Python. That doesn't make Python unsafe.
ok kid
So still unsafe? Thanks for clarifying.
LOL. Are you trying to imply that Zig isn't a stillborn language?

are you trying to imply that a language is only alive if someone is making a shitload of vulnerabilities in it?

No. I'm trying to imply that nobody except for the creator of Zig is using Zig.

And the proofs are …?
Really makes my thought noggins jogging...

I want the dylan language to live. ;_;

define class () slot point-x :: , required-init-keyword: x:; slot point-y :: , required-init-keyword: y:;end class ;



Kill yourself anti Rust shill. Read this:


the rust standard library has lots of unsafe blocks. unsafe is idiomatic.

One word that often falls when discussing the Rust community is “nice”. And yes, this is the result of active effort of a number of official and inofficial participants. Today I’m going to compare the Rust community with traffic.

There have been studies that show you need to direcly control only about 5% of cars to eliminate traffic jams (sorry, I’m not going to google the paper, trying to make a point here), and I believe the same applies to assholery in programming communities: If just 5% agree on being nice, they may sway the behavior of the community as a whole.

That is not to say everyone welcomes this kind of control. Imagine being in an almost-jam, trying to weasle through traffic, cutting off people left and right, only to find that a few cars before you, some cars coast, forming a slow-ish barrier you (and perhaps the cars before you) cannot pass. They’re slowing you down! You’d honk in righteous anger! What you don’t (and probably don’t want to) know is that those cars slow down to avoid a traffic jam, by keeping you from creating it.

(As an aside, I find that driving in traffic tends to bring out the worst in us. I’m unsure why that is, but I hear that people behave less well if they feel being in their private space, and most people count their cars in that category)

In a community the coasters being nice have a similar effect on those trying to weasel their way through, shaming and trolling left and right. People being nice offend those who don’t want to be nice themselves, and those people honk “SJW Police! Witch hunt!” in self-righteous fury. Lacking empathy, they think others are only nice to appear better than them, to make them look bad. Why else would someone waste the time and energy? Worse, with the backdrop of all this friendlyness, their weasling attempts suddenly starkly contrast. So they start to resent the “SJWs” on their high horses with their holier-than-you ‘tude.

By defending their “freedom” to bring everyone else to a halt, they’re telling you that them being at their destination five seconds earlier is more valuable than everyone around them not being stuck in traffic for another half an hour. I sincerely doubt the idea that those metaphoric five seconds benefit the community as a whole more than the multitude of half-hours wasted by being stuck.

This is not to say that everyone who blurts “Freedom of Speech” is an asshole. Some were just raised to believe that freedom is the biggest ideal and will reflexively fight everything that appears to curtail it. I personally believe this is misguided. Freedom of Speech is not Guarantee of Audience. I have yet to see any of those people speaking up when someone loud and obnoxious is thrown out of a restaurant – yet by extension of the same logic this should also count as a free speech violation, right?

Anyway, enough of the rambling. The key takeaway is that the argument that a Code of Conduct keeps people from getting things done is completely bogus. On the contrary, it keeps people from keeping other people from getting things done. I’ll leave you here with a verse:

Let’s play a game & surprise folks’round you by being nice Who gets most smiles this way wins this game & the day Now go & apply this advice

you're right about traffic but the analogy is shit and does not apply here.

Perhaps you can explain then:
Why all the drama happens in projects which have a CoC, while other projects just werk without drama?
If your post was true, it should be the other way round? Or do we live in a wrong universe?

Can you prove that statement though? I can certainly disprove it for you: Libav

CoC doesn't stop anyone from forking and deciding to isolate if the license allows to do so.
libav is just a fork, and all the "drama" is because a few people did not agree on some things. (This happens sometimes and it's just how is life.) Not because someone started bitching about diversity and white privilege.
The latter always goes with CoC. I have far more examples of that, but I think you already know about them.

I don't understand what you are tring yo say. First you said that only projects with a CoC have drama and now you try to define drama as bitching about diversity and white privilege?
Also libav wasn't just a fork. Debian replaced ffmpeg with libav and called ffmpeg deprecated.

only because a "smart" kid from libav happened to be also an admin in Debian&Ubuntu.
it was reverted later, fortunately.

if we talk about CoC, it is reasonable to talk about the kind of drama which CoC aims to solve?

So? It still is drama.
No. We are not talking about CoCs. We are talking about your claim that drama only happens in projects which have a Coc. Which I have disproven and you can't accept because >muh CoC.


okay, maybe not only, but most of the relatively recent drama in FOSS projects happens in projects with CoC.
remember Mozilla, Drupal, (this thread speaks for it all actually)
what else, I forgot, a quick search will bring up another couple.


me in the background

Really makes you think. Perhaps you are the dumb one and everyone should actually believe in antifa because they're right.

New blog post boys:
Rust's 2018 roadmap

Rust: 2018 edition
This year, we will deliver Rust 2018, marking the first major new edition of Rust since 1.0 (aka Rust 2015).
We will continue to publish releases every six weeks as usual. But we will designate a release in the latter third of the year (Rust 1.29 - 1.31) as Rust 2018. This new “edition” of Rust will be the culmination of feature stabilization throughout the year, and will ship with polished documentation, tooling, and libraries that tie in to those features.
The idea of editions is to signify major steps in Rust’s evolution, where a collection of new features or idioms, taken as a whole, changes the experience of using Rust. They’re a chance, every few years, to take stock of the work we’ve delivered in six-week increments. To tell a bigger story about where Rust is going. And to ship the whole stack as a polished product.
We expect that each edition will have a core theme or focus. Thinking of 1.0 as “Rust 2015”, we have:
* Rust 2015: stability
* Rust 2018: productivity

What will be in Rust 2018?
The roadmap doesn’t say for certain what will ship in Rust 2018, but we have a pretty good idea, and we’ll cover the major suspects below.
Documentation improvements
Part of the goal with the Rust 2018 release is to provide high quality documentation for the full set of new and improved features and the idioms they give rise to. The Rust Programming Language book has been completely re-written over the last 18 months, and will be updated throughout the year as features reach the stable compiler. Rust By Example will likewise undergo a revamp this year. And there are numerous third party books, like Programming Rust, reaching print as well.
Language improvements
The most prominent language work in the pipeline stems from 2017’s ergonomics initiative. Almost all of the accepted RFCs from the initiative are available on nightly today, and will be polished and stabilized over the next several months. Among these productivity improvements are a few “headliners” that will form the backbone of the release:
* Ownership system improvements, including making borrowing more flexible via “non-lexical lifetimes”, improved pattern matching integration, and more.
* Trait system improvements, including the long-awaited impl Trait syntax for dealing with types abstractly.
* Module system improvements, focused on increasing clarity and reducing complexity.
* Generators/async/await: work is rapidly progressing on first-class async programming support.

In addition, we anticipate a few more major features to stabilize prior to the Rust 2018 release, including SIMD, custom allocators, and macros 2.0.


Tell me when it gets standardized instead.

Can you tell me when C/C++ got standardized?
Kill yourself anti Rust shill

Are you retarded? What are C89, C99 and C11?

Are you retarded?
Now please calculate how long after C's development it got standardized. Then look up how old Rust is. Then kill yourself, anti Rust shill.
Also please tell me why having a standard is important?

C was made only for themselves at the beginning. Rust wasn't.
Learning or even making a 3rd party compiler for an always moving target is a pain. Especially since the stdlib itself isn't standardized I hope they'll cut that nodejs style of "everything must be an out of tree module".

Anyway, stay happy in your faggot circlejerk.

I too would admit defeat with those garbage arguments of yours.
Stay gone, anti Rust shill.

Attached: hahaha.gif (245x160, 1.74M)

great argument, kid

this person here is why Rust is and will be irrelevant for a long time most likely

this person here is why Holla Forums is and will be irrelevant for a long time most likely

I admire the Rust fags for their advertising. They sure like to claim that they invented everything.

Attached: dot-o-neat-o.png (849x565, 663.88K)

Are you trying to imply that Steve Klabnik is trying to imply that the Rust developers invented incremental compilation? Because from what I understand Steve only wrote that in September 2016 he wrote a blog post about incremental compilation.
Can you please quote the specific part where you believe Steve claimed that the Rust developers invented incremental compilation?

I hate these versioning schemes that do nothing but indicate that some time has passed, you could get that information anyway. Version numbers have no meaning anymore.

They tell the compiler which words it should consider as keywords. Just because you are an autist and don't like this particular versioning scheme doesn't mean that it's shit.
Also use actual arguments next time.

They never said they invented it. They only implemented it in the compiler. Since when are you only allowed to implement technologies you personally invented?

This man just oozes charisma. And he's smart too just check out some of stevers blog posts
Almond activating stuff.

I for one will definitely use Rust to fight against capitalism and fascism. Safety First Comrades!!!

I'm not implying it. I'm saying it outright. You should learn how to read. Rhetoric is real and that's why you elect stupid politicians and buy shitty products.

""historically"" ""historically"" ""historically""

No doubt about the intent.

Sustained disruption of community events, including talks and presentations.

Forbidden hugs when ?

What is appropriate then?
Reads like catch-all bullshit.

You're a retard. Steve is referring to rustc with "the compiler". Historically, rustc has compiled the entire project.
Kill yourself.

Let's discuss within which timeframe using the word "historically" would be appropriate.

If you choose to idolize him, then that's your problem not mine. I'll make fun of the selfimportant manipulative shitbag whenever I fucking please.


Start with yourself.

You know historically retardation was the inabillity to comprehend rhetoric speech, but is now a term that is used against people who can analyze and understand rhetoric speech.

Historically when someone explained their new feature as if no one knew what it was, even though everyone had known for decades, they were considered retards.

You know historically I would have ignored you, but apparently now I don't.

Your request rings hollow when you couldn't take a simple joke about the rhetoric in the blogpost, don't you think Mr. Snowflake? Sorry to break the news to you, but you are the one who can't make fun of yourself.

Attached: dawg.jpg (408x350, 34.19K)

Stop shitting up my Rust thread with your autism.
I don't even understand what your problem is. Are you triggered because Steve used the word "historically" and you think it is wrong? Or is it because you misunderstood that Steve was only talking about rustc and not all compilers?

Nope, the two of us is shitting up your Rust thread because you shat on a joke. First rule of the game is never to shit on a joke.

We could have been sitting here talking about what's nice about Rust and how Klabnik is probably a nice guy, but you choose to shit on a joke, because you're a delicate rust-colored flower.

You're clinging to a straw there man. You know what, maybe I'm wrong, maybe Steve is not an arrogant shitbag. He just knows how dumb his crowd is and that's why he's talking down to you and using words like "Historically" to trick your mind to worship the devine creation that is Rust. Even making you angry when someone makes a joke about the devine creation.

Auch.. keep trying to fit in, it'll probably make you a real boy some day pinocchio.

Attached: pinocchio.jpg (306x297, 25.21K)

I'll stop now. Peace out Rust-flakes! Better things to do. Dot-o neat-o!

Attached: exit.jpg (487x350, 21.65K)


Attached: Screen Shot 2018-03-17 at 10.23.49.png (1273x1881, 146.47K)


how come such whiners as these 2 are even possible?
it's such a disgrace. 0/10


I guess that means he was feeling unwelcome and harassed. Bad job, SJW army!

They welcome """people""" like Assy Williams into their project, that's why. They actively CULTivate a CULTure of faggotry.

Attached: e35465e1767a329f9afd7de0e5ed96244e1545da9dce58d1d649dbaadb9572a9.jpg (300x394, 83.24K)

Attached: rust tolerance.png (1647x1358, 1.69M)

Attached: rust unsafe sweep under the rug.png (620x463, 272.66K)

what is your point?

are you a brainlet or just trolling?

It seems like Steve Klabnik wants people to murder him or something.

what YOUR point? are YOU a brainlet?

when your brain rusts this is the language


Announcing Rust 1.25
The Rust team is happy to announce a new version of Rust, 1.25.0. Rust is a systems programming language focused on safety, speed, and concurrency.
The last few releases have been relatively minor, but Rust 1.25 contains a bunch of stuff! The first one is straightforward: we’ve upgraded to LLVM 6 from LLVM 4. This has a number of effects, a major one being a step closer to AVR support.

A new way to write use statements has landed: nested import groups. If you’ve ever written a set of imports like this: // on one lineuse std::{fs::File, io::Read, path::{Path, PathBuf}};// with some more breathing roomuse std::{ fs::File, io::Read, path::{ Path, PathBuf }};
There are two big documentation changes in this release: first, Rust By Example is now included on! We’ll be redirecting the old domain there shortly. We hope this will bring more attention to a great resource, and you’ll get a local copy with your local documentation.
Second, back in Rust 1.23, we talked about the change from Hoedown to pulldown-cmark. In Rust 1.25, pulldown-cmark is now the default. We have finally removed the last bit of C from rustdoc, and now properly follow the CommonMark spec.
Finally, in RFC 1358, #[repr(align(x))] was accepted. In Rust 1.25, it is now stable! This attribute lets you set the alignment of your structs: struct Number(i32);assert_eq!(std::mem::align_of::(), 4);assert_eq!(std::mem::size_of::(), 4);#[repr(align(16))]struct Align16(i32);assert_eq!(std::mem::align_of::(), 16);assert_eq!(std::mem::size_of::(), 16);
The biggest story in libraries this release is std::ptr::NonNull. This type is similar to *mut T, but is non-null and covariant. This blog post isn’t the right place to explain variance, but in a nutshell, NonNull, well, guarantees that it won’t be null, which means that Option has the same size as *mut T. If you’re building a data structure with unsafe code, NonNull is often the right type for you!
libcore has gained a time module, containing the Duration type previously only available in libstd.
Additionally, the from_secs, and from_milis functions associated with Duration were made const fns, allowing them to be used to create a Duration as a constant expression.

Attached: steve klabnik.jpg (1400x933, 384.3K)


Because it is actually Holla Forums related