-
Notifications
You must be signed in to change notification settings - Fork 310
add rust roadmap update #180
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
Conversation
[preorder]: https://www.nostarch.com/rust | ||
[book]: https://doc.rust-lang.org/book/ | ||
|
||
We've also been working on a number of languages changes aimed at |
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 - languages
We've also been working on a number of languages changes aimed at | ||
improving [language ergonomics][ergo]. These range from long-standing | ||
proposals, like [non-lexical lifetimes][rr16] or [`impl Trait`], to | ||
newer ideas, like the recently approved RFCs on [trait aliases][] the |
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 missing conjunction
Earlier this year, we advertised | ||
[the "beta" release of incremental on nightly builds][icbeta]. While | ||
the beta version sometimes achieved quite large speedups, we also | ||
found that the dependency tracking not as robust or effective as we |
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 - tracking not
found that the dependency tracking not as robust or effective as we | ||
would like. Therefore, we are now adopting a revised approach to | ||
incremental compilation, which we call the "red-green algorithm" (I | ||
prefer "the salsa algorithm", but that has never caught on). We expect |
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 would cut some detail here
offers support for most basic IDE operations, such as "jump to | ||
definition" or "find all uses", as well as offering code completion | ||
(via [the racer project](https://github.com/racer-rust/racer)) and | ||
some refactorings. At this point, the focus is primarily on polish: |
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 would remove the refactoring bit - we only support renaming and that is behind a flag because it is not super-reliable
ecosystem and have seen some heavy usage through crates like [Hyper] | ||
and production users like [linkerd-tcp]. Additionally we've seen | ||
projects like [Rocket] continue to tirelessly push on the ergonomics | ||
of Rust-on-the-server to new frontiers. A [recent discussion] of what |
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.
"push ... to new frontiers" is a bit awkward
Looks great to me! |
Here's a thing, please edit and revise however you see fit! https://gist.github.com/fitzgen/3ef4a82064711b1dd08105402744cf1b |
So I merged @fitzgen's addition, as well as some edits from @brson and @carols10cents. I had kind of forgotten how detailed the 2 year update was, and ther seems to be some overlap with this post, but I'm not sure what (if anything) to do about it. One question: @brson had a list of people to thank for libz blitz, which I think is awesome, but we don't have "thank yous" in many other places. I am of two minds, because I always want to thank people for all the awesome things they do, but I worry that the scope of people to thank here is pretty broad and we'll leave people out (i.e., in a release blog post we can reliably scrape the contributors from GH logs, but here it's a bit more complex). Still, not thanking people feels stingy. Thoughts on this? |
newer ideas, like the recently approved RFCs on [trait aliases][] and | ||
[match ergonomics][]. On the [roadmap issue][rr17], you will find a | ||
large list of initiatives, organized by the part of the language that | ||
they target (e.g., ownwership/borrowing, the trait system, etc). We |
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.
"ownwership" is "own worship"? Rust Evangelism Strike Force are actually solipsists?!!
grr it seems like my internet won't let me push my changes yet, it'll have to wait till I head somewhere else. |
Here's some new text that includes serde 1.0 One of the most notable library releases this year has been serde Elsewhere, the Libz Blitz proceeds apace! This is a The effort is structured to be highly amenable to contribution, If you're interested in participating, take a look at the |
cc @erickt dtolnay mentioning serde in this update^ |
It would be nice to talk about community crate accomplishments, but I'm not very prepared for it. There also doesn't seem to have been a lot of notable 1.0 bumps besides quick-error. slog hit 2.0, nom hit 3.0. clap has been polishing. |
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.
some nits
We've also been working on a number of language changes aimed at | ||
improving [language ergonomics][ergo]. These range from long-standing | ||
proposals, like [non-lexical lifetimes][rr16] or [`impl Trait`], to | ||
newer ideas, like the recently approved RFCs on [trait aliases][] and |
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.
broken link
improving [language ergonomics][ergo]. These range from long-standing | ||
proposals, like [non-lexical lifetimes][rr16] or [`impl Trait`], to | ||
newer ideas, like the recently approved RFCs on [trait aliases][] and | ||
[match ergonomics][]. On the [roadmap issue][rr17], you will find 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.
another broken link (for the case you aren't aware)
a number of different ways. One of the simplest is the | ||
[`cargo check` command that we released in Rust 1.16][1.16] | ||
-- this command does a limited form of compilation which skips | ||
code-generation and simply looks for type-errors. Since 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.
maybe leave out the type-
? It checks for all kinds of errors, like parser ones, and also runs all lints.
[`cargo check` command that we released in Rust 1.16][1.16] | ||
-- this command does a limited form of compilation which skips | ||
code-generation and simply looks for type-errors. Since code | ||
generation typically takes 50% of more of compilation time, this can |
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.
or*
The [Libz Blitz][blitzblog] proceeds apace! The Libz Blitz is a | ||
systematic effort to identify the most broadly used crates in the Rust | ||
ecosystem and to ensure that they all meet a consistent level of | ||
completeness and quality. This effortentails collaborating on the |
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 space
### Rust's community should provide mentoring at all levels | ||
|
||
When it comes to mentoring, we've been pursuing a few different | ||
efforts. The first, [RustBridge][], is specifically aimed at bringing |
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.
No link
Before merging:
cc @rust-lang/core