impl Future for Rust

Sept. 18, 2017 · Aaron Turon

The Rust community has been hard at work on our 2017 roadmap, but as we come up on the final quarter of the year, we're going to kick it into high gear—and we want you to join us!

Our goals for the year are ambitious:

To finish off these goals, we intend to spend the rest of the year focused purely on "implementation" work—which doesn't just mean code! In particular, we are effectively spinning down the RFC process for 2017, after having merged almost 90 RFCs this year!

So here's the plan. Each Rust team has put together several working groups focused on a specific sub-area. Each WG has a leader who is responsible for carving out and coordinating work, and a dedicated chat channel for getting involved. We are working hard to divvy up work items into many shapes and sizes, and to couple them with mentoring instructions and hands-on mentors. So if you've always wanted to contribute to Rust but weren't sure how, this is the perfect opportunity for you. Don't be shy—we want and need your help, and, as per our roadmap, our aim is mentoring at all levels of experience. To get started, say hello in the chat rooms for any of the work groups you're interested in!

A few points of order

There are a few online venues for keeping in the loop with working group activity:

  • There is a dedicated Gitter community with channels for each working group, as well as a global channel for talking about the process as a whole, or getting help finding your way to a working group. For those who prefer IRC, a good bridge is available!

  • The brand-new findwork site, which provides an entry point to a number of open issues across the Rust project, including those managed by working groups (see the "impl period" tab). Thanks, @nrc, for putting this together!

We also plan two in-person events, paired with upcoming Rust conferences. Each of them is a two-day event populated in part by Rust core developers; come hang out and work together!

As usual, all of these venues abide by the Rust code of conduct. But more than that: this "impl period" is a chance for us all to have fun collaborating and helping each other, and those participating in the official venues are expected to meet the highest standards of behavior.

The working groups

Without further ado, here's the initial lineup! (A few more working groups are expected to arise over time.)

If you find a group that interests you, please say hello in the corresponding chat room!

Compiler team

WG-compiler-errors Make Rust's error messages even friendlier. Learn more Chat
WG-compiler-front Dip your toes in with parsing and syntax sugar. Learn more Chat
WG-compiler-middle Implement features that involve typechecking. Learn more Chat
WG-compiler-traits Want generic associated types? You know what to do. Learn more Chat
WG-compiler-incr Finish incremental compilation; receive undying love. Learn more Chat
WG-compiler-nll Delve into the bowels of borrowck to slay the beast: NLL! Learn more Chat
WG-compiler-const Const generics. Enough said. Learn more Chat

Libs team

WG-libs-blitz Help finish off the Blitz before all the issues are gone! Learn more Chat
WG-libs-cookbook Work on bite-sized examples to get folks cooking with Rust. Learn more Chat
WG-libs-guidelines Take the wisdom from the Blitz and pass it on. Learn more Chat
WG-libs-simd Provide access to hardware parallelism in Rust! Learn more Chat
WG-libs-openssl Want better docs for openssl? So do we. Learn more Chat
WG-libs-rand Craft a stable, core crate for randomness. Learn more Chat

Docs team

WG-docs-rustdoc Help make docs beautiful for everyone! Learn more Chat
WG-docs-rustdoc2 Get in on a bottom-up revamp of rustdoc! Learn more Chat
WG-docs-rbe Teach others Rust in the browser. Learn more Chat
WG-docs-checklist Help finish the standard library documentation! Learn more Chat

Dev tools team

WG-dev-tools-rls Help make Rust's IDE experience first class. Learn more Chat
WG-dev-tools-vscode Improve Rust's IDE experience for VSCode. Learn more Chat
WG-dev-tools-clients Implement new RLS clients: Atom, Sublime, Visual Studio... Learn more Chat
WG-dev-tools-IntelliJ Polish up an already-rich Rust IDE experience. Learn more Chat
WG-dev-tools-rustfmt Make Rust's code the prettiest! Learn more Chat
WG-dev-tools-rustup Make Rust's first impression even better! Learn more Chat
WG-dev-tools-clippy It looks like you're trying to write a linter. Want help? Learn more Chat
WG-dev-tools-bindgen Make FFI'ing to C and C++ easy, automatic, and robust! Learn more Chat

Cargo team

WG-cargo-native Let's make native dependencies as painless as we can. Learn more Chat
WG-cargo-registries Going beyond to support custom registries. Learn more Chat
WG-cargo-pub-deps Teach Cargo which of your dependencies affects your users. Learn more Chat
WG-cargo-integration How easy can it be to use Cargo with your build system? Learn more Chat

Infrastructure team Try your hand at a production Rust web app! Learn more Chat
WG-infra-perf Let's make sure Rust gets faster. Learn more Chat
WG-infra-crater Regularly testing the compiler against the Rust ecosystem. Learn more Chat
WG-infra-secure Help us implement best practices for Rust's infrastructure! Learn more Chat
WG-infra-host Managing the services that keep the Rust machine running. Learn more Chat
WG-infra-rustbuild Streamline the compiler build process. Learn more Chat

Core team

WG-core-site The web site is getting overhauled; help shape the new content! Learn more Chat