Skip to content

Commit 18c4624

Browse files
authored
Merge pull request #200 from aturon/impl-period
impl Future for Rust
2 parents 63eb932 + e8bee8d commit 18c4624

File tree

1 file changed

+319
-0
lines changed

1 file changed

+319
-0
lines changed
Lines changed: 319 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,319 @@
1+
---
2+
layout: post
3+
title: "impl Future for Rust"
4+
author: Aaron Turon
5+
description: "The Rust community is going to finish out its 2017 roadmap with a bang—and we want your help!"
6+
---
7+
8+
The Rust community has been hard at work on our [2017 roadmap], but as we come
9+
up on the final quarter of the year, we're going to kick it into high gear—and
10+
we want you to join us!
11+
12+
[2017 roadmap]: https://github.com/rust-lang/rfcs/pull/1774
13+
14+
Our goals for the year are ambitious:
15+
16+
* [Rust should have a lower learning curve](https://github.com/rust-lang/rust-roadmap/issues/3).
17+
* [Rust should have a pleasant edit-compile-debug cycle](https://github.com/rust-lang/rust-roadmap/issues/1).
18+
* [Rust should provide a solid, but basic IDE experience](https://github.com/rust-lang/rust-roadmap/issues/2).
19+
* [Rust should provide easy access to high quality crates](https://github.com/rust-lang/rust-roadmap/issues/9).
20+
* [Rust should be well-equipped for writing robust, high-scale servers](https://github.com/rust-lang/rust-roadmap/issues/10).
21+
* [Rust should have 1.0-level crates for essential tasks](https://github.com/rust-lang/rust-roadmap/issues/11).
22+
* [Rust should integrate easily into large build systems](https://github.com/rust-lang/rust-roadmap/issues/12).
23+
* [Rust's community should provide mentoring at all levels](https://github.com/rust-lang/rust-roadmap/issues/13)
24+
25+
**To finish off these goals, we intend to spend the rest of the year focused
26+
purely on "implementation" work—which doesn't just mean code!** In particular, we
27+
are effectively spinning down the [RFC process] for 2017, after having merged
28+
[almost 90] RFCs this year!
29+
30+
[RFC process]: https://github.com/rust-lang/rfcs#rust-rfcs
31+
[almost 90]: https://github.com/rust-lang/rfcs/pulls?utf8=%E2%9C%93&q=is%3Apr%20merged%3A%3E2017-01-01
32+
33+
So here's the plan. Each Rust team has put together several *working groups*
34+
focused on a specific sub-area. Each WG has a leader who is responsible for
35+
carving out and coordinating work, and a dedicated chat channel for getting
36+
involved. We are working hard to divvy up work items into many shapes and sizes,
37+
and to couple them with mentoring instructions and hands-on mentors. **So if
38+
you've always wanted to contribute to Rust but weren't sure how, this is the
39+
perfect opportunity for you.** Don't be shy—we want and need your help, and, as
40+
per our roadmap, our aim is mentoring at *all* levels of experience.
41+
42+
## A few points of order
43+
44+
There are a few online venues for keeping in the loop with working group activity:
45+
46+
- There is a [dedicated Gitter community](https://gitter.im/rust-impl-period/)
47+
with channels for each working group, as well as
48+
a [global channel](https://gitter.im/rust-impl-period/Lobby) for talking about
49+
the process as a whole, or getting help finding your way to a working group.
50+
51+
- The brand-new [findwork](https://www.rustaceans.org/findwork) site, which
52+
provides an entry point to a number of open issues across the Rust project,
53+
including those managed by working groups (see the "impl period" tab). Thanks,
54+
@nrc, for putting this together! **NOTE**: this page is currently down, but
55+
will be brought back up ASAP; meanwhile, it's a good link to bookmark!
56+
57+
We also plan two in-person events, paired with upcoming Rust conferences. Each
58+
of them is a two-day event populated in part by Rust core developers; come hang
59+
out and work together!
60+
61+
- [October 2-3 at RustFest](http://blog.rustfest.eu/this-week-in-rustfest-9-impl-days).
62+
- [October 24-25 at Rust Belt Rust](https://goo.gl/forms/e9hmmsFw4owhhDf62).
63+
64+
As usual, all of these venues abide by the [Rust code of conduct]. But more than
65+
that: this "impl period" is a chance for us all to have fun *collaborating* and
66+
*helping* each other, and those participating in the official venues are
67+
expected to meet the highest standards of behavior.
68+
69+
[Rust code of conduct]: https://www.rust-lang.org/conduct.html
70+
71+
## The working groups
72+
73+
Without further ado, here's the initial lineup! (A few more working groups are
74+
expected to arise over time.)
75+
76+
### Compiler team
77+
78+
<table>
79+
<tr>
80+
<td><b>WG-compiler-errors</b></td>
81+
<td>Make Rust's error messages even friendlier.</td>
82+
<td><a href="https://paper.dropbox.com/doc/Compiler-errors-FSZdfXAGo3uMQ1wuDcZcy">Learn more</a></td>
83+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-errors">Chat</a></td>
84+
</tr>
85+
<tr>
86+
<td><b>WG-compiler-front</b></td>
87+
<td>Dip your toes in with parsing and syntax sugar.</td>
88+
<td><a href="https://paper.dropbox.com/doc/Parser-and-Name-Resolution-Front-end-b0SZiNroIE1HK3lHKm8k7">Learn more</a></td>
89+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-front">Chat</a></td>
90+
</tr>
91+
<tr>
92+
<td><b>WG-compiler-middle</b></td>
93+
<td>Implement features that involve typechecking.</td>
94+
<td><a href="https://paper.dropbox.com/doc/Middle-Type-checker-XEPTHIWvzlvqkSC3cluTr">Learn more</a></td>
95+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-middle">Chat</a></td>
96+
</tr>
97+
<tr>
98+
<td><b>WG-compiler-traits</b></td>
99+
<td>Want generic associated types? You know what to do.</td>
100+
<td><a href="https://paper.dropbox.com/doc/Trait-system-LCgNlSbM5cPOyEyWdoqzW">Learn more</a></td>
101+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-traits">Chat</a></td>
102+
</tr>
103+
<tr>
104+
<td><b>WG-compiler-incr</b></td>
105+
<td>Finish incremental compilation; receive undying love.</td>
106+
<td><a href="https://paper.dropbox.com/doc/Incremental-Compilation-GtIsqsyiXfiyzOh99xp9R">Learn more</a></td>
107+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-incr">Chat</a></td>
108+
</tr>
109+
<tr>
110+
<td><b>WG-compiler-nll</b></td>
111+
<td>Delve into the bowels of borrowck to slay the beast: NLL!</td>
112+
<td><a href="https://paper.dropbox.com/doc/Non-Lexical-Lifetimes-u5uc6VxJic67K2ynmTiFV">Learn more</a></td>
113+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-nll">Chat</a></td>
114+
</tr>
115+
<tr>
116+
<td><b>WG-compiler-const</b></td>
117+
<td>Const generics. Enough said.</td>
118+
<td><a href="https://paper.dropbox.com/doc/Const-system-hNGg3H7sqnHb6nf39zpwl">Learn more</a></td>
119+
<td><a href="https://gitter.im/rust-impl-period/WG-compiler-const">Chat</a></td>
120+
</tr>
121+
</table>
122+
123+
### Libs team
124+
125+
<table>
126+
<tr>
127+
<td><b>WG-libs-blitz</b></td>
128+
<td>Help finish off the Blitz before all the issues are gone!</td>
129+
<td><a href="https://paper.dropbox.com/doc/libz-blitz-ymXpoWVNDwVDigdrJ5o49">Learn more</a></td>
130+
<td><a href="https://gitter.im/rust-impl-period/WG-libz-blitz">Chat</a></td>
131+
</tr>
132+
<tr>
133+
<td><b>WG-libs-cookbook</b></td>
134+
<td>Work on bite-sized examples to get folks cooking with Rust.</td>
135+
<td><a href="https://paper.dropbox.com/doc/Rust-cookbook-DFaopl45jyZGWKI6iFDwD">Learn more</a></td>
136+
<td><a href="https://gitter.im/rust-impl-period/WG-libs-cookbook">Chat</a></td>
137+
</tr>
138+
<tr>
139+
<td><b>WG-libs-guidelines</b></td>
140+
<td>Take the wisdom from the Blitz and pass it on.</td>
141+
<td><a href="https://paper.dropbox.com/doc/API-Guidelines-bDAAOER4WHdxJ1XtEAFYs">Learn more</a></td>
142+
<td><a href="https://gitter.im/rust-impl-period/WG-libs-guidelines">Chat</a></td>
143+
</tr>
144+
<tr>
145+
<td><b>WG-libs-simd</b></td>
146+
<td>Provide access to hardware parallelism in Rust! </td>
147+
<td><a href="https://paper.dropbox.com/doc/simd-9H0xb83w1TD8Tc1yEG75M">Learn more</a></td>
148+
<td><a href="https://gitter.im/rust-impl-period/WG-libs-simd">Chat</a></td>
149+
</tr>
150+
<tr>
151+
<td><b>WG-libs-openssl</b></td>
152+
<td>Want better docs for openssl? So do we.</td>
153+
<td><a href="https://paper.dropbox.com/doc/OpenSSL-crate-FRMKrV0PjCVqFSBHfmNS5">Learn more</a></td>
154+
<td><a href="https://gitter.im/rust-impl-period/WG-libs-openssl">Chat</a></td>
155+
</tr>
156+
<tr>
157+
<td><b>WG-libs-rand</b></td>
158+
<td>Craft a stable, core crate for randomness.</td>
159+
<td><a href="https://github.com/rust-lang/rfcs/pull/2152">Learn more</a></td>
160+
<td><a href="https://gitter.im/rust-impl-period/WG-libs-rand">Chat</a></td>
161+
</tr>
162+
</table>
163+
164+
### Docs team
165+
166+
<table>
167+
<tr>
168+
<td><b>WG-docs-rustdoc</b></td>
169+
<td>Help make docs beautiful for everyone!</td>
170+
<td><a href="https://paper.dropbox.com/doc/Rustdoc-issue-roundup-ZSIIXNDGEPozTM9axn0BO">Learn more</a></td>
171+
<td><a href="https://gitter.im/rust-impl-period/WG-docs-rustdoc">Chat</a></td>
172+
</tr>
173+
<tr>
174+
<td><b>WG-docs-rustdoc2</b></td>
175+
<td>Get in on a bottom-up revamp of rustdoc!</td>
176+
<td><a href="https://paper.dropbox.com/doc/WG-rustdoc2-3lxugWOmvpXC2eMaAQK04">Learn more</a></td>
177+
<td><a href="https://gitter.im/rust-impl-period/WG-docs-rustdoc2">Chat</a></td>
178+
</tr>
179+
<tr>
180+
<td><b>WG-docs-rbe</b></td>
181+
<td>Teach others Rust in the browser.</td>
182+
<td><a href="https://paper.dropbox.com/doc/WG-rbe-Tgd0wu70N6zSmACkNL3TI">Learn more</a></td>
183+
<td><a href="https://gitter.im/rust-impl-period/WG-docs-rbe">Chat</a></td>
184+
</tr>
185+
</table>
186+
187+
### Dev tools team
188+
189+
<table>
190+
<tr>
191+
<td><b>WG-dev-tools-rls</b></td>
192+
<td>Help make Rust's IDE experience first class.</td>
193+
<td><a href="https://paper.dropbox.com/doc/Rust-Language-Server-RLS-XQbsngZNog9pkt0AfcMo7">Learn more</a></td>
194+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-rls">Chat</a></td>
195+
</tr>
196+
<tr>
197+
<td><b>WG-dev-tools-vscode</b></td>
198+
<td>Improve Rust's IDE experience for VSCode.</td>
199+
<td><a href="https://paper.dropbox.com/doc/Rust-support-in-Visual-Studio-Code-RZ34qWGwy04Xwc82NFi78">Learn more</a></td>
200+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-vscode">Chat</a></td>
201+
</tr>
202+
<tr>
203+
<td><b>WG-dev-tools-clients</b></td>
204+
<td>Implement new RLS clients: Atom, Sublime, Visual Studio...</td>
205+
<td><a href="https://paper.dropbox.com/doc/New-RLS-clients-VrtQKnZR4r3uLD1VBypRI">Learn more</a></td>
206+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-clients">Chat</a></td>
207+
</tr>
208+
<tr>
209+
<td><b>WG-dev-tools-IntelliJ</b></td>
210+
<td>Polish up an already-rich Rust IDE experience.</td>
211+
<td><a href="https://paper.dropbox.com/doc/Intellij-Rust-IYJGtI7uAjdqr2igv4Y7r">Learn more</a></td>
212+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-IntelliJ">Chat</a></td>
213+
</tr>
214+
<tr>
215+
<td><b>WG-dev-tools-rustfmt</b></td>
216+
<td>Make Rust's code the prettiest!</td>
217+
<td><a href="https://paper.dropbox.com/doc/rustfmt-7yTxFPEHtV6jktqZ2pRj1">Learn more</a></td>
218+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-rustfmt">Chat</a></td>
219+
</tr>
220+
<tr>
221+
<td><b>WG-dev-tools-rustup</b></td>
222+
<td>Make Rust's first impression even better!</td>
223+
<td><a href="https://paper.dropbox.com/doc/rustup-mngGQUtX1UkBay3wgOGJi">Learn more</a></td>
224+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-rustup">Chat</a></td>
225+
</tr>
226+
<tr>
227+
<td><b>WG-dev-tools-clippy</b></td>
228+
<td>It looks like you're trying to write a linter. Want help?</td>
229+
<td><a href="https://paper.dropbox.com/doc/Clippy-integration-and-improvements-gebwGlwNOoy6UGLspGO4T">Learn more</a></td>
230+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-clippy">Chat</a></td>
231+
</tr>
232+
<tr>
233+
<td><b>WG-dev-tools-bindgen</b></td>
234+
<td>Make FFI'ing to C and C++ easy, automatic, and robust!</td>
235+
<td><a href="https://paper.dropbox.com/doc/bindgen-xTXplHlfqJpnDvPhMqmfW">Learn more</a></td>
236+
<td><a href="https://gitter.im/rust-impl-period/WG-dev-tools-bindgen">Chat</a></td>
237+
</tr>
238+
</table>
239+
240+
### Cargo team
241+
242+
<table>
243+
<tr>
244+
<td><b>WG-cargo-native</b></td>
245+
<td>Let's make native dependencies as painless as we can.</td>
246+
<td><a href="https://paper.dropbox.com/doc/Declarative-native-dependencies-iLRUq6Zt2tPtLWE9IyLqS">Learn more</a></td>
247+
<td><a href="https://gitter.im/rust-impl-period/WG-cargo-native">Chat</a></td>
248+
</tr>
249+
<tr>
250+
<td><b>WG-cargo-registries</b></td>
251+
<td>Going beyond crates.io to support custom registries.</td>
252+
<td><a href="https://paper.dropbox.com/doc/Cargo-Multiple-Registries-IrW9bRuZ1rdc4o9UPdQM9">Learn more</a></td>
253+
<td><a href="https://gitter.im/rust-impl-period/WG-cargo-registries">Chat</a></td>
254+
</tr>
255+
<tr>
256+
<td><b>WG-cargo-pub-deps</b></td>
257+
<td>Teach Cargo which of your dependencies may affect your users.</td>
258+
<td><a href="https://paper.dropbox.com/doc/Cargo-pubpriv-dependencies-JDXpDtGRnz8CY3KYlcUBD">Learn more</a></td>
259+
<td><a href="https://gitter.im/rust-impl-period/WG-cargo-pub-deps">Chat</a></td>
260+
</tr>
261+
<tr>
262+
<td><b>WG-cargo-integration</b></td>
263+
<td>How easy can we make it to use Cargo with your build system?</td>
264+
<td><a href="https://paper.dropbox.com/doc/Cargo-build-system-integration-1sqRG8uyCqxv9EfoS8cco">Learn more</a></td>
265+
<td><a href="https://gitter.im/rust-impl-period/WG-cargo-integration">Chat</a></td>
266+
</tr>
267+
</table>
268+
269+
### Infrastructure team
270+
271+
<table>
272+
<tr>
273+
<td><b>WG-infra-crates.io</b></td>
274+
<td>Try your hand at a production Rust web app!</td>
275+
<td><a href="https://paper.dropbox.com/doc/Crates.io-g8NWnnNIeTq8DaqjGoZLr">Learn more</a></td>
276+
<td><a href="https://gitter.im/rust-impl-period/WG-infra-crates.io">Chat</a></td>
277+
</tr>
278+
<tr>
279+
<td><b>WG-infra-perf</b></td>
280+
<td>Let's make sure Rust gets faster.</td>
281+
<td><a href="https://paper.dropbox.com/doc/Perf.rlo-dp5rp6tSg7bOMmQwLygp4">Learn more</a></td>
282+
<td><a href="https://gitter.im/rust-impl-period/WG-infra-perf">Chat</a></td>
283+
</tr>
284+
<tr>
285+
<td><b>WG-infra-crater</b></td>
286+
<td>Regularly testing the compiler against the Rust ecosystem.</td>
287+
<td><a href="https://paper.dropbox.com/doc/Crater-D7DpG48tMhhHhrUm8kyhY">Learn more</a></td>
288+
<td><a href="https://gitter.im/rust-impl-period/WG-infra-crater">Chat</a></td>
289+
</tr>
290+
<tr>
291+
<td><b>WG-infra-secure</b></td>
292+
<td>Help us implement best practices for Rust's infrastructure!</td>
293+
<td><a href="https://paper.dropbox.com/doc/Securing-Infrastructure-xq5FfLQs1hkxwgxDsHi2Z">Learn more</a></td>
294+
<td><a href="https://gitter.im/rust-impl-period/WG-infra-secure">Chat</a></td>
295+
</tr>
296+
<tr>
297+
<td><b>WG-infra-host</b></td>
298+
<td>Managing the services that keep the Rust machine running.</td>
299+
<td><a href="https://paper.dropbox.com/doc/Host-WiqosInW7SpUblFVGKeOo">Learn more</a></td>
300+
<td><a href="https://gitter.im/rust-impl-period/WG-infra-host">Chat</a></td>
301+
</tr>
302+
<tr>
303+
<td><b>WG-infra-rustbuild</b></td>
304+
<td>Streamline the compiler build process.</td>
305+
<td><a href="https://paper.dropbox.com/doc/Rustbuild-Cz96pk6FBtP54JClTCDNd">Learn more</a></td>
306+
<td><a href="https://gitter.im/rust-impl-period/WG-infra-rustbuild">Chat</a></td>
307+
</tr>
308+
</table>
309+
310+
### Core team
311+
312+
<table>
313+
<tr>
314+
<td><b>WG-core-site</b></td>
315+
<td>The web site is getting overhauled; help shape the new content!</td>
316+
<td><a href="https://paper.dropbox.com/doc/rust-lang.org-content-improvement-uGns2d39DFgT0X9FQg0yD">Learn more</a></td>
317+
<td><a href="https://gitter.im/rust-impl-period/WG-core-site">Chat</a></td>
318+
</tr>
319+
</table>

0 commit comments

Comments
 (0)