Subteam report: tools 2016-03-25
Highlights
-
Now that rustbuild can bootstrap new hosts for the compiler, there are now nightly compilers for five new platforms, with Cargo following quite soon! These artifacts are all lightly tested, however, and some broader testing would be much appreciated!
If you've got a new host target you'd like to see builds of rustc and Cargo for, ping
acrichtoon IRC (or @alexcrichton on GitHub) and we'll try to get it set up! -
The built-in test runner now has a flag to have quieter output when running tests (one dot per test instead of one line)
-
A new test suite has been added to the compiler which should help detect regression on a broader range of the ecosystem when landing any change to rust-lang/rust
-
A number of instances of seemingly infinite recursion in Cargo have been solved through a more optimized traversal of the dependency space when resolving dependencies.
-
Cargo's style for printing errors has changed to be much more readable.
-
Cargo will now read the
RUSTFLAGSenvironment variable to pass flags to the compiler for all crates as part of a compilation. -
Cargo should now correctly handle concurrent invocations and ensure that global state is not corrupted and builds complete.
-
The multirust-rs project has now grown the initial rustup implementation which will soon be deployed!
| Target | rustc | cargo |
|---|---|---|
| arm-unknown-linux-gnueabi | rustc | cargo |
| arm-unknown-linux-gnueabihf | rustc | cargo |
| armv7-unknown-linux-gnueabihf | rustc | cargo |
| x86_64-unknown-freebsd | rustc | cargo |
| x86_64-unknown-netbsd | rustc | coming soon! |
Dashboard
High priority issues
- Cargo Issue #782: Resolve errors are likely quite obscure
- Cargo Issue #942: Allow top-level overrides to be stored in the manifest
- Cargo Issue #1251: Build dependency awareness
- Cargo Issue #2064: Cargo is overeager to pull in multiple copies of a crate
Issues needing a decision
RFC phase
- PR #1133: Make Cargo aware of standard library dependencies
- PR #1296:
RFC: Add an
aliasattribute to #[link] and -l - PR #1459: Add a used attribute
- PR #1489: Extended static linking
- PR #1509: Add space-friendly arguments
- PR #1510: RFC: Add a new crate-type, rdylib
- PR #1525: RFC: Add workspaces to Cargo
- PR #1535: Stabilize -C overflow-checks
- Issue #635: Use benchmarks to set up a website tracking rust performance
- Issue #648: separate rust-format or rustfmt tool that does the pretty-printing
- Issue #816: Custom test frameworks
- Issue #1061: Rust, Windows, and MSVC
Implementation phase
Stabilization phase
- Issue #31847: Tracking issue for accepting unstable flags in stable compilers