Skip to content
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

Updated releases notes for 1.18 #41953

Merged
merged 1 commit into from
Jun 3, 2017
Merged

Updated releases notes for 1.18 #41953

merged 1 commit into from
Jun 3, 2017

Conversation

XAMPPRocky
Copy link
Member

This is my first time making the release notes so please give it an extra once over!

@rust-highfive
Copy link
Collaborator

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @aturon (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

RELEASES.md Outdated
Cargo
-----

- [Added Pijul support][cargo/3842] Pijul is a version control system in Rust.
Copy link
Member

Choose a reason for hiding this comment

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

Its just partial support, not for dependencies, but only for cargo new.

Copy link
Member Author

Choose a reason for hiding this comment

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

@est31 Updated to reflect that.

@aturon
Copy link
Member

aturon commented May 12, 2017

cc @rust-lang/libs @rust-lang/compiler

RELEASES.md Outdated
- [rustc can now emit mir with `--emit mir`][39891]
- [Improved LLVM IR for trivial functions][40367]
- [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723]
- [Rustc is now faster][41469]
Copy link
Member

Choose a reason for hiding this comment

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

This could be more specific, e.g. "Compilation time speedup opportunities found through profiling" but I have no strong preference.

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've updated the wording.

RELEASES.md Outdated
- [rustc can now emit mir with `--emit mir`][39891]
- [Improved LLVM IR for trivial functions][40367]
- [Added explanation for E0090(Wrong number of lifetimes are supplied)][40723]
- [Rustc is now faster][41469]
Copy link
Contributor

Choose a reason for hiding this comment

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

According to performance graph, the compilation time was reduced around 15% to 20% across the board if I am not mistaken. This is pretty significant improvement. We might as well let user know the actual number.

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 wanted to give a overall number, but I didn't know where to get it. Thanks!

@shepmaster shepmaster added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label May 12, 2017
RELEASES.md Outdated
You can now create new cargo projects with Pijul using `cargo new --vcs pijul`
- [Now always emits build script warnings for crates that fail to build][cargo/3847]
- [Added Android build support][cargo/3885]
- [Added `--all-$KIND` flags][cargo/3901] now you can build all programs
Copy link
Member

Choose a reason for hiding this comment

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

Oh this ended up actually being --tests, --bins, etc, (not --all-$KIND)

RELEASES.md Outdated
- [Added `--all-$KIND` flags][cargo/3901] now you can build all programs
of a certain type, for example `cargo build --all-bins` will build all
binaries.
- [Test files are now allowed be named `test.rs`][cargo/3947]
Copy link
Member

Choose a reason for hiding this comment

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

This is mostly a very minor bugfix, it may not be worth mentioning.

@alexcrichton
Copy link
Member

More library features can be found in #41904 I believe

RELEASES.md Outdated
the zeroes are placed after the prefix and before the digits.
- [Optimized insertion sort in slice][40807] insertion sort in some cases
2.50%~ faster and in one case now 12.50% faster.
- [`ThreadId` now implements `Hash` and `Debug`][41008]
Copy link
Member

Choose a reason for hiding this comment

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

This is an unstable feature I believe, so we may not wish to mention it in the release notes just yet

@brson
Copy link
Contributor

brson commented May 12, 2017

Thanks @Aaronepower !

Note that the release notes are still waiting on a library stabilization pr for 1.18.

@XAMPPRocky
Copy link
Member Author

@brson I've just added the stabilised APIs section.

@leonardo-m
Copy link

The "Rustc is now faster" in the "Compiler" section is not a good idea because I've later revealed a regression (probably in the 2017-05-03 Nightly) that has negated those compilation performance improvements.

@XAMPPRocky
Copy link
Member Author

@leonardo-m Is there an issue about this?

@leonardo-m
Copy link

There is no issue, because my code is not public. But the problem should be visible with public crates too, if it's a real one.

@eddyb
Copy link
Member

eddyb commented May 12, 2017

cc @arielb1

@XAMPPRocky
Copy link
Member Author

@leonardo-m But as @WiSaGaN points out there has been a very clear performance improvement.

@Mark-Simulacrum
Copy link
Member

I think we can objectively say that the compiler is 15-20% faster based on the tests in perf.rlo; however, this may not apply to all cases (as usual) -- if there's code that doesn't show this improvement, or shows the opposite, that's also possible. However, I think it's reasonable to say that for some workloads we did improve by 15-20%. Without having access to anything beyond "compilation got slower for me, negating those benefits" I'm afraid we can't produce anything actionable :/

RELEASES.md Outdated
- [No longer caching stdio on Windows][40516]
- [Changed how the `0` works in format!][40241] Padding zeroes are now always
placed after the sign if it exists and before the digits. With the `#` flag
the zeroes are placed after the prefix and before the digits.
Copy link
Member

Choose a reason for hiding this comment

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

I think this should be mentioned in the Compatibility Notes as it's a breaking change.

RELEASES.md Outdated
Compiler
--------

- [LLVM backend upgraded to 4.0][40123]
Copy link
Member

Choose a reason for hiding this comment

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

I'm pretty sure LLVM 4 landed just after beta branched, so it will be in 1.19.

@aidanhs
Copy link
Member

aidanhs commented May 18, 2017

This PR is currently blocked on the merge of #41904 to finalise what's been stabilised (I think tryfrom has been removed from there since these notes were last updated).

@aidanhs aidanhs added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 18, 2017
@brson
Copy link
Contributor

brson commented May 22, 2017

It looks like struct layout optimization is in for 1.18. Can you confirm @camlorn ?

@sfackler
Copy link
Member

#41904 has landed - just gotta backport to beta.

@XAMPPRocky
Copy link
Member Author

@brson It is, I didn't include it initially as the options are behind the unstable flag.

@brson
Copy link
Contributor

brson commented May 25, 2017

@Aaronepower hm, I don't see in that patch an indication that it's behind a flag (just the optimization fuel).

Library stabilization backports are in.

Let's get this updated and landed and hopefully backported soon.

@brson brson added the beta-nominated Nominated for backporting to the compiler in the beta channel. label May 25, 2017
@brson
Copy link
Contributor

brson commented May 25, 2017

Here's one for the compatibility notes: #41805

@brson brson added the beta-accepted Accepted for backporting to the compiler in the beta channel. label May 30, 2017
RELEASES.md Outdated
always placed after the sign if it exists and before the digits. With the `#`
flag the zeroes are placed after the prefix and before the digits.
- [Due to the struct field optimisation][40377], using `transmute` on structs
that have no `repr` attribute or `#[repr(Rust)]` will longer work.
Copy link
Contributor

Choose a reason for hiding this comment

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

Perhaps an added note here: "(This has always been undefined behavior, but is now more likely to break in practice.)"

Copy link
Member

Choose a reason for hiding this comment

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

will longer work ↦ will no longer work

RELEASES.md Outdated
- [`HashMap::retain`]
- [`HashSet::retain`]
- [`PeekMut::pop`]
- [`TcpSteam::peek`]
Copy link
Member

Choose a reason for hiding this comment

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

typo. TcpStream::peek

RELEASES.md Outdated
always placed after the sign if it exists and before the digits. With the `#`
flag the zeroes are placed after the prefix and before the digits.
- [Due to the struct field optimisation][40377], using `transmute` on structs
that have no `repr` attribute or `#[repr(Rust)]` will longer work.
Copy link
Member

Choose a reason for hiding this comment

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

will longer work ↦ will no longer work

RELEASES.md Outdated
receiving the wrong priority parsing things like `&for<'a> Tr<'a> + Send` as
`&(for<'a> Tr<'a> + Send)` instead of `(&for<'a> Tr<'a>) + Send`
- [Overlapping inherent `impl`s are now a hard error][40728]
- [`PartialOrd` and `Ord` must to agree on the ordering.][41270]
Copy link
Contributor

Choose a reason for hiding this comment

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

typo must to agree -> must agree

@brson
Copy link
Contributor

brson commented May 31, 2017

#42068 is going to get a last-minute backport.

@brson
Copy link
Contributor

brson commented May 31, 2017

@bors r- probably we should try to land that backport, then land this, then backport the relnotes.

@bors
Copy link
Contributor

bors commented May 31, 2017

⌛ Trying commit 9c3e733 with merge a8b46ce...

@brson
Copy link
Contributor

brson commented May 31, 2017

@Aaronepower there's a few new comments to address here.

@brson
Copy link
Contributor

brson commented May 31, 2017

I'm not sure what bors is doing with this PR atm. Status says "pending (try)", and I just r-ed.

@Mark-Simulacrum
Copy link
Member

@bors retry

@bors
Copy link
Contributor

bors commented May 31, 2017

⌛ Trying commit 9c3e733 with merge a65604c...

bors added a commit that referenced this pull request May 31, 2017
Updated releases notes for 1.18

This is my first time making the release notes so please give it an extra once over!
@bors
Copy link
Contributor

bors commented May 31, 2017

💔 Test failed - status-travis

@Mark-Simulacrum
Copy link
Member

Manually canceled the try build to get it out of bors head.

@brson
Copy link
Contributor

brson commented May 31, 2017

I addressed remaining nits and added RFC links.

@brson
Copy link
Contributor

brson commented May 31, 2017

I took the liberty of squashing. Hope you don't mind @Aaronepower.

Rendered.

@ollie27
Copy link
Member

ollie27 commented May 31, 2017

Looks like TcpSteam::peek still isn't fixed.

@brson
Copy link
Contributor

brson commented Jun 1, 2017

Fixed TcpSteam::peek

@brson brson removed the beta-nominated Nominated for backporting to the compiler in the beta channel. label Jun 1, 2017
@brson
Copy link
Contributor

brson commented Jun 2, 2017

@bors r+

@bors
Copy link
Contributor

bors commented Jun 2, 2017

📌 Commit 02c0d3c has been approved by brson

bors added a commit that referenced this pull request Jun 3, 2017
[beta] Updated releases notes for 1.18

- #41953
@bors
Copy link
Contributor

bors commented Jun 3, 2017

⌛ Testing commit 02c0d3c with merge 14526a3...

bors added a commit that referenced this pull request Jun 3, 2017
Updated releases notes for 1.18

This is my first time making the release notes so please give it an extra once over!
@bors
Copy link
Contributor

bors commented Jun 3, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: brson
Pushing 14526a3 to master...

@bors bors merged commit 02c0d3c into rust-lang:master Jun 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
beta-accepted Accepted for backporting to the compiler in the beta channel. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author.
Projects
None yet
Development

Successfully merging this pull request may close these issues.