Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upUpdated releases notes for 1.18 #41953
Conversation
rust-highfive
assigned
aturon
May 12, 2017
This comment has been minimized.
This comment has been minimized.
|
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. |
est31
reviewed
May 12, 2017
| Cargo | ||
| ----- | ||
|
|
||
| - [Added Pijul support][cargo/3842] Pijul is a version control system in Rust. |
This comment has been minimized.
This comment has been minimized.
est31
May 12, 2017
Contributor
Its just partial support, not for dependencies, but only for cargo new.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
eddyb
reviewed
May 12, 2017
| - [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] |
This comment has been minimized.
This comment has been minimized.
eddyb
May 12, 2017
Member
This could be more specific, e.g. "Compilation time speedup opportunities found through profiling" but I have no strong preference.
This comment has been minimized.
This comment has been minimized.
WiSaGaN
reviewed
May 12, 2017
| - [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] |
This comment has been minimized.
This comment has been minimized.
WiSaGaN
May 12, 2017
Contributor
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.
This comment has been minimized.
This comment has been minimized.
XAMPPRocky
May 12, 2017
Author
Contributor
I wanted to give a overall number, but I didn't know where to get it. Thanks!
shepmaster
added
the
S-waiting-on-review
label
May 12, 2017
alexcrichton
reviewed
May 12, 2017
| 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 |
This comment has been minimized.
This comment has been minimized.
alexcrichton
May 12, 2017
Member
Oh this ended up actually being --tests, --bins, etc, (not --all-$KIND)
alexcrichton
reviewed
May 12, 2017
| - [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] |
This comment has been minimized.
This comment has been minimized.
alexcrichton
May 12, 2017
Member
This is mostly a very minor bugfix, it may not be worth mentioning.
This comment has been minimized.
This comment has been minimized.
|
More library features can be found in #41904 I believe |
alexcrichton
reviewed
May 12, 2017
| 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] |
This comment has been minimized.
This comment has been minimized.
alexcrichton
May 12, 2017
Member
This is an unstable feature I believe, so we may not wish to mention it in the release notes just yet
This comment has been minimized.
This comment has been minimized.
|
Thanks @Aaronepower ! Note that the release notes are still waiting on a library stabilization pr for 1.18. |
This comment has been minimized.
This comment has been minimized.
|
@brson I've just added the stabilised APIs section. |
This comment has been minimized.
This comment has been minimized.
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. |
This comment has been minimized.
This comment has been minimized.
|
@leonardo-m Is there an issue about this? |
This comment has been minimized.
This comment has been minimized.
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. |
This comment has been minimized.
This comment has been minimized.
|
cc @arielb1 |
This comment has been minimized.
This comment has been minimized.
|
@leonardo-m But as @WiSaGaN points out there has been a very clear performance improvement. |
This comment has been minimized.
This comment has been minimized.
|
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 :/ |
ollie27
reviewed
May 12, 2017
| - [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. |
This comment has been minimized.
This comment has been minimized.
ollie27
May 12, 2017
Contributor
I think this should be mentioned in the Compatibility Notes as it's a breaking change.
cuviper
reviewed
May 13, 2017
| Compiler | ||
| -------- | ||
|
|
||
| - [LLVM backend upgraded to 4.0][40123] |
This comment has been minimized.
This comment has been minimized.
cuviper
May 13, 2017
Member
I'm pretty sure LLVM 4 landed just after beta branched, so it will be in 1.19.
This comment has been minimized.
This comment has been minimized.
|
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
added
S-waiting-on-author
and removed
S-waiting-on-review
labels
May 18, 2017
This comment has been minimized.
This comment has been minimized.
|
It looks like struct layout optimization is in for 1.18. Can you confirm @camlorn ? |
This comment has been minimized.
This comment has been minimized.
|
#41904 has landed - just gotta backport to beta. |
This comment has been minimized.
This comment has been minimized.
|
@brson It is, I didn't include it initially as the options are behind the unstable flag. |
This comment has been minimized.
This comment has been minimized.
|
@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
added
the
beta-nominated
label
May 25, 2017
This comment has been minimized.
This comment has been minimized.
|
Here's one for the compatibility notes: #41805 |
brson
referenced this pull request
May 30, 2017
Closed
[beta] Updated releases notes for 1.18 #42316
brson
added
the
beta-accepted
label
May 30, 2017
mbrubeck
reviewed
May 30, 2017
| 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. |
This comment has been minimized.
This comment has been minimized.
mbrubeck
May 30, 2017
Contributor
Perhaps an added note here: "(This has always been undefined behavior, but is now more likely to break in practice.)"
This comment has been minimized.
This comment has been minimized.
kennytm
reviewed
May 30, 2017
| - [`HashMap::retain`] | ||
| - [`HashSet::retain`] | ||
| - [`PeekMut::pop`] | ||
| - [`TcpSteam::peek`] |
This comment has been minimized.
This comment has been minimized.
| 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. |
This comment has been minimized.
This comment has been minimized.
budziq
reviewed
May 31, 2017
| 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] |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
#42068 is going to get a last-minute backport. |
This comment has been minimized.
This comment has been minimized.
|
@bors r- probably we should try to land that backport, then land this, then backport the relnotes. |
This comment has been minimized.
This comment has been minimized.
bors
added a commit
that referenced
this pull request
May 31, 2017
This comment has been minimized.
This comment has been minimized.
|
@Aaronepower there's a few new comments to address here. |
This comment has been minimized.
This comment has been minimized.
|
I'm not sure what bors is doing with this PR atm. Status says "pending (try)", and I just r-ed. |
This comment has been minimized.
This comment has been minimized.
|
@bors retry |
This comment has been minimized.
This comment has been minimized.
bors
added a commit
that referenced
this pull request
May 31, 2017
This comment has been minimized.
This comment has been minimized.
|
|
This comment has been minimized.
This comment has been minimized.
|
Manually canceled the try build to get it out of bors head. |
This comment has been minimized.
This comment has been minimized.
|
I addressed remaining nits and added RFC links. |
This comment has been minimized.
This comment has been minimized.
|
I took the liberty of squashing. Hope you don't mind @Aaronepower. |
brson
referenced this pull request
May 31, 2017
Merged
[beta] Updated releases notes for 1.18 #42338
This comment has been minimized.
This comment has been minimized.
|
Looks like |
This comment has been minimized.
This comment has been minimized.
|
Fixed TcpSteam::peek |
brson
removed
the
beta-nominated
label
Jun 1, 2017
This comment has been minimized.
This comment has been minimized.
|
@bors r+ |
This comment has been minimized.
This comment has been minimized.
|
|
bors
added a commit
that referenced
this pull request
Jun 3, 2017
This comment has been minimized.
This comment has been minimized.
bors
added a commit
that referenced
this pull request
Jun 3, 2017
This comment has been minimized.
This comment has been minimized.
|
|
XAMPPRocky commentedMay 12, 2017
This is my first time making the release notes so please give it an extra once over!