rustup can't update nightly

Created on 22 Jun 2018  Â·  20Comments  Â·  Source: rust-lang/rust

There seems to be a malformed URL in the rustup manifest since 1.27 got released today.

durska:rust alex$ rustup self update
info: checking for self-updates
durska:rust alex$ rustup update
info: syncing channel updates for 'stable-x86_64-apple-darwin'
info: syncing channel updates for 'beta-x86_64-apple-darwin'
info: syncing channel updates for 'nightly-x86_64-apple-darwin'
info: latest update on 2018-06-22, rust version 1.28.0-nightly (662c70a59 2018-06-21)
info: downloading component 'rustc'
error: failed to parse url: 1.28.0-nightly (662c70a59 2018-06-21)/2018-06-22/rustc-nightly-x86_64-apple-darwin.tar.xz
info: checking for self-updates

       stable-x86_64-apple-darwin unchanged - rustc 1.27.0 (3eda71b00 2018-06-19)
         beta-x86_64-apple-darwin unchanged - rustc 1.28.0-beta.1 (8e6052e77 2018-06-21)
  nightly-x86_64-apple-darwin update failed - rustc 1.28.0-nightly (990d8aa74 2018-05-25)

durska:rust alex$
T-infra T-release regression-from-stable-to-nightly

Most helpful comment

For anyone wondering, PR #51703 has fixed the bug. It will take until the next scheduled nightly upload until rustup starts working again.

All 20 comments

Related to #51680?

This is causing problems on Travis too, see for example rustfmt

This affects the mozilla overlay for nixpkgs as well, since that uses the same URLs.

Comparison of nightly and stable metadata for rustup:

# channel-rust-nightly.toml
[pkg.cargo.target.x86_64-unknown-linux-gnu]
available = true
url = "1.28.0-nightly (662c70a59 2018-06-21)/2018-06-22/cargo-nightly-x86_64-unknown-linux-gnu.tar.gz"
hash = "039fc11d15fab9951061ee25991708659f6a3900d58fcd0a3db9e6f8b4987d51"
xz_url = "1.28.0-nightly (662c70a59 2018-06-21)/2018-06-22/cargo-nightly-x86_64-unknown-linux-gnu.tar.xz"
xz_hash = "27613570b55d12e7f3b66cf5296a41c8d7a8ee1c95cce7f9cfedee3f201b1e11"

# channel-rust-stable.toml
[pkg.cargo.target.x86_64-unknown-linux-gnu]
available = true
url = "https://static.rust-lang.org/dist/2018-06-21/cargo-0.28.0-x86_64-unknown-linux-gnu.tar.gz"
hash = "3612ae45bf4504836810a74e6cef177358fce7219794013536c354bbd6ee61ef"
xz_url = "https://static.rust-lang.org/dist/2018-06-21/cargo-0.28.0-x86_64-unknown-linux-gnu.tar.xz"
xz_hash = "386ba6e3c0a2b1718fe0487d03f96e1ad12796cfb44813dfc22c5be54657e7a4"

Somehow https://static.rust-lang.org/dist got replaced by 1.28.0-nightly (662c70a59 2018-06-21) for latest nightly, other things seem fine.
Opening https://static.rust-lang.org/dist/2018-06-22/cargo-nightly-x86_64-unknown-linux-gnu.tar.gz in the browser starts downloading of the archive.

Regression caused by #50336.

diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
index 9092deeac461..73cda4b436d4 100644
--- a/src/bootstrap/dist.rs
+++ b/src/bootstrap/dist.rs
@@ -1756,6 +1740,7 @@ impl Step for HashSign {
         cmd.arg(builder.package_vers(&builder.release_num("cargo")));
         cmd.arg(builder.package_vers(&builder.release_num("rls")));
         cmd.arg(builder.package_vers(&builder.release_num("rustfmt")));
+        cmd.arg(builder.llvm_tools_vers());
         cmd.arg(addr);

         builder.create_dir(&distdir(builder));

@kennytm you were few minutes faster.
build-manifest tool doesn't expect additional argument:
https://github.com/rust-lang/rust/blob/8d22af87d812d9a132f0a030753a5cdf53c87ee8/src/tools/build-manifest/src/main.rs#L178-L179

Btw rustfmt arg isn't there as well :confused: Forget about it, old commit

@kennytm Oops, commit from 27 Jul 2017.
Probably I should've had a bit more sleep :unamused:

Updating with a previous version such as rustup update nightly-2018-06-18 seems to work for me...

This is causing problems on Travis too

Indeed, this breaks every single project having CI against Rust nightly.

For anyone wondering, PR #51703 has fixed the bug. It will take until the next scheduled nightly upload until rustup starts working again.

Should rustup tests be added as part of the release process?

There is already an open issue about testing rustup. https://github.com/rust-lang/rust-central-station/issues/17

@est31 when is the next scheduled nightly upload?

@Slaiyer It should be in progress right now. https://github.com/rust-lang/rust-central-station/blob/12b28bc1c2/crontab#L7 runs at midnight UTC.

✗ rustup update nightly
info: syncing channel updates for 'nightly-x86_64-apple-darwin'
info: latest update on 2018-06-22, rust version 1.28.0-nightly (662c70a59 2018-06-21)
info: downloading component 'rustc'
error: failed to parse url: 1.28.0-nightly (662c70a59 2018-06-21)/2018-06-22/rustc-nightly-x86_64-apple-darwin.tar.xz
info: caused by: relative URL without a base

Nightly should release within the next 30 minutes, probably the next 10-15 minutes. Until then, yes, the command won't work.

2018-06-23 is live and the url is fixed

Same issue with current meta for nightly:

error: failed to parse url: nightly/2019-01-10/rustc-nightly-x86_64-unknown-linux-gnu.tar.xz
info: caused by: relative URL without a base

From https://static.rust-lang.org/dist/channel-rust-nightly.toml:

manifest-version = "2"
date = "2019-01-10"

[pkg.rustc.target.x86_64-unknown-linux-gnu]
available = true
url = "nightly/2019-01-10/rustc-nightly-x86_64-unknown-linux-gnu.tar.gz"
hash = "f4b5c77ce75ffdee97d460f03b8f84dd49129143c8e896e44d4512de2c0a686a"
xz_url = "nightly/2019-01-10/rustc-nightly-x86_64-unknown-linux-gnu.tar.xz"
xz_hash = "54a1b1791612651ded4c052c2c29a9b2e681344da4cebdc2382d14b62936f4fa"

@grossws Please reply to the stickied issue #57488, thanks.

Was this page helpful?
0 / 5 - 0 ratings