Uh oh!
There was an error while loading. Please reload this page.
Updated releases notes for 1.18 - #41953
Conversation
rust-highfive
commented
May 12, 2017
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. |
| Cargo | ||
| ----- | ||
| - [Added Pijul support][cargo/3842] Pijul is a version control system in Rust. |
There was a problem hiding this comment.
Its just partial support, not for dependencies, but only for cargo new.
aturon
commented
May 12, 2017
cc @rust-lang/libs @rust-lang/compiler |
| - [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] |
There was a problem hiding this comment.
This could be more specific, e.g. "Compilation time speedup opportunities found through profiling" but I have no strong preference.
There was a problem hiding this comment.
I've updated the wording.
| - [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] |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
I wanted to give a overall number, but I didn't know where to get it. Thanks!
| 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 |
There was a problem hiding this comment.
Oh this ended up actually being --tests, --bins, etc, (not --all-$KIND)
| - [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] |
There was a problem hiding this comment.
This is mostly a very minor bugfix, it may not be worth mentioning.
alexcrichton
commented
May 12, 2017
More library features can be found in #41904 I believe |
| 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] |
There was a problem hiding this comment.
This is an unstable feature I believe, so we may not wish to mention it in the release notes just yet
brson
commented
May 12, 2017
Thanks @Aaronepower ! Note that the release notes are still waiting on a library stabilization pr for 1.18. |
XAMPPRocky
commented
May 12, 2017
@brson I've just added the stabilised APIs section. |
leonardo-m
commented
May 12, 2017
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
commented
May 12, 2017
@leonardo-m Is there an issue about this? |
leonardo-m
commented
May 12, 2017
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
commented
May 12, 2017
cc @arielb1 |
XAMPPRocky
commented
May 12, 2017
@leonardo-m But as @WiSaGaN points out there has been a very clear performance improvement. |
Mark-Simulacrum
commented
May 12, 2017
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 :/ |
| - [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. |
There was a problem hiding this comment.
I think this should be mentioned in the Compatibility Notes as it's a breaking change.
| Compiler | ||
| -------- | ||
| - [LLVM backend upgraded to 4.0][40123] |
There was a problem hiding this comment.
I'm pretty sure LLVM 4 landed just after beta branched, so it will be in 1.19.
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). |
brson
commented
May 22, 2017
It looks like struct layout optimization is in for 1.18. Can you confirm @camlorn ? |
sfackler
commented
May 22, 2017
#41904 has landed - just gotta backport to beta. |
XAMPPRocky
commented
May 24, 2017
@brson It is, I didn't include it initially as the options are behind the unstable flag. |
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
commented
May 25, 2017
Here's one for the compatibility notes: #41805 |
| 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. |
There was a problem hiding this comment.
Perhaps an added note here: "(This has always been undefined behavior, but is now more likely to break in practice.)"
There was a problem hiding this comment.
will longer work ↦ will no longer work
| - [`HashMap::retain`] | ||
| - [`HashSet::retain`] | ||
| - [`PeekMut::pop`] | ||
| - [`TcpSteam::peek`] |
| 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. |
There was a problem hiding this comment.
will longer work ↦ will no longer work
| 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] |
There was a problem hiding this comment.
typo must to agree -> must agree
brson
commented
May 31, 2017
#42068 is going to get a last-minute backport. |
brson
commented
May 31, 2017
@bors r- probably we should try to land that backport, then land this, then backport the relnotes. |
bors
commented
May 31, 2017
⌛ Trying commit 9c3e733 with merge a8b46ce... |
brson
commented
May 31, 2017
@Aaronepower there's a few new comments to address here. |
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
commented
May 31, 2017
@bors retry |
bors
commented
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
commented
May 31, 2017
💔 Test failed - status-travis |
Mark-Simulacrum
commented
May 31, 2017
Manually canceled the try build to get it out of bors head. |
brson
commented
May 31, 2017
I addressed remaining nits and added RFC links. |
brson
commented
May 31, 2017
I took the liberty of squashing. Hope you don't mind @Aaronepower. |
ollie27
commented
May 31, 2017
Looks like |
brson
commented
Jun 1, 2017
Fixed TcpSteam::peek |
brson
commented
Jun 2, 2017
@bors r+ |
bors
commented
Jun 2, 2017
📌 Commit 02c0d3c has been approved by |
[beta] Updated releases notes for 1.18 - #41953
bors
commented
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
commented
Jun 3, 2017
☀️ Test successful - status-appveyor, status-travis |
This is my first time making the release notes so please give it an extra once over!