It’s start­ing to become a tradi­tion to see a bunch of posts around the new year on what the commu­nity wants to see from Rust. For the second year in a row, the Rust core team asked for feed­back for the 2019 roadmap and this is what I’d like: “rust­fix all the things” and a better infrastructure.

Add rustfix support to most of the warnings

One of the features of Rust 2018 I don’t see mentioned too often is rustfix, the tool that fully migrates a project from Rust 2015 to Rust 2018. The fact nobody talks about it is prob­a­bly a good thing though, since it means it works fine!

Rust­fix is a really simple tool behind the scenes: it calls the compil­er, gets the sugges­tions from the warn­ings emit­ted by the compiler and replace them. That means all the fixing logic is inside the compil­er, with full access to its inter­nals. Other tools (like IDEs) can also apply those sugges­tions with­out reim­ple­ment­ing them.

In 2019 we should greatly increase the scope of the fixes applica­ble by rust­fix, from the edition migra­tion to most of the warn­ings emit­ted by the compil­er. I’d love to see a day when a cargo fix makes most of the warn­ings disappear.

Improve the Rust infrastructure

The Rust project has grown a lot in the past few years, but its infrastruc­ture is lagging behind. Last month there was a big discus­sion on internals on improv­ing the bors queue, and there are a lot of other stuff we want to improve as the infrastruc­ture team.

One of the biggest one is switch­ing away from Travis CI for the compiler repos­i­to­ry. In the past year we had count­less issues with them (both small and big), and that’s not accept­able when we’re paying (a lot) for it. The infra team is already plan­ning to start the discus­sion on where we should migrate in the coming weeks, and we’ll involve the whole commu­nity in the discus­sion when it happens.

Another thing I’d like to see is increased cover­age for Crater, the tool we use to test compiler changes across parts of the Rust ecosys­tem. There are a lot of big wins we can make on it, like test­ing repos­i­to­ries on GitLab or Windows support, and any contrib­u­tor is welcome!

Looking forward for the next year

The past year has been a great for both the Rust project and myself. We (final­ly!) shipped the 2018 edition, we grown a lot as a commu­nity and we have big features near the end of the pipeline (for exam­ple async/await).

Person­ally I joined the release and infrastruc­ture teams, and it’s great to be a small part of this success. I met and worked with a lot of awesome people, and I hope I’ll be able to continue to do that in the future.

I look forward for a way better #Rust2019.
Pietro.