Skip to content

Draft of 1.24 announcement #228

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Feb 15, 2018
Merged

Draft of 1.24 announcement #228

merged 2 commits into from
Feb 15, 2018

Conversation

steveklabnik
Copy link
Member

No description provided.

@rust-highfive
Copy link

r? @aturon

(rust_highfive has picked a reviewer for you, use r? to override)

@steveklabnik
Copy link
Member Author

@rust-lang/core please review!

Copy link
Member

@Mark-Simulacrum Mark-Simulacrum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me. We may want to add something about the cargo working directory breakage, but I'm not too worried about it.

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](https://github.com/rust-lang/rust/pull/46910).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be worth mentioning that this will likely make builds faster, but final products slower.

Copy link
Member

@carols10cents carols10cents left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One tiny little misspelling to fix, content looks great! ❤️

> the compiler, like the RLS and Clippy, in the future.

Finally, please take note of that `-preview` in the name: `rustfmt` is still not quite
at 1.0 yet. Some tweaks to the default styles are still occuring, though they're relatively
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/occuring/occurring/


### Library stabilizations

If you're a fan of `str::find`, used to find a given `char` inside of a `&str`, you'll be

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might want to put which is in front of used. I had to reread the sentence a few times thinking the wording was a typo


#### Incremental compilation

Back in September, we blogged about [Incremental Compilation](https://blog.rust-lang.org/2016/09/08/incremental.html).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that this post is from September 2016 (!) already.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we say anything about the expected performance wins?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It very much depends on what you are compiling and what changes you made. "twice as fast" seems to be a good bet, looking at http://perf.rust-lang.org. For cargo check it might be different (better, hopefully) but we don't track that on perf.rlo yet.

changed, which means that that second build is faster.

As of Rust 1.24, this is now [turned on by default](https://github.com/rust-lang/cargo/pull/4817).
This means that your builds should get faster!
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should mention that cargo check should be used to get the best possible edit-compile cycle; can reference previous release announcement about that. I don't think we've done enough advertising of this as the recommended workflow.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, do we have documentation somewhere that says when cargo defaults to incr. comp. and when it doesn't?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't believe we do

`rustup update stable`, `rustfmt-preview` will be updated as well.

> This strategy is expected to be used for other developer tools that integrate tightly with
> the compiler, like the RLS and Clippy, in the future.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We already do this for RLS

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, but we've never talked about it before, so i phrased it that way

at 1.0 yet. Some tweaks to the default styles are still occuring, though they're relatively
minor. Once `rustfmt` hits 1.0, we'll be releasing a `rustfmt` component and
deprecating `rustfmt-preview`. Since this is the first major component we're distributing
this way, we wanted to clearly signal that it is still developing.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MIght want to say something about this will happen without any user interaction - rustup will handle it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, and it's the second component - you also have to use rls-preview

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above; we've never talked about rls-preview

deprecating `rustfmt-preview`. Since this is the first major component we're distributing
this way, we wanted to clearly signal that it is still developing.

For more, please check out [`rustfmt` on GitHub](https://github.com/rust-lang-nursery/rustfmt).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be good to say that if you've previously installed rustfmt with Cargo then you'll have to remove it, but that rustup should tell you about that.

@steveklabnik
Copy link
Member Author

updated to incorporate everyone's feedback

@steveklabnik steveklabnik merged commit c772723 into gh-pages Feb 15, 2018
@steveklabnik steveklabnik deleted the 1.24-announcement branch February 15, 2018 18:54
@steveklabnik steveklabnik restored the 1.24-announcement branch March 1, 2018 20:29
@steveklabnik steveklabnik deleted the 1.24-announcement branch March 1, 2018 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants