I’m going to try to keep this thread around for throwing out incremental compilation tasks. In general, each of these tasks has mentoring instructions. Also, I’m trying to keep the roadmap issue page up to date as well, but I figure having more sources of information can’t hurt!
First up: https://github.com/rust-lang/rust/issues/39280 – refactoring the LLVM processing to be pipelined, and hence reducing memory usage. There are mentoring instructions at the end. This will require some non-trivial restructuring of the compiler flow, so it’s a good task for someone with a bit of time to invest who wants to do something “meaty”.
Next: https://github.com/rust-lang/rust/issues/42384 – refactor the
used_mut_nodes field in the tcx out of existence. It represents untracked mutable state, which we can’t have. Some rough directions found in the issue.
Next: https://github.com/rust-lang/rust/issues/42511 – refactor how the lint system is implemented.
Next: https://github.com/rust-lang/rust/issues/42513 – integrate diagnostics into the query system.