rustup 1.5.0 is out. rustup is the primary official method of installing Rust. To upgrade run
rustup self update.
The main new feature in this release is the addition of the ‘rust-toolchain’ file. This is long-requested feature that allows one to check their toolchain override into source control. Below is the description from the README.
The toolchain file
rustup directory overrides are a local configuration, stored in
$RUSTUP_HOME. Some projects though find themselves ‘pinned’ to a
specific release of Rust and want this information reflected in their
source repository. This is most often the case for nightly-only
software that pins to a revision from the release archives.
In these cases the toolchain can be named in the project’s directory
in a file called
rust-toolchain, the content of which is the name of
rustup toolchain, and which is suitable to check in to
The toolchains named in this file have a more restricted form than
rustup toolchains generally, and may only contain the names of the
three release channels, ‘stable’, ‘beta’, ‘nightly’, Rust version
numbers, like ‘1.0.0’, and optionally an archive date, like
’nightly-2017-01-01’. They may not name custom toolchains, nor
Other changes this release
This release also adds further installation logic to attempt to set up
PATH correctly in more situations. Now if
~/.bash_profile exists it will be configured to put
~/.cargo/bin on the
PATH. Eventually we’ll get to a point where
PATH is always configured correctly - keep those fixes coming!
It also contains a fix so that rustup no longer fails on manifests with ‘unavailable’ packages. Unavailable packages are those that the nightly build system failed to produce for whatever reason. Several nightlies in the last few months have contained unavailable toolchains, and each time it was a crises because rustup handled them incorrectly. No more!
Thanks to everybody who contributed!
- Rename references to multirust to rustup where applicable
- Update platform support in README
- Allow rustup to handle unavailable packages
- Update libz-sys and curl-sys
- Teach rustup to override the toolchain from a version file
- Update sha2 crate
- Check for unexpected cargo/rustc before install
- Update PATH in .bash_profile
Contributors: Allen Welkie, bors, Brian Anderson, Diggory Blake, Erick
Tryzelaar, Ricardo Martins, Артём Павлов [Artyom Pavlov]