Subteam reports 2015-12-21

Compiler

Full report

The meeting was mostly triage, but some recent PRs of note include:

  • further progress on MIR: #30337, #29907
  • a big overhaul of the privacy rules which fixed a large number of bugs: [#29773]
  • a preliminary type ascription PR: #30184

Lang

Full report

This week we decided to merge RFC 1384, which is a clarification and extension of the macro forwards compatibility rules.

Libs

Full report

This week we decided on unstable APIs to move into FCP for the 1.7 cycle:

In addition, we accepted the custom panic handler RFC:

Tools

Full report

Rust 1.5 Released!

Although the actual release was last week, it’s worth giving extra thanks to @brson again for prep’ing the release and make sure all the artifacts are in order!

Rustfmt

There’s been steady progress on Rustfmt, it’s now a very capable tool - indicated by it’s recent promotion to the rust-lang-nursery repo. You should try it out, and doing so is now easier than ever thanks to some recent PRs from the community:

# To install
cargo install rustfmt
# To run on a Cargo project
cargo fmt

Or check out the source code at https://github.com/rust-lang-nursery/rustfmt

Refactoring

Garming Sam (@GSam) has been working on a refactoring tool for Rust. Adolfo Ochagavía (@aochagavia) will be working on more refactorings for his final year project next year and has already got stuck in with a big PR bringing the code up to date. Check out the source at https://github.com/GSam/rust-refactor.

Macros

Daniel Campbell is conducting a summer research project on improving Rust’s tool support for macros. This is mainly focused on compiler support. The first visible changes will be making DXR macro-aware. This work will be useful in the future for IDE support and static analysis tools.

Benchmarking compile time

If you’re interested in our compile times, check out http://www.ncameron.org/perf-rustc/. We’re tracking compile time and memory use for every phase of compilation on a number of benchmarks and the compiler bootstrap.

Landed PRs

  • The Windows SDK detection code has been updated to more closely match what VS does and work with the newest release of VS.
  • Better support for --llvm-root has been implemented, so custom LLVM installations with odd configurations should work more robustly.
2 Likes

I tried the perf-rustc tool but I always get SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data.

Maybe @nrc can help? Relatedly, I’d love to move this infrastructure into the rust-lang org and allow the entire community to help grow it!

Bah, I’ve been somewhat plagued by these problems - you could try disabling/enabling different benchmarks - there’s often one with malformed JSON data. I’ll try and fix properly ASAP.

I think I just needed to restart the backend, seems to be working now. Let me know if you still have problems.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.