-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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.md for 1.21.0 #44481
Conversation
(rust_highfive has picked a reviewer for you, use r? to override) |
RELEASES.md
Outdated
|
||
Libraries | ||
--------- | ||
- [Generate builtin impls for `Clone` for `[T: N]` where `N` is between 0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typo [T; N]
RELEASES.md
Outdated
Language | ||
-------- | ||
- [Relaxed path syntax. You can now add type parameters to values][43540] | ||
Example: `struct Foo<T>(T); let bar = Foo::<u8>(0);`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Foo::<u8>(0)
was always possible, what #43540 does is permitting (sometimes unnecessary) ::
before <
in all paths, including paths passed to macros.
Previously:
my_macro!(Vec<i32>::new); // OK
my_macro!(Vec::<i32>::new); // ERROR
Now:
my_macro!(Vec<i32>::new); // OK
my_macro!(Vec::<i32>::new); // OK too
RELEASES.md
Outdated
- [Remove the trait selection impl in method::probe][43880] This may cause | ||
breakage in subtyping corner cases. | ||
- [make JSON error's byte position start at top of file.][42973] Was previously | ||
relative to the `CodeMap` which required unstable code. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Release note readers shouldn't need to think about named internal implementation details like CodeMap
, and I'm not sure where "which required unstable code" is coming from.
Maybe something like "was previously relative to a concatenation of files in a crate"?? (I don't actually know how the compiler determines which files go in a CodeMap
—and neither does typical consumer of error-message JSON, which is why we fixed this).
There should also be a compatibility bullet point for the |
RELEASES.md
Outdated
Compatibility Notes | ||
------------------- | ||
- [Remove the trait selection impl in method::probe][43880] This may cause | ||
breakage in subtyping corner cases. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any breakage examples?
BTW "trait selection impl in method::probe" sounds too technical for readers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It definitely is I just couldn't think of anything better. @arielb1 would you know a better explanation and example?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Aaronepower: Maybe summarize or just link to #44224 (comment) ?
@zackmdavis Could you provide a PR link? I can't seem to find the PR that makes the lint stronger. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @Aaronepower!
I think this may also want to mention [patch]
in Cargo (detailed in RFC 1969)
Misc | ||
---- | ||
- [Cargo docs are moving][43916] | ||
to [doc.rust-lang.org/cargo](https://doc.rust-lang.org/cargo) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We may not want to highlight this just yet as they're still a redirect to doc.crates.io, but soon though!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't think so either, it was marked as relnotes
so I included it.
Another Cargo change that may be worth mentioning is rust-lang/cargo#4270, a change to the ignore/exclude syntax |
Also rust-lang/cargo#4400, the addition of the |
Also rust-lang/cargo#4364, a new compatibility note |
Speaking of lint changes, I believe |
The change was, somewhat embarrassingly, unintentional in #43728 (removed a |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like #43838 is missing.
RELEASES.md
Outdated
Libraries | ||
--------- | ||
- [Generate builtin impls for `Clone` for `[T; N]` where `N` is between 0 | ||
and 32][43690] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's more than this. Clone
is now implemented for all arrays with T: Clone
, all tuples with every member being Clone
and all function pointers.
RELEASES.md
Outdated
like patterns][cargo/4270] | ||
- [Added the `--all-targets` option][cargo/4400] | ||
- [Using required dependencies as a feature is now deprecated and emits | ||
a warning][cargo/] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
missing link
gah sorry for letting this sit @Aaronepower! slipped off my radar :( In any case looks great, thanks so much again for tackling this! Let's get this in and we can continue to iterate in-tree @bors: r+ |
📌 Commit f3c316d has been approved by |
⌛ Testing commit f3c316d with merge 547d8a36ef4903810e779313cd0f9ffd3522b92b... |
💔 Test failed - status-appveyor |
@bors retry Wat. Spurious network error, can't resolve crates.io. |
⌛ Testing commit f3c316d with merge 65e8d5afd9f7d4eaaeed2db28b9b4555377aa420... |
Adds the RLS! |
@nrc I've added that, let know if the PR I picked is the wrong one to link. |
RELEASES.md
Outdated
Example: | ||
```rust | ||
fn main() { | ||
let x: &'static u32 = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be &0
, not 0
.
We are stabilizing std::mem::discriminant in 1.21. #44263, #44552 We could backport any of the following library stabilizations -- I'm not clear how we decide whether to do that.
|
The docs got a few notable quality-of-life additions. Not sure whether they're all "release notes" worthy, but i'll note them here all the same: |
I think the "async-llvm" changes from #43506 will be in the next release (right, @alexcrichton?). This feature is pretty neat and it solves a fundamental problem we started running into with incremental compilation: Before, the amount of memory consumed by the LLVM part of compilation was determined by the total size of your crate. After, it is determined by the size of the largest N codegen-units, where N is the number of parallel threads you tell rustc to use. Note that this is something especially important for incr. comp. but the feature helps with any setup that uses Together with @alexcrichton's jobserver changes, this makes using something like |
RELEASES.md
Outdated
-------- | ||
- [Upgraded jemalloc to 4.5.0][43911] | ||
- [Enabled unwinding panics on Redox][43917] | ||
- [Now emits a warning when you have an unused `extern crate`][42588] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is being backed out (#44825)
Alright the release is just around the corner, so let's merge! @bors: r+ |
📌 Commit 7ed23f1 has been approved by |
Updated RELEASES.md for 1.21.0 [Rendered](https://github.com/Aaronepower/rust/blob/master/RELEASES.md)
☀️ Test successful - status-appveyor, status-travis |
Rendered